Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

10 Techniques for Gathering Requirements


Published on

Published in: Technology, Education

10 Techniques for Gathering Requirements

  1. 1. Focus Groups. Functional Decomposition. Interface Analysis. Interviews. Lessons Learned Process. Metrics and KPI. Non-Functional Decomposition. Observation. Organizational Modeling. Problem Tracking.
  2. 2. “The most important single aspect of software development is to be clear about what you are trying to build”.
  3. 3. Focus groups
  4. 4. What is a focus group? • Semi-structured “group interview”. • Focused discussion with moderator. • 6 – 12 participants, 1 – 3 hours. • Homogenous group. • Socially-oriented.
  5. 5. What can a focus group do? • Explore attitudes, opinions, behaviors, beliefs & recommendations of a group. • Define problems, gather reactions to proposed solutions, explore feelings and reasons behind differences. • Test messages, make packaging decisions, determine the right outlets and public. • For products or messages, gauge public reaction to positions, explore opinions about company performance.
  6. 6. Advantages of focus groups • Socially-oriented: useful in problem definition and message testing. • Possible to probe positive or negative reactions. • Relatively inexpensive, quick results. • Flexible.
  7. 7. Disadvantages of focus groups • Can be difficult to control. • Questionable reliability. • Difficult to recruitassemble. • Should not be used: • In confrontational situations. • For statistical projections. • Confidentiality cannot be assured.
  8. 8. “Analysis occurs only when the domain expert is in Brad Kain, quoted in "UML Distilled" the room (otherwise it is pseudo-analysis)”.
  9. 9. Decomposition Functional
  10. 10. What is a functional decomposition? • Breaking down a large problem into smaller functions or deliverables (WBS). • Sub-problems are independent. • Work can be assigned to different groups.
  11. 11. What can a functional decomposition do? • Identifies the high-level function then breaks those functions into smaller pieces. • A similar process can be carried out for the work involved in a project. • Decomposition can also be performed to describe a product or process.
  12. 12. Advantages of functional decomposition • Creates a conceptual model of the work that needs to be completed. • Provides all stakeholders with a consistent view of the scope. • More readily understandable, subsets of the whole.
  13. 13. Disadvantages of functional decomposition • No way to be certain that all components have been captured. • Decomposition without understanding the relationship between pieces may create an inappropriate structure.
  14. 14. Interface Analysis
  15. 15. What is an interface analysis? • Interface is a connection between two components. • Interface include: • User interface. • Interface tofrom external applicationshardware-devices.
  16. 16. What can an interface analysis do? • Distinguishes which application provides specific functionality. • Identifying what interfaces are necessary.
  17. 17. Advantages of interface analysis • More accurate project planning and potential savings in time and cost. • Collaboration with other systems or projects. • Specification of the interfaces should prevent difficulties in integrating multiple components.
  18. 18. Disadvantages of interface analysis • Does not provide insight into other aspects of the solution.
  19. 19. nterviews
  20. 20. What is an interview? • A type of qualitative research. • Combination of observation and one-on-one interviewing. • “Interviewing is a way to collect data as well as to gain knowledge from individuals” – Kvale.
  21. 21. What can an interview do? • Allows interviewers to question in real time. • Gain insights about people.
  22. 22. Advantages of interviews • Simple, direct technique. • Enables observations of non-verbal behavior.
  23. 23. Disadvantages of interviews • Requires considerable commitment and involvement of the participants. • Training is required to conduct effective interviews.
  24. 24. Lessons Learned Process
  25. 25. What is a Lessons Learned Process? • Historical data of a project that reflect the reasoning behind actions chosen to correct variances. • Recorded throughout the project lifecycle.
  26. 26. What can a Lessons Learned Process do? • Identifies improvement opportunities. • Initiate actionable next steps.
  27. 27. Advantages of Lessons Learned Process • Useful for identifying opportunities for process improvement. • Helps build team morale after a difficult period.
  28. 28. Disadvantages of Lessons Learned Process • All participants must be prepared. • Participants may be reluctant to document and discuss problems.
  29. 29. Metrics and Key Performance Indicators
  30. 30. What is Metrics and KPI? • “A metric that helps you understand how you are doing against your objectives.” – Avinash Kaishik.
  31. 31. What can a Metrics and KPI do? • Evaluates an organization’s success. • Identification of potential improvements.
  32. 32. Advantages of Metrics and KPI • Allows stakeholders to understand the extent to which a solution. • Shows how effective the inputs and activities.
  33. 33. Disadvantages of Metrics and KPI • Gathering data beyond the needs create unnecessary cost. • You get what you measure.
  34. 34. Non-functional Requirements Analysis
  35. 35. What is NFR analysis do? • “Describe the non-behavioral aspects of a system, capturing the properties and constraints under which a system must operate. “ Chung and Julio.
  36. 36. What can a NFR analysis do? • Expressing critical ‘holistic’ requirements. • Defines the overall qualities or attributes of the resulting system (e.g. safety, security, usability, reliability).
  37. 37. Advantages of NFR analysis • Success in meeting non-functional requirements will have a strong influence on whether or not a system is accepted by its users.
  38. 38. Disadvantages of NFR analysis • More difficult to define. • May significantly impact the cost of developing a software application.
  39. 39. “Walking on water and developing software from Edward V. Berard a specification are easy if both are frozen”.
  40. 40. Observation
  41. 41. What is an observation? • Eliciting requirements by conducting an assessment of the stakeholder’s work environment.
  42. 42. What can an observation do? • Studying people performing their jobs. • Understand the current processes to better assess the process modifications.
  43. 43. Advantages of observation • Provides realistic and practical insight into the business. • Elicits details of informal communication.
  44. 44. Disadvantages of observation • Could be time-consuming. • May be disruptive to the person being shadowed.
  45. 45. Organization Modeling
  46. 46. What is an Organization Modeling? • It consists of activities such as task allocation, coordination and supervision. • Activities are directed towards the achievement of organizational aims.
  47. 47. What can an Organization Modeling do? • Defines how an organization or organizational unit is structured. • Define the scope of the organizational unit. • Know your workers.
  48. 48. Advantages Organization Modeling • Gives members clear guidelines for how to proceed. • Structure binds members together.
  49. 49. Disadvantages of Organization Modeling • Organizational redesigns are likely to be highly contentious and require significant executive support in order to be successful. • Very "resource-intensive" in terms of both people and money.
  50. 50. Problem Tracking
  51. 51. What is a Problem Tracking? • Organized approach to tracking, management, and resolution of defects, issues, problems, and risks throughout business analysis activities. • Management of issues can be resolved in a timely manner.
  52. 52. What can a Problem Tracking do? • Identification of root causes of problems. • Management of issues can be resolved in a timely manner.
  53. 53. Advantages of Problem Tracking • Provides an organized method for tracking and resolving risks. • Helps to maintain focus on open problems until they are resolved.
  54. 54. Disadvantages of Problem Tracking • Root cause analysis of the problems can take more time and resources. • If management of problems is not done, the list becomes outdated and irrelevant.
  55. 55. Thanks to sources • “On Non-Functional Requirements in Software Engineering” - Chung and Julio. • A Guide to the Business Analysis Body of Knowledge® (BABOK® Guide). • Using interviews as research instruments - Annabel Bhamani Kajornboon. • User Interview Techniques - The Art of the Question by Liz Danzico. • • Focus Groups by Kelli Matthews. •