Investigating System Requirements Chapter 2
Where are we? Analysis Chapters Ch 2 Investigating System Requirements Use Cases Ch 4 Domain Modeling Ch 5 Use Case Modeling
Outline Stakeholders SDLC Core Process 3 – Analysis – Discover & Understand Details Information Gathering Techniques Types of Requirements FURPS+
Stakeholders - "Who do you involve and talk to?" Internal Stakeholders External stakeholders Operational stakeholders regularly interact with system Executive stakeholders don’t directly interact but .. use the info , or have financial interest
SDLC Phase: Analysis Core Process 3: Discover & understand details
SDLC Phase: Analysis Gather detailed info Information Gathering Techniques Interviews Observation Review documents & procedures Questionnaires Research vendor solutions User feedback Why do we use different Techniques? Formal Systems Informal Systems
Information Gathering Techniques Interviews Interview users & other key stakeholders Effective way to understand business functions and rules Disadvantage time consuming resource expensive Tips: Plan the interview Stay on schedule!! Interview several key people together (pros & cons) Listen carefully and take notes Be neutral Seek diverse views
Checklist for Conducting an Interview
Information Gathering Techniques Observations Direct Observation Watching users do their jobs Firsthand & objective Disadvantage People may change their normal operating behavior. Time-consuming
Information Gathering Techniques Review Documents & Procedures Existing business documents Forms, reports, work procedures Input & outputs Types of information to be discovered: Reasons for current system design Rules for processing data Problems with existing system Discrepancies, Redundancies Opportunity to meet new need Special information processing circumstances
Information Gathering Techniques Questionnaires Used with a large number of stakeholders Closed-ended (Quantitative data ) Open-ended questions (Qualitative data) Research Vendor Solutions Many problems have been solved by other companies + provide new ideas, cheaper, less risky - may purchase before understanding problem User Feedback Collecting feedback after initial testing Comments & suggestions
SDLC Phase: Analysis Define requirements System Requirements - (def) specifications that define the new system Functional Requirements - activities the system must perform Non-Functional Requirements - constraints and performance goals Functional Usability Reliability Performance Security + requirements requirements requirements requirements requirements Business rules & processes UI Design Navigation Help Doc. Avail. reqs Failure rate Backup & recovery Response time real time -batch Access controls Encryption
SDLC Phase: Analysis Define requirements cont. Prioritize requirements Create models of the requirements Model - a representation of some aspect of a system Textual model, Graphical models, Mathematical models Prioritize requirements High vs. low priority Scope creep Develop UI Dialogs Prototype Can be better than an abstract model Evaluate Requirements with users