Chapter 3: Learning the Android Software Development Process PDF
Document Details
Uploaded by Deleted User
Qassim University Applied College
Dr. Brahim Issaoui
Tags
Summary
This document is a chapter about learning the Android software development process. It covers the different stages involved and highlights key considerations like strategy, objectives, and competitor analysis within the process.
Full Transcript
Kingdom of Saudi المملكة العربية Arabia السعودية Ministry of وزارة التعليم education جامعة القصيم Qassim University الكلية التطبيقية Applied Co...
Kingdom of Saudi المملكة العربية Arabia السعودية Ministry of وزارة التعليم education جامعة القصيم Qassim University الكلية التطبيقية Applied College Chapter 3: Learning the Android Software Development Process Dr. Brahim ISSAOUI 1 Introduction Every day, the number of apps released to the market grows. Plus, right now, there are more mobile devices in the world than there are people. No wonder that by 2026 mobile applications are projected to generate $233 billion in revenue. 2 ITCC 205 Introduction With such promising forecasts, it’s easy to see why many companies are looking into mobile app development. Some businesses are interested in creating the next TikTok or Zoom. Thus, focusing on consumer-facing projects and the revenue they can generate. Others, want to optimize internal processes and choose to invest in enterprise solutions that can reduce expenses and improve efficiencies. 3 ITCC 205 7 Key Steps of Mobile App Development Process The process of mobile app development can somewhat vary on an individual basis. However, the following seven steps are the ones that you’ll likely have to go through: Strategy Development Analysis and Planning UI/UX Design App Development Application Testing Deployment Support and Performance Monitoring 4 ITCC 205 Step 1: Strategy Development The very first step of the app development process is, unsurprisingly, defining the strategy. At this point, you’ve got to start thinking carefully about your future application, its goals, capabilities, and business model. 5 ITCC 205 Identify Objectives Whether you’re building a consumer or enterprise app, you’ll likely begin by identifying its main objectives. This can be done by answering the following questions: What problem will my application solve? Who are its target users? What results do I want my app to achieve? 6 ITCC 205 Identify Objectives The truth is, you might not have to think too much about these questions because you may already have the initial idea for your app. However, it’s still good to note the key objectives down so you can always refer back to the goals you are striving for. 7 ITCC 205 Research Competitors The next step of strategy planning is looking into your existing or potential competitors. Are there any apps on the market that serve the same purpose? How are they performing? Do they have many installs and positive reviews? By researching your competition you will be able to bypass mistakes that may already have been made within your industry. Moreover, you’ll get an idea about the current landscape of similar mobile apps and be able to determine how you can differentiate from competitors. 8 ITCC 205 Select Platform At the strategy development phase of the app creation process, you’ll also need to decide for which platform you’re building your tool. Will it be a custom Android solution? Or, is an iOS app a better pick? Or, perhaps, it is a cross-platform application that you truly need. We’ll later go into more detail about the various options you have, but it’s important to already begin thinking about this area of the process. 9 ITCC 205 Choose Monetization Method Lastly, choosing the right monetization method is only applicable for those delivering a consumer application. In this case, you want to make direct money from your investment, but there are various options for you to pick from, including: In-app advertising In-app purchases Subscriptions Affiliate marketing Paid apps 1 0 ITCC 205 Choose Monetization Method The monetization method depends on your goals and the type of an application that you’re making. For example, if you’re developing a dating app, it’s probably not a good idea to charge for downloads. Instead, you’ll likely go for in-app purchases and subscriptions. On the contrary, if you choose to build a game app, chances are you’ll leverage in-app advertising along with in-app purchases and subscriptions. As you can see, everything depends on the purpose of your application. However, it’s worth mentioning that the subscription-based monetization model seems to be gaining widespread approval. 1 1 ITCC 205 Step 2: Analysis and Planning The second step to take is analysis and planning. At this point, you already have your idea in mind, have done some research, and know the general direction of where you’re heading. Now is the time to get practical and identify all of the details you need before jumping into the design and development stages. 1 2 ITCC 205 Functional and Non-Functional Requirements First, you’ve got to get specific with the actions that you want your mobile app to perform. If you’re building an app for the finance industry, perhaps you’ll need it to create new accounts, manage credit cards, make payments, generate account statements, and so on. The tasks that your software has to perform will go into your functional requirements document. That way, you’ll gain a clearer idea of what features have to be developed. Then, you will also need to think about the non-functional requirements of the software. These relate to the quality of how your system performs and have a big impact on the user experience. 1 3 ITCC 205 Product Roadmap Next up is defining your app’s roadmap. This process is much like preparing for the future and making a detailed plan of how you’ll reach the end goals you’ve set. On the day your Minimum Viable Product (MVP) is released, you want it to be successful and avoid any potential failures. Hence, during the product roadmap creation, you note down all of the things that you want your app to be able to do. Then, you make a ranking of the top priority functions and consider which features can be added at a later date. 1 4 ITCC 205 Technology Stack The last part of the analysis and planning phase includes identifying the skills needed for your mobile project. If you’re building an iOS app, you’ll need experienced iOS developers. If you want to create a cross-platform app, then you need someone skilled in technologies like Titanium, Xamarin, and others fit for multi-platform development. 1 5 ITCC 205 Step 3: UI/UX Design In order for users to get the best experience, a lot of attention has to be paid to an app’s design. If it turns out messy or faulty, users will immediately flock to competitors and abandon the tool you’ve worked so hard on. That’s why this step requires a lot of effort when you want to create an app that users love. 1 6 ITCC 205 Step 3: UI/UX Design So, your UI/UX design has to be intuitive, user-friendly, engaging, and offer a seamless experience. Let’s keep that in mind while we look at each of the design areas more closely. 1 7 ITCC 205 Information Architecture and Workflows One of the first steps of the app design process is developing rules as a part of your app’s information architecture. You’ll need to establish what data will be present within your app, how it will be displayed, and how the users will interact with it. On the basis of the above, you’ll then create workflow diagrams that can be very helpful in keeping track of all possible user interactions. Essentially, they will let you see how your app’s navigation is implemented. 1 8 ITCC 205 Wireframes Next, business analysts create digital sketches called wireframes. These are basically conceptual layouts that provide a visual structure of your app’s functionality. Wireframes usually emphasize the user experience and app aesthetics. All to ensure that the finished application is intuitive and seamless to use. 1 9 ITCC 205 Style Guides Style guides are created so that your company branding can be easily found within a single document. These records usually contain the following design aspect of your app: Fonts Color scheme Spacing and positioning instructions Buttons Widgets Other relevant design elements Style guides are essential to your app’s design strategy. They help maintain consistency within your app and ensure its look and feel are always harmonious. 2 0 ITCC 205 Mockups After you’ve created your app style guides, it’s time to move on to mockups. Essentially, these are the final renderings of your app visuals, and they are created by applying the style guide to the wireframes. After completing this stage, the most important thing is to ensure that your design is consistent throughout the app. 2 1 ITCC 205 Prototypes Finally, the last step of the UI/UX design process is developing prototypes. Prototypes let you simulate the user experience and the app’s entire workflow. That way, you get a good sense of how everything will work upon completion. This stage of the process can be time-consuming but don’t overlook it. When done properly, a prototype can help you detect any design and functionality mishaps that you may want to fix. 2 2 ITCC 205 Step 4: App Development Typically, it’s made up of two main parts — backend and frontend. 2 3 ITCC 205 Backend The backend stage of app development involves creating databases and server-side objects that are responsible for your app performance. At this point, your project team will choose appropriate programming languages and begin coding the app. Additionally, database engines and a hosting environment will be selected. 2 4 ITCC 205 Backend The backend part of the app development life cycle is crucial and determines the scalability of your mobile app in the future. So, if you want your application to expand as your user base grows — make sure you’re working with experienced software developers. They’ll guide you through all the key phases of application development and ensure your system can scale with ease. 2 5 ITCC 205 Frontend A mobile app’s frontend is what the end-user will interact with most. There are three main approaches to building it. Platform-specific. These apps are created exclusively for each mobile platform. Meaning that the code isn’t reused between iOS and Android, but rather fully optimized for each one. It might be a more costly approach, but the speed and responsiveness can be worth it. 2 6 ITCC 205 Cross-platform. Solutions that are built in this manner can run on different platforms with one single codebase.They are compatible with various operating systems and aren’t attached only to one. The main benefits of this approach are cost-effectiveness and code reusability. 2 7 ITCC 205 Hybrid These solutions contain elements of both — platform-specific apps and web applications. They allow developers to write the application code with standard web technologies and execute within a native shell. They are great if you want your app to run on multiple platforms but don’t have the time to build a cross-platform solution. 2 8 ITCC 205 Step 5: Mobile App Testing Once you’re done with app development, it’s time to begin testing. After all, you want to make sure the developed solution is stable, secure, and doesn’t have any bugs. 2 9 ITCC 205 Step 5: Mobile App Testing For the highest quality delivery, your app should undergo five testing methods prior to deployment. Functionality. This is when you check the features of your application and ensure that everything works well. Performance. During performance testing, you’ll need to pay attention to your app’s responsiveness and how it handles an increase in concurrent users. Security. When building enterprise solutions like mobile insurance apps and healthcare applications, which operate in highly regulated industries, data protection is of utmost importance. Yet, consumer apps must also instill confidence in users. So, before moving on to the next testing step, check that your app adheres to all security standards and that there aren’t any loopholes in your system. 3 0 ITCC 205 Step 5: Mobile App Testing Platform and Device. With new mobile devices coming to market yearly and operating systems updating monthly, it’s important for your application to stay on top of compatibility. Hence, it has to be tested on various devices or simulators. Extended Review. Before proceeding to deployment, it’s a good idea to test your application with its actual final users. Whether you arrange a focus group or do a beta launch of your app — the key thing is to collect as much feedback as possible. 3 1 ITCC 205 Step 6: Deployment When you’re finally ready to deploy your app, you’ll have to go through different distribution models depending on the platform you were developing for. 3 2 ITCC 205 Step 6: Deployment The mobile application deployment strategy to follow is quite simple. You’ll either need to submit your application to Apple’s App Store or Google’s Play Store or go for private distribution. Both stores require you to fill out several forms and submit your app for review. You should know, the App Store is considered to be much stricter with the applications it allows onto its marketplace. So, you might face difficulties if your iOS-based tool isn’t up to the highest standards. On the other hand, if you’re opting for private distribution — check out Apple’s Developer Enterprise Program and Android’s Alternative Distributions in order to determine how best to proceed. 3 3 ITCC 205 Step 7: Support and Performance Monitoring 3 4 ITCC 205 Step 7: Support and Performance Monitoring Once your app is finally live and users are steadily downloading it — it’s time to get your analytical hat on and monitor performance. Don’t underestimate this step, it may take more time than to develop an app itself and it should be managed continually. Some of the most important KPIs you should look at are: App downloads Active users Average visit time Retention Churn Conversions Customer lifetime value Ratings Reviews 3 5 ITCC 205 Step 7: Support and Performance Monitoring Also don’t forget to keep track of crashes, bugs, customer requests, and overall app performance. By doing that, you’ll be able to perfect your solution as time goes by. Overall, it’s just important to remember that work doesn’t stop once your app has been deployed. In fact, it’s only starting. Mobile apps require regular updates to keep up with the latest operating system changes, review guidelines, and performance standards. Otherwise, you’ve just invested in a solution that won’t stay functional for very long. So, make sure to account for the fact that your application will need continuous maintenance if it is to be worth it. Whether you choose to support it yourself or with the help of an outside firm is completely up to you. If you’ve chosen to partner with a software development company for your mobile project — the vendor will certainly offer post-launch support services. Thus, taking the upkeep work off of your hands. 3 6 ITCC 205