goodfirms LOGO Created with Sketch.

Software prototype as a key to quality

04
November
2019
Wiktor Sobczyk
5 minutes read
share

software prototype

 

Why do you need a prototype application software?

Do you happen to have a lots of ideas and requirements from client when it comes to the project?  If so, this entry is just for you!  We will tell you a bit about the prototype of the application software.  A prototype is a word that most people associate with materials products, not necessarily with mobile or web applications.  However, in the IT industry- and especially in modern software houses- prototype is very often used in the software development process.  Increasingly, it is also a key element of the contract conclusions process.

What is a software prototype?

A software prototype can be defined as a visual presentation of functionality.  The prototype combined with the written functional specification (e.g. acceptance criteria and Definition of Done) allows both the client and the development team to be sure that the final product is exactly what the clients expects and the current work goes in the right decision.

Why it is worth to make a software prototype?

A significant proportion of software contractors want their new applications to be written and implemented as soon as possible.  During the requirements stage, however, there is a risk of focusing on core functionalities, so the rest of the requirements are often overlooked.  This approach means that any logical gaps or minor missing functions that prove to be important or even necessary will not be detected until user testing.  It may turn out that it is only at this final stage that the client finds that the application need improvements. In such situation returning and fixing problems related to adding new functions can be very costly- both temporarily and financially. 

This is the main reason why the prototype is valuable for the entire software development process.  First of all, it helps prevent potential gaps, so called black holes and patch them as part of the main application development process.  It also gives the possibility of a fuller insight into the final look of the solution.

Visualize the software with a functional model

If we work with the application prototype, both the client and the developer will be able to see clearly if and what connections exist between functionalities and how to organize them so that the operation is consistent.  Thanks to this, there is no understatement and we minimize the risk of the situation: “I thought it would work differently”.

There are usually three key stages or steps that we take when starting work on an application prototype:

  1. Mapping customer requirements. The whole process starts with working with visions, which are usually only in the mind of the client. At this stage, the requirements analyst spends a lot of time together with the client, recording all necessary information so as to avoid functional gaps.  It is important to capture the smallest details and then determine what is important and to what extent.  It is also a good opportunity for the customer if he wants to share his ideas.  
  2. Creating prototypes.  Using modern tools (e.g. Adobe XD) it will be possible to create a visual and functional model of the new application.  We’ll be able to see the interface and functions in real interactions.  The prototype also includes action flow diagrams to accurately okay the potential users’ mobility around the new solution.
  3. Specification.  This stage is basically optional.  A common situation is where the specification goes beyond the actual prototype and provide extensive functional specifications.  It is a specific application plan, i.e. it provides documentation of what will be exactly delivered after the development is completed.  However, it should be noted that adding the third stage- that is the specification- to the prototype will often play a significant role in the design.  It helps to transfer knowledge and visions from the minds of the creation team and the client to the documentation to which each party will have access. In addition, if the new application requires the creation of a user manual, the existing specification will be an excellent basis for this.

A software prototype as a key to quality

The prototype and specification of the requirements are like a good marriage- they complement each other. Their combination gives us the greatest chance to plan, describe and design the final product. It is worth that the specification and prototype coexist.  Thanks to this, everyone knows exactly what has been approved and what is the direction of software development.  We- as a software house- know that the lines of code work as they should, and you- as a customer- feel confident that the final application will be exactly what you expect.

 

 

Have a project in mind? Need help with an ongoing one?
We'll be happy to talk!







Wiktor Sobczyk
Co- Founder, Key Account Manager
Damian Sitek
Co-Founder, Developer