+ All Categories
Home > Documents > PPT06Prototyping

PPT06Prototyping

Date post: 04-Jun-2018
Category:
Upload: carlonerigatus
View: 216 times
Download: 0 times
Share this document with a friend

of 41

Transcript
  • 8/13/2019 PPT06Prototyping

    1/41

    Chapter 6

    Prototyping, RAD, andExtreme Programming

    Systems Analysis and Design

    Kendall & Kendall

    Sixth Edition

  • 8/13/2019 PPT06Prototyping

    2/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-2

    Objectives

    Once you have mastered the material in this chapter you will beable to:

    1. Understand the four main types of prototyping.2. Be able to use prototyping for information requirements

    gathering.3. Understand the concept of RAD for use in information

    requirements gathering and interface design.4. Understand extreme programming and the core practices that

    differentiate it from other development methodologies.

    5.Learn the importance of values critical to extremeprogramming and agile modeling.

  • 8/13/2019 PPT06Prototyping

    3/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-3

    Major Topics

    Prototyping

    Rapid application development (RAD)

    Extreme Programming (XP)

  • 8/13/2019 PPT06Prototyping

    4/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-4

    Prototyping

    Prototyping is an information-gatheringtechnique.

    Prototypes are useful in seeking userreactions, suggestions, innovations, andrevision plans.

    Prototyping may be used as analternative to the systems developmentlife cycle.

  • 8/13/2019 PPT06Prototyping

    5/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-5

    Four Kinds of Prototypes

    The four conceptions of prototypes are :

    Patched-up prototype.

    Nonoperational scale model.

    First-of-a-series.

    Prototype that contains only some of the

    essential system features.

  • 8/13/2019 PPT06Prototyping

    6/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-6

    Patched-up Prototype

    This is a working model with all thefeatures but is inefficient.

    Users can interact with the system.

    Storage and retrieval of data may beinefficient.

    May contain only basic features.

  • 8/13/2019 PPT06Prototyping

    7/41Kendall & Kendall 2005 Pearson Prentice Hall 6-7

    Nonoperational Scale Models

    A nonoperational scale mode is one thatis not operational, except for certain

    features to be tested

    Prototype input and output

  • 8/13/2019 PPT06Prototyping

    8/41Kendall & Kendall 2005 Pearson Prentice Hall 6-8

    First-of-a-Series Prototype

    Pilot system is created.

    Prototype is an operation model.

    Useful when many installations of thesame information system are planned.

    An example is a system to be installed

    in one location, tested and modified asnecessary, and later implemented inother locations.

  • 8/13/2019 PPT06Prototyping

    9/41Kendall & Kendall 2005 Pearson Prentice Hall 6-9

    Selected Features Prototype

    An operational model includes some,but not all, of the final system features.

    With the acceptance of these features,later essential features are added.

    Some menu items are available.

    System is built in modules.

    These are part of the actual system.

  • 8/13/2019 PPT06Prototyping

    10/41Kendall & Kendall 2005 Pearson Prentice Hall 6-10

    Prototyping As an Alternativeto the Systems Life Cycle

    Two main problems with the SDLC:

    Extended time required to go through the

    development life cycle. User requirements change over time.

    Prototyping may be used as an alternative.

  • 8/13/2019 PPT06Prototyping

    11/41Kendall & Kendall 2005 Pearson Prentice Hall 6-11

    Prototype DevelopmentGuidelines

    Guidelines for developing a prototypeare:

    Work in manageable modules.

    Build the prototype rapidly.

    Modify the prototype in successive

    iterations. Stress the user interface.

  • 8/13/2019 PPT06Prototyping

    12/41Kendall & Kendall 2005 Pearson Prentice Hall 6-12

    Prototype Disadvantages

    Managing the prototyping process isdifficult because of its rapid, iterative

    nature. Incomplete prototypes may be regarded

    as complete systems.

  • 8/13/2019 PPT06Prototyping

    13/41Kendall & Kendall 2005 Pearson Prentice Hall 6-13

    Prototype Advantages

    Potential for changing the system earlyin its development

    Opportunity to stop development on anunworkable system

    Possibility of developing a system that

    closely addresses users needs andexpectations

  • 8/13/2019 PPT06Prototyping

    14/41Kendall & Kendall 2005 Pearson Prentice Hall 6-14

    Prototype EvaluationThe UsersRole

    The users role is honest involvement.

    Three ways the user is involved:

    Experimenting with the prototype.

    Giving open reactions to the prototype.

    Suggesting additions to and/or deletions

    from the prototype.

  • 8/13/2019 PPT06Prototyping

    15/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-15

    Rapid Application Development(RAD)

    RAD, or rapid application development,is an object-oriented approach to

    systems development that includes amethod of development as well assoftware tools.

  • 8/13/2019 PPT06Prototyping

    16/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-16

    RAD Phases

    The three broad phases to RAD are :

    Requirements planning.

    RAD design workshop.

    Implementation.

  • 8/13/2019 PPT06Prototyping

    17/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-17

    RAD Phases

    Insert Figure 8.7 here

    NOTE: Confirm with author which figureshould be inserted!

  • 8/13/2019 PPT06Prototyping

    18/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-18

    Requirements Planning Phase

    Users and analysts meet to identifyobjectives of the application or system

    Oriented toward solving businessproblems

  • 8/13/2019 PPT06Prototyping

    19/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-19

    RAD Design Workshop

    Design and refine phase.

    Use group decision support systems to help usersagree on designs.

    Programmers and analysts can build and showvisual representations of the designs and workflowto users.

    Users respond to actual working prototypes.

    Analysts refine designed modules based on userresponses.

  • 8/13/2019 PPT06Prototyping

    20/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-20

    Implementation Phase

    As the systems are built and refined,the new systems or partial systems are

    tested and introduced to theorganization.

    When creating new systems, there is no

    need to run old systems in parallel.

  • 8/13/2019 PPT06Prototyping

    21/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-21

    Martin Approach to RAD

    The Martin approach to RAD includesfour phases:

    Requirements planning.

    User design.

    Construction.

    Cutover.

  • 8/13/2019 PPT06Prototyping

    22/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-22

    Martin Approach to RAD

  • 8/13/2019 PPT06Prototyping

    23/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-23

    RAD and the SDLC

    RAD tools are used to generate screensand exhibit the overall flow of the

    application. Users approve the design and sign off

    on the visual model.

    Implementation is less stressful becauseusers helped to design the businessaspects of the system.

  • 8/13/2019 PPT06Prototyping

    24/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-24

    When to Use RAD

    RAD is used when: The team includes programmers and

    analysts who are experienced with it. There are pressing reasons for speeding up

    application development.

    The project involves a novel ecommerce

    application and needs quick results. Users are sophisticated and highly engaged

    with the goals of the company.

  • 8/13/2019 PPT06Prototyping

    25/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-25

    Disadvantages of RAD

    May try and hurry the project too much

    Loosely documented

  • 8/13/2019 PPT06Prototyping

    26/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-26

    Extreme Programming (XP)

    Extreme programming (XP) takes goodsystems development practices to the

    extreme.

  • 8/13/2019 PPT06Prototyping

    27/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-27

    Four Values of ExtremeProgramming

    The four values of extremeprogramming are:

    Communication.

    Simplicity.

    Feedback.

    Courage.

  • 8/13/2019 PPT06Prototyping

    28/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-28

    Five XP Principles

    The five XP principles are:

    Providing rapid feedback.

    Assuming simplicity.

    Changing incrementally.

    Embracing change.

    Encouraging quality work.

  • 8/13/2019 PPT06Prototyping

    29/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-29

    Five XP Principles

  • 8/13/2019 PPT06Prototyping

    30/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-30

    Four Basic Activities of XP

    The four basic activities of XP are:

    Coding.

    Testing.

    Listening, to the programming partner andcustomer.

    Designing.

  • 8/13/2019 PPT06Prototyping

    31/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-31

    Four XP Resource ControlVariables

    The four resource control variables in XPare:

    Time.

    Cost.

    Scope.

    Quality.

  • 8/13/2019 PPT06Prototyping

    32/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-32

    Four XP Core Practices

    The four XP core practices are:

    Short releases, work with the most

    important features first. Having a 40-hour work week.

    Having an onsite customer.

    Pair programming with anotherprogrammer.

  • 8/13/2019 PPT06Prototyping

    33/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-33

    XP Relationships

  • 8/13/2019 PPT06Prototyping

    34/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-34

    XP Development Process

    The phases of the XP developmentprocess are:

    Exploration.

    Planning.

    Iterations to the first release.

    Productionizing. Maintenance.

  • 8/13/2019 PPT06Prototyping

    35/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-35

    XP Stories

    XP stories are a spoken interactionbetween developers and users.

    It is not written communication.

    The goal is prevention ofmisunderstanding or misinterpretations

    of user requirements.

  • 8/13/2019 PPT06Prototyping

    36/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-36

    XP Lessons

    The six lessons that can be drawn fromthe XP development approach are:

    Short releases allow the system to evolve.

    Pair programming enhances overall quality.

    Onsite customers are mutually beneficial to

    the business and the XP team.

  • 8/13/2019 PPT06Prototyping

    37/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-37

    XP Lessons

    The six lessons that can be drawn fromthe XP development approach

    (continued) The 40-hour work week improves

    worker effectiveness.

    Balanced resources and activitiessupport project goals.

    XP values are crucial to success.

  • 8/13/2019 PPT06Prototyping

    38/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-38

    XP Lessons

  • 8/13/2019 PPT06Prototyping

    39/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-39

    Agile Modeling

    Agile modeling is similar to XP.

    In addition to the values of

    communication, simplicity feedback andcourage, has a fifth value of humility.

  • 8/13/2019 PPT06Prototyping

    40/41

    Kendall & Kendall 2005 Pearson Prentice Hall 6-40

    Agile Modeling (Continued)

    Agile modeling process is:

    Listen to user stories.

    Draw a logical workflow model.

    Create new user stories based on theworkflow.

    Develop some prototypes. Use feedback from the prototypes and

    logical workflow to create physical model.

  • 8/13/2019 PPT06Prototyping

    41/41

    Scrum

    Scrum is an Agile approach that has anemphasis on teamwork.

    Team success is of primary importance. Individual success is secondary.

    The team works within a strict time

    frame. The project leader has some but not

    much influence on detail.