1 / 71

Lecture 2: SDLC Methodologies Project Initiation and Planning Requirements Analysis

MIS 210 Information Systems I. Lecture 2: SDLC Methodologies Project Initiation and Planning Requirements Analysis. Systems Development Life Cycle (SDLC). Systems Development. What is a system? A collection of related components that interact to perform a task in order to accomplish a goal

powa
Download Presentation

Lecture 2: SDLC Methodologies Project Initiation and Planning Requirements Analysis

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. MIS 210 Information Systems I Lecture 2:SDLCMethodologiesProject Initiation and PlanningRequirements Analysis

  2. Systems DevelopmentLife Cycle(SDLC)

  3. Systems Development What is a system? A collection of related components that interact to perform a task in order to accomplish a goal Systems development (systems analysis and design) is the process of creating systems, developing them, and maintaining or enhancing them.

  4. Characteristics of Software • Software is developed, not manufactured • Software does not “wear out” • although it can become obsolete

  5. Today’s Software Development Environment • Failures • Productivity gap • Backlogs • Maintenance bound

  6. Alleviating the Problems in Systems Development Elimination of the causes of system failure lie in 1. the application of methodologies 2. modeling tools 3. techniques 4. project management techniques to design and build IS that not only meet the needs of the users, but also are delivered on time and within budget

  7. Principles of Successful Systems Development • Get the user 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

  8. Some Key Terms ... • Systems development life cycle (SDLC): the life of a project, from concept through implementation • Methodology: a comprehensive and detailed version of an entire SDLC • Technique: an approach that applies specific tools and rules to complete one or more phases of the methodology • Modeling tools: specific tools used to apply techniques • Project management techniques: tools used to help plan, schedule, and control a project

  9. Tools • Software support that helps create models or other project components • From simple drawing programs to complex CASE tools

  10. Some Tools • Project management applications • Drawing/graphics applications • Word processing/text editor • Computer-aided system engineering (CASE) tools • Integrated development environment (IDF) • Database management applications • Reverse-engineering tool • Code generators

  11. Techniques • Collection of guidelines that help the analyst complete a system development activity or task • Step-by-step instructions • General advice

  12. Some Techniques • Strategic planning • Project management • User interviewing • Data-modeling • Relational database design

  13. Systems Development Lifecycle (SDLC) • Three major activities • Analysis: understanding business needs • Design: conceptualizing computer-system solution • Implementation: construction, testing, and installation • Two additional phases • Project planning • Support

  14. The SDLC 1. Planning a. Project identification and selection b. Project initiation and planning 2. Analysis a. Determine system requirements (WHAT users need) b. Modeling possible solutions (HOW to satisfy user needs) 3. Design a. logical design b. physical design 4. Implementation 5. Maintenance / support Frontend A D Backend I

  15. SDLC Concepts • All projects use some variation of the SDLC • SDLC is more than phases • Principles of management • Planning and control • Organization and scheduling • Problem solving

  16. Major Attributes of the Life Cycle • The project -- • Moves systematically through phases where each phase has a standard set of outputs • Produces project deliverables • Uses deliverables in implementation • Results in actual information system • Uses gradual refinement

  17. Project Phases • Planning (Why build the system? How should the team go about building it?) • Analysis (Who uses system, what will it do, where and when will the system be used?) • Design (How will the system work?) • Implementation (System delivery)

  18. Planning • Identifying business value • Analyze feasibility • Develop work plan • Staff the project • Control and direct project

  19. Design • Design selection • Architecture design • Interface design • Data storage design • Program design

  20. Implementation • Construction • Program building • Program and system testing • Installation • Conversion strategy • Training plan • Support plan

  21. Support Phase • Objective: Keep system running productively following initial installation • End-user support • Help desks • Training programs • Maintaining and enhancing computer system • Enhancements • Upgrades • Maintenance

  22. Methodologies

  23. Common Development Methodologies and Techniques • Code & fix model • Structured development • Prototyping • Rapid application development • Object-oriented development

  24. Code and Fix It Model • An early technique • The developer, in the following order: • codes • thinks about requirements • fixes the code • continues this process until...

  25. Structured Development • Based on the principles of: • modularization • top-down decomposition • process driven • Structured programming • Structured design • Structured analysis

  26. Systems Development Life CycleWaterfall Model Project Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Implementation Maintenance

  27. Waterfall Model • Problems • dependent on documents, particularly in completing the requirements and design phases • tendency to hide poorly understood requirements with elaborate specifications

  28. Advantages of Structured Development • Been used successfully for over 30 years • Provides a clear framework that defines and divides important activities • Can be applied to both small and large projects • Division of labor is easier to facilitate

  29. Limitations of Structured Development • Specification problems • assumes that development is a sequential process • Changing requirements • requirements specified at the beginning • assumption that requirements will not change • Conceptualization and visualization • document led methodology • volume of documentation can be huge • Inaccuracy • there is only downward trend

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

  31. Advantages • Speed • Easier for end-users to learn • System changes discovered earlier • End-user involvement (ownership) • increased user satisfaction • increased user acceptance • User-analyst communication • Early problem detection • reduced development time • reduced maintenance

  32. Disadvantages • Poor documentation • Hard to control/manage • (Unrealistic) User expectations • time for final system • final system differences • reduced analysis

  33. Rapid Application Development(RAD) • Logistical approach to systems design • Combines • integrated CASE tools • information engineering methodologies • management techniques • Speeds up Systems Development by as much as 20 times • Critics consider it incomplete life cycle

  34. Object-Oriented (OO) Development • A fundamentally new way of thinking about developing systems • Object-oriented: means that we organize software as a collection of discrete objects that incorporate both data and behavior • Object-oriented development: an approach to systems development that proposes the use of objects in the building of new systems and the rebuilding of old ones

  35. Advantages of OO • Faster development • Higher quality • Easier maintenance • Increased scalability • Better information structure • Increased adaptability • Increased modeling power • Supports complexity Reuse

  36. Disadvantages of OO • Maturity of technology • Need for standards • Lack of database technology • Lack of reusable software • Lack of metrics • Speed of execution • Availability of qualified personnel • Cost of conversion

  37. Project Initiation and Planning

  38. Project Initiation and Planning • Long-term information systems strategic plan (top-down) • Department managers or process managers (bottom-up) • Response to outside forces • Legislative changes • Market forces • Competition

  39. Confirming Project Feasibility • Economic • Organizational and cultural • Technological • Schedule • Resource

  40. Intangibles in Economic Feasibility • Costs and benefits cannot always be measured • Examples • Increased levels of service • Survival • Lost customers or sales

  41. Organizational and Cultural Feasibility • Each company has own culture • New system must fit into culture • Evaluate related issues for potential risks

  42. Technological Feasibility • Does system stretch state-of-the-art? • Does expertise exist in-house for development? • Does a third party need to be involved?

  43. Schedule Feasibility • Can project be completed on time? • Risk of schedule slipping • Assumptions and estimates

  44. Resource Feasibility • Team member availability • Team skill levels • Equipment • Support staff • Physical facilities

  45. Developing Project Schedule • Task: smallest piece of work • Activity: group of tasks • Phase: group of activities • Schedule process • List all tasks for each SDLC activity • Estimate sizes of each task • Determine task sequence • Schedule tasks

  46. Project Staffing • Develop resource plan for the project • Identify and request specific technical staff • Identify and request specific user staff • Organize the project team into work groups • Conduct preliminary training and team building exercises

  47. Launching Project • Oversight committee is finalized and meets to give go-ahead • Formal announcement made • Key question, “Are we ready to start?”

  48. Focusing the Investigation • Most system problems occur in complex tasks that have high user impact • Application complexity • User impact

  49. Requirements Analysis

  50. Analysis A. Determine system requirements B. Structure requirements • 1. Process modeling • 2. Logic modeling • 3. Data modeling C. Select best alternative

More Related