180 likes | 436 Views
Data Gathering Techniques. 27 th February 2012. Data Gathering Techniques. System requirements specify what the system must do or what property or quality the system must have Need to be able to gather system requirements Functional Requirements Non-functional Requirements.
E N D
Data Gathering Techniques 27th February 2012
Data Gathering Techniques • System requirements specify what the system must do or what property or quality the system must have • Need to be able to gather system requirements • Functional Requirements • Non-functional Requirements
Functional and Non Functional Requirements • Functional Requirements: System requirements that specify what the system must do are frequently referred to as functional requirements • Non-Functional Requirements: Specify properties or qualities of the system
Failure to correctly identify system requirements: • More costly than projected • Delivered later than promised • Fail to meet users expectations • Cost of maintenance may be too high • Unreliable and prone to errors • Negative impact on reputation of IT staff
Requirements Discovery • Once the system analyst understands the problems they can successfully define the system requirements • They use fact-finding techniques to collect information about the system problems, requirements and preferences • Fact-finding defines a formal process of using research, meetings, interviews and questionnaires etc.
Documenting and Analysing Requirements • Document the draft requirements • Analyse requirements • Identify missing reqs. • Conflicting reqs. • Infeasible reqs. • Overlapping reqs. • Ambiguous reqs. • Formalize requirements • Produce requirements definition document
Fact finding Techniques • An analyst usually applies many techniques during a project leveraging advantages of each • Analysts must take great care to ensure they conduct business in an ethical manner
Existing Documentation and Forms • Enables the analyst to get a good feel for the existing system • Always gets the facts from existing documentation rather than from people • Employ document and file sampling techniques
Research and Site Visits • Site visits with companies who have experienced similar problems
Observation of the Work Environment • Analyst either observes or participates in activities to learn about the system • Advantages: • Very reliable • Reduce the complexity of tasks • Inexpensive • Facilitates work measurements • Disadvantages: • People may behave differently • Time period may not convey the complexity of the work • Inconvenient schedule • Task interruptions • Does not allow for analyst to see system exceptions • Work may be contrived due to presence of analyst
Questionnaires • Advantages: • Quick • Inexpensive • Maintain anonymity • Rapid analysis • Disadvantages: • Number of respondents • Response rate • Inflexible • No body language • Lack of opportunity for clarification • Difficult to prepare
Interviews • Advantages: • Interviewees can actively contribute to the system • Opportunity for further probing • Adapt to interviewee • Observe non-verbal communication • Disadvantages: • Time-consuming • Dependent on analysts interpersonal skills • Impractical
Conducting Interviews • Select interviewees • Prepare • Follow up on interview • Listening • Body language
Discovery Prototyping • Advantages • Users can experiment with software • Assess the feasibility of system • Acts as training mechanism • Aids to build test plan • Minimise time spent on fact finding • Disadvantages • Training may be required • Users may develop unrealistic expectations • May extend development schedule and cost
Joint Requirements Planning • Highly structured group meetings are conducted for the purpose of analysing problems and defining problems • Including: • Sponsor, facilitator, users/managers, scribe, IT staff • Benefits: • Involves users and managers • Reduces system development time • Design approvals based on prototyping
Fact Finding Strategy • Systems analyst needs an organised method for collecting fact. • Learn from existing documents • If appropriate observe system in action • Distribute questionnaire • Conduct interviews • Build discovery prototype (optional) • Follow-up –use appropriate fact-finding techniques to verify facts