Beruflich Dokumente
Kultur Dokumente
Requirements Determination
Requirements determination is the least technical but the most critical phase of the software development lifecycle
functional requirements: what the system does, its functionality, data structures non-functional requirements: how well the system provides the functional requirements
constraint statements
Requirements Examples
Functional requirements
the system should provide budget reports the user can select which pages to print operational constraints
Non-functional requirements
the system should be able to work on any Web browser any interaction between the user and the system should not exceed 2 seconds only direct managers can see personnel records of staff
performance constraints
security constraints
Requirements elicitation
system scope model, business use case model, business class model
Domain Expert
Customer
Business Analyst
Business Model
interviewing customers and domain experts, questionnaires, observation, study of documents and software systems prototyping, brainstorming, JAD, RAD unclear objectives, undocumented procedures, unstable requirements, eroded user expertise, inexperienced developers, insufficient user commitment
Traditional techniques are usually used in low-risk projects, while modern techniques are usually used in high-risk projects
use case requirements v. knowledge transfer may only have a vague picture of their requirements may be unwilling to cooperate may be unable to express their requirements in understandable terms may demand requirements that exceed the project budget the requirements of different customers may be in conflict
structured, unstructured open-ended, closed-ended, probing ensure that people at different levels of the organisation are interviewed provide a starting point and context for the discussion send a memo summarising the interview to the interviewee after the meeting good communication and interpersonal skills help
Advice
questions about specific details questions about a vision for the future questions about alternative ideas questions about a minimally acceptable solution questions about other sources of information questions soliciting diagrams opinionated questions biased questions imposing questions
10
Advantages
Disadvantages
provides high quality information can probe in greater depth if the interviewee has nothing to say, the interview can be terminated
time-consuming the analyst must work to obtain results after the interview the interviewer may be biased conflicting information from interviewees may be difficult to resolve
11
Questionnaires are an efficient way of gathering information and are normally used in addition to interviews Questionnaires are passive
respondent has time to consider their response respondent cannot clarify the question multiple-choice, rating questions, ranking questions a well-designed, easy-to-answer questionnaire gets a higher response rate need to consider distortions when evaluating the results
Advice
12
Advantages
Disadvantages
economical way of gathering data from large numbers of people in well-designed questionnaires, results are easy to analyse
good questionnaires can be difficult to construct it is difficult to follow up may suffer from low response rates
13
A business analyst may find it difficult to obtain complete information through interviews and questionnaires
observation may be an effective fact-finding technique passive observation, active observation, explanatory observation observations should be carried out for a prolonged period of time, at different time intervals, and at different workloads be aware that people behave differently when observed
Advice
14
Advantages
Disadvantages
provides first hand experience of the way people work data collected can have a high level of validity can be used to verify information or to examine exceptional procedures can provide data about the performance of the existing system and users
people do not like being observed requires a trained and skilled observer has serious logistical problems for the analyst there may be ethical problems
15
Useful for discovering both use case and domain knowledge requirements Potential sources of information
organisation documents
business forms, work procedures, job descriptions, policy manuals, business plans, organisational charts, correspondence, minutes, accounting records, external correspondence, customer complaints computer screens and reports, system operating manuals, user and technical documentation, system analysis and design models
16
if some of the functionality is required in the new system if some of the data must be migrated into the new system if the documentation provides algorithms that might be needed in the new system to make sure any defects are avoided in the new system may help to understand the organisation if parts of the existing system may be retained baseline information can be used to evaluate the new system's performance
17
Advantages
Disadvantages
helps in understanding the organisation helps in preparing other kinds of fact finding the existing system may provide formally defined requirements for the new system
18
Effective for eliciting requirements that are difficult to obtain from customers (especially concerning new systems) The most frequently used method of modern requirements elicitation
software prototypes are constructed to visualise parts of the system a quick and dirty working model of the solution
19
Advantages
Disadvantages
helps to assess the feasibility and usefulness of a system useful for clarifying requirements and resolving conflicts may speed up delivery
user may find it difficult to realise the complexity of the project quick and dirty solutions may end up in the final product too much emphasis may be placed on the user interface
20
Brainstorming is a technique for forming new ideas or for finding a solution to a specific problem
used because of the difficulty in reaching a consensus among stakeholders about the requirements a facilitator
Consists of
defines a probortunity statement consisting of trigger questions think of answers to trigger questions read out ideas vote to prioritise the ideas
21
what features should be supported by the system? what are the input data and outputs? what classes are needed in the business/domain object model? what questions should be raised in interviews/questionnaires? what issues need to be considered? what are the main risks? what trigger questions should be asked during this or future sessions?
22
one or more workshops that bring together all stakeholders a workshop can take a few hours to a couple of weeks leader
conducts and moderates the meeting, is not a stakeholder records the session, must have touch-typing skills
scribe
23
Advantages
Disadvantages
groups increase productivity, learn faster, make more educated judgements, eliminate more errors, take riskier decisions, focus attention on the most important issues, etc.
24
attractive for smaller projects evolutionary prototyping CASE tools with code generation specialists with advanced tools (SWAT) interactive JAD
RAD combines
replace the scribe with the SWAT team forbids scope creep by trimming down the solution
timeboxing
25
Advantages
Disadvantages
inconsistent GUI designs specialised rather than generic solutions deficient documentation software that is difficult to scale up
26
Identify the stakeholders Evaluate the risk of the project Select the most appropriate requirements elicitation techniques for each stakeholder and the project as a whole Consider the implementation details for each selected technique
e.g. select people to interview, identify questions for interviews and questionnaires, decide how many interviews or questionnaires, organise JAD session, etc.
27
analyst's experience
studying business documents requires little experience while participating in a JAD session requires a lot understanding the current system, identifying improvements, developing the new system how rich and detailed is the information produced? to what extent is the technique useful for obtaining and understanding facts and opinions?
type of information
depth of information
28
breadth of information
the range of information and information sources that can be collected using a technique how easy is it to combine information from different sources and resolve differences in opinion or facts how much time and energy do the intended users devote to the analysis process? low cost or high cost?
integration of information
user involvement
cost
29
interviews with senior manager(s) analyse documents, interviews JAD sessions, questionnaires interviews with senior managers, JAD sessions for users at all levels
to identify improvements