Digital

Key stages of developing a web or mobile application

From the specification to maintenance: the 9 stages of a successful application project.

Digital applications are now firmly part of companies’ growth strategy.

Some applications make it easier to follow internal activity, for example a stock traceability application for a distribution company or a document management application for a public administration.

Others are customer-facing: web banking for financial institutions, e-commerce for retailers, mobile insurance for insurance companies.

Whether built in-house or by a service provider, such applications must follow a number of important stages. Here they are.

Stage 1: Writing the specification

This is the initial stage before the project starts. The company appoints key users or business process owners who write the specification of the application it wants to build. They draw up a list of the needs of the future digital platform.

A product owner is also appointed. The product owner carries the project on the business side and makes sure the features developed in the application match the needs listed.

Stage 2: Analysis

During this phase, the product owner and the development team review the needs. We use the term “provider” for that team; the provider can be internal (an IT team) or external (a consulting firm).

At the end of this phase, a detailed list of features is drawn up (user stories for agile projects). Each feature is placed in a macro-feature or a future module of the application. The agile method will be covered in a separate article.

During this stage the technical architecture of the solution is also defined or confirmed: for example the type of database, the frontend or backend frameworks to select, and the various user or system interfaces to build.

Stage 3: Detailed design

Stages 3 to 5 run in parallel in agile projects, the aim being to validate the development of the application gradually.

During detailed design, the provider writes the functional specifications and the product owner validates them. The detailed specifications contain every detail of the future application: functional logic, screen flow, fields and expected actions on each screen, and details of the interfaces between the application and external systems.

Stage 4: Development

The provider’s developers implement the solution as defined in the functional specifications. They run unit tests to make sure their code works. Once a feature is done, they hand their work over to the team in charge of testing.

Each developer’s source code is stored on a central platform (for example GitHub). The provider’s technical leads can review the source code at any time.

Stage 5: Testing

Tests are carried out by key users. Key users are people designated at the start of the project who will guarantee that the application works properly throughout its life. Tests must follow an acceptance test book prepared by the provider or the product owner.

If a test fails because of a development error, the issue is passed to the development team for a fix.

Once all features are developed, tested and validated, the project can move to the next phase.

Stage 6: Training and UAT

Before training future users, a training plan and catalogue are prepared. The aim is to focus each user only on the modules and features that concern them. Training is delivered by a key user. A User Acceptance Test (UAT) plan is also prepared, so that every feature is validated by end users.

A simulation environment can be set up so end users can test the application almost as if it were live.

For customer-facing applications, a panel of the company’s customers can be involved in this phase to validate the future solution with them.

Stage 7: Cut-over preparation

After training and UAT, you are almost ready for the actual launch.

The technical team sets up a production environment, and the provider configures it. Initial data is loaded manually or through migration programs developed in stage 3. End users’ access rights and permissions are also created.

Stage 8: Post-go-live follow-up

After the solution goes live, the provider or the technical team provides post-go-live support. Support levels are defined to handle and fix the anomalies reported by users. The provider also writes a post-go-live review at the end of the engagement. This support phase can last a few months.

Stage 9: Maintenance

Next comes the official phase of technical and evolutive maintenance. During this phase the provider keeps fixing errors or bugs in the application. It also develops the additional features requested by the company, following what was set out in stages 1 to 5.

IniMov supports you in developing your web platforms and mobile applications. More details here.

Insights

Related reading

Contact

A transformation project? Let’s talk.

Tell us what you need. We will get back to you quickly with a first read and concrete next steps.

Contact us