DOI QR코드

DOI QR Code

Reasoning Non-Functional Requirements Trade-off in Self-Adaptive Systems Using Multi-Entity Bayesian Network Modeling

  • 투고 : 2018.12.11
  • 심사 : 2019.02.19
  • 발행 : 2019.03.29

초록

Non-Functional Requirements (NFR) play a crucial role during the software development process. Currently, NFRs are considered more important than Functional Requirements and can determine the success of a software system. NFRs can be very complicated to understand due to their subjective manner and especially their conflicting nature. Self-adaptive systems (SAS) are operating in dynamically changing environment. Furthermore, the configuration of the SAS systems is dynamically changing according to the current systems context. This means that the configuration that manages the trade-off between NFRs in this context may not be suitable in another. This is because the NFRs satisfaction is based on a per-context basis. Therefore, one context configuration to satisfy one NFR may produce a conflict with another NFR. Furthermore, current approaches managing Non-Functional Requirements trade-off stops managing them during the system runtime which of concern. To solve this, we propose fragmentizing the NFRs and their alternative solutions in form of Multi-entity Bayesian network fragments. Consequently, when changes occur, our system creates a situation specific Bayesian network to measure the impact of the system's conditions and environmental changes on the NFRs satisfaction. Moreover, it dynamically decides which alternative solution is suitable for the current situation.

키워드

CPTSCQ_2019_v24n3_65_f0002.png 이미지

Fig. 1.Proposed Approach

CPTSCQ_2019_v24n3_65_f0003.png 이미지

Fig. 2.Network of Main Components to Construct MEBN Fragments

CPTSCQ_2019_v24n3_65_f0004.png 이미지

Fig. 3.MEBN Construction

CPTSCQ_2019_v24n3_65_f0005.png 이미지

Fig. 4.Robot Vacuum Cleaner Goal Model [26]

CPTSCQ_2019_v24n3_65_f0006.png 이미지

Fig. 5. RDM Goal Model [27]

Table 1. Study Questions

CPTSCQ_2019_v24n3_65_t0001.png 이미지

Table 2. Study Propositions

CPTSCQ_2019_v24n3_65_t0002.png 이미지

Table 3.Unit of Analysis

CPTSCQ_2019_v24n3_65_t0003.png 이미지

Table 4.Linking Proposition with Unit of Analysis

CPTSCQ_2019_v24n3_65_t0004.png 이미지

Table 5. Methodology On the Robot Vacuum Cleaner

CPTSCQ_2019_v24n3_65_t0005.png 이미지

Table 6. Vacuum Cleaner Different Situation Result

CPTSCQ_2019_v24n3_65_t0006.png 이미지

Table 7. Methodology on the RDM

CPTSCQ_2019_v24n3_65_t0007.png 이미지

Table 8. Vacuum Cleaner Different Situation Result

CPTSCQ_2019_v24n3_65_t0008.png 이미지

참고문헌

  1. Chung, L. and do Prado Leite, J.C.S., "On non-functional requirements in software engineering," In Conceptual modeling: Foundations and applications, pp. 363-379, Springer, Berlin, Heidelberg, 2009.
  2. Boehm, B.W., Brown, J.R. and Kaspar, H., "Characteristics of software quality," North-Holland Pub. Co., 1978
  3. Keller, S.E., "Specifying software quality requirements with metrics," System and Software Requirements Engineering, IEEE Computer Society Press Tutorial, 1990.
  4. Roman, G.C., "A taxonomy of current issues in requirements engineering," Computer 4, pp.14-23, 1985. https://doi.org/10.1109/MC.1985.1662861
  5. GOLDSBY, Heather J., et al. "Goal-based modeling of dynamically adaptive system requirements," 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ecbs 2008). IEEE, pp. 36-45, 2008.
  6. ZIV, Hadar; RICHARDSON, Debra; KLÖSCH, Rene. "The uncertainty principle in software engineering," submitted to Proceedings of the 19th International Conference on Software Engineering (ICSE'97). 1997.
  7. DE LEMOS, Rogerio, et al. "Software engineering for self-adaptive systems: A second research roadmap," Software Engineering for Self-Adaptive Systems II. Springer, Berlin, Heidelberg, pp. 1-32, 2013.
  8. Mylopoulos, John, Lawrence Chung, and Brian Nixon. "Representing and using nonfunctional requirements: A process-oriented approach." IEEE Transactions on software engineering, Vol. 18, No. 6, pp. 483-497, 1992. https://doi.org/10.1109/32.142871
  9. Chung, Lawrence, et al. "Non-functional requirements in software engineering," Vol. 5. Springer Science & Business Media, 2012.
  10. Fenton, Norman, and Martin Neil. "Making decisions: using Bayesian nets and MCDA." Knowledge-Based Systems, Vol. 14, No. 7, pp.307-325, 2001. https://doi.org/10.1016/S0950-7051(00)00071-X
  11. S. J. Russell and P. Norvig, "Artificial intelligence: A modern approach," 2nd ed., ser. Prentice Hall series in artificial intelligence. Prentice Hall, 2003.
  12. Filieri, Antonio, Carlo Ghezzi, and Giordano Tamburrelli. "A formal approach to adaptive software: continuous assurance of non-functional requirements." Formal Aspects of Computing, Vol. 24, No.2, pp.163-186, 2012. https://doi.org/10.1007/s00165-011-0207-2
  13. Portinale, Luigi, and Daniele Codetta-Raiteri. "Using dynamic decision networks and extended fault trees for autonomous fdir." 2011 IEEE 23rd International Conference on Tools with Artificial Intelligence, pp.480-484, November 2011.
  14. Bencomo, Nelly, Amel Belaggoun, and Valerie Issarny. "Dynamic decision networks for decision-making in self-adaptive systems: a case study." Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, pp.113-122, May 2013.
  15. Laskey, K.B., "MEBN: A language for first-order Bayesian knowledge bases," Artificial intelligence, 172(2-3), pp.140-178, 2008. https://doi.org/10.1016/j.artint.2007.09.006
  16. Carvalho, R.N., Costa, P.C.G., Laskey, K.B. and Chang, K.C., "PROGNOS: predictive situational awareness with probabilistic ontologies," In Information Fusion (FUSION), 2010 13th Conference, pp. 1-8, July 2010.
  17. Park, C.Y., Laskey, K.B., Costa, P.C. and Matsumoto, S., "Predictive situation awareness reference model using multi-entity bayesian networks," In Information Fusion (FUSION), 2014 17th International Conference, pp.1-8, July 2014.
  18. Boruah, A. and Hazarika, S.M., "An MEBN framework as a dynamic firewall's knowledge flow architecture," Signal Processing and Integrated Networks (SPIN), 2014 International Conference, pp. 249-254, February 2014.
  19. Lee, H.C. and Lee, S.W., "Decision supporting approach under uncertainty for feature-oriented adaptive system," Computer Software and Applications Conference (COMPSAC), 2015 IEEE 39th Annual Vol. 3, pp. 324-329, July 2015.
  20. Lee, S.W., "Probabilistic risk assessment for security requirements: A preliminary study," In 2011 Fifth International Conference on Secure Software Integration and Reliability Improvement, pp. 11-20, June 2011.
  21. AlGhamdi, G., Laskey, K.B., Wright, E.J., Barbara, D. and Chang, K.C., "Modeling insider behavior using multi-entity Bayesian networks," 2006.
  22. Carvalho, R.N., Matsumoto, S., Laskey, K.B., Costa, P.C., Ladeira, M. and Santos, L.L., "Probabilistic ontology and knowledge fusion for procurement fraud detection in brazil," Uncertainty Reasoning for the Semantic Web II, Springer, Berlin, Heidelberg, pp. 19-40, 2013
  23. Golestan, K., Soua, R., Karray, F. and Kamel, M.S., "Situation awareness within the context of connected cars: A comprehensive review and recent trends," Information Fusion 29, pp.68-83, 2106 https://doi.org/10.1016/j.inffus.2015.08.001
  24. Lee, S.W. and Rine, D.C., "Case Study Methodology Designed Research in Software Engineering Methodology Validation," SEKE, pp. 117-122, 2004.
  25. Yin, Robert K, "Case study research: Design and methods," Sage publications, 2013.
  26. Bencomo, N. and Belaggoun, A., "Supporting decision-making for self-adaptive systems: from goal models to dynamic decision networks," In International Working Conference on Requirements Engineering: Foundation for Software Quality, pp. 221-236, Springer, Berlin, Heidelberg, April 2013.
  27. Ramirez, A.J., Cheng, B.H., Bencomo, N. and Sawyer, P., "Relaxing claims: Coping with uncertainty while evaluating assumptions at run time," In International Conference on Model Driven Engineering Languages and Systems, pp. 53-69, Springer, Berlin, Heidelberg, September, 2012.