Abstract
Early aspects are stakeholder concerns that crosscut the problem domain, with the potential for a broad impact on questions of scoping, prioritization, and architectural design. Analyzing early aspects improves early stage decision-making, and helps trace stakeholder interests throughout the software development life cycle. However, analysis of early aspects is hard because stakeholders are often vague about the concepts involved, and may use different vocabularies to express their concerns. In this paper, we present a rigorous approach to conceptual analysis of stakeholder concerns. We make use of the repertory grid technique to identify terminological interference between stakeholders’ descriptions of their goals, and formal concept analysis to uncover conflicts and trade-offs between these goals. We demonstrate how this approach can be applied to the goal models commonly used in requirements analysis, resulting in the clarification and elaboration of early aspects. Preliminary qualitative evaluation indicates that the approach can be readily adopted in existing requirements analysis processes, and can yield significant insights into crosscutting concerns in the problem domain.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Baniassad, E., Clements, P.C., Araújo, J., Moreira, A., Rashid, A., Tekinerdoğan, B.: Discovering early aspects. IEEE Software 23(1), 61–70 (2006)
Becker, P., Correia, J.H.: The TosCanaJ suite for implementing conceptual information systems. In: Ganter, B., Stumme, G., Wille, R. (eds.) Formal Concept Analysis. LNCS (LNAI), vol. 3626, pp. 324–348. Springer, Heidelberg (2005)
Birkhoff, G.: Lattice Theory. Providence, RI.: Am. Math. Soc., 25 (1940)
Castro, J., Kolp, M., Mylopoulos, J.: Towards requirements-driven information systems engineering: the Tropos project. Information Systems 27(6), 365–389 (2002)
Chung, L., Nixon, B.A., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. Kluwer Academic, Dordrecht (2000)
Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, Reading (2005)
Delugach, H.S., Lampkin, B.E.: Troika: using grids, lattices and graphs in knowledge acquisition. In: Intl. Conf. on Conceptual Structures, pp. 201–214 (2000)
Early aspects portal: (Cited on March 7, 2007), http://www.early-aspects.net/
Eisenbarth, T., Koschke, R., Simon, D.: Locating features in source code. IEEE Transactions Software Engineering 29(3), 195–209 (2003)
Fransella, F., Bell, R., Bannister, D.: A Manual for Repertory Grid Technique, 2nd edn. Wiley, NewYork (2004)
Gaines, B.: An overview of knowledge acquisition and transfer. International Journal of Human-Computer Interaction 12(3-4), 441–459 (2000)
Ganter, B., Wille, R.: Formal Concept Analysis. Springer, Heidelberg (1996)
Hickey, A.M., Davis, A.M.: Elicitation technique selection: how do experts do it?. In: International RE Conference, pp. 169–178 (2003)
IDEF0 portal: http://www.idef.com/idef0.html (Cited on March 7, 2007)
Jackson, M.: Problems, subproblems and concerns. In: Early Aspects Workshop, International Conference on AOSD (2004)
Jutras, J.: An automatic reviser: the transcheck system. In: Christodoulakis, D.N. (ed.) NLP 2000. LNCS (LNAI), vol. 1835, pp. 127–134. Springer, Heidelberg (2000)
Kaindl, H., Brinkkemper, S., Bubenko Jr., J.A., Farbey, B., Greenspan, S.J., Heitmeyer, C.L., do Prado Leite, J.C.S., Mead, N.R., Mylopoulos, J., Siddiqi, J.I.A.: Requirements engineering and technology transfer: obstacles, incentives and improvement agenda. RE Journal 7(3), 113–123 (2002)
Kelly, G.: The Psychology of Personal Constructs, Norton, New York (1955)
Kiczales, G., Lamping, J., Menhdhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Krone, M., Snelting, G.: On the interference of configuration structures from source code. In: ICSE, pp. 49–57 (1994)
Lethbridge, T.C., Sim, S.E., Singer, J.: Studying software engineers: data collection techniques for software field studies. Empirical SE 10(3), 311–341 (2005)
McKnight, C.: The personal construction of information space. Journal of the American Society for Information Science 51(8), 730–733 (2000)
Murphy, G., Schwanninger, C.: Aspect-oriented programming. IEEE Software 23(1), 20–23 (2006)
Niu, N., Easterbrook, S., Yu, Y.: A taxonomy of asymmetric requirements aspects. In: Early Aspects Workshop at AOSD (in press, 2007)
Niu, N., Easterbrook, S.: Discovering aspects in requirements with repertory grid. In: Early Aspects Workshop at ICSE, pp. 35–41 (2006)
Niu, N., Easterbrook, S.: Managing terminological interference in goal models with repertory grid. In: International RE Conference, pp. 303–306 (2006)
Niu, N., Easterbrook, S.: So, you think you know others’ goals? A repertory grid study. IEEE Software 24(2), 53–61 (2007)
Novak, J.D.: Learning, Creating, and Using Knowledge. Lawrence Erlbaum, Hillsdale (1998)
Nuseibeh, B., Easterbrook, S.M.: Requirements Engineering: A Roadmap. In: The Future of Software Engineering (2000)
Nuseibeh, B.: Weaving together requirements and architectures. IEEE Computer 34(3), 115–117 (2001)
Nuseibeh, B.: Crosscutting requirements. In: International Conference on AOSD, pp. 3–4 (2004)
Parnas, D.: On the criteria to be used in decomposing systems into modules. Communications of the ACM 15(12), 1053–1058 (1972)
Pisan, Y.: Extending requirement specifications using analogy. In: ICSE, pp. 70–76 (2000)
Popper, K.: Epistemology without a knowing subject. In: International Congress for Logic, Methodology and Philosophy of Science, pp. 333–372 (1968)
Potts, C., Takahashi, K., Anton, A.: Inquiry-based requirements analysis. IEEE Software 11(2), 21–32 (1993)
Richards, D.: Merging individual conceptual models of requirements. RE Journal 8(4), 195–205 (2003)
Richards, L.: Handling Qualitative Data: A Practical Guide. Sage, Beverely Hills (2005)
Rogers, E.M.: Diffusion of Innovations, 4th edn. Free Press, NewYork (1995)
Ryle, A.: Frames and Cages: The Repertory Grid Approach to Human Understanding. Sussex University Press, Sussex (1975)
Sabetzadeh, M., Easterbrook, S.: Traceability in viewpoint merging: a model management perspective. In: International Workshop on Traceability in SE (2005)
Sampaio, A., Chitchyan, R., Rashid, A., Rayson, P.: EA-Miner: a tool for automating aspect-oriented requirements identification. In: International Conference on ASE, pp. 352–355 (2005)
Shaw, M.: On Becoming A Personal Scientist: Interactive Computer Elicitation of Personal Models of the World. Academic Press, Dublin (1980)
Shaw, M., Gaines, B.: Comparing conceptual structures: consensus, conflict, correspondence and contrast. Knowledge Acquisition 1(4), 341–363 (1989)
Snelting, G., Tip, F.: Reengineering class hierarchies using concept analysis. ACM Transactions on Programming Languages System 22(3), 540–582 (2000)
Sowa, J.F.: Conceptual Structures: Information Processing in Mind and Machine. Addison-Wesley, Reading (1984)
Suen, R., Baniassad, E.: Isolating concerns in requirements using latent semantic analysis. In: Early Aspects Workshop, OOPSLA (2005)
Sutton, D.C.: Linguistic problems with requirements and knowledge elicitation. RE Journal 5(2), 114–124 (2000)
Tilley, T.: Tool support for FCA. In: Eklund, P.W. (ed.) ICFCA 2004. LNCS (LNAI), vol. 2961, pp. 104–111. Springer, Heidelberg (2004)
Tilley, T., Cole, R., Becker, P., Eklund, P.: A survey of formal concept analysis support for software engineering activities. In: Ganter, B., Stumme, G., Wille, R. (eds.) Formal Concept Analysis. LNCS (LNAI), vol. 3626, pp. 250–271. Springer, Heidelberg (2005)
Tonella, P.: Concept analysis for module restructuring. IEEE Transactions Software Engineering 27(4), 351–363 (2004)
Tonella, P.: Formal concept analysis in software engineering. In: ICSE, pp. 743–744 (2004)
Tonella, P.: Using a concept lattice of decomposition slices for program understanding and impact analysis. IEEE Transactions Software Engineering 29(6), 495–509 (2003)
Yu, E.: Modeling strategic actor relationships for process reengineering. PhD Thesis, University of Toronto (1994)
Yu, Y., do Prado, J.C.S., Mylopoulos, J.: From goals to aspects: discovering aspects from requirements goal models. In: International. RE Conference, pp. 38–47 (2004)
Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM TOSEM 6(1), 1–30 (1997)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Niu, N., Easterbrook, S. (2007). Analysis of Early Aspects in Requirements Goal Models: A Concept-Driven Approach. In: Rashid, A., Aksit, M. (eds) Transactions on Aspect-Oriented Software Development III. Lecture Notes in Computer Science, vol 4620. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75162-5_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-75162-5_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75161-8
Online ISBN: 978-3-540-75162-5
eBook Packages: Computer ScienceComputer Science (R0)