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

Slides:



Advertisements
Similar presentations
2003 Mateusz Żochowski, Marcin Borzymek Software Life Cycle Analysis.
Advertisements

SWEN 5130 Requirements EngineeringSlide 1 Software Prototyping u Animating and demonstrating system requirements.
Systems Analysis, Prototyping and Iteration Systems Analysis.
CSC340: Tutorial 1 Software Lifecycles TA: Yuan An Date: 9:00-10:00am, Fri. Oct. 3, 2003 Location: BA1130.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Software Project Management
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
CSE 470 : Software Engineering The Software Process.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Sommerville, I., Software Engineering, Pearson, 9th Ed., 2010.
Project management Project manager must;
Alternative Software Life Cycle Models By Edward R. Corner vol. 2, chapter 8, pp Presented by: Gleyner Garden EEL6883 Software Engineering II.
Alternate Software Development Methodologies
CS 5150 Software Engineering
IS 214 Needs Assessment and Evaluation of Information Systems Managing Usability © Copyright 2001 Kevin McBride.
Chapter 6 Prototyping, RAD, and Extreme Programming
Information Systems Development Lecture 2: the idea of the Life Cycle.
DECISION SUPPORT SYSTEM DEVELOPMENT
Systems Engineering Management
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
Rapid Prototyping Model
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Chapter 2 The process Process, Methods, and Tools
IT Systems Analysis & Design
Lecture # 04 & 05 CS314 Introduction To Software Development Software Development Process (SDP) Instructor :Muhammad Janas khan
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
OHT 7.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 7.1.
Industrial Software Project Management Some views on project managing industrial and business software projects.
CS CS 5150 Software Engineering Lecture 3 Software Processes 2.
Interaction Design Process COMPSCI 345 S1 C and SoftEng 350 S1 C Lecture 5 Chapter 3 (Heim)
SOFTWARE PROTOTYPING Anil Kumar.Arikepudi.
Systems Development AIMS 2710 R. Nakatsu. Overview Why do IT projects succeed and fail? Two philosophies of systems development –Systems Development Life.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
Software Engineering Management Lecture 1 The Software Process.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Methodologies. Contents Waterfall Model Evolutionary Models Incremental Development.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Chapter 2 Software processes. Topics covered Software process models Process activities Coping with change.
An Introduction to Software Engineering
Chapter 6 Prototyping, RAD, and Extreme Programming Systems Analysis and Design Kendall & Kendall Sixth Edition.
1 Human Computer Interaction Week 7 Prototyping. 2 Introduction Prototyping is a design technique where users can be involved in testing design ideas.
SOFTWARE ENGINEERING MCS-2 LECTURE # 4. PROTOTYPING PROCESS MODEL  A prototype is an early sample, model or release of a product built to test a concept.
Software Prototyping Rapid software development to validate requirements.
Click to add text Systems Analysis, Prototyping and Iteration.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
© Bennett, McRobb and Farmer 2005
 Many models have been proposed to deal with the problems of defining activities and associating them with each other  The first model proposed was the.
Teaching slides Chapter 3
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Development Life Cycle (SDLC)
Topic:- At the end we will be able to explain:- Why it is called Meta Model ?? Spiral Model Its Advantages & Disadvantages… Phases of Spiral Model...
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Rekayasa Perangkat Lunak Part-6
Software Development.
Software Engineering Management
Lecture 3 Prescriptive Process Models
Integrating Quality Activities in the Project Life Cycle
Software Processes (a)
Object oriented system development life cycle
Life Cycle Models PPT By :Dr. R. Mall.
Chapter 2 Software Processes
Software life cycle models
CS310 Software Engineering Lecturer Dr.Doaa Sami
Presentation transcript:

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

Prototyping Prototype is the first model or it is a test or pilot project. We developed an idea to give the user an idea about the proposed system Prototyping can help the user to visualize how the proposed system will work. Prototyping can help the user to visualize how the proposed system will work. Is actual working model of the system Is actual working model of the system Prototyping provide refinement Prototyping provide refinement The objective of prototyping is to enhance the quality of the requirement specification The objective of prototyping is to enhance the quality of the requirement specification

Types of prototyping tools 1. Pencil and paper 2. Drawing software 3. Animation and slide show software 4. Visual tools 5. 4GLs

Advantages of prtotyping 1. Prototyping may be easily changed or even discarded 2. May improve communication between user and developer 3. User may be more satisfied with system developing prototype 4. A prototype may serve as a marketing tool 5. Early visibility of the prototype may help management assess progress 6. It may demonstrate progress at early stage of development

Advantages of prototype 8. It may prevent unpleasant surprises by calling attention to incomplete or inconsistent requirements, or to missing functionality 9. Prototyping may produce some useful deliverables even if the project runs out of time or money 10. It reduce misunderstanding b/w user and developer 11. It may reduce redesign costs if problems are detected early 12. It may reduce the time required for testing if problems are detected early

Advantages of prototype 13. It may require less effort (43% according Boehm,Gray & Seewaldt 1984) than conventional development 14. Prototyping may result in partnership b/w user and developer 15. Prototyping may result in a product that is a better fit for the customer’s requirements 16. Prototyping may save on initial costs, because customers are doing “acceptance testing “ all along the way 17. System produced through prototype may be judged easier to learn and easier to use 18. Using prototyping during development may reduce the amount of code that is finally written

Pitfalls (Risk) 1. Prototyping may encourage an excess of change requests 2. Working prototype may lead management and customers to believe that the final product is almost ready for delivery 3. Customer may not be prepared to provide the leval of frequency of feedback required for iterative prototyping 4. Customer may not be willing to participate in the iteration cycle over the long haul 5. Developer may have difficulty writing the back-end code needed to support the front end interface designed with the prototyping tool.

pitfalls 6. Due to time and market constraints, system specification may be frozen before the prototyping process has reached a definitive stage 7. Early prototypes may be of low quality, dismissed as toys 8. Hi-quality prototypes may be mistaken for a real product 9. Important system characteristics (performance,security,reliability) may have been ignored during prototype development 10. Prototype is an adaptive process that may not exhibit well defined phases

Pitfalls 11. Prototyping may continue too long because there may be no well defined completion criterion. 12. Prototyping may be useless if member of the team do not have enough decision making authority 13. Specification that emerge during later prototyping may reduce the structural integrity of the partially designed system 14. The context (environment) of use for the prototype may be very different from the context of use for the final system

Prototype is more likely to succeed when… 1. Used as a means to achieve early usability testing 2. Used to compare alternative designs 3. Used to evaluate a proposed interface 4. Used to explore the affect of change requests 5. Used to expose new or unexpected requirements 6. Used to involve the user in the design process 7. Used to model a system that has a significant user interface component 8. Used to a model that is relatively large and complex 9. Used to Provide a common basis for good communication b/w user and developer

Prototyping is more likely to fail when….. 1. No clear terminating criterion has been established to end the iterative development cycle 2. The expectations of customers are allowed go grow beyond reasonable bounds 3. The functionality of an operational prototype does not scale up to the functionality required of the final system 4. The opinions of the developers and customers diverge during the iterative phase 5. The project is too small to justify prototyping 6. Used to model system that present no external interface 7. Used to measure the future performance of the planned system 8. Used to market software that does not exist

Advantages of prototype User orientation User orientation Objective of prototyping is to develop a system that meet user needs Objective of prototyping is to develop a system that meet user needs Fast development time Fast development time At takes less time than a traditional approach At takes less time than a traditional approach Fewer errors Fewer errors It allows errors to be detected earlier It allows errors to be detected earlier More opportunity to changes More opportunity to changes

Disadvantages of prototypes Demand high cooperation b/w user and the developer Demand high cooperation b/w user and the developer Active users’ participation requires time that users may not be able to spend, particularly the managers Active users’ participation requires time that users may not be able to spend, particularly the managers Total development cost can be higher Total development cost can be higher If user is constantly making changes to the system, it may take high cost If user is constantly making changes to the system, it may take high cost Poor documentation or no documentation Poor documentation or no documentation Prototyping is an iterative process, as such constant updates of documentation is laborious and difficult Prototyping is an iterative process, as such constant updates of documentation is laborious and difficult