Regardless of platform or coding language, to successfully create an app there is a general process I like to follow. When most people think of coding apps, they focus on the coding aspect, however that it just one piece of the process. So let’s take a look at my four steps of creating an app.
Planning
Step one of almost any good process involves planning. In the case of apps and games you want to decide some core features and functions. Once features are decided it is a good idea to start creating mock ups. This can be accomplished in a few ways. BlackBerry offers two great solutions; first they have a Wireframe design PowerPoint slides that have all the core components. Next if you are using Cascades and proficient at Photoshop you can use the Exporter Tool to create your UI in Photoshop. This will act as mockups and once you are complete you can import those mock ups into your QML and it will write the UI code for you. But my favorite method, and probably the most low tech solution imaginable, is good old pen and paper. I keep a few notebooks with design sketches and notes.
Also during this planning phase, is where you should decide things like what language, platform, price point, timing, and scope. Platform and language go hand in hand because if you want cross platform, something like Cascades may not be the best idea. Price point, timing and scope are less for the hobbyist and more if you are looking at it from a return on investment point of view. But even for a hobbyist, you should decide if something will be paid/free before going into it to know the level of support you may need to eventually provide. Timing is important especially in the case of time specific app. Probably not much sense to release an app for the Rio de Janeiro 2016 Olympics right now. And finally scope is to define the exact features that will be included. This is to prevent feature creep which could ultimately delay timing/release of your app indefinitely (more on this below).
Coding
This is the most obvious step of the process. Few things to consider here is to remember to review as you go. If you start ending up somewhere you didn’t want to be, you can go back to the planning phase and reassess. Then on the flip side of that, when you start coding you might start coming up with more ideas to make your app better, more in depth, feature rich, etc. And often times you can add in those features as you go. But in the case of big new features it may be best to shelf some of those ideas for a future update. If you fall into the phenomenon known as feature creep you may never end up releasing your app.
Testing
Obviously as you are coding, you check code for errors and see if the app operates how you intended. But at the end of the day, for usability testing, you are terrible tester. You know where all the buttons are; after all, you put them there.
So what I try to do is find a wide range of testers. I have a 9 year old niece (child), my wife (adult in the tech generation), and mother/mother-in-law (pre tech generation). Not only are they a wide range of ages but I pick people who aren’t afraid to hurt my feelings. Additionally, they all have different levels of technical backgrounds. Getting tester like the ones above will help you get a well-rounded product that has mass appeal.
One thing you may be asking yourself is why not test in the planning phase? I have come to the conclusion that nobody wants to look at sketches and notes, but everyone wants to play on phones. I have gotten much better feedback this way, even if it meant rewriting a lot code.
Updating
The final phase, updating, is an ongoing process. Even after you take in internal feedback and make those updates you will get a lot more feedback from end users. It is always a good idea to give your end users what they want to keep them happy. Plus often times they are your best means of marketing. Also remember all those great ideas you shelved for future releases as to actually release your product in a timely manner. After all, doesn’t everyone love version 2.0 of apps?
In closing, there are a few other things you should consider during you app making process beyond the four steps mentioned above. Throughout the full process it is a good idea to tease/market your app. Once you have released your app, reach out the BlackBerry fan blogs to see if they will do a review. Finally and most importantly have fun while doing all of this. Apps are meant to be fun (even if they serve a serious purpose). Feel free to sound off in the comments below with your app making methodology.
Read more
BlackBerry Developer Global Tour events taking place in June!
If you're looking to learn more about the BlackBerry Development Platform, you'll certainly want to see if you can attend one of the BlackBerry Developer Global Tour events starting in June.
Developer and a sci-fi fan? Take this survey!
We are excited to announce that the Developer Economics Q3 2017 survey, run by our friends at VisionMobile, has just been launched! Take the survey and you could win a great prize!
Registration is now open for the BlackBerry Developer Summit Europe
For those of you who missed out on the BlackBerry Developer Summit that took place in New York, registration for the BlackBerry Developer Summit Europe has now opened up. You'll have to act fast, though, as space is currently limited.
BlackBerry Developer Summit Europe happening in London on March 24
If you missed out on the last BlackBerry Developer Summit because it took place in New York, BlackBerry has now announced they'll be hosting another in Europe. This time around, the event will take place in London on March 24, 2017.