1 / 40

System analysis and design

System analysis and design. Safaa s.y. dalloul. Introduction. Unit 1: Introduction. Rapid Application Development (RAD) Phased Development Prototyping Throwaway Prototyping Agile Development Extreme Programming Selecting the appropriate methodology Exercises. Introduction The SDLC

wilson
Download Presentation

System analysis and design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. System analysis and design Safaa s.y. dalloul

  2. Introduction

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

  4. Introduction SDLC 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.

  5. SDLC phases

  6. Phase one: planning • 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 Focus: Who, what, where, and when for this system? Primary Outputs: Systemproposal

  8. Phase Three: Design • 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 Focus: Delivery and support of completed system Primary Outputs: Installedsystem

  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 requestwith feasibility study is a primary output of design( F ) • System specificationis 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 Rapid Application Development (RAD) • Phased Development • Prototyping • Throwaway Prototyping Agile Development Extreme Programming Selecting the appropriate methodology Exercises • Introduction • The SDLC • Planning • Analysis • Design • Implementation • Development Methodologies • Structured Design • Waterfall methodology • Parallel Development

  13. Development Methodologies Structured Design, RAD, Agile 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

  14. Development Methodologies Structured Design, RAD, Agile • Process-centered methodologiesfocus first on defining the activities associated with the system • Data-centeredmethodologies focus first on defining the contents of the data storage containers and how the contents are organized

  15. Development Methodologies Structured Design, RAD, Agile • Object-oriented methodologiesattempt 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.

  16. example • The open-ended rectangles in the diagram represent data storage containers • The roundedrectangles in the diagram represent activities performed Payroll System

  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 waterfalland parallelmethodologies.

  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

  21. Structured design Waterfall Methodology • 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

  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.

  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 Rapid Application Development (RAD) • Phased Development • Prototyping • Throwaway Prototyping Agile Development Extreme Programming Selecting the appropriate methodology Exercises • Introduction • The SDLC • Planning • Analysis • Design • Implementation • Development Methodologies • Structured Design • Waterfall methodology • Parallel Development

  37. Selecting appropriate methodology Exercises • 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

  38. 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?

  39. Safaa S.y. dalloul Safaadalloul.wordpress.com Thank You

More Related