1 / 23

Chapter 16: Trends in System Development

This chapter examines the reasons for slow development, and explores different development approaches such as Rapid Application Development (RAD), prototyping, and the Unified Process. It discusses the benefits, risks, and when to use each approach.

campbellv
Download Presentation

Chapter 16: Trends in System Development

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. Chapter 16:Trends in System Development Systems Analysis and Design in a Changing World

  2. Reasons for Slow Development • Rework • Using the wrong software • Not meeting minimum quality standards • Shifting requirements and project changes • Changes to design and construction • Improper tools and techniques for project • Reduces quality, increases development time • Poor Project Management Systems Analysis and Design in a Changing World, 3rd Edition

  3. Cost of Change in Each Project Phase Systems Analysis and Design in a Changing World, 3rd Edition

  4. What is RAD? • Collection of development approaches, techniques, tools, and technologies • RAD proven to shorten development schedules • No universal RAD approach shortens every project schedule • No technique, tools or technology fits perfectly • Key is identifying overall development approach and matching set of techniques, tools, techniques most suitable to approach and specific project Systems Analysis and Design in a Changing World, 3rd Edition

  5. Rapid Application Development • RAD is overused and poorly understood • Software developers claim they do, but cannot precisely define • Equated with tools and techniques • Prototyping, fourth-generation programming languages, CASE tools • Object-oriented analysis, design, and development • Tool vendors and methodologies claim RAD • Competing and confusing claims Systems Analysis and Design in a Changing World, 3rd Edition

  6. Development Approach as a Function of Project Characteristics Systems Analysis and Design in a Changing World, 3rd Edition

  7. Prototyping Approach to Development • Discovery prototype • Used in analysis or early design • Uncover or refine system requirements • Can be thrown away • Developmental prototype • Not thrown away • Part of iterative development until final system complete Systems Analysis and Design in a Changing World, 3rd Edition

  8. When to Use a Prototyping Approach • When to use: • Requirements cannot be fully specified outside of architectural or detailed design • Technical feasibility unknown or uncertain • Development tools powerful enough to create functional system • When not to use: • System is non-interactive or internally complex • Strict security or performance requirements exist Systems Analysis and Design in a Changing World, 3rd Edition

  9. Prototyping Tool Requirements • Development speed • Flexibility and power • Techniques and capabilities • WYSIWYG (what you see is what you get) • Generation of complete programs, program skeletons, or database schemas from diagrams • Rapid customization of software libraries or components • Error-checking and debugging capabilities Systems Analysis and Design in a Changing World, 3rd Edition

  10. Prototyping Tools • Simple • Access • Excel • Graphical • Visual Studio .NET • PowerBuilder • Oracle Forms Systems Analysis and Design in a Changing World, 3rd Edition

  11. Prototyping FPF Principle • Make it Functional • Make it Pretty • Make it Fast Systems Analysis and Design in a Changing World, 3rd Edition

  12. Spiral Approach to Development • Iterative development approach • Each iteration may include combination of planning, analysis, design, or development steps • More radical departure from traditional development than prototyping development Systems Analysis and Design in a Changing World, 3rd Edition

  13. The Spiral Life Cycle Systems Analysis and Design in a Changing World, 3rd Edition

  14. Steps in the Spiral Development Approach • Criteria for feature selection for each prototype • User priorities • Uncertain requirements • Function reuse • Implementation risk • Break into categories • “Must have”, “Should have”, “Nice to have” • Complete high priorities earlier to reduce risk Systems Analysis and Design in a Changing World, 3rd Edition

  15. Benefits and Risks of Spiral Development • Benefits • High parallelism • High user involvement • Gradual resource commitment • Frequent product delivery • Risks • Management difficulties and design complexity • More potential for rework Systems Analysis and Design in a Changing World, 3rd Edition

  16. Cumulative Cost Plotted Against Time Systems Analysis and Design in a Changing World, 3rd Edition

  17. The Unified Process • Comprehensive development approach • Originally developed by Jacobsen, Booch, and Rumbaugh in late 1990s • Dominant approach for developing software with OO models and tools • Adopts iteration from prototyping and spiral development approaches • Exclusive reliance on OO models, tools, and techniques Systems Analysis and Design in a Changing World, 3rd Edition

  18. UP Phases and Objectives (Figure 16-2) Systems Analysis and Design in a Changing World, 3rd Edition

  19. The Unified Process Life Cycle (Figure 16-1) Systems Analysis and Design in a Changing World, 3rd Edition

  20. When to Use the Unified Process • Benefits and risks mirror spiral development • Major obstacles to adopt UP include: • Complex project management (compared to sequential development) required • Need to adopt OO models, tools, techniques throughout project • UP’s formal steps, well-defined roles, attention to model building and validation makes UP preferred approach for large-scale development Systems Analysis and Design in a Changing World, 3rd Edition

  21. Rapid Development Techniques • Collection of guidelines used to help an analyst complete system development activities or tasks • Risk management • Joint application design (JAD) • Tool-based development • Software reuse • Object frameworks Systems Analysis and Design in a Changing World, 3rd Edition

  22. Components and the Development Life Cycle • Purchased components can form part or all of system • Components provide one model for designing and deploying systems • Component issues • Internally developed components • Object-oriented techniques • Designing components for reuse Systems Analysis and Design in a Changing World, 3rd Edition

  23. Activities Added to SDLC Phases when Components are Purchased Systems Analysis and Design in a Changing World, 3rd Edition

More Related