Goal Model Building” Please respond to the following:
- The textbook provides fifteen heuristic rules, tips, and common refinement patterns that can be applied during the goal model building process. Suppose that you are building a goal model of a system you are designing. Propose three best practices for selecting one or more of the fifteen heuristic rules that apply to the building of a goal model.
- From the e-Activity, determine if you can you easily depict these AND/OR nodes on a goal diagram. Predict three challenges you foresee in using a graph-based diagram to model goals.
The textbook provides fifteen heuristic rules, tips, and common refinement patterns that can be applied during the goal model building process. Suppose that you are building a goal model of a system you are designing. Propose three best practices for selecting one or more of the fifteen heuristic rules that apply to the building of a goal model.
Three best practices for selecting one or more heuristic rules are: analyzing current objectives and goals, using an initial draft of a goal model, and/or available refinement goal patterns. An requirements engineer (RE) can find goals by analyzing the policies of the organizations and determining what objectives they are being tied to in the current system, if any. Some of these goals may need to be carried over to the new system and others that present issues can help the RE define new goals for the new system. The RE can also apply prescriptive, intentional, or ameliorative keywords to text documentation in order to find phrases that should be converted into goals to be met by the new system.
Another method is using an initial draft goal model. If the RE already has the initial draft, he or she can refine the model by “HOW” questions to arrive at subgoals for contributing to parent goals and/or “WHY” questions to define the parent goals of subgoals. The RE should also determine when the model has been accurately defined by asking him or her self whether each of the subgoal can be handled by a single fine-grained agent.
Lastly, REs can choose heuristics by using refinement goal patterns. These are templates that the RE can instantiate with parameters specific to the new system. All he or she has to do is find the template that closely matches the goal model that they are trying to make.
From the e-Activity, determine if you can you easily depict these AND/OR nodes on a goal diagram. Predict three challenges you foresee in using a graph-based diagram to model goals.
AND or OR nodes can be easily depicted on goal diagrams because that is what a goal diagram is used for. According to Lamsweerde (2009), “Graphically, a goal model is represented by an AND/OR graph called a goal diagram” (p. 293). An AND-node is resolved when all of its successor nodes are resolved. An OR-node is resolved when one of its successor nodes is resolved (Lamsweerde, 2009). Both types of nodes have refinement links that decompose the node into child nodes. The decomposition process continues until the nodes become leaf nodes, which then become a requirement or an environment assumption. Each link can be either a conflict link, a responsibility link, or an operationalization link (Lamsweerde, 2009).
Three challenges that may occur when using graph-based diagrams are: nodes that cannot be integrated, subnodes that may belong to more than one refinement, and a complex goal diagram that is hard to understand. During the refinement process, there are often parent or child goal nodes which are in the system scope but cannot be integrated because “HOW” or “WHY” questions do not pin point where a link can be established. A second challenge is that a goal node can belong to more than one parent node without context of why it is supposed to be there. For example, when a goal model is being simplified from the top-down, a subgoal can appear under parent goals without a clear condition of when either would be activated. Lastly, graph-based goal node diagram can be designed to a point where it is hard to understand how higher level objectives are simplified into leaf-type goal nodes that can be handled by a specific agent. For example, in a complex information system, they can be several (maybe thousands) of higher level objectives that need to be simplified into a leaf AND or OR nodes. Without some way of guiding the readability process, this graph-based goal node diagram can be cumbersome to understand.
Lamsweerde, A. V. (2009). Requirements Engineering: From System Goals to UML Models to Software Specifications. Chichester, West Sussex, England: John Wiley & Sons, Ltd. Retrieved April 22, 2018, from https://strayer.vitalsource.com/#/books/978EUDTE00270/