Presentation is loading. Please wait.

Presentation is loading. Please wait.

2 Chapter 2: Approaches to System Development Systems Analysis and Design in a Changing World, 3 rd Edition.

Similar presentations


Presentation on theme: "2 Chapter 2: Approaches to System Development Systems Analysis and Design in a Changing World, 3 rd Edition."— Presentation transcript:

1 2 Chapter 2: Approaches to System Development Systems Analysis and Design in a Changing World, 3 rd Edition

2 2 2 Learning Objectives u Explain the purpose and various phases of the systems development life cycle (SDLC) u Explain the differences between a model, a tool, a technique, and a methodology u Describe the two overall approaches used to develop information systems: the traditional method and the object-oriented method

3 2 Systems Analysis and Design in a Changing World, 3rd Edition 3 Learning Objectives ( continued ) u Describe some of the variations of the system development life cycle (SDLC) u Describe the key features of current trends in system development: the spiral model, eXtreme Programming (XP), the Unified Process (UP), and Agile Modeling u Explain how automated tools are used in system development

4 2 Systems Analysis and Design in a Changing World, 3rd Edition 4 Overview u Systems development life cycle (SDLC) l Provides overall framework for managing system development process u Two main approaches to SDLC l Traditional approach: structured systems development and information engineering l Object-oriented approach: object technologies requires different approach to analysis, design, and programming u All projects use some variation of SDLC

5 2 Systems Analysis and Design in a Changing World, 3rd Edition 5 Systems Development Life Cycle (SDLC) u Systems development project l Planned undertaking with fixed beginning and end l Produces desired result or product l Can be a large job of thousands of hours of effort or a small one month project u Successful development project: l Provides a detailed plan to follow l Organized, methodical sequence of tasks and activities l Produces reliable, robust, and efficient system

6 2 Systems Analysis and Design in a Changing World, 3rd Edition 6 Phases of the Systems Development Lifecycle (SDLC) u Project planning: initiate, ensure feasibility, plan schedule, obtain approval for project u Analysis: understand business needs and processing requirements u Design: define solution system based on requirements and analysis decisions u Implementation: construction, testing, user training, and installation of new system u Support: keep system running and improve

7 2 Systems Analysis and Design in a Changing World, 3rd Edition 7 Information System Development Phases

8 2 Systems Analysis and Design in a Changing World, 3rd Edition 8 SDLC and problem-solving u Similar to problem-solving approach l Organization recognizes problem (Project Planning) l Project team investigates, understands problem and solution requirements (Analysis) l Solution is specified in detail (Design) l System that solves problem built and installed (Implementation) l System used, maintained, and enhanced to continue to provide intended benefits (Support)

9 2 Systems Analysis and Design in a Changing World, 3rd Edition 9 Planning Phase of SDLC u Define business problem and scope u Produce detailed project schedule u Confirm project feasibility l Economic, organizational, technical, resource, and schedule u Staff the project (resource management) u Launch project  official announcement

10 2 Systems Analysis and Design in a Changing World, 3rd Edition 10 Analysis Phase of SDLC u Gather information to learn problem domain u Define system requirements u Build prototypes for discovery of requirements u Prioritize requirements u Generate and evaluate alternatives u Review recommendations with management

11 2 Systems Analysis and Design in a Changing World, 3rd Edition 11 Design Phase of SDLC u Design and integrate the network u Design the application architecture u Design the user interfaces u Design the system interfaces u Design and integrate the database u Prototype for design details u Design and integrate system controls

12 2 Systems Analysis and Design in a Changing World, 3rd Edition 12 Implementation Phase of SDLC u Construct software components u Verify and test u Convert data u Train users and document the system u Install the system

13 2 Systems Analysis and Design in a Changing World, 3rd Edition 13 Support Phase of SDLC u Maintain system l Small patches, repairs, and updates u Enhance system l Small upgrades or enhancements to expand system capabilities l Larger enhancements may require separate development project u Support users l Help desk and/or support team

14 2 Systems Analysis and Design in a Changing World, 3rd Edition 14 Scheduling Project Phases u Waterfall approach – each phase falls into next phase l Freeze planning specifications before analysis l Freeze analysis specifications before design l Once go over the waterfall for each phase, do not go back u Overlapping (or concurrent) phases l Waterfall is not realistic, we are not perfect l Overlaps can be more efficient than waterfall

15 2 Systems Analysis and Design in a Changing World, 3rd Edition 15 Scheduling Project Phases ( continued ) u Iteration - Work activities are repeated l Each iteration refines previous result l Approach assumes no one gets it right the first time l There are a series of mini projects for each iteration u Example: Outline, rough draft, edited result u Example: Blueprint, frame, completed house

16 2 Systems Analysis and Design in a Changing World, 3rd Edition 16 The waterfall approach to the SDLC

17 2 Systems Analysis and Design in a Changing World, 3rd Edition 17 Overlap of Systems Development Activities

18 2 Systems Analysis and Design in a Changing World, 3rd Edition 18 Iterations across life cycle phases

19 2 Systems Analysis and Design in a Changing World, 3rd Edition 19 Methodologies and Models u Methodologies l Comprehensive guidelines to follow for completing every SDLC activity l Collection of models, tools, and techniques u Models l Representation of an important aspect of real world, but not same as real thing l Abstraction used to separate out aspect l Diagrams and charts l Project planning and budgeting aids

20 2 Systems Analysis and Design in a Changing World, 3rd Edition 20 Some Models Used in System Development

21 2 Systems Analysis and Design in a Changing World, 3rd Edition 21 Tools and Techniques u Tools l Software support that helps create models or other required project components l Range from simple drawing programs to complex CASE tools u Techniques l Collection of guidelines that help analyst complete system development activity or task l Can be step-by-step instructions or just general advice

22 2 Systems Analysis and Design in a Changing World, 3rd Edition 22 Some Tools Used in System Development

23 2 Systems Analysis and Design in a Changing World, 3rd Edition 23 Some Techniques Used in System Development

24 2 Systems Analysis and Design in a Changing World, 3rd Edition 24 Relationships Among Components of a Methodology

25 2 Systems Analysis and Design in a Changing World, 3rd Edition 25 Two Approaches to System Development u Traditional Approach l Also called structured system development l Structured analysis and design technique (SADT) u Structured programming l Improves computer program quality l Allows other programmers to easily read and modify code l Each program module has one beginning and one ending l Three programming constructs (sequence, decision, repetition)

26 2 Systems Analysis and Design in a Changing World, 3rd Edition 26 Three Structured Programming Constructs

27 2 Systems Analysis and Design in a Changing World, 3rd Edition 27 Top-Down Programming u Divides complex programs into hierarchy of modules u The module at top controls execution by “calling” lower level modules u Modular programming l Similar to top-down programming u One program calls other programs to work together as single system

28 2 Systems Analysis and Design in a Changing World, 3rd Edition 28 Top-Down or Modular Programming

29 2 Systems Analysis and Design in a Changing World, 3rd Edition 29 Structured Design u Technique developed to provide design guidelines l What set of programs should be l What program should accomplish l How programs should be organized into a hierarchy u Modules are shown with structure chart u Main principle of program modules l Loosely coupled – module is independent of other modules l Highly cohesive – module has one clear task

30 2 Systems Analysis and Design in a Changing World, 3rd Edition 30 Structure Chart Created Using Structured Design Technique

31 2 Systems Analysis and Design in a Changing World, 3rd Edition 31 Structured Analysis u Define what system needs to do (processing requirements) u Define data system needs to store and use (data requirements) u Define inputs and outputs u Define how functions work together to accomplish tasks u Data flow diagrams and entity relationship diagrams show results of structured analysis

32 2 Systems Analysis and Design in a Changing World, 3rd Edition 32 Data Flow Diagram (DFD) created using Structured Analysis Technique

33 2 Systems Analysis and Design in a Changing World, 3rd Edition 33 Entity-Relationship Diagram (ERD) created using the Structured Analysis technique

34 2 Systems Analysis and Design in a Changing World, 3rd Edition 34 Structured Analysis Leads to Structured Design and Structured Programming

35 2 Systems Analysis and Design in a Changing World, 3rd Edition 35 Information Engineering (IE) u Refinement to structured development u Methodology with strategic planning, data modeling, automated tools focus u More rigorous and complete than SADT u Uses process dependency diagram u Industry merged key concepts from structured development and information engineering approaches into traditional approach

36 2 Systems Analysis and Design in a Changing World, 3rd Edition 36 Object-Oriented Approach u Views information system as collection of interacting objects that work together to accomplish tasks l Objects - things in computer system that can respond to messages l No processes, programs, data entities, or files are defined – just objects u Object-oriented analysis (OOA) l Defines types of objects that do work of system l Shows how objects interact with users to complete tasks

37 2 Systems Analysis and Design in a Changing World, 3rd Edition 37 Object-Oriented Approach to Systems

38 2 Systems Analysis and Design in a Changing World, 3rd Edition 38 Object-Oriented Approach ( continued ) u Object-oriented design (OOD) l Defines object types needed to communicate with people and devices in system l Shows how objects interact to complete tasks l Refines each type of object for implementation with specific language of environment u Object-oriented programming (OOP) l Writing statements in programming language to define what each type of object does u Benefits of OOA include naturalness and reuse

39 2 Systems Analysis and Design in a Changing World, 3rd Edition 39 Class Diagram Created During OO Analysis

40 2 Systems Analysis and Design in a Changing World, 3rd Edition 40 SDLC Variations u Many variations of SDLC in practice l No matter which one, tasks are similar u Based on variation of names for phases l SDLC compared to IE compared to UP u Based on emphasis on people l User-centered design, participatory design u Based on speed of development l Rapid application development (RAD) l Prototyping

41 2 Systems Analysis and Design in a Changing World, 3rd Edition 41 Life Cycles with Different Names for Phases

42 2 Systems Analysis and Design in a Changing World, 3rd Edition 42 Current Trends in Development u Spiral Model l Highly iterative approach l Works around the phases (analysis, design, construction, testing, integration with previous prototype component) in a spiral until project is complete l Initial planning is to do just enough analysis to build initial prototype l Each iteration in the spiral addresses greatest risk

43 2 Systems Analysis and Design in a Changing World, 3rd Edition 43 The Spiral Life Cycle Model

44 2 Systems Analysis and Design in a Changing World, 3rd Edition 44 Extreme Programming (XP) u Recent, lightweight, development approach to keep process simple and efficient u Describes system support needed and required system functionality through informal user stories u Has users describe acceptance tests to demonstrate defined outcomes u Relies on continuous testing and integration, heavy user involvement, programming done by small teams

45 2 Systems Analysis and Design in a Changing World, 3rd Edition 45 The Unified Process (UP) u Object-oriented development approach u Offered by IBM / Rational l Booch, Rumbaugh, Jacobson u Unified Modeling Language (UML) used primarily for modeling u UML can be used with any OO methodology u UP defines 4 life cycle phases l Inception, elaboration, construction, transition

46 2 Systems Analysis and Design in a Changing World, 3rd Edition 46 The Unified Process (UP) ( continued ) u Reinforces six best practices l Develop iteratively l Define and manage system requirements l Use component architectures l Create visual models l Verify quality l Control changes

47 2 Systems Analysis and Design in a Changing World, 3rd Edition 47 Agile Modeling u Hybrid of XP and UP (Scott Ambler) has more models than XP, less documents than UP u Interactive and Incremental Modeling: l Apply right models l Create several models in parallel l Model in small increments u Teamwork: l Get active stakeholder participation l Encourage collective ownership l Model with others and display models publicly

48 2 Systems Analysis and Design in a Changing World, 3rd Edition 48 Agile Modeling ( continued ) u Simplicity: l Use simple content l Depict models simply l Use simplest modeling tools u Validation l Consider testability l Prove model is right with code

49 2 Systems Analysis and Design in a Changing World, 3rd Edition 49 Tools to Support System Development u Computer-Aided System Engineering (CASE) l Automated tools to improve the speed and quality of system development work l Contains database of information about system called repository u Upper CASE - support for analysis and design u Lower CASE - support for implementation u ICASE - integrated CASE tools

50 2 Systems Analysis and Design in a Changing World, 3rd Edition 50 CASE Tool Repository Contains all System Information

51 2 Systems Analysis and Design in a Changing World, 3rd Edition 51 Summary u Systems development projects are organized around the SDLC u SDLC Phases include project planning, analysis, design, implementation, and support to be completed for each project u Systems developers learn SDLC based on the sequential waterfall approach u In practice, phases overlap and projects contain many iterations of analysis, design, and implementation activities

52 2 Systems Analysis and Design in a Changing World, 3rd Edition 52 Summary ( continued ) u All development approaches use a SDLC to manage the project. u Models, techniques, and tools make up a systems development methodology u System development methodologies are based on traditional approach or object-oriented approach u System development methodology provides guidelines to complete every activity in the SDLC

53 2 Systems Analysis and Design in a Changing World, 3rd Edition 53 Summary ( continued ) u Original SDLC was waterfall approach u Most SDLC use iteration across phases u Rapid application development (RAD) goal is to speed up development u Current trends include: spiral model, eXtreme Programming (XP), Unified Process (UP) and Agile Modeling u CASE tools are designed to help analysts complete tasks


Download ppt "2 Chapter 2: Approaches to System Development Systems Analysis and Design in a Changing World, 3 rd Edition."

Similar presentations


Ads by Google