Software Project Management
Software Project Management
BY LAVANYA TYIT
CONTENTS
1. Software Prototyping
2. Incremental Delivery
SOFTWARE PROTOTYPING
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.
Prototyping is defined as the process of developing a working replication of a product or system that has to be
engineered.
IT OFFERS A SMALL SCALE FACSIMILE OF THE END PRODUCT AND IS USED FOR OBTAINING CUSTOMER FEEDBACK AS DESCRIBED BELOW:
FOLLOWING IS A STEPWISE APPROACH EXPLAINED TO DESIGN A SOFTWARE PROTOTYPE.
This step involves understanding the very basics product requirements especially in terms of user interface. The more
intricate details of the internal design and external aspects like performance and security can be ignored at this stage.
Developing the initial Prototype:
The initial Prototype is developed in this stage, where the very basic requirements are showcased and user interfaces
are provided. These features may not exactly work in the same manner internally in the actual software developed.
While, the workarounds are used to give the same look and feel to the customer in the prototype developed.
Review of the Prototype:
The prototype developed is then presented to the customer and the other important stakeholders in the project. The
feedback is collected in an organized manner and used for further enhancements in the product under development.
Revise and Enhance the Prototype:
The feedback and the review comments are discussed during this stage and some negotiations happen with the
customer based on factors like – time and budget constraints and technical feasibility of the actual implementation.
The changes accepted are again incorporated in the new Prototype developed and the cycle repeats until the customer
expectations are met.
SOFTWARE PROTOTYPING - APPLICATION
Software Prototyping is most useful in development of systems having high level of user interactions such as
online systems.
Systems which need users to fill out forms or go through various screens before data is processed can use
prototyping very effectively to give the exact look and feel even before the actual software is developed.
Software that involves too much of data processing and most of the functionality is internal with very little user
interface does not usually benefit from prototyping.
Prototype development could be an extra overhead in such projects and may need lot of extra efforts.