life cycle models (visual programming technologies)

Upload: rochana-ramanayaka

Post on 04-Jun-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    1/35

    Life Cycle Models

    (Visual Programming Technologies)

    CS3001 Presentation 1

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    2/35

    The theoretical background

    System Development Life CycleWhy we need a SDLC

    Advantages of using and SDLCThe Waterfall ModelSpiral ModelLifecycle vs. Methodology

    Methodology

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    3/35

    Why we need a SDLC

    Ease the process of building asystem

    Avoid development problemsUnclear objectivesCost overrunsDevelopment delays

    Avoid the system not meeting userrequirements

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    4/35

    Advantages of a Life Cycle

    Facilitate project reviewProvide a more efficient / effective

    systemGuide the systems developmentImprove communications

    Improve management and controlComputer-based support

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    5/35

    Waterfall ModelProblem Definition

    Requirement Analysis

    System Design

    System Development

    System Testing

    Implementation

    Maintenance

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    6/35

    Problem Definition

    Project GoalsA broad statement of What the userexpects from the system

    Project Bounds What areas the system effects andwhat areas remain the same

    Project Limits Resource limits (Financial,technology, human, S/w, H/w)

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    7/35

    Requirement Analysis

    The current systemWhat it does, and how it works

    A Detail Model in subject termsWhat the new system will do, how itwill work

    High level description of the system

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    8/35

    System Design

    Produce a detailed specification forthe new system

    Here the description of the systemanalysis is converted in to a designwhich can be implemented

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    9/35

    Steps in System Design

    Select equipmentSpecify new programs or changes

    to existing programsSpecify new database or changes toexisting databaseProduce detailed procedures(Detailed Design)

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    10/35

    System Development

    The Detailed design is convertedinto the system

    Individual system components are builtand testedData and tools are used to build thesystemUser interfaces are developed and tried

    by usersDatabase is initialized with data

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    11/35

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    12/35

    Implementation

    Installation of the system at theclient endRepresents the start of the systemsfunctioning into its real environment

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    13/35

    Maintenance

    Maintenance is a continuous processInvolves new modifications

    Eliminate errors in the systemduring its working life.Fixing any bugs and problem foundby users

    Tune the system to any variationsin its working environment

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    14/35

    Problems with the Waterfall Model

    Rigid design and inflexible procedureTop-down procedure

    Real projects rarely follow the sequential flowthat the model proposes

    One phase must be completed before the nextphase startsAt the beginning of most projects there isoften a great deal of uncertainty aboutrequirements and goals, and it is thereforedifficult for customers to identify these criteriaon a detailed level. The model does notaccommodate this natural uncertainty verywell.

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    15/35

    Problems with the Waterfall Model

    No phase can be repeatedAssumptions made in the earlyphases no longer holdSome of the early work isincompleteSomething was overlooked or notcompletely understood .

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    16/35

    The Modified Waterfall Model

    Problem Definition

    Requirement Analysis

    System Design

    System Development

    System Testing

    Maintenance

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    17/35

    Spiral Model

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    18/35

    Main phases in the Spiral Model

    Requirement analysisDesign prototype

    Develop and integrateAcceptances and testing

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    19/35

    Life Cycle vs. Methodology

    The software development processconsists of several well-definedsteps.When following a designmethodology, a designer can selectappropriate modeling method

    related to each step

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    20/35

    Life Cycle vs. Methodology

    LIFE CYCLE STAGE

    System Operation& Support

    Using InformationTechnology

    LIFE CYCLE STAGE

    SystemDevelopment

    Using SystemDevelopment

    Methodologies

    LifetimeOf a

    System

    A system life cycledivides the life of an

    information systeminto two majorStages1. Systems

    Development2. Systems

    operation andsupport.

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    21/35

    Life Cycle vs. Methodology

    A system development methodologyis a very formal and precise systemdevelopment process that defines

    A set of activitiesMethodsBest practicesDeliverables

    Automated tools

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    22/35

    System Development methodology

    A System Development methodology(Process) has some general principles.P1: Get the owner and User InvolvedP2: Use a problem-solving approach

    Study and understand the problem and itscontextDefine the requirement of a suitable solution.Identify candidate solutions and select the bestsolution.Design and/or implement the solution.Observe and evaluate the solutions impact,and refine the solution accordingly

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    23/35

    System Development methodology

    P3: Establish phases and activitiesPreliminary investigationProblem analysisRequirement analysisDecision analysisDesign

    ConstructionImplementation

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    24/35

    System Development methodology

    P4: Establish standardsDocumentationQualityAutomated ToolsInformation technology

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    25/35

    System Development methodology

    P5: Justify systems as capitalinvestments

    Cost effectivenessRisk management

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    26/35

    System Development methodology

    P6: Dont be afraid to cancel or revisescope

    Cancel the project if it is no longer

    feasibleIf project scope is to be increased,reevaluate and adjust the cost andscheduleIf the project budget and schedule arefrozen and not sufficient to cover allproject objectives, reduce the scope

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    27/35

    System development methodology

    P7: Divide and conquerWe divide a system into subsystemand components

    Easily to conquer the problemEasy to build a large problem

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    28/35

    System Development methodology

    P8: Design systems for growth andchange

    Correcting simple mistakesTo redesigning the system toaccommodate changing technologyTo making modification to support

    changing user requirements.

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    29/35

    Development Process

    MethodologyModeling Methods or Techniques

    Tools

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    30/35

    Methodology

    Provides the frameworkHas a predefined set of steps

    Ensures that systems are built inthe most effective wayE.g. SSADM, RUP

    Uses tools and modeling methods

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    31/35

    Modeling Methods

    A set of techniques used toimplement a Methodology

    Data Flow DiagramsEntity Relationship DiagramsStructure Charts etc.

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    32/35

    System Development methodologies

    Supported by Modeling Methods orTechniques

    Techniques used to implement theMethodologyProvides the descriptions of thebusiness system requirements fromvarious view points

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    33/35

    Tools

    Software systemsAssists analysts and designer to

    build information systemse.g. Easy Case, Rational Rose, MS Visio

    Supported by Tools.They will not replace Systems Analysts.

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    34/35

    Methodology

    Rational Unified Process

    Modeling Method orTechnology

    Tools

    Use Case DiagramsClass Diagrams

    Rational SuitRational ROSE

  • 8/13/2019 Life Cycle Models (Visual Programming Technologies)

    35/35

    Summary

    System Life CyclesWhy we need themAdvantages

    Waterfall ModelFaults with this model

    Spiral ModelSD Life Cycle vs. SD MethodologySystem Development Methodology