13
Prototyping life cycle Prototyping life cycle Important steps Important steps 1. 1. Does prototyping suit the system Does prototyping suit the system 2. 2. Abbreviated representation of Abbreviated representation of requirements requirements 3. 3. Abbreviated design specification for Abbreviated design specification for the prototype. the prototype. 4. 4. Prototype created, tested and refined Prototype created, tested and refined 5. 5. Customer’s feedback after use of Customer’s feedback after use of prototype accomodated prototype accomodated 6. 6. Repeat 4 and 5 until all requirements Repeat 4 and 5 until all requirements are formalized or until the prototype are formalized or until the prototype has evolved into a production system has evolved into a production system

Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Embed Size (px)

Citation preview

Page 1: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Prototyping life cyclePrototyping life cycle

Important stepsImportant steps1.1. Does prototyping suit the systemDoes prototyping suit the system2.2. Abbreviated representation of Abbreviated representation of

requirementsrequirements3.3. Abbreviated design specification for the Abbreviated design specification for the

prototype.prototype.4.4. Prototype created, tested and refinedPrototype created, tested and refined5.5. Customer’s feedback after use of Customer’s feedback after use of

prototype accomodatedprototype accomodated6.6. Repeat 4 and 5 until all requirements are Repeat 4 and 5 until all requirements are

formalized or until the prototype has formalized or until the prototype has evolved into a production systemevolved into a production system

Page 2: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

PrototypingPrototyping

Prototype is the first model or it is a test or Prototype is the first model or it is a test or pilot project. pilot project.

We developed an idea to give the user an We developed an idea to give the user an idea about the proposed systemidea about the proposed system

Prototyping can help the user to visualize Prototyping can help the user to visualize how the proposed system will work.how the proposed system will work.

Is actual working model of the systemIs actual working model of the system Prototyping provide refinementPrototyping provide refinement The objective of prototyping is to enhance The objective of prototyping is to enhance

the quality of the requirement the quality of the requirement specification specification

Page 3: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Types of prototyping toolsTypes of prototyping tools

1.1. Pencil and paperPencil and paper

2.2. Drawing softwareDrawing software

3.3. Animation and slide show Animation and slide show softwaresoftware

4.4. Visual toolsVisual tools

5.5. 4GLs4GLs

Page 4: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Advantages of prtotypingAdvantages of prtotyping

1.1. Prototyping may be easily changed or Prototyping may be easily changed or even discardedeven discarded

2.2. May improve communication between May improve communication between user and developeruser and developer

3.3. User may be more satisfied with system User may be more satisfied with system developing prototypedeveloping prototype

4.4. A prototype may serve as a marketing A prototype may serve as a marketing tooltool

5.5. Early visibility of the prototype may help Early visibility of the prototype may help management assess progressmanagement assess progress

6.6. It may demonstrate progress at early It may demonstrate progress at early stage of developmentstage of development

Page 5: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Advantages of prototypeAdvantages of prototype

8.8. It may prevent unpleasant surprises by calling It may prevent unpleasant surprises by calling attention to incomplete or inconsistent attention to incomplete or inconsistent requirements, or to missing functionalityrequirements, or to missing functionality

9.9. Prototyping may produce some useful Prototyping may produce some useful deliverables even if the project runs out of deliverables even if the project runs out of time or moneytime or money

10.10. It reduce misunderstanding b/w user and It reduce misunderstanding b/w user and developerdeveloper

11.11. It may reduce redesign costs if problems are It may reduce redesign costs if problems are detected earlydetected early

12.12. It may reduce the time required for testing if It may reduce the time required for testing if problems are detected early problems are detected early

Page 6: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Advantages of prototypeAdvantages of prototype13.13. It may require less effort (43% according It may require less effort (43% according

Boehm,Gray & Seewaldt 1984) than conventional Boehm,Gray & Seewaldt 1984) than conventional developmentdevelopment

14.14. Prototyping may result in 50-50 partnership b/w Prototyping may result in 50-50 partnership b/w user and developeruser and developer

15.15. Prototyping may result in a product that is a better Prototyping may result in a product that is a better fit for the customer’s requirementsfit for the customer’s requirements

16.16. Prototyping may save on initial costs , because Prototyping may save on initial costs , because customers are doing “acceptance testing “ all customers are doing “acceptance testing “ all along the wayalong the way

17.17. System produced through prototype may be System produced through prototype may be judged easier to learn and easier to usejudged easier to learn and easier to use

18.18. Using prototyping during development may reduce Using prototyping during development may reduce the amount of code that is finally written the amount of code that is finally written

Page 7: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Pitfalls (Risk)Pitfalls (Risk)

1.1. Prototyping may encourage an excess of Prototyping may encourage an excess of change requestschange requests

2.2. Working prototype may lead management and Working prototype may lead management and customers to believe that the final product is customers to believe that the final product is almost ready for deliveryalmost ready for delivery

3.3. Customer may not be prepared to provide the Customer may not be prepared to provide the leval of frequency of feedback required for leval of frequency of feedback required for iterative prototypingiterative prototyping

4.4. Customer may not be willing to participate in Customer may not be willing to participate in the iteration cycle over the long haulthe iteration cycle over the long haul

5.5. Developer may have difficulty writing the back-Developer may have difficulty writing the back-end code needed to support the front end end code needed to support the front end interface designed with the prototyping tool.interface designed with the prototyping tool.

Page 8: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

pitfallspitfalls6.6. Due to time and market constraints, system Due to time and market constraints, system

specification may be frozen before the specification may be frozen before the prototyping process has reached a definitive prototyping process has reached a definitive stagestage

7.7. Early prototypes may be of low quality, Early prototypes may be of low quality, dismissed as toysdismissed as toys

8.8. Hi-quality prototypes may be mistaken for a real Hi-quality prototypes may be mistaken for a real productproduct

9.9. Important system characteristics Important system characteristics (performance,security,reliability) may have been (performance,security,reliability) may have been ignored during prototype developmentignored during prototype development

10.10. Prototype is an adaptive process that may not Prototype is an adaptive process that may not exhibit well defined phasesexhibit well defined phases

Page 9: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Pitfalls Pitfalls 11.11. Prototyping may continue too long Prototyping may continue too long

because there may be no well defined because there may be no well defined completion criterion.completion criterion.

12.12. Prototyping may be useless if member of Prototyping may be useless if member of the team do not have enough decision the team do not have enough decision making authoritymaking authority

13.13. Specification that emerge during later Specification that emerge during later prototyping may reduce the structural prototyping may reduce the structural integrity of the partially designed systemintegrity of the partially designed system

14.14. The context (environment) of use for the The context (environment) of use for the prototype may be very different from the prototype may be very different from the context of use for the final systemcontext of use for the final system

Page 10: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Prototype is more likely to succeed Prototype is more likely to succeed when…when…

1.1. Used as a means to achieve early usability testingUsed as a means to achieve early usability testing2.2. Used to compare alternative designsUsed to compare alternative designs3.3. Used to evaluate a proposed interfaceUsed to evaluate a proposed interface4.4. Used to explore the affect of change requestsUsed to explore the affect of change requests5.5. Used to expose new or unexpected requirementsUsed to expose new or unexpected requirements6.6. Used to involve the user in the design processUsed to involve the user in the design process7.7. Used to model a system that has a significant Used to model a system that has a significant

user interface componentuser interface component8.8. Used to a model that is relatively large and Used to a model that is relatively large and

complexcomplex9.9. Used to Provide a common basis for good Used to Provide a common basis for good

communication b/w user and developercommunication b/w user and developer

Page 11: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Prototyping is more likely to fail Prototyping is more likely to fail when…..when…..

1.1. No clear terminating criterion has been No clear terminating criterion has been established to end the iterative development established to end the iterative development cyclecycle

2.2. The expectations of customers are allowed go The expectations of customers are allowed go grow beyond reasonable boundsgrow beyond reasonable bounds

3.3. The functionality of an operational prototype does The functionality of an operational prototype does not scale up to the functionality required of the not scale up to the functionality required of the final systemfinal system

4.4. The opinions of the developers and customers The opinions of the developers and customers diverge during the iterative phasediverge during the iterative phase

5.5. The project is too small to justify prototypingThe project is too small to justify prototyping6.6. Used to model system that present no external Used to model system that present no external

interfaceinterface7.7. Used to measure the future performance of the Used to measure the future performance of the

planned systemplanned system8.8. Used to market software that does not existUsed to market software that does not exist

Page 12: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Advantages of prototypeAdvantages of prototype

User orientationUser orientationObjective of prototyping is to develop a Objective of prototyping is to develop a

system that meet user needssystem that meet user needsFast development timeFast development time

At takes less time than a traditional At takes less time than a traditional approachapproach

Fewer errorsFewer errorsIt allows errors to be detected earlierIt allows errors to be detected earlier

More opportunity to changesMore opportunity to changes

Page 13: Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification

Disadvantages of Disadvantages of prototypesprototypes

Demand high cooperation b/w user and the Demand high cooperation b/w user and the developerdeveloper Active users’ participation requires time that Active users’ participation requires time that

users may not be able to spend, particularly the users may not be able to spend, particularly the managersmanagers

Total development cost can be higherTotal development cost can be higher If user is constantly making changes to the If user is constantly making changes to the

system, it may take high costsystem, it may take high cost Poor documentation or no documentationPoor documentation or no documentation

Prototyping is an iterative process, as such Prototyping is an iterative process, as such constant updates of documentation is laborious constant updates of documentation is laborious and difficultand difficult