Mobile Application Development – The Cost of a Button
Many of our clients are surprised by the costs associated with developing a web or mobile application. They often respond with “I can use x program to add a button in a matter of minutes.” While it’s true that placing a button onto a web page or mobile app screen (aside from determining button size and location, appearance, and how it changes due on different device screens and device orientations) doesn’t require a lot of time, the cost comes more from what happens when you push that button.
So, what types of things must happen when you push a button? Well, turns out several things can happen both on the device being used by a user and on the server or in the cloud.
- Data Validation – For every text box, radio button, check box that displays on the screen some level of validation must be performed to ensure that the data that was entered or selected will make sense to the code that will be processing or storing it. This also involves providing feedback to the user when they don’t enter valid information.
- Process Error Handling – Even if the data entered on a screen is technically valid, there could be other things that go wrong after you click a button. Code needs to track the success of performing the needed actions and report back to the user when an error has occurred.
- Business Logic Processing – Clicking on a button should do something. Business logic is what makes your application specific to your business needs. Sometimes that involves performing calculations, looking up data, creating files, generating data, and so forth.
- Database Input & Output – After you click on a button, there could be need for saving data to and/or reading data from a database. In some cases, the system may be performing multiple save or reads to or from a database or even multiple databases.
- Notifications – When an application does something, it isn’t uncommon that someone needs to be notified. Often times, this involves generating and sending an email or SMS, or creating a notification that will display in an app or on your phone.
- Screen Changes – Other parts of an application’s screen might also need to change after you click a button. Often times either pieces of a screen will display or other fields will enable or disable based on your business logic. It’s also common that you’ll be taken to a completely new screen when you click a button.
- Logging – When an application performs an action, it’s also quite common for the system to log the fact that the action occurred to a file or to the database. This ofen includes details of who performed the action, at what date and time the action was performed and what happened.
As you can see, adding a button to a page or screen is only the first step of making a button function properly. Not all of the above activities need to occur when you push a button, but for qualty application and mobile apps, it’s likely that a large subset of them will.
Each activity has a cost associated with it due to the time taken to implement it, and these costs add up for new control that you add to a screen and when you want the user to have a unique experience when using your application.