Abstract
The resolution of conflicts among non-functional requirements are difficult problem during the analysis of non-functional requirements. To mitigate the problem, the weighted softgoal is proposed based on the Softgoal Interdependency Graphs (SIG) that help engineers resolve conflicts among non-functional requirements. It is also shown evaluation results of the weighted SIG applications to develop non-functional requirements and choose alternative design decisions.
You have full access to this open access chapter, Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
Non-functional requirements are used to define qualities and validate that system architectures achieve the quality requirements. NFR framework is traditionally focusing on qualitative evaluation of softgoals, and different kinds of softgoals are evaluated separately. For example, it is difficult to evaluate security and safety softgoals in the integrated way. Therefore, conflicts between safety and security softgoals should resolve implicitly.
This paper discusses the effectiveness of a softgoal weight extension based on SIG diagrams of the NFR framework. The weight values are assigned to softgoal decompositions and contributions link. The new main top goal is introduced to resolve conflicts between security and safety softgoals that are decomposed from the main softgoal. The weights assigned to each link define clearly priority between decomposed softgoals.
Section 2 describes related work of non-functional requirements approach based on softgoals. Section 3 proposes an approach to introduce quantitative weights to SIG diagrams. Section 4 describes examples of applying the proposed approach to evaluate operationalization softgoals for simple cases. In Sect. 5, we discuss the effectiveness of the proposed approach. Section 6 concludes the paper and shows future work.
2 Related Work
The NFR framework [1] is a Goal Oriented Requirements Engineering method can be used to evaluate architecture by defining levels of safety and security requirements. The SIG (Softgoal Interdependency Graph) is used to represent security and safety goals. The NFR soft goals are non-functional requirements softgoals, operationalization softgoals, and claim softgoals. First, constraints of target systems are clarified by non-functional requirements softgoals. Softgoals are, then, decomposed into sub softgoals to develop SIG. NFR softgoals are allocated to operationalization softgoals for describing target system functions.
In SIG the design decisions for the target system are represented by operationalization softgoals. The operationalization softgoals are validated for satisfying parent soft goals.
For analysing functional requirements, alternative requirements are selected to satisfy non-functional softgoals. If the conflict between non-functional softgoals is occurred, the conflict should be resolved by using the criteria whether non-functional requirements are satisfied.
To evaluate the quality of architecture, the following methods are proposed.
-
(1)
Check list based method
The operationally critical threat, asset, and vulnerability evaluation (OCTAVE) for security provides the check list to evaluate vulnerability [2].
However, the standard check list did not satisfy every safety requirements and security requirements. The check list also have the problem that it cannot be applied to resolve conflicts and interactions between safety and security requirements.
-
(2)
Scenario based method
Scenarios can be developed to describe critical factors that impact on architectures significantly. The scenarios are used to identify important factors that affect high priority requirements. Utility trees are used to define scenarios in ATAM (Architecture Trade off Analysis Method) [3]. ATAM provides the quality trade off analysis method to analyze safety and security requirements.
-
(3)
Subramanian method
Subramanian proposed the following method that NFR framework is applied to analyse safety and security [4]. Safety and security are decomposed by using non-functional softgoals. The target architecture is decomposed by operationalization softgoals. The contribution relationship from operationalization softgoals to non-functional softgoals are defined. By using propagation rules, labels of softgoals are investigated to evaluate safety and security of the target architecture. However their approach did not consider quantitative relationship between values of child softgoals. And they evaluate safety and security softgoals independently.
To analyse system faults, FTA (Fault Tree Analysis) has been used [5]. Although the fault tree of FTA can be considered as an AND/OR goal graph, nodes of the fault tree represent fault events and logic gates. An upper event is resulted from a combination of lower events through a logic gate. The lowest events are primary events that require no further logical decomposition.
3 Softgoal Weight
In case of introducing weights to SIG, nodes and relationships are candidates to assign weights. Names are assigned to SIG nodes, but SIG relationships do not have names. Therefore, we consider to add weights as the attributes of node names. This approach is comfortable because it does not affect the SIG grammar syntax. Attributes are not assigned for the SIG relationship, because attributes for the relationship between softgoals can be represented by node attributes.
In NFR framework, the achievement of soft goals are shown by the check symbol for each soft goal. Figure 1 shows an example portion of NFR framework to assure the safety of elevator control. The buffer device evades a car collision to the ground when the car is going down. This supports the claim that the down movement of the elevator is safe.
3.1 AND Decomposition Weight
If a softgoal decomposed by the AND relationship, then the AND decomposition weight label <W1,…,Wk> is appended to the parent softgoal name.
Where k is the number of sub softgoals, and Wi are defined to satisfy Σi=1,k Wi = 1.
3.2 OR Decomposition Weight
If a softgoal decomposed by the OR relationship, then the OR decomposition weight label <max(W1,…,Wk)> is appended to the parent softgoal name, where Wi is the weight of the i-th sub softgoal.
3.3 Operationalization Weight
If a softgoal is related to operationalization softgoals, then the weight ratio label <W1,…,Wk> is appended to the parent softgoal name.
Where k is the number of operationalization softgoals that are related to the softgoal, and Wi are defined to satisfy Σi=1,k Wi = 1.
3.4 Contribution Weight
There are positive and negative contributions in SIGs. The weights of positive and negative contributions are +N and −N, respectively. N is either 1 or 2. 1 and 2 also mean weak and strong contribution, respectively. The positive and negative contributions can be represented by styles of relation lines. The solid and dotted lines show positive and negative contributions, respectively.
3.5 Weight Propagation Rules
There are two rules for operationalization and decomposition. The operationalization propagation rule is defined as follows.
Let a parent softgoal is contributed by k operationalization goals. And let <P> be the weight of the softgoal. Let <Q1,…,Qk> be the operationalization weight ratio of the softgoal. Let <Ri> be the weight of i-th operationalization goal, and Ci be the contribution weight of the operationalization goal to the softgoal, respectively. Then the weight value P of the softgoal is calculated by the following equation.
The Fig. 2 shows an example of the operationalization propagation. Suppose the weights of operationalization goals are <Q>, <R>, <S>, and the contribution weight ratio is <1/3, 1/3, 1/3>, then the weight P of the softgoal is Q/3 + R/3–S/3, where Q and R are the positive, but S is the negative contribution.
In the same way, the decomposition propagation rule can be defined as follows. Let a parent softgoal is decomposed by k sub softgoals with AND decomposition. Let <P> be the weight of the softgoal. Let <Q1,…,Qk> be the AND decomposition weight ratio of the softgoal. Let <Ri> be the weight of i-th sub softgoal. Then the weight value P of the softgoal is calculated by the following equation.
The Fig. 3 shows an example of the AND decomposition propagation. Suppose the weights of sub softgoals are <Q>, and <R>. And the contribution weight ratio is <1/2, 1/2>, then the weight P of the softgoal is Q/2 + R/2.
In case of OR decomposition, P is also calculated by the following equation.
The Fig. 4 shows an example of the OR decomposition propagation. Suppose the weights of sub softgoals are <Q>, and <R>. Then the weight P of the softgoal is the max(Q, R).
4 Examples of Weighted SIG
4.1 Credit Card Account
The credit card system shall manage customer accounts. The NFR of the customer accounts consists of good performance, security, and accessibility.
The weighted SIG for the customer accounts of a credit card system is shown in Fig. 5. The main NFR is decomposed into the above three softgoals. The top softgoal of the figure integrates these softgoals as well as defines that these softgoals have the same priority by using the weight attribute clause <1/3, 1/3, 1/3>.
The impact of the operationalization softgoals to achieve the above NFRs can be evaluated by adding operationalization softgoals to the weighted SIG. An example of the interrelationship between NFR and operationalization softgoals are shown in Fig. 6.
There are 8 operationalization softgoals. The Authorize access to account information softgoal is decomposed into Validate access against eligibility rules, Identify users, and Authenticate user access softgoals by AND decomposition. Authenticate user access softgoal is also decomposed into Compare signatures and Additional ID softgoals by OR decomposition. The Uncompressed format operationalization have the positive and negative contribution to the Space and Response time softgoals, respectively. The indexing operationalization has the positive contribution to the Response time softgoal. The Validate access against eligibility rules operationalization has negative and positive contribution to the Response time and accurate softgoals, respectively. Additional ID operationalization has negative contribution to the Accessibility softgoal.
The impact of the operationalization can be evaluated as follows.
Therefore the operationalization is not a good decision in total. It is difficult to evaluate the total impact of the operationalization without the top main softgoal.
4.2 Alternative Design Decision
Figure 7 shows the comparison of alternative operationalization to manage the system data. The top NFR softgoal is decomposed into comprehensibility, modifiability, performance, and reusability softgoals. The shared data and abstract data type are two operationalization alternatives.
The total impact value of the quality requirements for shared data is calculated as follows.
The total impact value of the main non-functional requirements for Abstract Data Type is calculated as follows.
The result shows that Abstract data type is better than shared data.
It is worth to remark that contribution weight are not assigned to the bottom level non-functional requirement softgoals in Fig. 7. Because the shared data and abstract data type softgoals are different alternative operationalization softgoals, therefore the bottom level non-functional requirement softgoals have no weight value list.
The impact evaluation can also be represented by tabular form. Table 1 shows the tabular evaluation of Abstract Data Type solution for the SIG diagram. The column values of the Abstract Data Type shows the contribution values for NFR softgoals.
On the top left first column corresponds to the main softgoal. The value in the next row of the same top left column is the total evaluation value for the selected alternative solution. The second column shows the decomposition coefficient values.
The table shows the coefficient vector <1/12, 1/12, 1/6, 1/6, 1/6, 1/6, 1/4, 1/4, 1/6> for the SIG decomposition. The summation of the multiplication of the contribution vector and coefficient vector becomes the evaluation value for the selected alternative solution.
5 Discussion
5.1 Effectiveness of Argument Patterns
As examples showed, the weighted SIG approach was useful to analyze the satisfing relationship between non-functional softgoals and operationalization softgoals. This showed that the effectiveness of the weight propagation method. Although the evaluation was only executed for small examples, it is clear the same results can be derived for other applications.
The conflict among different quality characteristics can be resolved by using decomposition weight list defined by decomposition link of SIGs. The mechanism is generic and widely applicable to quantitative evaluation of the validity of various architectures. The proposed approach can be applicable for evaluating not only software architectures, but also business and technology architectures [6, 7].
5.2 Limitation
This paper only examines the effectiveness of the proposed method for a simple example SIG diagrams. It is necessary to show the effectiveness of the method by evaluating more number of applications. This paper qualitatively examines the effectiveness of the weighted SIG approach. Quantitative evaluations of the proposed method are also necessary.
6 Conclusion
This paper introduced the softgoal weight for evaluating NFRs. Evaluation examples of the approach was also shown for quantitatively validating quality satisfying levels of solutions represented by operationalizing softgoals. The example evaluations showed the effectiveness of the approach.
Future work includes more experimental evaluation of the proposed approach, comparative analysis of different quantitative extensions to the NFR framework. The claim softgoals are not mentioned in this paper. It is also necessary to consider the effect of introducing weight for claim softgoals.
References
Chung, L., Nixson, B.A., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. Kluwer Academic Publishers, Boston (2000)
OCTAVE: Operationally Critical Threat, Asset, and Vulnerability Evaluation, Software Engineering Institute. http://www.cert.org/octave/
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)
Subramanian, N., Zalewski, J.: Quantitative assessment of safety and security of system architectures for cyberphysical systems using the NFR approach. IEEE Syst. J. (2014)
Leveson, N.: Safeware - System Safety and Computers. Addison-Wesley, Reading (1995)
Josely, A., et al.: TOGAF® Version 9.1 A Pocket Guide (2011)
Josely, A., et al.: ArchiMate®2.0, A Pocket Guide, The Open Group, Van Haren8 Publishing (2013)
Acknowledgment
This work was supported by KAKENHI (24220001).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 IFIP International Federation for Information Processing
About this paper
Cite this paper
Yamamoto, S. (2015). An Approach for Evaluating Softgoals Using Weight. In: Khalil, I., Neuhold, E., Tjoa, A., Xu, L., You, I. (eds) Information and Communication Technology. ICT-EurAsia 2015. Lecture Notes in Computer Science(), vol 9357. Springer, Cham. https://doi.org/10.1007/978-3-319-24315-3_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-24315-3_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-24314-6
Online ISBN: 978-3-319-24315-3
eBook Packages: Computer ScienceComputer Science (R0)