Advantage: Acceptance and Evaluation Criteria Definition
Agile methodologies may require that all requirements be expressed in the form of testable acceptance criteria.
Disadvantage: Acceptance and Evaluation Criteria Definition
Acceptance and evaluation criteria may express contractual obligations and as such may be difficult to change for legal or political reasons.
Advantage: Benchmarking (for strategies, operations and processes)
Benchmarking provides organizations with information about new and different methods, ideas, and tools to improve organizational performance.
Disadvantage: Benchmarking (for strategies, operations and processes)
Benchmarking is time consuming. In addition, organizations may not have the expertise to conduct the analysis and acquire or interpret useful competitive information.
Ability to elicit many ideas in a short time period.
Dependent on participants' creativity and willingness to participate. Organizational and interpersonal politics may also limit participation.
Strength: Business Rules Analysis
Clearly defining and structuring rules allows organizations to make changes to policy without altering processes. The impact of changes to business rules can be assessed more easily when they are documented separately from the processes they detail or the means used to enforce the rules.
Weakness: Business Rules Analysis
Organizations may produce lengthy lists of business rules. Business rules can contradict one another or produce unanticipated results when combined. It may also be important to question existing business rules for continuing relevance to current and projected modes of organizational operations and structure.
Advantage: Data Dictionary and Glossary
A data dictionary or glossary is useful for ensuring that all stakeholders are in agreement on the formation and content of relevant information. Capturing these definitions in a single model ensures that these terms will be used consistently.
Strength: Data Flow Diagram
May be used as a discovery technique for processes and data, or as a technique for verification of a Functional Decomposition or Data Model that have already been completed.
Weakness: Data Flow Diagram
Data Flow Diagrams cannot easily show who is responsible for performing the work. They cannot show alternative paths through the same process.
Advantage: Data Model (Entity Relationship Diagram or Class Diagram)
Data models offer the flexibility of different levels of description. They provide a consistent modeling approach that supports the transition through planning, analysis, design, and implementation.
Disadvantage: Data Model (Entity Relationship Diagram or Class Diagram)
Data models can be complex, and they deal with concepts that may be unfamiliar to people without a background in Information Technology. If not properly presented, they can be difficult for users to understand and relate to. Terms and definitions may vary in use in different organizational units or domains.
Advantage: Decision Analysis
Using consistent financial justification techniques in all business cases provides decision makers with quantitative measures upon which to make project investment decisions.
Disadvantage: Decision Analysis
Decision analysis requires specialized knowledge and skills, including mathematical knowledge, an understanding of probability, and similar concepts.
Advantage: Document Analysis
Leverage existing materials to discover and/or confirm requirements. A means to cross-check requirements from other elicitation techniques such as interviews, job shadowing, surveys, or focus groups.
Disadvantage: Document Analysis
Existing documentation may not be up-to-date or valid. Document analysis can be a time consuming and even tedious process to locate the relevant information.
Estimation can help stakeholders make better decisions based on an improved understanding of the likely outcomes from an initiative.
Stakeholders frequently treat estimates as commitments and expect that, once an estimate is given, the solution team will meet the time and cost estimate.
Advantage: Focus Group
The ability to elicit data from a group of people in a single session saves time and cost as compared to conducting individual interviews with the same number of people.
Disadvantage: Focus Group
In the group setting, participants may be concerned about issues of trust or may be unwilling to discuss sensitive or personal topics.
Advantage: Functional Decomposition
Creates a conceptual model of the work that needs to be completed to deliver the new business solution.
Disadvantage: Functional Decomposition
Decomposing a problem without fully understanding the relationship between pieces of the problem may crate an inappropriate structure that impedes analysis.
Advantage: Interface Analysis
Knowing what interfaces are needed, as well as their anticipated complexity and testing needs, enables more accurate project planning and potential savings in time and cost.
Disadvantage: Interface Analysis
Interface analysis does not provide insight into other aspects of the solution since the analysis does not access the internal components.
Allows the interviewer and participant to have full discussions and explanations of the questions and answers.
Training is required to conduct effective interviews. In particular, unstructured interviews require special skills including facilitation/virtual facilitation and active listening.
Advantage: Lessons Learned Process
Lessons learned are useful for identifying opportunities for process improvement and can help build team morale after a difficult period.
Disadvantage: Lessons Learned Process
All participants must be prepared to avoid any urge to assign blame during these sessions or honest discussions may not occur.
Advantage: Metrics and Key Performance Indicators
Establishing a monitoring and evaluation system allows stakeholders to understand the extent to which a solution meets an objective, and how effective the inputs and activities of developing the solution (output) were.
Disadvantage: Metrics and Key Performance Indicators
Gathering excessive amounts of data beyond what is needed will result in unnecessary expense in collecting, analyzing, and reporting. It will also distract project members from other responsibilities. On Agile projects, this will be particularly relevant.
Advantage: Non-functional Requirements Analysis
Success in meeting non-functional requirements will have a strong influence on whether or not a system is accepted by its users.
Disadvantage: Non-functional Requirements Analysis
Non-functional requirements are often more difficult to define than functional requirements. Expectations regarding quality attributes may not be described and users of an application may find them difficult to articulate.
Observation provides realistic and practical insight into the business by getting a hands-on feel for how the business process works today.
Observation is only possible for existing processes and can be time-consuming as well as disruptive to the person being observed.
Advantage: Organizational Modeling
Organization models are one of the few types of models any organization is almost certain to have defined. Even the simplest organization has to define the reporting structures among team members in order to co-ordinate work between its people.
Disadvantage: Organizational Modeling
The primary limitation of organization modeling is not the technique itself, but rather the implications of including organizational redesign in the scope of a project.
Advantage: Problem Tracking
Problem tracking provides an organized method for tracking and resolving risks, issues, and defects. It provides a mechanism to communicate problems across the team and helps to maintain focus on open problems until they are resolved.
Disadvantage: Problem Tracking
If there is a strict deadline to deliver the solution, then problem management may become a lower priority. Often, root cause analysis of the problems can take more time and resources than are available.
Advantage: Process Modeling
Most stakeholders are comfortable with the basic elements of and concepts behind a process model.
Disadvantage: Process Modeling
Process models can become extremely complex and unwieldy if not structured carefully. Complex processes may involve enough activities and roles to make them almost impossible for a single individual to understand.
Prototyping supports users who are more comfortable and effective at articulating their needs by using pictures, as prototyping lets them see the future system's interface, while allowing for early user interaction and feedback.
Users may focus on the design specifications of the solution rather than the requirements that any solution must address. This can, in turn, constrain the solution design. Developers may believe that they must provide a user interface that precisely matches the prototype, even if superior technology and interface approaches exist.
Advantage: Requirements Workshop
Requirements workshop costs are often lower than the cost of performing multiple interviews. A requirements workshop enables the participants to work together to reach consensus.
Disadvantage: Requirements Workshop
Requirements workshops that involve too many participants can slow down the workshop process. Conversely, collecting input from too few participants can lead to overlooking requirements that are important to users, or to specifying requirements that don't represent the majority of the users.
Advantage: Risk Analysis
Risk analysis enables an organization to prepare for the likelihood that at least some things will not go as planned.
Disadvantage: Risk Analysis
The number of possible risks to most initiatives can easily become unmanageably large. It may only be possible to manage a subset of potential risks.
Advantage: Root Cause Analysis
Root cause analysis provides a structured method to identify the root causes of identified problems, thus ensuring a complete understanding of the problem under review.
Disadvantage: Root Cause Analysis
Root cause analysis works best when someone who has formal training or extensive experience facilitates a team of experts. The primary concern revolves around the ability of the facilitator to remain objective, a critical element to effective root cause analysis.
Advantage: Scenarios and Use Cases
Use cases are good at clarifying scope and providing a high-level understanding of user behavioral goals, normal situations, alternatives, or exception paths through an activity or business process.
Disadvantage: Scenarios and Use Cases
Business analysts are frequently tempted to describe most or all system behavior using use cases. Because many requirements can be captured in the use case format, there is frequently a temptation to use them to capture all requirements, even in situations where it is difficult to apply them or another analysis method might prove more effective.
Advantage: Scope Modeling
A scope model will make it easier to determine what should be in and out of scope for a solution, even when new requirements are identified or requirements change.
Disadvantage: Scope Modeling
A scope model will usually leave much of the detailed scope still needing to be investigated and detailed.
Advantage: Sequence Diagrams
The sequence diagram may be used in object-oriented analysis to validate class diagrams against use cases, or to show the timing of interactions between entities within the system scope.
Disadvantage: Sequence Diagrams
A sequence diagram must be defined for each possible scenario. Strictly speaking, a sequence diagram requires a fully defined class model (see Data Model), although less formal sequence diagrams are often developed that represent user interface elements or interactions between actors.
Advantage: State Diagrams
Domain SMEs should be intimately aware of life cycle states for their key concerns. Helping them list and describe the states and then draw the allowable transitions between states often uncovers missing data, control and behavioral requirements, and may be helpful to clarify confusing or even conflicting requirements.
Disadvantage: State Diagrams
Since Domain SMEs can understand and develop state diagrams very quickly, it is important not to unintentionally expand the scope. Each state (and associated transitions) should be validated to determine if it is relevant to the solution scope. There may be actual states an object goes through as part of its life cycle that do not have relevance to the domain. These states should not be modeled.
Advantage: Structured Walkthrough
A structured walkthrough promotes discussion of the requirements among stakeholders and is effective at identifying possible ambiguities and areas of misunderstanding.
Disadvantage: Structured Walkthrough
Review sessions can lead to repeated revisions if changes are not carefully managed. The length of the revision and review cycle can result in a lengthy approval process.
When using close-ended questions, surveys can be effective for obtaining quantitative data for use in statistical analysis. When using open-ended questions, survey results may yield insights and opinions not easily obtainable through other elicitation techniques.
To achieve unbiased results, specialized skills in statistical sampling methods are needed when the decision has been made to survey a subset of potential respondents. The response rates for surveys are often too low for statistical significance. The use of incentives or enforcement means may be used to alleviate this.
Advantage: SWOT Analysis
The SWOT analysis helps quickly analyze various aspects of the current state of the organization and its environment prior to identifying potential solution options.
Disadvantage: SWOT Analysis
The SWOT analysis is a very high-level view; more detailed analysis is almost always needed.
Advantage: User Stories
User stories create an environment of customer ownership of features and prioritizations in an incremental, iterative development environment. They may eliminate the need to provide functional requirements in some environments. User stories also require that the value delivered by the story be clearly articulated.
Disadvantage: User Stories
User stories may not be the best technique for some environments with regulatory restrictions or when an organization mandates documentation. This modeling technique may not be effective when participants are not co-located. This technique does not explicitly address how to document non-functional requirements.
Advantage: Vendor Assessment
An effective vendor assessment reduces the risk of the organization developing a relationship with an unsuitable vendor and is likely to improve long-term satisfaction with the decision.
Disadvantage: Vendor Assessment
It can be time-consuming to gather sufficient information from multiple vendors. Some information may not be readily available. Vendors with new and innovative products may score poorly because they do not have a significant history in the market.