development methods

Upload: zia-jan

Post on 06-Apr-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Development Methods

    1/39

    Alternative development methods

    Systems Analysis and Design

    Kendall & Kendall

    Sixth Edition

  • 8/3/2019 Development Methods

    2/39

    Prototyping

    Kendall & Kendall 2005 Pearson Prentice Hall6-2

    Prototyping is an information-gathering technique. Prototypes are useful in seeking user reactions,

    suggestions, innovations, and revision plans.

    Prototyping may be used as an alternative to the systemsdevelopment life cycle.

  • 8/3/2019 Development Methods

    3/39

    Four Kinds of Prototypes

    Kendall & Kendall 2005 Pearson Prentice Hall6-3

    The four conceptions of prototypes are : Patched-up prototype.

    Nonoperational scale model.

    First-of-a-series.

    Prototype that contains only some of the essential systemfeatures.

  • 8/3/2019 Development Methods

    4/39

    Patched-up Prototype

    Kendall & Kendall 2005 Pearson Prentice Hall6-4

    This is a working model with all the features but isinefficient.

    Users can interact with the system.

    Storage and retrieval of data may be inefficient.

    May contain only basic features.

  • 8/3/2019 Development Methods

    5/39

    Nonoperational Scale Models

    Kendall & Kendall 2005 Pearson Prentice Hall6-5

    A nonoperational scale mode is one that is notoperational, except for certain features to be tested

    Prototype input and output

  • 8/3/2019 Development Methods

    6/39

    First-of-a-Series Prototype

    Kendall & Kendall 2005 Pearson Prentice Hall6-6

    Pilot system is created. Prototype is an operation model.

    Useful when many installations of the same informationsystem are planned.

    An example is a system to be installed in one location,tested and modified as necessary, and later implementedin other locations.

  • 8/3/2019 Development Methods

    7/39

    Selected Features Prototype

    Kendall & Kendall 2005 Pearson Prentice Hall6-7

    An operational model includes some, but not all, of thefinal 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/3/2019 Development Methods

    8/39

    Prototyping As an Alternative to the Systems

    Life Cycle

    Kendall & Kendall 2005 Pearson Prentice Hall6-8

    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/3/2019 Development Methods

    9/39

    Prototype Development Guidelines

    Kendall & Kendall 2005 Pearson Prentice Hall6-9

    Guidelines for developing a prototype are: Work in manageable modules.

    Build the prototype rapidly.

    Modify the prototype in successive iterations.

    Stress the user interface.

  • 8/3/2019 Development Methods

    10/39

    Prototype Disadvantages

    Kendall & Kendall 2005 Pearson Prentice Hall6-10

    Managing the prototyping process is difficult because ofits rapid, iterative nature.

    Incomplete prototypes may be regarded as complete

    systems.

  • 8/3/2019 Development Methods

    11/39

    Prototype Advantages

    Kendall & Kendall 2005 Pearson Prentice Hall6-11

    Potential for changing the system early in its development Opportunity to stop development on an unworkable

    system

    Possibility of developing a system that closely addresses

    users needs and expectations

  • 8/3/2019 Development Methods

    12/39

    Prototype Evaluation The Users

    Role

    Kendall & Kendall 2005 Pearson Prentice Hall6-12

    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/3/2019 Development Methods

    13/39

    Rapid Application Development (RAD)

    Kendall & Kendall 2005 Pearson Prentice Hall6-13

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

    a method of development as well as software tools.

  • 8/3/2019 Development Methods

    14/39

    RAD Phases

    Kendall & Kendall 2005 Pearson Prentice Hall6-14

    The three broad phases to RAD are : Requirements planning.

    RAD design workshop.

    Implementation.

  • 8/3/2019 Development Methods

    15/39

    RAD Phases

    Kendall & Kendall 2005 Pearson Prentice Hall6-15

    Insert Figure 8.7 here

    NOTE: Confirm with author which figure should be

    inserted!

  • 8/3/2019 Development Methods

    16/39

    Requirements Planning Phase

    Kendall & Kendall 2005 Pearson Prentice Hall6-16

    Users and analysts meet to identify objectives of theapplication or system

    Oriented toward solving business problems

  • 8/3/2019 Development Methods

    17/39

    RAD Design Workshop

    Kendall & Kendall 2005 Pearson Prentice Hall6-17

    Design and refine phase.

    Use group decision support systems to help users agree on

    designs.

    Programmers and analysts can build and show visual

    representations of the designs and workflow to users.

    Users respond to actual working prototypes.

    Analysts refine designed modules based on user responses.

  • 8/3/2019 Development Methods

    18/39

    Implementation Phase

    Kendall & Kendall 2005 Pearson Prentice Hall6-18

    As the systems are built and refined, the new systems orpartial systems are tested and introduced to the

    organization.

    When creating new systems, there is no need to run old

    systems in parallel.

  • 8/3/2019 Development Methods

    19/39

    Martin Approach to RAD

    Kendall & Kendall 2005 Pearson Prentice Hall6-19

    The Martin approach to RAD includes four phases: Requirements planning.

    User design.

    Construction.

    Cutover.

  • 8/3/2019 Development Methods

    20/39

    Martin Approach to RAD

    Kendall & Kendall 2005 Pearson Prentice Hall6-20

  • 8/3/2019 Development Methods

    21/39

    RAD and the SDLC

    Kendall & Kendall 2005 Pearson Prentice Hall6-21

    RAD tools are used to generate screens and exhibit theoverall flow of the application.

    Users approve the design and sign off on the visualmodel.

    Implementation is less stressful because users helped todesign the business aspects of the system.

  • 8/3/2019 Development Methods

    22/39

    When to Use RAD

    Kendall & Kendall 2005 Pearson Prentice Hall6-22

    RAD is used when:

    The team includes programmers and analysts who areexperienced with it.

    There are pressing reasons for speeding up applicationdevelopment.

    The project involves a novel ecommerce application and needsquick results.

    Users are sophisticated and highly engaged with the goals ofthe company.

  • 8/3/2019 Development Methods

    23/39

    Disadvantages of RAD

    Kendall & Kendall 2005 Pearson Prentice Hall6-23

    May try and hurry the project too much Loosely documented

  • 8/3/2019 Development Methods

    24/39

    Extreme Programming (XP)

    Kendall & Kendall 2005 Pearson Prentice Hall6-24

    Extreme programming (XP) takes good systemsdevelopment practices to the extreme.

    F V l f E t

  • 8/3/2019 Development Methods

    25/39

    Four Values of Extreme

    Programming

    Kendall & Kendall 2005 Pearson Prentice Hall6-25

    The four values of extreme programming are: Communication.

    Simplicity.

    Feedback.

    Courage.

  • 8/3/2019 Development Methods

    26/39

    Five XP Principles

    Kendall & Kendall 2005 Pearson Prentice Hall6-26

    The five XP principles are: Providing rapid feedback.

    Assuming simplicity.

    Changing incrementally.

    Embracing change. Encouraging quality work.

  • 8/3/2019 Development Methods

    27/39

    Five XP Principles

    Kendall & Kendall 2005 Pearson Prentice Hall6-27

  • 8/3/2019 Development Methods

    28/39

    Four Basic Activities of XP

    Kendall & Kendall 2005 Pearson Prentice Hall6-28

    The four basic activities of XP are: Coding.

    Testing.

    Listening, to the programming partner and customer.

    Designing.

    Four XP Resource Control

  • 8/3/2019 Development Methods

    29/39

    Four XP Resource Control

    Variables

    Kendall & Kendall 2005 Pearson Prentice Hall6-29

    The four resource control variables in XP are:

    Time.

    Cost.

    Scope.

    Quality.

  • 8/3/2019 Development Methods

    30/39

    Four XP Core Practices

    Kendall & Kendall 2005 Pearson Prentice Hall6-30

    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 another programmer.

  • 8/3/2019 Development Methods

    31/39

    XP Relationships

    Kendall & Kendall 2005 Pearson Prentice Hall6-31

  • 8/3/2019 Development Methods

    32/39

    XP Development Process

    Kendall & Kendall 2005 Pearson Prentice Hall6-32

    The phases of the XP development process are:

    Exploration.

    Planning.

    Iterations to the first release.

    Productionizing. Maintenance.

  • 8/3/2019 Development Methods

    33/39

    XP Stories

    Kendall & Kendall 2005 Pearson Prentice Hall6-33

    XP stories are a spoken interaction between developers

    and users.

    It is not written communication.

    The goal is prevention of misunderstanding or

    misinterpretations of user requirements.

  • 8/3/2019 Development Methods

    34/39

    XP Lessons

    Kendall & Kendall 2005 Pearson Prentice Hall6-34

    The six lessons that can be drawn from the XP

    development approach are:

    Short releases allow the system to evolve.

    Pair programming enhances overall quality.

    Onsite customers are mutually beneficial to the business andthe XP team.

  • 8/3/2019 Development Methods

    35/39

    XP Lessons

    Kendall & Kendall 2005 Pearson Prentice Hall6-35

    The six lessons that can be drawn from the XPdevelopment approach (continued)

    The 40-hour work week improves worker effectiveness.

    Balanced resources and activities support project goals.

    XP values are crucial to success.

  • 8/3/2019 Development Methods

    36/39

    XP Lessons

    Kendall & Kendall 2005 Pearson Prentice Hall6-36

  • 8/3/2019 Development Methods

    37/39

    Agile Modeling

    Kendall & Kendall 2005 Pearson Prentice Hall6-37

    Agile modeling is similar to XP.

    In addition to the values of communication, simplicity

    feedback and courage, has a fifth value of humility.

  • 8/3/2019 Development Methods

    38/39

    Agile Modeling (Continued)

    Kendall & Kendall 2005 Pearson Prentice Hall6-38

    Agile modeling process is:

    Listen to user stories.

    Draw a logical workflow model.

    Create new user stories based on the workflow.

    Develop some prototypes. Use feedback from the prototypes and logical workflow to

    create physical model.

  • 8/3/2019 Development Methods

    39/39

    Scrum

    K d ll & K d ll 2005 P P ti H ll6 39

    Scrum is an Agile approach that has an emphasis onteamwork.

    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 ondetail.