Software prototypes, software engineering, advantages of software prototypes and use.
What are Software prototypes?
A software prototype is a dummy software. When a customer gives us the requirement, we designed the requirements and make a prototype for software.
The prototype gives us the feel of a maximum complete software. In some cases, it represents 100% complete software. But actually, it is not a complete software. It is just a dummy software to represent the software underdeveloped. Let’s see an example of software prototype in this video of FluidUI.
What are the advantages of software prototypes?
- Customers and users are involved in all processes.
- If there is a problem with the software, then the customer tells us that we should change the design of the software. This leads to time-saving.
- Reduced software development effort.
- It helps in clearing the ambiguities in requirements.
- Prototypes and mock-ups are very helpful in designing of the software classes.
- Prototypes improve the;
When to use the Prototype model?
When we give a free end to a customer then he starts to change the software design again and again. Some psycho customers can take too much time to the software team.
When the software needs to have much interaction with the end-users.
For example, the following systems have a high amount of interaction with end-users;
- Web-based applications
- Online systems
Figure: prototyping model
What are the outcomes of the activities of the prototype process?
|Prototype purpose||Prototyping plan|
|Prototype functionality||Outline definition|
|Prototype development||Executable prototype|
|Prototype evaluation||Evaluation report|
Types of prototyping
Throwaway prototyping is also known as close-ended prototyping or rapid prototyping. In Throwaway prototyping we create a model that will eventually be discarded rather than becoming part of the final delivered software. After preliminary requirements gathering is accomplished, a simple is constructed to visually show the customer what their functional requirements may look like after the final implementation.
In Throwaway prototyping, the prototype is constructed by keeping in mind that it will be built from scratch. Let’s see some steps of Throwaway prototyping.
- Write preliminary requirements of the systems.
- Design the prototype for the system by keeping in view the requirements.
- Allow the User to use the prototype and specify the new requirements.
- Repeat the overall process, if is required to convince the user.
- Write the final requirements of the system.
Evolutionary prototyping is also known as breadboard prototyping. Evolutionary prototyping is different from throwaway prototyping.
Evolutionary prototyping acknowledges that the system analyst is unable to understand all the requirements of the system and builds only those modules that are well understood by the software requirement specification.
Separate prototype is design for each increment. Finally, the separate prototypes for each increment are merged in an overall design.
Evolutionary prototyping is very famous for the development of websites. Extreme prototyping breaks down web development into three phases.
1st phase: 1st phase is a static prototype of HTML pages.
2nd phase: In 2nd phase, the interfaces are programmed and fully functional using a simulated services layer.
3rd phase:In 3rd phase , the services are implemented.
Some examples of software prototype tools:
|Tool||Runs on||Prototype for|
|Test Your Understandings|
1. The prototype is a fully developed software? YES / NO
2. The outcome of prototype functionality is ………….?
3. Prototype building only helps in requirement gathering and requirement design instead of software development?
4. Prototypes are designed to reduce customer involvement in all the processes? YES / NO
- what is one possible benefit of using prototypes in software development
- what goes into the process of selecting software prototypes
- what software can i use to design prototypes
- what software allows for responsive website prototypes?
- what are software prototypes
- what do we achieve by creating prototypes in software engineering
- what could be used to develop a series of rapid prototypes in a spiral software
- development effort?
Similar topics for consideration
Prototyping model in software engineering pdf | throwaway prototyping | incremental prototyping
| evolutionary prototyping | types of prototyping | prototype model pdf | software prototyping methods and tools | spiral model in software engineering.