Vous êtes sur la page 1sur 54

System Development Life Cycle (SDLC)

CIS 105

Topics
List and describe the classic functions of managers: planning, organizing, directing, and controlling Define system, analysis, and design Describe the principal functions of the systems analyst List and describe the phases of the systems development life cycle (SDLC) Describe various data-gathering and analysis tools List and describe various system testing methods List and describe various system conversion methods
2

Classic Management Functions


Planning devising plans for the organization and setting goals to achieve the plan Organizing deciding how to use the organizations resources and includes hiring and training workers Directing guiding employees to perform their work in a way that supports the organizations goals Controlling monitoring the organizations progress toward reaching its goals
3

Levels of Management
Strategic level

Long range Primary function: planning Primary functions organizing and staffing Primary functions directing and controlling
4

Tactical level

Operational level

System Development Life Cycle (SDLC)


Managers at each level need information to help them make decisions, so they rely on some type of Information System. How are Information Systems purchased or built? The process which includes analyzing the system requirements to designing and implementing a new system is called the System Development Life Cycle (SDLC). 5

Systems

Analysis

Design

System an organized set of related components established to accomplish a certain task


Computer system a system that has a computer as one of its components

Analysis - Studying an existing system to determine how it works and how it meets users needs

Typically happens as a result of some impetus for change, combined with the authority to make the change

Design - The process of developing a plan for an improved system, based on the result of the systems analysis
6

System Development Life Cycle (SDLC)


SDLC is an organized set of activities that guides those involved through the design, development, and implementation of an information system. The number and names of each SDLC phase may vary by author and software company, but they all are very similar. For this class, we will use the phases shown in this presentation. The participants include technical staff, but also include non-technical business experts including end-users. 7

Users
Users are individuals that use a system to perform their jobs. Users provide insight to the day-to-day business operations. Users must be included from the beginning to the end so that they will feel some sense of ownership of the new system when it is implemented.
8

Who Participates?

Project Team

Systems Analyst: A Change Agent


Systems analyst functions as the change agent. The catalyst or persuader who overcomes the reluctance to change within an organization What it takes:

Coordination of many people, tasks, and schedules Communication skills, both oral and written Planning and design (an analytical mind) Self-discipline and self-direction Good organizational skills Creativity

10

Systems Development Life Cycle


1. Preliminary Investigation Problem Definition Feasibility

5. Implementation Training Conversion Evaluation Maintenance

Ongoing Activities Project Management Feasibility Assessment Documentation Information Gathering.

2. Analysis Gather data Analyze data Develop requirements

4. Development Scheduling Programming Testing

3. Design Preliminary design Detail design


11

Phase 1: Preliminary Investigation


A brief study of the problem to determine whether the project should be pursued Usually launched by a formal project request. Define the Problem Set scope (boundaries) of the problem One of the deliverables is the Feasibility Assessment. Feasibility - measure of how suitable the development of a system will be to the organization.
12

Feasibility Assessment Report


Introduction brief statement Existing System
Background Problems

Benefits of a New System Feasibility of a New System


Operational Schedule Technical Economic

Recommendation

13

Phase 2: Analysis
What is the definition of Analysis?

Studying an existing system to determine how it works and how it meets users needs.

What needs to occur so an analyst can determine how the current system works?
Gather and analyze data From these findings, the system requirements for the new system can be determined.

14

Data Gathering Techniques


Review current system documentation Interview users and managers
Structured interview includes only questions that have been written out in advance Unstructured interview interviewer has a general goal but few, if any questions prepared

Questionnaires Observation Many of the reports, diagrams, and documentation are entered into the Project Notebook, Dictionary, and/or Repository. 15

Data Analysis
During this stage the problem definition is refined. A detailed list of system requirements is created without regard to any specific hardware or software Typical tools to represent data and procedures:

Entity Relationship Diagram (ERD) Data Flow Diagram (DFD) Decision table/Decision Tree

Report findings and recommendations to management


16

Systems Development Life Cycle - continued


1. Preliminary Investigation Problem Definition Feasibility

5. Implementation Training Conversion Evaluation Maintenance

Ongoing Activities Project Management Feasibility Assessment Documentation Information Gathering.

2. Analysis Gather data Analyze data Develop requirements

4. Development Scheduling Programming Testing

3. Design Preliminary design Detail design


17

Phase 3: Design
The new system is actually planned Divided into two sub-phases Preliminary design
High-level design Decide to Build or Buy

Detail design specifications


Input and Output requirements Design databases Specific network and security needs Develop Disaster Recovery Plans May enter data into a CASE Tool to generate drawings and actual programming code

Computer Aided Software Engineering

18

Build or Buy?
Build Software Customized Developed in-house Developed by outside vendor Prototyping limited function if any; shows what system may look like.

Buy Software Prepackaged software Select software vendor Customization may be offered by software vendor for a price

Will be proceeding to Phase 4: Development

Will be proceeding to Phase 4: Testing


19

Phase 4: Development
Scheduling

Define tasks and schedule Use project management software to plan human resources and dependencies (see next slide).
Develop actual programs that make up the system Each program is tested by the programmer.

Programming

Testing

Use various tests to evaluate entire system (Testing slide coming up)

20

Project Management

The process of planning, scheduling, and controlling activities Set scope (goal, objectives, expectations) Activities and Deliverables to be completed The order activities occur (some activities are concurrent and others are dependent) Gantt Chart Time and cost estimates

21

Testing Types
Perform testing with predefined test data. Unit testing verifies that individual program units work. System testing determines whether all program units work together as planned. Volume testing uses real data in large amounts to see if system can handle it. Load testing used to determine if system can handle large number of concurrent users.
22

Phase 5: Implementation
Training hands-on and user manuals Equipment conversion allow for delivery and installation File conversion manual to electronic, or systems old format to new format Auditing - need to be able to track data in system back to the source. Evaluation does system meet original requirements, benefits, and budget? Maintenance Fix bugs, enhancements, and new regulations 23 System conversion (see next slide)

System Conversion Options


Direct conversion the user simply stops using the old system and starts using the new one Parallel conversion the old and new systems are both used until users are satisfied the new system works Phased conversion the system is implemented one part at a time Pilot conversion the entire system is used by a designated set of users
24

Systems Development Life Cycle - end


1. Preliminary Investigation Problem Definition Feasibility

5. Implementation Training Conversion Evaluation Maintenance

Ongoing Activities Project Management Feasibility Assessment Documentation Information Gathering.

2. Analysis Gather data Analyze data Develop requirements

4. Development Scheduling Programming Testing

3. Design Preliminary design Detail design


25

MCC Related Courses


CIS224 Project Management CIS225AB Object-Oriented Systems Analysis and Design CIS250 Management Information Systems

26

PPT 2

Key Ideas
Many failed systems were abandoned because analysts tried to build wonderful systems without understanding the organization. The primarily goal is to create value for the organization.

1 - 27

Key Ideas
The systems analyst is a key person analyzing the business, identifying opportunities for improvement, and designing information systems to implement these ideas. It is important to understand and develop through practice the skills needed to successfully design and implement new information systems. 1 - 28

THE SYSTEMS DEVELOPMENT LIFE CYCLE

1 - 29

Major Attributes of the Life Cycle


The project -Moves systematically through phases where each phase has a standard set of outputs Produces project deliverables Uses deliverables in implementation Results in actual information system Uses gradual refinement

1 - 30

Project Phases
Planning (Why build the system? How should the team go about building it?) Analysis (Who uses system, what will it do, where and when will the system be used?) Design (How will the system work?) Implementation (System delivery)
1 - 31

A simple process for making lunch

1 - 32

Planning
Identifying business value Analyze feasibility Develop work plan Staff the project Control and direct project

1 - 33

Analysis
Analysis strategy Gathering business requirements Requirements definition use cases Process modeling Data modeling

1 - 34

Design
Design selection Architecture design Interface design Data storage design Program design

1 - 35

Implementation
Construction
Program building Program and system testing

Installation
Conversion strategy Training plan Support plan

1 - 36

Processes and Deliverables


Process
Planning

Product
System Request Feasibility Analysis Workplan System Proposal System Specification New System and Maintenance Plan

Analysis

Design
Implementation
1 - 37

SYSTEM DEVELOPMENT METHODOLOGIES

1 - 38

What Is a Methodology?
A formalized approach to implementing the SDLC

A series of steps and deliverables

Methodology Categories
Process-Centered Data-Centered Object-Oriented Structured Design Rapid Application Development Agile Development
1 - 39

Waterfall Development Methodology

1 - 40

Pros and Cons of the Waterfall Methodology


Pros
Identifies systems requirements long before programming begins Minimizes changes to requirements as project progresses

Cons
Design must be specified on paper before programming begins Long time between system proposal and delivery of new system

1 - 41

Parallel Development Methodology

1 - 42

Pros and Cons of Parallel Development Methodology


Pros
Reduces Schedule Time Less Chance of Rework

Cons
Still Uses Paper Documents Sub-projects May Be Difficult to Integrate

1 - 43

Rapid Application Development


Incorporate special techniques and tools:
CASE tools JAD sessions Fourth generation/visualization programming languages Code generators

1 - 44

Three RAD Categories


Phased development

A series of versions developed sequentially System prototyping Design prototyping

Prototyping

Throw-away prototyping

1 - 45

Phased Development Methodology

Insert Figure 1-4 here

1 - 46

Pros and Cons of Phased Development Methodology


Pros
Users Get a System To Use Quickly Users Can Identify Additional Needs For Later Versions

Cons

Users Work with a System that is Intentionally Incomplete

1 - 47

How Prototyping Works

1 - 48

Pros and Cons of Prototyping Methodology


Pros
Users Interact with Prototype Very Quickly Users Can Identify Needed Changes And Refine Real Requirements

Cons
Tendency to do Superficial Analysis Initial Design Decisions May Be Poor

1 - 49

Throwaway Prototyping

1 - 50

Pros and Cons of Throwaway Prototyping Methodology


Pros
Risks are Minimized

Cons
May Take Longer Than Prototyping

Important Issues are Understood Before the Real System is Built

1 - 51

Agile Development: Extreme Programming

1 - 52

Pros and Cons of Agile Methodologies


Pros
Fast Delivery of Results

Cons
Requires Discipline Works Best in Small Projects

Works Well in Projects With Undefined or Changing Requirements

Requires Much User Input

1 - 53

Criteria for Selecting the Appropriate Methodology


Clear user requirements Familiarity with technology Complexity of system Reliability of system Time schedule Schedule visibility
1 - 54

Vous aimerez peut-être aussi