sys dev lifecycle

Upload: wazim-akram

Post on 05-Apr-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Sys Dev Lifecycle

    1/33

    System

    Development LifeCycleLecture 3ByMamoon Al RasheedDepartment of CSE, SUB

  • 7/31/2019 Sys Dev Lifecycle

    2/33

    System Development LifeCycle Every system has a life cycle.

    An information system is born when a problem isrecognized.

    After the system is developed, it grows until it reaches

    maturity. Eventually, a change in the nature of the problem or

    increasing maintenance costs degrade the value of thesystem, so it dies and a new or replacement systemis born to take its place.

  • 7/31/2019 Sys Dev Lifecycle

    3/33

    System Development LifeCycle

    System Development Life Cycle is amethodology.

    A key purpose of a methodology isensuring that nothing is overlooked in the

    process of solving a complex problem(such as developing a complex informationsystem).

    A methodology is a body of practices,procedures, and rules used by those whowork in a discipline or engage in aninquiry.

    Often, a methodology is implemented as a-

  • 7/31/2019 Sys Dev Lifecycle

    4/33

    Impetus for change

    New employment compensation may make itnecessary to change the reporting procedure, or filestructures.

    An organization acquires another organization.

    A local bank branches into the suburbs. A Department spends 80% of its budget in one month.

    Two departments are doing essentially the same work,and each department head insists that the otherdepartment should be eliminated.

  • 7/31/2019 Sys Dev Lifecycle

    5/33

    Impetus for change

    A request for a new form discloses the use of bootlegforms.

    Top management suspects various report

    ( suspicion of transparency ).

    Heads of different departments inquire about thedelays in service delivery.

    Documentation of various activities cannot be found.

  • 7/31/2019 Sys Dev Lifecycle

    6/33

    System Development LifeCycleMotivation behind the feasibility study:

    The risks and potential returns.

    Managements bias toward the user.

    Financial cost and the funds available for system work.

    Priorities of other projects in the firm.

    The persuasive ability of the user.

  • 7/31/2019 Sys Dev Lifecycle

    7/33

    The feasibility study

    It is a test of a system proposal accordingto its

    workability, impact on the organization,ability to

    meet user needs and effective use ofresources. It

    Focuses on three major questions:

    What are the users demonstrable needsand how does a candidate system meetthem?

    What resources are available for given

    candidate systems? Is the problem worth

  • 7/31/2019 Sys Dev Lifecycle

    8/33

    The result of the feasibilitystudyIt is a proposal summarizing what is known and

    what is going to be done. It consists :

    Statement of the problem- a carefully wordedstatement of the problem that led to analysis.

    Summary of findings and recommendations- a list of

    major findings and recommendations of the study. Details of findings.

    Recommendations and conclusions.

  • 7/31/2019 Sys Dev Lifecycle

    9/33

    System Development LifeCycle Problem definition The first step in the system

    development life cycle during which the problem isidentified, its cause determined, and a strategy forsolving it developed.

    Analysis To attack a problem by breaking it into

    sub-problems. The second step in the systemdevelopment life cycle (following problem definition)during which the responsible people determine exactlywhat must be done to solve the problem.

  • 7/31/2019 Sys Dev Lifecycle

    10/33

    System Development LifeCycle Problem definition The first step in the

    system development life cycle duringwhich the problem is identified, its causedetermined, and a strategy for solving itdeveloped.

    Problem may include the duplication ofeffort, bottlenecks, inefficient existingprocedures, or whether parts of theexisting system would be candidates for

    computerization.The analysts first task is to prepare astatement specifying the scope andobjective of the problem. S/he thenreviews it with the user. This may be

  • 7/31/2019 Sys Dev Lifecycle

    11/33

    System Development LifeCycle

    Design The third step in the system developmentlife cycle (following analysis and precedingdevelopment) during which the responsible peopledetermine how the problem will be solved by specifyingthe systems physical components.

    Development The fourth step in the systemdevelopment life cycle (following design and precedingtesting) during which the system is created.

    S l if

  • 7/31/2019 Sys Dev Lifecycle

    12/33

    System Development LifeCycleTestingTesting The fifth step in the systemdevelopment life cycle (followingdevelopment and precedingimplementation) intended to ensure that

    the system does what it was designed todo.

    ImplementationImplementation The sixth step in thesystem development life cycle (following

    testing and preceding maintenance)during which the system is installed andreleased to the user.

    MaintenanceMaintenance The final step in thes stem develo ment life c cle followin

  • 7/31/2019 Sys Dev Lifecycle

    13/33

    Question

    1. Recognition of Need:

    Preliminary survey/initialInvestigation

    What is theproblem oropportunity ?

    a. Statement ofscope andobjectives

    b. Performancecriteria

    2. Feasibility Studya. Evaluation of existing

    system or procedure

    b. Analysis of

    alternative candidatesystems

    c. Cost Estimates

    a. What areusers

    demonstrable

    need?

    b. Is theproblem

    worth solving?

    c. How can the

    problem be

    a. Technical/Behavioural

    Feasibility

    b. Cost/benefit

    analysis

  • 7/31/2019 Sys Dev Lifecycle

    14/33

    Stages KeyQuestion

    Result

    3. Analysis:

    Detailed evaluation ofpresent system.

    Data collection

    What must be

    done to solvethe problems?

    Facts?

    Logical model of

    the system (DataFlow diagram,

    Data

    dictionary etc.)

    4. Design (general anddetailed

    specification)

    a) Output b) Input

    c) Files d) Procedures

    How mustproblem besolved? What

    is the systemflow?

    Design ofalternative

    Solutions

    Final cost/benefit

    Analysis

    Hardware

    specification

    Cost estimates

  • 7/31/2019 Sys Dev Lifecycle

    15/33

    Stages Key Question Result

    5. Testing

    a. Unit testingb. Combined module

    testing

    c. User acceptance

    testing

    How well do the

    program/moduletest out?

    How ready are

    Programs for

    acceptance test?

    Testing plans

    Security, audit andoperating

    procedures

    Actual hardware

    useFormal system

    Test

    6. Implementation

    User training

    File/System

    conversion

    What is the

    actualoperation?

    Are the user

    manual ready?

    Training program

    User-friendly

    documentation

  • 7/31/2019 Sys Dev Lifecycle

    16/33

    Stages Key Question Result

    6. Post-Implementationand Maintenance

    a. Problem Solvingb. Enhancements

    a) Is the systemrunningproperly?

    b) Should thesystem bemodified?

    User requirementsmet

    Satisfied User

  • 7/31/2019 Sys Dev Lifecycle

    17/33

    Project Termination

    A systerm project may be dropped at any time

    prior to implementation although it becomes more

    difficult and costly when it has passed the design

    phase. Reasons may include:

    Changing objectives or requirements of the usercannot be met by the existing design.

    Benefits realized from the candidate system do notjustify commitment to implementation.

  • 7/31/2019 Sys Dev Lifecycle

    18/33

    Project Termination

    There is a sudden change in the users budget oran increase in design costs beyond the estimatemade during the feasibility study.

    The project greatly exceeds the time and cost

    schedule.In each case described above, a system project

    may be terminated at the users request.

  • 7/31/2019 Sys Dev Lifecycle

    19/33

    System failure

  • 7/31/2019 Sys Dev Lifecycle

    20/33

    System failure

    There are many reasons a new system does not

    meet user requirements:

    Users requirements were not clearly defined orunderstood.

    The user was not directly involved in the crucialphases of system development.

    The analyst, programmer, or both wereinexperienced.

  • 7/31/2019 Sys Dev Lifecycle

    21/33

    System failure

    The systems analyst (or the project team) had todo the work under stringent time limitations.Consequently, not enough went into the feasibilitystudy and system design.

    User training was poor. Existing hardware proved deficient to handle the

    new application.

    The new system was not user-friendly.

  • 7/31/2019 Sys Dev Lifecycle

    22/33

    System failure

    The new system left users in other departments out of

    touch with information that the old system hadprovided.

    Users changed their requirements.

    The user staff was hostile.

    Besides these, there may be other causes. The

    important point is that the analyst, with his latest

    software and hardware, still needs experience,

    creative ability, knowledge and support from

    users.

    ons era ons or can a e

  • 7/31/2019 Sys Dev Lifecycle

    23/33

    ons era ons or can a esystemsThe basic problem is to match the demands

    for serviceswith available resources. How much one

    project is

    favored over another depends on technical,behavioral

    and economic factors.

    Technical factors:

    is the system departments ability tohandle a project.

    It depends on the availability of qualified

    analysts, designers and software

    ons era ons or can a e

  • 7/31/2019 Sys Dev Lifecycle

    24/33

    ons era ons or can a esystemsBehavioral factors:

    The users past experience with an existing system.

    The success record of the analyst.

    The influence the user can exert on upper managementto finance a candidate system.

    Economic factors:

    The systems potential for return on investment.

    Cost effectiveness of the proposed system.

    ons era ons or can a e

  • 7/31/2019 Sys Dev Lifecycle

    25/33

    ons era ons or can a esystemsPolitical factors:

    Politics is the art of using influence and buildingcoalitions when routine procedures do not achieve

    the right results. In developing a system one

    should focus on:

    convincing the right people to gather support. achieving a collaborative relationship with the end user.

    anticipating resistance early and turning into support.

  • 7/31/2019 Sys Dev Lifecycle

    26/33

    Prototyping

    A preliminary, working, physical model of a

    system or a subsystem.

    The analysts objective is to gather information aboutthe users requirements from the bottom up byallowing the user to interact with the prototype.

    In effect, the prototype serves as a preliminary versionof the system or component from which requirementsare extracted and on which subsequent versions arebased.

  • 7/31/2019 Sys Dev Lifecycle

    27/33

    Prototyping

    Prototyping is a powerful, bottom upalternative or supplement to logicalmodeling.

    The basic idea is to build a reasonably

    complete, working, physical model (orprototype) of the system.

    As a minimum, the analyst can use screenpainters, menu builders, and reportgenerators to prepare a slide

    show of sample screens, dialogues andreports.

    In a more complete prototype, preliminary

  • 7/31/2019 Sys Dev Lifecycle

    28/33

    Prototyping

    The prototyping process can be viewed asa loop.

    Following problem definition andpreliminary analysis, a first draft of theprototype is created.

    The user then interacts with the prototypeand identifies its strengths andweaknesses.

    Assuming that the first draft is less thantotally acceptable, the prototype ismodified to reflect the users suggestionsand the user interacts with the new,improved version.

    The refine-and-test c cle continues until

  • 7/31/2019 Sys Dev Lifecycle

    29/33

    Prototyping

    Prototyping is iterative. The process starts with a

    set of partial requirements, and new or expandedrequirements are continuously incorporated intothe system based on user feedback.

    During the refine-and-test cycle, the emphasis ison quick turnaround, with changes made on thespot or within at most a few days.

    Instead of conceptualizing needs, the users workwith and react to the prototype and the analystobserves and interprets their reactions.

    To many people, manipulating a working modelseems more natural than answering questions inan interview or trying to link an abstract model toreality.

    Sometimes, the prototyping process continuesuntil a finished system emerges.

  • 7/31/2019 Sys Dev Lifecycle

    30/33

    Prototyping

    Advantages:

    During the analysis stage, prototyping canbe used to replace or supplement logicalmodeling, particularly when the users areuncomfortable with abstract models.

    Prototyping is valuable on projects withlong development times because the usergets to see something physical.

    Prototyping is an excellent tool when therequirements are highly uncertain or tooabstract to specify, or when nocomparable system has been previouslydeveloped.

    Generally, if reaching a solution calls for

    simulation, experimentation, or

  • 7/31/2019 Sys Dev Lifecycle

    31/33

    Prototyping

    Disadvantages:

    Creating a large, complex system from the bottom upcan be very difficult, and integrating subsystemprototypes can prove almost impossible because thereis no clear way (short of a parallel top-down logical or

    data model) to visualize subsystem relationships. Prototyping is not a good choice for algorithm-drivenprojects that involve heavy calculation.

    i

  • 7/31/2019 Sys Dev Lifecycle

    32/33

    Prototyping

    Disadvantages:

    Prototyping can bias the systems analysisprocess in subtle ways.

    Because the prototype is developed on acomputer, the system will almost certainly

    be implemented on a computer andmanual alternatives are unlikely to beconsidered.

    Because it is a working model, people willinevitably think of the prototype as thesolution.

    A related danger is that the system willnever be developed properly because theprototype seems too good.

    i

  • 7/31/2019 Sys Dev Lifecycle

    33/33

    Prototyping

    Disadvantages:

    Prototypes generally lack security,auditing, and other controls and dataintegrity may be difficult to ensure.

    Additionally, prototypes are ofteninefficient and difficult to maintain. Forexample, it is difficult to trace the rippleeffects that result from modifying a

    prototype, and that affects maintainability.

    Economy of scale is another problem;

    prototypes that