MIS 210 Information Systems I Lecture 2: SDLC Methodologies Project Initiation and Planning Requirements Analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Systems Development Life Cycle (SDLC) Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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. Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Characteristics of Software • Software is developed, not manufactured • Software does not “wear out” – although it can become obsolete Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Today’s Software Development Environment • Failures • Productivity gap • Backlogs • Maintenance bound Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Alleviating the Problems in Systems Development Elimination of the causes of system failure lie in 1. 2. 3. 4. the application of methodologies modeling tools techniques 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Tools • Software support that helps create models or other project components • From simple drawing programs to complex CASE tools Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Techniques • Collection of guidelines that help the analyst complete a system development activity or task • Step-by-step instructions • General advice Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Some Techniques • • • • • Sylnovie Merchant, Ph.D. Strategic planning Project management User interviewing Data-modeling Relational database design MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 The SDLC F r o n t e n d B a c k e n d 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 Sylnovie Merchant, Ph.D. A D I MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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) Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Planning • • • • • Identifying business value Analyze feasibility Develop work plan Staff the project Control and direct project Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Design • • • • • Design selection Architecture design Interface design Data storage design Program design Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Implementation • Construction – Program building – Program and system testing • Installation – Conversion strategy – Training plan – Support plan Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Methodologies Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Common Development Methodologies and Techniques Code & fix model Structured development Prototyping Rapid application development Object-oriented development Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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... Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Structured Development • Based on the principles of: – modularization – top-down decomposition – process driven • Structured programming • Structured design • Structured analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Systems Development Life Cycle Waterfall Model Project Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Implementation Maintenance Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Waterfall Model • Problems – dependent on documents, particularly in completing the requirements and design phases – tendency to hide poorly understood requirements with elaborate specifications Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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? Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Disadvantages • Poor documentation • Hard to control/manage • (Unrealistic) User expectations – time for final system – final system differences • reduced analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Advantages of OO • • • • • • • • Faster development Higher quality Easier maintenance Increased scalability Better information structure Increased adaptability Increased modeling power Supports complexity Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Project Initiation and Planning Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Confirming Project Feasibility • • • • • Sylnovie Merchant, Ph.D. Economic Organizational and cultural Technological Schedule Resource MIS 210 Fall 2004 Intangibles in Economic Feasibility • Costs and benefits cannot always be measured • Examples – Increased levels of service – Survival – Lost customers or sales Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Organizational and Cultural Feasibility • Each company has own culture • New system must fit into culture • Evaluate related issues for potential risks Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Technological Feasibility • Does system stretch state-of-the-art? • Does expertise exist in-house for development? • Does a third party need to be involved? Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Schedule Feasibility • Can project be completed on time? • Risk of schedule slipping • Assumptions and estimates Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Resource Feasibility • Team member availability • Team skill levels • Equipment • Support staff • Physical facilities Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 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 Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Launching Project • Oversight committee is finalized and meets to give go-ahead • Formal announcement made • Key question, “Are we ready to start?” Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Focusing the Investigation • Most system problems occur in complex tasks that have high user impact • Application complexity • User impact Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Requirements Analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Analysis A. Determine system requirements B. Structure requirements – 1. Process modeling – 2. Logic modeling – 3. Data modeling C. Select best alternative Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Requirements Analysis Goals • Fully describe the current system – Study and analyze the current system (gather and study facts) • • • • Determine the ideal information system Identify resource constraints Define and prioritize requirements Inspire user confidence/ownership Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Study & Analyze Current System • Gather information on what the system should do from as many sources as possible • Concentrate on WHAT is needed, not HOW to do it • “Don’t try to fix it unless you understand it” • Major problem: analyst not understanding user needs Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Study & Analyze Current System 1. 2. 3. 4. -- Activities -Learn about current system (gather facts) Model current system Analyze problems/opportunities (study facts) Establish new system objectives Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Study & Analyze Current System -- Output -1. 2. 3. 4. Complete statement of user environment Models of current system List of major problems/causes/effects System objectives Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Learn About Current System (gather facts) Gather information from: – Current information system: • a current IS may exist – External sources: • reviewing other IS outside the organization can reveal practical ideas and techniques – Internal sources: • single most important source of facts is the user • existing paper work or documents is also a good source Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Tactics • • • • • • • Listen - don’t lecture Don’t pre-solve problem Compare stories Look for reluctant responses Observe your effects on system Avoid politics (head nodding) Expect hard, boring work Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Fact-finding Methods • Research and site visits • Existing documentation • Observation • Questionnaires • Interviews Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Observation • Not for long periods of time – will change what your measuring • • • • Vary observation periods Take only minimal, preplanned notes Coordinate visit beforehand Beware of Selective Perception!!! Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Questionnaires -- Types -- • Open-ended (free format) • Closed-ended (fixed format) – – – – multiple choice rating ranking single fact Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Questionnaire Development 1. Determine what facts need to be collected 2. Determine whether free- or fixed-format is best. Usually, a combination is used. 3. Write the questions. Examine them carefully. Make sure the questions don't reflect your personal biases. 4. Test the questions on a small sample of respondents. Modify those questions that respondents had problems with. 5. Duplicate and distribute the questionnaire. Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Questionnaires - the Good and the Bad Advantages – – – – Can be quickly answered. Cheap for gathering data from a large number of users. Allow users to maintain anonymity. Responses can be tabulated and analyzed quickly. Disadvantages – Number of respondents is often low. – – – – – No guarantee that the user will answer all the questions. Inflexible - voluntary information is stifled. Elimination of body cues. No immediate opportunity to clarify an answer. Good questionnaires are difficult to prepare. Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Interviews • Types of Interviews 1. Unstructured 2. Structured • Types of Questions 1. Open-ended 2. Closed-ended • Focus of Questions 1. Decision analysis 2. Data analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 How to Conduct an Interview 1. Select interviewees. Learn as much as you can about interviewee. 2. Make an appointment - never 'drop by' 3. Limit the interview to between 1/2 hour and 1 hour 4. Clear it with the interviewee's supervisor 5. Conduct the interview in a private location 6. Prepare for the interview: provide an interview agenda 7. Conduct the interview: opening, body, conclusion 8. Follow-up Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Interviewing Tips • • • • • Watch the time Don’t look at watch No leading questions Listen No body language Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 More Interviewing Tips • • • • • • Make the user feel important Be courteous and professional Don’t take exhaustive notes Use structured questions Don’t ask users to remember details Avoid gang interviews Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Interviews - the Good and the Bad • Advantages – Users are actively involved – SA can probe for more feedback from user – SA can reword questions for each interviewee – Body cues • Disadvantages – Very time consuming, thus very costly – Success of the interview is dependent on the SA's human relations skills – Interviewing may be impractical due to location of interviewees Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Overall Strategy for Fact Finding 1. Learn all you can from existing documents 2. If appropriate, observe the system in action 3. Conduct interviews 4. Use questionnaires to clear up things you don't fully understand 5. Follow-up Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Some Questions That Must be Answered • What are the inputs to this system? • What are the outputs of this system? • What is the business process (i.e., how is data processed)? • Who are the direct end-users? • How will the users feel about this system? • Who developed the existing system? Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Analyze Problems / Opportunities (study facts) • Study and analyze the "current" system • Problem analysis is difficult. – We often try to solve problems without analyzing them. – We try to state the problem in terms of a solution. • Use the PIECES framework to frame your investigation of the problems, opportunities, and requirements – Performance analysis – – – – – Information and data analysis Economic analysis Control and security analysis Efficiency analysis Service analysis Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 Requirements Analysis Document • Parts – How analysis was conducted • credibility • restarts – – – – User requirements System constraints Realistic System Objectives Documentation Sylnovie Merchant, Ph.D. MIS 210 Fall 2004 User Requirements • • • • User system objectives (unedited) Reports (type/frequency) User training needs Effect of system on various users – Organization Chart Sylnovie Merchant, Ph.D. MIS 210 Fall 2004