9 APR 2017 8011
Information technology is the future, and it has been stepping up so quickly that we need to pay attention every day for the inevitable updates. Nowadays, mobile applications are the most famous type of entertainment for you, for your relatives and, as crazy as it sounds, even for your pets. There are so many ideas for mobile Application Development these days… You don’t need to worry about going to the library; you can simply use an app for downloading the book in a few seconds. No need to make notes in your diary to remember the Skype call at 2 PM, just use the Reminder app in your phone. Calculator, Daily routine apps, Photo editors, Bookings, Maps, Music... the list goes on and on. You think you have a device for making calls, but no, it is a powerful digital assistant that simplified your life in countless ways.
Want to create a special app for yourself? Do you have an idea for an app that you believe will make you famous? If so, let me tell you about the app development workflow.
The mobile application development process is much easier than you think. I will clarify each stage in the following.
Stage 1 — Initiating (introduction to development)
The client contacts Appus, typically sending an email to our Sales Manager. In an email, a client usually identifies the main requirements and parameters of the project, asks questions about pricing, competence etc. and proceeds to sign an NDA. You can download the template of this document here.
After signing the NDA, both sides are ready to proceed with the application development process. However, do you simply need the idea to implement the app and that's enough?
Stage 2 - Plan and Estimate
Everyone wants to have a qualitative application with a small budget and a great idea. At Appus, we are ready to make dreams come true, provided we have the following very important points from the client's side (Note: You do not need to have all of them, but at least some of the points listed below are critical).
UI design that includes the following issues:
The stages of UI designing
- Sketch – a simple and quick scheme of how this or that functionality will look. This is made by means of a pencil and a piece of paper, with the help of our designer.
- Wireframe – the design of the interface with the help of simple and basic elements.
- Flow chart – a way to display all the algorithms or reciprocality processes of the whole design.
- Wireframe prototype – the simulation of the final reciprocality between the user and the interface. It's not the actual design that you may use in the future, but this basic structural usage and main features are followed by the designers.
- Mockups – an actual graphical design that can be used in the future for the application.
- Mockup prototype – a simulation of the real application, where all the functionality, colors, shapes, fonts and other minor issues are included.
Specification is a detailed description of your project to make the app development workflow as smooth as silk. When there is a good job description, the quote for the work can be done very exactly, there are no misunderstandings between the client and the project manager, the functionality is done in a proper way, and most importantly, the output doesn’t have any major bugs.
When our Sales Manager gets all the information about the future application, our CTO will estimate each feature, and any questions you have will be answered. The time for estimating the project can vary from 1 to 3 days, but we do our best to deliver quotes very quickly. After we complete the estimation, we draw up an agreement that includes all the details (specification, milestones, estimation). It is important to note that all the actions we do before the app creation process are free. You do not need to worry about anything, as we can help, consult, show and explain how everything works in the application development workflow.
Okay, now let’s imagine that the contract is signed and we can start the app development process. However, what payment basis will you choose: Fixed price or Hourly rate?
- Fixed Price. The word “fixed” is the key one. It means we can’t step back from the specification and design that we got from the client (or the one that is created by Appus) and we can’t implement something that wasn’t in the agreement. If some feature was missed in the job description, the developer will require more time for implementation, which can negatively influence the work on other features. Moreover, we need to create a new request with the feature that was missed, estimate that feature again, and then adjust the milestones (deadlines). The whole project is divided into parts called “Milestones”. Each milestone includes the description of the functionality that is going to be done within a limited period of time. When the day for a deadline comes, we upload the version to the client to see the progress (referring to the milestone description). After testing the build, and if everything is okay, the client must release the payment within 3 working days. Also important to note is that for all requests based on a Fixed price, we need to add 20% (to the basic quote) for QA and Management. Furthermore, the work on the app begins without any pre-payment, meaning that the first payment release is done after you see the build.
- Hourly rate. Hourly rate is a much easier system, as there are not so many rules here. The app development process is divided into weeks, and after each week (from Monday to Friday), the team generates an iterated version for the client (already tested build), and on Friday evening, the build is sent. Each Monday, we generate a timesheet where you are able to see all the tasks and the time spent on those issues. The payment release can be done within 3 days of sending the Timesheet. The best thing is that we do not charge an additional 20% for QA and Management.
Stage 3 - Implementation
During the mobile application development process, you will need to have iOS or Android devices (depending on the app platform) to have the ability to test and track the progress. The process of getting the versions is really easy: if you have an iPhone, we will only need to know your UDID (Unique Device Identifier) for us to add and generate the version. As soon as the build is uploaded to our internal corporate system, you will get a link via email. By simply clicking on the link, the app will be uploaded to the device.
During the аpp development process, we use our server, which allows us to check or download any of the uploaded versions whenever you want to.
Application development workflow is done with the help of our internal corporate system. The corporate system is very simple to use and very convenient for developers, managers and clients. There is a ticketing system, so if you need to assign a task for the manager, you must click on the “Create ticket” button and it will automatically be posted. The manager will be notified within a few seconds. There are different priorities for the tickets:
Depending on the task urgency, you should choose the appropriate priority. Also, if there are too many tickets, the search filter will help you find the right one. Just choose an assignee, a reporter, or the status of the ticket (New, In progress, Feedback, Completed, Closed). To be very precise with the search, you can also choose a tag (iOS, Android, Web, Design).
The ticketing system
Besides the ticketing system, we have another tab called “Requests”. In Requests, there are all the tasks that were confirmed by the client to occur within the аpp development workflow. The specification, mockups, estimation (with the description of each point) and all the milestones may be found in the request. The request is almost a duplicate of the agreement that the client signed, so it has the same value.
In the “Versions” tab, as I mentioned above, you may download any version that we uploaded throughout the whole period of the app development. The developer who uploaded it will be listed, along with a brief description of the build. Here is a picture of how the link looks:
Version download screen
As everyone knows, testing is the basis of an app release. Without that main component, the version can’t be uploaded and published. We also have a “Test Plan” tab on the corporate system, where our QA managers write test cases for each project. That allows us to proceed with the app development faster and more effectively, because after opening it, we always know which stage of development we are on and what potential problems we may have. App testing is also done very often, mostly before uploading the application.
After the request is done or it’s time for a milestone, we send a tested version to the client to show our progress. Everything is transparent about our work. You may check exactly what is included in the current version, using the milestones with their detailed description. When the client checks the version, confirms that there are no bugs, and that the build is appropriate for the described milestone, we generate an invoice and send it to the client. Within 3 days, the invoice should be paid.
Stage 4 - Release
Congratulations on finishing the app! Releasing your application is a very important and exciting moment. We have been working together for a while to reach a common aim and develop a reliable, high-quality, good-looking, user-friendly application. We’ve come along way together, so this is an important moment for us too!
Now, are you ready to publish your application to the App Store or Google Play? Wait… you’re not sure how to do that. Don’t worry! We’re happy to help you, but first, we will need to transfer the source code to the production server.
Setting up the server and moving the app into production is a free feature offered by Appus. Also, uploading the version to the App Store and Google Play can be done from our side for no additional charge.
Moreover, after the app is published, we offer a 12-month warranty for fixing bugs at no extra cost. Isn’t that awesome? I certainly think so!
That should be it from us here at Appus. I tried to be as detailed as possible in my comments and hope that everything was quite clear. Hopefully, now you see that it’s really easy to build a great app that will help and entertain millions of people and be relevant for many years. Don’t be afraid of anything… Come build your app with us!