Business App Development in an Agile Environment
Stay aligned with user needs on the go
Building a business is like trying to survive in the jungle:
- everything around you is changing quickly and not always in your favour;
- you have to adapt or you'll be mauled by your neighbours.
This is even truer in the software development world:
- It’s tough having your app's feature list frozen for months and no chance to change it.
- And once you’ve studied the market, you can’t just rest on your laurels. You need your processes to be flexible so you can test out fresh ideas.
Usually, this poses a problem – but not for those companies that involve an Agile environment in the development process.
What do Agile principles mean for business people?
Agile is an approach that facilitates close communication between the client and the IT agency. You can learn more about Agile manifesto principles here.
The advantages of Agile project management:
- It’s flexible. Basically, the focus shifts from following single-delivery software to free research and constant delivery. You have plenty of chances to introduce a new feature or eliminate those that have proved themselves ineffective.
- The process is much more transparent and your ideas can be absorbed into the working process within a couple of weeks.
- You don’t need to wait for months for the whole project to be ready. You get a simple working model within a few weeks and see how it performs with new functionality or changes, based on your endpoint user feedback.
It doesn’t require significant investments right from the start. You can plan your cash flow and make your project better step by step. Plus, the prototype lets you earn money before it’s fully featured.
Agile environment in the workplace: our case study
Here’s an example from our recent collaboration with Insight Regulatory Consulting LLP, which demonstrates how Agile works in conditions of uncertainty.
What was the plan?
The goal of the IR Insight Regulatory project was to deliver a Cerberus web application designed to accommodate the needs of Senior Managers and support the regulation of the Certifications Regime.
The core idea was to create an app where roles and duties would be assigned to staff according to the company's standards. Work would be done in compliance with the demands of the certification.
Senior management was determined to help their employees understand their duties, evaluate the efficiency of each staffer’s work and create a more productive working environment.
How it actually went
The first meeting with the client comprised an X-ray Skype call during which Magora and the client could learn more about each other.
Initially, the client wanted a software requirements specification and some designs. However, after the discussion, it became clear that such an approach derived from having a limited budget rather than from the client’s practical needs.
What they really needed was a convenient and effective tool for labour management.
Magora suggested creating a functional prototype so that the Insight Regulatory team could test it on real users. The probationers’ feedback would then serve as a solid basis for the first version of the product.
Due to strict budget limitations and remaining uncertainties regarding the scope of the project, it was agreed that a lot of functionality would be hardcoded – meaning it would not be manageable but would still meet testing requirements.
Implementation: what we changed and why
- After the delivery of the Sprint 1 results, the client saw potential in showing the prototype to a large testing group. However, to this end, hardcoding functionality would make little sense. The majority of test users would have different needs, which is difficult to accommodate within hardcoded functionality. In the end, we agreed to focus on a limited number of testing roles but to get detailed feedback from each of them.
- During other Sprints, we discovered that the original idea was to assign duties to some workers without notifying them. At this point, the client began to develop a better understanding of the project demands. By introducing an Agile methodology to the client, we helped them to see the product from the user’s perspective.
- As a result, it became evident that the true purpose of the app wasn’t just to inform the Regulator about who was performing a given task. We needed to make sure the employees themselves were aware of their responsibilities. So, we added new User stories to meet such requirements.
- We conducted a series of tests and completely rebuilt the application model.
In the end, we found a solution for the company that was well-balanced and corresponded to users’ needs.
How we covered changes
The business value of each User Story was revised during the backlog management sessions that form part of the Agile approach. Some user stories, which were initially viewed as high-value, were reevaluated.
The client also understood that a change in the scale of work would lead in turn to an extension of the timeline and the overall scope of the project, as well as a higher probability of bugs.
- We replaced some low-value User Stories with new and valuable ones but increased neither the volume of work nor the budget.
- A "dummy" solution evolved into a living prototype best suited the needs of the potential users.
- As such, we helped the client to determine the features most relevant to the users’ requirements.
- They also added some new User stories at the end of the project, so we ran an additional Sprint to implement these as well.
The project became fruitful, providing transparency of user wishes and the mechanics of how everything should work. But it really would have been a mess had we not collaborated for several iterations with different employees, providing various options to the linear staff, managers and administrators and analysing what to improve within each of the sprints.
Working alongside our clients, combining their business knowledge and our professionalism, we created an Agile environment to elaborate on the solution. We made a great project even in the conditions of a limited budget and shifting requirements.
What’s the profit of this app?
- Employees now clearly understand what they have to do, as well as how and to whom they have to report their results;
- Senior managers can easily demonstrate the major aspects of the SMCR framework within their firm to the regulator and, therefore, show their compliance with SMCR.
- Senior managers can monitor, control and evaluate their employees' activity.
- The motivation of employees is clear and the intermediate results are evident for each member of the team.
The app we created was a bit different from what the client expected in the beginning but more beneficial. We respected the client’s idea by realising it in a convenient, profitable and efficient (value-for-money) way.
How can you benefit from Agile development with us?
If your situation resembles the one we’ve described above, Agile principles will work perfectly for you. This flexible approach is ideal when some gaps in understanding exist within a project.
Having worked with Agile development model for many years, the Magora team is open for a dialogue. We can react rapidly to any clarification of the initial requirements in order to make a better product, which you really need, not through crystal-ball guesswork but through realising the real market demands.
Contact us to discuss your project and together we’ll find a solution.