* a) Goal Oriented Refinement Pattern Driven Use Case Modelling Kozo HONDA a), Hideaki HIRAYAMA, Hiroyuki NAKAGAWA, Yasuyuki TAHARA, and Akihiko OHSUGA KAOS KAOS ATM KAOS 1. [1] KAOS [2] i* [3] NFR [4] Graduate School of Information Systems, The University of Electro-Communications, Chofu-shi, 182 8585 Japan Graduate School of Information Science and Technology, Osaka University, Suita-shi, 565 0871 Japan a) E-mail: khonda@ohsuga.is.uec.ac.jp * DOI:10.14923/transinfj.2015PDP0017 UML [5] ICONIX [6], [7] Rational Unified Process RUP [8] KAOS 238 D Vol. J99 D No. 3 pp. 238 254 c 2016
1 2 KAOS ICONIX Lamsweerde [9] AND ATM 2. 2. KAOS 3. 4. KAOS 5. ATM 6. 7. 2. KAOS KAOS AND/OR [2] KAOS 1 KAOS ( ) Fig. 1 Example of KAOS model expresses portions of cross bar safety control. Goal Responsibility Object Operation 4 KAOS [10] [11], [12] KAOS 1 / 3. 239
2016/3 Vol. J99 D No. 3 ICONIX KAOS 4. KAOS 4. 1 6 1 KAOS KAOS STEP1 5 STEP6 8 2 2 ex.step1. / / / 1. AND 2. 3. 4. /KAOS 1 Table 1 View of Goal model refinement pattern. 2 Fig. 2 Transformation flow from a goal model to a use case model. 5. 6. 7. 8. STEP2 STEP3 STEP7 STEP8 QVT [13] STEP1 STEP8 240
AND AND STEP1 AND STEP2 AND STEP STEP3 STEP1 AND STEP4 / KAOS STEP5 STEP STEP STEP6 AND 1 STEP1 AND STEP7 STEP2 AND STEP8 STEP5 STEP8 4. 2 3 KAOS 4 5 KAOS 4 Heaven and Finkelstein [14] KAOS 5 OMG Superstructure Specification [15] Use case Event Flow UseCaseDescription Event Flow Eclipse Modeling Framework EMF Sequence Diagram [16] KAOS 3 Lamsweerde 3 2 B C A B C 241
2016/3 Vol. J99 D No. 3 Fig. 3 3 KAOS A list of templates to use for transforming KAOS models to use case models. A B C D A B C 242
A B C A B C 4 KAOS [14] / Fig. 4 KAOS Meta Model. A <<include>> 3 B C <<precedes>> B C / C D C D <<precedes>> C D B B C A B 5 [15], [16] / Fig. 5 Meta Model of Use Case Model. 243
2016/3 Vol. J99 D No. 3 C B C <<precedes>> B C B C <<precedes>> 3 A() B() C() 1() 2() 4. 3 4. 1 STEP STEP2 (STEP7) STEP3 STEP5 STEP8 STEP2 (STEP7) 6 QVT KAOS 4 KAOS When Where STEP AND When Where 6 Fig. 6 QVT Rule for Goal Model to Operation Model. 244
7 QVT Fig. 7 Rule for Operation Model to Use Case Diagram. STEP3 STEP QVT 7 7 6 5 UseCase DirectedRelationship Precedes Where STEP5 STEP3 STEP4 / / STEP8 STEP QVT 8 8 6 5 Use- CaseDescription Where 3 QVT 6 7 8 3 3 245
2016/3 Vol. J99 D No. 3 8 QVT Fig. 8 Rule for Operation Model to Event Flow Diagram. STEP8 STEP6 1 1 AND/OR STEP4 STEP8 OR AND 4. 4 1 Pxx AND 4. 4. 1 AND STEP1 1 AND G2 P2 P22 P2 OFF ON 4. 4. 2 STEP2 P2 QVT 9 OFF 246
11 Fig. 11 Revised use case diagram of cross bar maintained open. Fig. 9 9 Operation model of closing cross bar. 12 Fig. 12 Revised use case diagram of closing cross bar. 10 Fig. 10 Use case diagram of closing cross bar. ON 4. 4. 3 STEP3 10 9 QVT OFF ON OFF ON 4. 4. 4 KAOS STEP4 10 11 4. 4. 5 STEP5 11 10 AND P22 1 G2 P2 P22 12 13 Fig. 13 Goal model of train approaching detected by sensor. 4. 4. 6 STEP6 12 OFF ON 1 G221 G221 13 ON ON OFF ON 4. 4. 7 STEP7 13 QVT 247
2016/3 Vol. J99 D No. 3 14 Fig. 14 Operation model of train approaching detected by sensor. 15 Fig. 15 Event flow diagram of train approaching detected by sensor. 16 ATM ATM Fig. 16 Goal model of ATM exclusively used with ATM card. 14 ON ON OFF ON 4. 4. 8 STEP8 14 QVT 15 ON OFF ON 5. Bjork [17] Gordon College ATM System ATM ATM ATM ATM 16 STEP2 7 STEP4 6 248
2 A B KAOS ATM ATM 5. 1 16 STEP6 / 3ATM 5 ATM A A A A 5. 2 2 STEP2 3 7 8 16 1 AND STEP2 STEP3 6 7 <<precedes>> STEP6 A B STEP7 STEP8 6 8 A B A 2 Table 2 Types and numbers of refinement patterns in the case study. 249
2016/3 Vol. J99 D No. 3 Table 3 3 ATM Modeled use case diagrams compared with provided one. ON ATM ON ATM STEP5 A B STEP2 7 6 STEP3 7 STEP8 8 QVT QVT 2 STEP2 7 STEP3 STEP8 29 8 21 STEP2 7 STEP3 STEP8 4 ATM Table 4 Numbers of precise or recalled elements for modeled use case diagrams. QVT 3 A B 3 4 UC A B 100% [Actor UC] 100% A 64.3% B 75.0% [Actor UC] A 250
B 100% STEP2 5 A 5 ATM Table 5 Modeled event flows diagrams compared with provided one. B 3 16 A B 5 6 A B 62.5% 78.6% 76.9% 84.6% A 2 A 3 16 A 7 PIN 10 11 4 B 2 3 16 4 A A B STEP6 STEP7 6 ATM Table 6 Numbers of precise or recalled elements for modeled event flow diagrams. 251
2016/3 Vol. J99 D No. 3 STEP7 8 STEP6 STEP7 STEP2 ATM A B 87.5% 92.9% 84.6% 84.6% B STEP2 STEP7 STEP6 STEP2 3 7 8 STEP4 STEP5 8 6. KAOS Darimont [18] KAOS Lamsweerde [9] / / / Robinson and Elofson [19] UML UML [20] KAOS [21] KAOS KAOS 7. KAOS KAOS KAOS 252
QVT ICONIX ATM KAOS JSPS 24300005 26330081 26870201 KAOS GRACE K-tool GRACE / [1] IEEE ACM SWEBOK2004 2005. [2] A. Lamsweerde, Goal-oriented requirements engineering: A guided tour, RE 01, pp.249 263, 2001. [3] E. Yu, i* an agent- and goal-oriented modelling framework. http://www.cs.toronto.edu/km/istar/ [4] L. Chung and J.C.S. doprado Leite, On nonfunctional requirements in software engineering, Mylopoulos Festschrift LNCS 5600, pp.363 379, Springer-Verlag, 2009. [5] OMG, Unified modeling language. http://www. uml.org/ [6] ( ) ( ) ( ) ( ) ( ) 2007. [7] M. Stephens and D. Rosenberg, Iconix process. http://iconixprocess.com/iconix-process/ [8] IBM, IBM rational unified process (rup). http:// www-01.ibm.com/software/rational/rup/ [9] A. Lamsweerde, Requirements Engineering: From System Goals to UML models to Software Specification, WILEY West Sussex England, 2009. [10] E. Letier, Reasoning about Agents in Goal-Oriented Requirements Engineering, Phd Thesis 2001, pp.1 68, 2001. [11] A. Lamsweerde, From system goals to software architecture, LNCS2804, pp.25 43, Springer-Verlag, 2003. [12] E. Letier and van Lamsweerde, Reasoning about partial goal satisfaction for requirements and design engineering, SIGSOFT 04/FSE-12, vol.29, no.6, pp.53 62, ACM SIGSOFT Software Engineering Notes, 2004. [13] OMG, Documents associated with Meta Object Facility (MOF) 2.0 Query/View/Transformation, v1.0. http://www.omg.org/spec/qvt/1.2/ [14] W. Heaven and A. Finkelstein, UML profile to support requirements engineering with KAOS, IEE Proc-Softw, vol.151, pp.10 27, 2004. [15] OMG, Documents associated with uml v2.4.1. http://www.omg.org/spec/uml/2.4.1/ [16] C. Li, L. Dou, and Z. Yang, A metamodeling level transformation from UML sequence diagrams to Coq, ICTCS 2014, pp.147 157, CEUR, 2014. [17] R.C. Bjork, Atm simulation links - by topic. http://www.cs.gordon.edu/courses/cs211/ ATMExample/index.html [18] R. Darimont and vanlamsweerde, Formal refinement patterns for goal-driven requirements elaboration, SIGSOFT 96, pp.179 190, ACM SIGSOFT Software Engineering Notes, 1996. [19] W.N. Robinson and G. Elofson, Goal directed analysis with use cases, J. Object Technology, vol.3, no.5, pp.125 142, 2004. [20] K. Honda, H. Nakagawa, Y. Tahara, and A. Ohsuga, Goal-oriented robustness analysis, Proc. Tenth JCKBSE, pp.171 180, IOS Press, 2012. [21] SES2014, pp.45 50, IPSJ/SIGSE, 2014. 27 6 1 10 6 12 3 253
2016/3 Vol. J99 D No. 3 1953 1976 2011 1958 1981 2001 2003 2014 2015 2015 1958 1981 1985 1989 ICOT 2007 2012 1986 IEEE ComputerSociety Japan Chapter Chair IEEE Computer Society 1974 1997 2007 2008 2014 IEEE CS 1966 1991 1993 1996 1996 1997 City 1997 1998 Imperial College 2003 2008 254