Software prototyping-Advantages and Disadvantages
Software prototyping is the activity of creating prototypes of software applications, i.e., incomplete versions of the software program being developed. It is an activity that can occur in software development and is comparable to prototyping as known from other fields, such as mechanical engineering or manufacturing.
A prototype typically simulates only a few aspects of, and may be completely different from, the final product.
Prototyping has several benefits: the software designer and implementer can get valuable feedback from the users early in the project. The client and the contractor can compare if the software made matches the software specification, according to which the software program is built. It also allows the software engineer some insight into the accuracy of initial project estimates and whether the deadlines and milestones proposed can be successfully met.
Overview
The purpose of a prototype is to allow users of the software to evaluate developers' proposals for the design of the eventual product by actually trying them out, rather than having to interpret and evaluate the design based on descriptions. Software prototyping provides an understanding of the software's functions and potential threats or issues. Prototyping can also be used by end users to describe and prove requirements that have not been considered, and that can be a key factor in the commercial relationship between developers and their clients. Interaction design in particular makes heavy use of prototyping with that goal.
Outline of the prototyping process
The process of prototyping involves the following steps
- Identify basic requirements
Determine basic requirements including the input and output information desired. Details, such as security, can typically be ignored.
- Develop initial prototype
The initial prototype is developed that includes only user interfaces. (See Horizontal Prototype, below)
- Review
The customers, including end-users, examine the prototype and provide feedback on potential additions or changes.
- Revise and enhance the prototype
Using the feedback both the specifications and the prototype can be improved. Negotiation about what is within the scope of the contract/product may be necessary. If changes are introduced then a repeat of steps #3 and #4 may be needed.
Advantages of prototyping
There are many advantages to using prototyping in software development – some tangible, some abstract.
- Reduced time and costs
- Improved and increased user involvement
Disadvantages of prototyping
Using, or perhaps misusing, prototyping can also have disadvantages.
- Insufficient analysis
- User confusion of prototype and finished system
- Developer misunderstanding of user objectives
- Developer attachment to prototype
- Excessive development time of the prototype
- Expense of implementing prototyping
American Journal of Computer Science and Engineering Survey (IPACSES) is a peer review open access journal publishing the research in computer science and engineering survey. Journal announces papers for the upcoming issue release. Interested can submit your manuscripts through online portal or through email at computersci@scholarlymed.com
Media contact:
Maegan Smith
Managing Editor
American Journal of Computer Science and Engineering Survey (IPACSES)
Mail ID: computersci@scholarlymed.com
WhatsApp 180-23424982