Presentation is loading. Please wait.

Presentation is loading. Please wait.

SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. INTRODUCTION.

Similar presentations


Presentation on theme: "SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. INTRODUCTION."— Presentation transcript:

1 SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL

2 INTRODUCTION

3 UNIT 1: INTRODUCTION Introduction The SDLC  Planning  Analysis  Design  Implementation Development Methodologies Structured Design  Waterfall methodology  Parallel Development Rapid Application Development (RAD)  Phased Development  Prototyping  Throwaway Prototyping Agile Development Extreme Programming Selecting the appropriate methodology Exercises

4 INTRODUCTION The systems development life cycle (SDLC) is the process of understanding how an information system (IS) can support business needs, designing the system, building it, and delivering it to users. SDLC

5 SDLC Phases PlanningAnalysisDesignImplementation SDLC PHASES

6 PHASE ONE: PLANNING Steps:  Identify opportunity  Analysis feasibility  Develop work plan  Staff Project  Control and direct project Steps:  Identify opportunity  Analysis feasibility  Develop work plan  Staff Project  Control and direct project Focus: Why build this system? How to structure the project? Primary Outputs: System Request with Feasibility Study. Project Plan

7 PHASE TWO: ANALYSIS Steps:  Develop analysis strategy  Determine business requirements  Create use cases  Model processes  Model data Steps:  Develop analysis strategy  Determine business requirements  Create use cases  Model processes  Model data Focus: Who, what, where, and when for this system? Primary Outputs: System proposal

8 PHASE THREE: DESIGN Steps:  Design physical system  Design architecture  Design interface  Design programs  Design database and files Steps:  Design physical system  Design architecture  Design interface  Design programs  Design database and files Focus: How will system work? Primary Outputs: System specification

9 PHASE FOUR: IMPLEMENTATION Steps:  Construct System  Install system  Maintain system  Post-implementation Steps:  Construct System  Install system  Maintain system  Post-implementation Focus: Delivery and support of completed system Primary Outputs: Installed system

10 TRUE OR FALSE System request is a primary output of design ( ) System specification with feasibility study is a primary output of planning ( ) System proposal is a primary output of analysis ( ) Installed system is a primary output of implementation ( )

11 TRUE OR FALSE System request with feasibility study is a primary output of design ( F ) System specification is a primary output of planning ( F ) System proposal is a primary output of analysis ( T ) Installed system is a primary output of implementation ( T )

12 UNIT 1: INTRODUCTION Introduction The SDLC  Planning  Analysis  Design  Implementation Development Methodologies Structured Design  Waterfall methodology  Parallel Development Rapid Application Development (RAD)  Phased Development  Prototyping  Throwaway Prototyping Agile Development  Extreme Programming Selecting the appropriate methodology Exercises

13 DEVELOPMENT METHODOLOGIES A methodology is a formalized approach to implementing the SDLC (i.e., it is a list of steps and deliverables). The methodology will vary depending on whether the emphasis is on businesses processes or on the data that supports the business Structured Design, RAD, Agile

14 DEVELOPMENT METHODOLOGIES Process-centered methodologies focus first on defining the activities associated with the system Data-centered methodologies focus first on defining the contents of the data storage containers and how the contents are organized Structured Design, RAD, Agile

15 DEVELOPMENT METHODOLOGIES Object-oriented methodologies attempt to balance the focus between processes and data. Object-oriented methodologies utilize the Unified Modeling Language (UML) to describe the system concept as a collection of objects incorporating both data and processes. Structured Design, RAD, Agile

16 EXAMPLE Payroll System The open-ended rectangles in the diagram represent data storage containers The rounded rectangles in the diagram represent activities performed

17 STRUCTURED DESIGN Structured design methodologies adopt a formal step-by-step approach to the SDLC that moves logically from one phase to the next Traditional structured design uses one set of diagrams to represent the processes and a separate set of diagrams to represent data. This category includes two methodologies waterfall and parallel methodologies.

18 STRUCTURED DESIGN Waterfall Methodology With waterfall development-based methodologies, the analysts and users proceed sequentially from one phase to the next

19 STRUCTURED DESIGN Waterfall Methodology

20 STRUCTURED DESIGN Waterfall Methodology Advantages:  System requirements are identified long before programming begins  Changes to the requirements are minimized as the project proceeds Advantages:  System requirements are identified long before programming begins  Changes to the requirements are minimized as the project proceeds

21 STRUCTURED DESIGN Disadvantages:  The design must be completely specified before programming begins  A long time elapses between the completion of the system proposal in the analysis phase and the delivery of the system Disadvantages:  The design must be completely specified before programming begins  A long time elapses between the completion of the system proposal in the analysis phase and the delivery of the system Waterfall Methodology

22 STRUCTURED DESIGN Parallel Methodology

23 STRUCTURED DESIGN Parallel Methodology This methodology attempts to address the long time interval between the analysis phase and the delivery of the system A general design for the entire system is performed and then the project is divided into a series of distinct subprojects.

24 RAPID APPLICATION DEVELOPMENT (RAD) RAD-based methodologies adjust the SDLC phases to get some part of the system developed quickly and into the hands of the users. Most RAD-based methodologies recommend that analysts use computer tools to speed up the analysis, design, and implementation phases, such as CASE (computer-aided software engineering) tools.

25 RAPID APPLICATION DEVELOPMENT (RAD) One possible subtle problem with RAD-based methodologies is managing user expectations In this category we will study three different methodologies Phased development, Prototyping development and Throwaway development methodologies

26 RAPID APPLICATION DEVELOPMENT (RAD) Phased Development The phased development-based methodologies break the overall system into a series of versions that are developed sequentially Phased development-based methodologies have the advantage of quickly getting a useful system into the hands of the users The major drawback to phased development is that users begin to work with systems that are intentionally incomplete

27 RAPID APPLICATION DEVELOPMENT (RAD) Phased Development

28 RAPID APPLICATION DEVELOPMENT (RAD) Prototyping Prototyping-based methodologies perform the analysis, design and implementation phases concurrently. All three phases are performed repeatedly in a cycle until the system is completed. A prototype is a smaller version of the system with a minimal amount of features

29 RAPID APPLICATION DEVELOPMENT (RAD) Prototyping

30 RAPID APPLICATION DEVELOPMENT (RAD) Prototyping Advantage: Provides a system for the users to interact with, even if it is not initially ready for use. Disadvantage: Often the prototype undergoes such significant changes that many initial design decisions prove to be poor ones. Advantage: Provides a system for the users to interact with, even if it is not initially ready for use. Disadvantage: Often the prototype undergoes such significant changes that many initial design decisions prove to be poor ones.

31 RAPID APPLICATION DEVELOPMENT (RAD) Throwaway Prototyping Throwaway prototyping methodologies are similar to prototyping based methodologies. The main difference is that throwaway prototyping IS completed during a different point in the SDLC. Has relatively thorough analysis phase.

32 RAPID APPLICATION DEVELOPMENT (RAD) Throwaway Prototyping

33 AGILE DEVELOPMENT This category focuses on streamlining the SDLC by eliminating much of the modeling and documentation overhead and the time spent on those tasks. Projects emphasize simple, iterative application development. This category uses extreme programming, which is described next

34 AGILE DEVELOPMENT Extreme Programming Is founded on four core values: communication, simplicity, feedback, and courage. Key principles of XP include:  Continuous testing  Simple coding  Close interaction with the end users to build systems very quickly

35 AGILE DEVELOPMENT Extreme Programming

36 UNIT 1: INTRODUCTION Introduction The SDLC  Planning  Analysis  Design  Implementation Development Methodologies Structured Design  Waterfall methodology  Parallel Development Rapid Application Development (RAD)  Phased Development  Prototyping  Throwaway Prototyping Agile Development  Extreme Programming Selecting the appropriate methodology Exercises

37 SELECTING APPROPRIATE METHODOLOGY Selecting a methodology is not simple, as no one methodology is always best. Many organizations have their own standards. The next figure summarizes some important methodology selection criteria Exercises

38 Ability to Develop systems Structured MethodologiesRAD Methodologies Agile Methodologies WaterfallParallelPhasedPrototypingThrowaway PrototypingXP With Unclear User RequirementsPoor GoodExcellent With Unfamiliar TechnologyPoor GoodPoorExcellentPoor That are ComplexGood PoorExcellentPoor That are reliableGood PoorExcellentGood With a short Time SchedulePoorGoodExcellent GoodExcellent With Schedule VisibilityPoor ExcellentexcellentGood

39 EXERCISES ☺ Suppose you are a project manager using the waterfall development methodology on a large and complex project. Your manager has just read the latest article in Computerworld that advocates replacing the waterfall methodology with prototyping and comes to your office requesting you to switch What do you say? ☺ Think about your ideal analyst position. Write a newspaper ad to hire someone for that position. What requirements would the job have? What skills and experience would be required? How would applicants demonstrate that they have the appropriate skills and experience?

40 SAFAA S.Y. DALLOUL SAFAADALLOUL.WORDPRESS.COM


Download ppt "SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. INTRODUCTION."

Similar presentations


Ads by Google