|
ABSTRACT
In this paper, we present our experience with applying multidimensional separation of concerns to a software engineering environment. By comparing two different designs of our system, we show the importance of separating integration issues from the implementation of the individual concerns. We present a model in which integration issues are encapsulated into rst--class connector objects and indicate how this facilitates the understandability, maintenance and evolution of the system. We identify issues of binding time, binding granularity and binding cardinality as important criteria in selecting an appropriate model for separation of concerns. We finally show how a good choice following these criteria and considering the requirements of software engineering environments leads to a system with dynamic configurability, high--level component integration and support for multiple instantiable views.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
|
| |
3
|
|
| |
4
|
|
| |
5
|
|
 |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
|
 |
10
|
David Garlan , Robert Allen , John Ockerbloom, Architectural mismatch or why it's hard to build systems out of existing parts, Proceedings of the 17th international conference on Software engineering, p.179-185, April 24-28, 1995, Seattle, Washington, United States
[doi> 10.1145/225014.225031]
|
| |
11
|
|
| |
12
|
The GoodStep Team. The GOODSTEP Project: General Object-Oriented Database for Software Engineering Processes. In Proc. of the 1st Asian Pacific Software Engineering Conf, pp. 10-19. IEEE Computer Society Press, 1994. 16
|
 |
13
|
|
| |
14
|
|
 |
15
|
William Harrison , Harold Ossher, Subject-oriented programming: a critique of pure objects, Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications, p.411-428, September 26-October 01, 1993, Washington, D.C., United States
|
| |
16
|
S. Herrmann. Lua/P - A Repository Language for Flexible Software Engineering Environments. In Proc. of The Second International Symposium on Constructing Software Engineering Tools, pp. 78-86, ISBN 0 86418 725 4, 2000. 3, 5
|
| |
17
|
S. Herrmann and M. Mezini.Dynamic View Connectors, http://pirol.cs.tu-berlin.de/papers/DVC.pdf, Technical Report, Technical University of Berlin, 2000. 12
|
| |
18
|
I. Holland. The Design and Representation of Object- Oriented Components. PhD Thesis, Northeastern University, Computer Science, 1993. 1, 17
|
| |
19
|
|
 |
20
|
Mik Kersten , Gail C. Murphy, Atlas: a case study in building a web-based learning environment using aspect-oriented programming, Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.340-352, November 01-05, 1999, Denver, Colorado, United States
|
| |
21
|
|
| |
22
|
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C.V. Lopes, J.M. Loingtier, and J. Irwin. Aspect Oriented Programming. In Proceedings of European Conference on Object-Oriented Programming (ECOOP '97), LNCS 1241, pp. 220-243, 1997. 1, 15, 17
|
| |
23
|
K. Lieberherr. Adaptive Programming: the Demeter Method. PWS Publishing Company, 1996. 12, 17
|
| |
24
|
C. Lopes. D: A Language Framework for Distributed Programming. PhD Thesis, Northeastern University, Computer Science, Nov. 1997. 2
|
 |
25
|
|
| |
26
|
|
| |
27
|
M. Mezini. Variational Object-Oriented Programming Beyond Classes and Inheritance. Kluwer Academic Publisher, 1998. 1, 17
|
 |
28
|
Mira Mezini , Karl Lieberherr, Adaptive plug-and-play components for evolutionary software development, Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.97-116, October 18-22, 1998, Vancouver, British Columbia, Canada
|
| |
29
|
M. Mezini, L. Seiter, and K. Lieberherr. Component Integration with Pluggable Composite Adapters. In M. Aksit (ed.) Software Architecture and Component Technology: State of the Art in Research and Industry, Kluwer Academic Publishers, 2000. 2, 8, 15
|
| |
30
|
|
| |
31
|
A. Nordwig. Entwicklung einer Notation und eines graschen Editors f. ur den objektorientierten Entwurf hybrider Systeme. Master's Thesis, TU Berlin, 1997. 4, 5
|
| |
32
|
|
| |
33
|
Object Design, Inc, Burlington, MA. ObjectStore Advanced C++ API User Guide, March 1998. 16
|
| |
34
|
|
| |
35
|
PARC Xerox, available from http://aspectj.org. AspectJ Language Specification, Aug 1999. 2
|
 |
36
|
|
| |
37
|
ISO/IEC 13719-1: Portable Common Tool Environment (PCTE). Abstract Specification, International Organization for Standardization (ISO), 1995. 16
|
| |
38
|
PIROL Web-page. http://pirol.cs.tu-berlin.de. 3
|
| |
39
|
T. Reenskaug, E. P. Andersen, A. J. Berre, A. Hurlen, A. Landmark, O. A. Lehne, E. Nordhagen, E. Ness- Ulseth, G. Oftedal, A. L. Skaar, and P. Stenslet. OORASS: Seamless Support for the Creation and Maintenance of Object Oriented Systems. Journal of Object-Oriented Programming, Oct. 1992. 1
|
| |
40
|
|
 |
41
|
|
 |
42
|
Joel Richardson , Peter Schwarz, Aspects: extending objects to support multiple, independent roles, Proceedings of the 1991 ACM SIGMOD international conference on Management of data, p.298-307, May 29-31, 1991, Denver, Colorado, United States
|
| |
43
|
|
| |
44
|
|
| |
45
|
|
| |
46
|
|
| |
47
|
M. Steffik, D. Bobrow, and K. Kahn. Integrating Access- Oriented Programming into a Multiparadigm Environment. IEEE Software, 3(1):10-18, Jan. 1986. 5
|
 |
48
|
|
 |
49
|
Peri Tarr , Harold Ossher , William Harrison , Stanley M. Sutton, Jr., N degrees of separation: multi-dimensional separation of concerns, Proceedings of the 21st international conference on Software engineering, p.107-119, May 16-22, 1999, Los Angeles, California, United States
[doi> 10.1145/302405.302457]
|
 |
50
|
David Ungar , Randall B. Smith, Self: The power of simplicity, Conference proceedings on Object-oriented programming systems, languages and applications, p.227-242, October 04-08, 1987, Orlando, Florida, United States
|
 |
51
|
Michael VanHilst , David Notkin, Using role components in implement collaboration-based designs, Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.359-369, October 06-10, 1996, San Jose, California, United States
|
| |
52
|
|
CITED BY 4
|
|
Eddy Truyen , Bart Vanhaute , Bo Nørregaard Jørgensen , Wouter Joosen , Pierre Verbaeton, Dynamic and selective combination of extensions in component-based applications, Proceedings of the 23rd International Conference on Software Engineering, p.233-242, May 12-19, 2001, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|