chapter 1 development methodologies / sdlc

23
Chapter 1 Development Methodologies / SDLC Modern Systems Analysis and Design Seventh Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich

Upload: brinly

Post on 25-Feb-2016

110 views

Category:

Documents


5 download

DESCRIPTION

Modern Systems Analysis and Design Seventh Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich. Chapter 1 Development Methodologies / SDLC. Outline. Systems Development Life Cycle Planning Analysis Design Implementation Maintenance Methodologies. Process of System Development. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter 1 Development Methodologies / SDLC

Chapter 1Development Methodologies / SDLC

Modern Systems Analysisand Design Seventh Edition

Jeffrey A. Hoffer Joey F. George

Joseph S. Valacich

Page 2: Chapter 1 Development Methodologies / SDLC

Outline

• Systems Development Life Cycle– Planning– Analysis– Design– Implementation– Maintenance

• Methodologies

Page 3: Chapter 1 Development Methodologies / SDLC

Process of System Development

System Development Process – a set of activities, methods, best practices, deliverables, and

automated tools that stakeholders use to develop and maintain information systems and software.

– “Every medium to large corporation and every custom software producer will have its own specific life cycle or systems development methodology in place.” (Hoffer)

– Shift in focus from custom-designed, stand-alone applications to implementing packaged software, such as ERP and data warehousing systems, and integrating outsourced software into the organization’s existing applications.

Page 4: Chapter 1 Development Methodologies / SDLC

Life Cycle versus Methodology

System Life Cycle – Divides the life of an information system into two stages,

systems development and systems operation and support.

System Development Methodology – A very formal and precise system development process that

defines a set of activities, methods, best practices, deliverables, and automated tools that system developers and project managers are to use to develop and maintain information systems and software.

Page 5: Chapter 1 Development Methodologies / SDLC

A System Life Cycle

Conversion

Obsolescence

Lifetimeof a

System

LIFE CYCLE STAGE

System Development

usingSystem Development

Methodology

LIFE CYCLE STAGE

System Operationand Support

usingInformation Technology

Page 6: Chapter 1 Development Methodologies / SDLC

Principles of System Development

• Get the owners and users involved.

• Use a problem-solving approach.

• Establish phases and activities.

• Establish standards for development and documentation.

• Justify systems as capital investments.

• Don’t be afraid to cancel or revise scope.

• Divide and conquer.

• Design systems for growth and change.

• Proper planning and project management

Page 7: Chapter 1 Development Methodologies / SDLC

Systems Development Life Cycle

• Series of steps used to manage the phases of development for an information system

• Consists of five phases:– Planning– Analysis– Design– Implementation– Maintenance

Page 8: Chapter 1 Development Methodologies / SDLC

The SDLC

1. PlanningA. Project identification and selectionB. Project initiation and planning

2. AnalysisA. Determine system requirements (WHAT users want)B. Modeling possible solutions (HOW to satisfy user

needs)3. Design

A. Logical designB. Physical design

4. Implementation5. Maintenance/Support

Frontend

Backend

A

D

I

Page 9: Chapter 1 Development Methodologies / SDLC

Systems Development Life Cycle

– Phases are not necessarily sequential– Each phase has a specific outcome and deliverable– Individual companies use customized life cycles

Cross life cycle activities – Activities that overlap many or all phases of the

methodology.• Fact-finding• Documentation and presentation• Feasibility analysis• Process and project management

Page 10: Chapter 1 Development Methodologies / SDLC

Phases of the Systems Development Life Cycle

1. Planning(a) Project Identification and Selection

• Two Main Activities– Identification of need– Prioritization and translation of need into a development schedule

• Helps organization to determine whether or not resources should be dedicated to a project.

(b) Project Initiation and Planning• Two Activities

– Formal preliminary investigation of the problem at hand– Presentation of reasons why system should or should not be developed

by the organization

Page 11: Chapter 1 Development Methodologies / SDLC

Phases of the Systems Development Life Cycle (Cont.)

2. Analysis(a) Determine System Requirements

• Study of current procedures and information systems• Determine requirements

– Study current system– Structure requirements and eliminate redundancies

(b) Modeling Possible Solutions• Generate alternative designs• Compare alternatives• Recommend best alternative

Page 12: Chapter 1 Development Methodologies / SDLC

Phases of the Systems Development Life Cycle (Cont.)

3. Design(a) Logical Design

• Concentrates on business aspects of the system

(b) Physical Design• Technical specifications

4. Implementation–Hardware and software installation–Programming–User Training–Documentation

5. Maintenance–System changed to reflect changing conditions–System obsolescence

Page 13: Chapter 1 Development Methodologies / SDLC

Common Development Methodologies and Techniques

• Structured Development

• Information Engineering

• Prototyping

• Joint Application Design

• Commercial Methodologies (i.e., STRADIS, Navigator)

• Agile

• Service-Oriented Architecture

• Object-Oriented Development

• Spiral Model

• Transform Model

• Jackson Structured Development

• Code & Fix Model

• Participatory Design

• eXtreme Programming

Page 14: Chapter 1 Development Methodologies / SDLC

Model-Driven Development Route

Modeling – The act of drawing one or more graphical representations (or pictures)

of a system.

– Modeling is a communication technique based upon the old saying, “a picture is worth a thousand words.”

Model-driven development – Techniques that emphasize the drawing of models to help visualize and

analyze problems, define business requirements, and design information systems.

• Structured systems analysis and design — process-centered

• Information engineering (IE) — data-centered

• Object-oriented analysis and design (OOAD) — object-centered (integration of data and process concerns)

Page 15: Chapter 1 Development Methodologies / SDLC

Structured Development

• Based on the principles of:– Modularization– Top-down decomposition– Process-driven

• Structured programming, design and analysis

Page 16: Chapter 1 Development Methodologies / SDLC

Information Engineering

• Data-oriented technique• Emphasis on planning• Applied to the organization as a whole rather than an

ad hoc, project-by-project basis

Page 17: Chapter 1 Development Methodologies / SDLC

Prototyping

• Principle: a user can tell you better what they DON’T want than what they DO want

• Expendable (throw-away) prototyping: – Discarded after use– Used to support the analysis and design phases

• Evolutionary prototyping:– Prototype evolves into the final system– Is it a methodology?

• Rapid application development (RAD) – Techniques emphasizing extensive user involvement in the rapid and

evolutionary construction of working prototypes of a system to accelerate the system development process.

Page 18: Chapter 1 Development Methodologies / SDLC

Joint Application Design (JAD)

– Users, Managers and Analysts work together for several days

– System requirements are reviewed– Structured meetings

Page 19: Chapter 1 Development Methodologies / SDLC

Commercial Off-the-Shelf Software Route

• Software package or solution that is purchased to support one or more business functions and information systems.

Page 20: Chapter 1 Development Methodologies / SDLC

Improving IS Development Productivity

• Computer-aided software engineering (CASE) tools– Facilitate creation of a central repository for system

descriptions and specifications

Page 21: Chapter 1 Development Methodologies / SDLC

CASE Architecture

Page 22: Chapter 1 Development Methodologies / SDLC

Agile Methodologies

• Principles:– Focus on adaptive methodologies (not predictive)– Focus on people (not roles)– Focus on self-adaptive processes (refine and improve

development process)

• Argues that engineering and software development are not the same.– Engineering requirements are well understood.– Software requirements are not well understood and change

continually.

Page 23: Chapter 1 Development Methodologies / SDLC

Service-Oriented Architecture

• Build systems around generic services or specific business functions.

• Reuse in many different applications.

• Example: credit check application– Any time the business would need a credit check (when

adding a new customer, entering a new order, and so forth), the current credit check “service” application would be altered to fit that business function.