|
ABSTRACT
A discontinuity exists between object-oriented modeling and programming languages. This discontinuity arises from ambiguous concepts in modeling languages and a lack of corresponding concepts in programming languages. It is particularly acute for binary class relationships---association, aggregation, and composition. It hinders the traceability between software implementation and design, thus hampering software analysis. We propose consensual definitions of the binary class relationships with four minimal properties---exclusivity, invocation site, lifetime, and multiplicity. We describe algorithms to detect automatically these properties in source code and apply these on several frameworks. Thus, we bridge the gap between implementation and design for the binary class relationships, easing software analysis.
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
|
Hervé Albin-Amiot and Yann-Gaël Guéhéneuc. Meta-modeling design patterns: Application to pattern detection and code synthesis. In Bedir Tekinerdogan, Pim Van Den Broek, Motoshi Saeki, Pavel Hruby, and Gerson Sunyé, editors, proceedings of the 1st ECOOP workshop on Automating Object-Oriented Software Development Methods. Centre for Telematics and Information Technology, University of Twente, October 2001. TR-CTIT-01-35.
|
| |
4
|
Pascal André, Annya Romanczuk, Jean-Claude Royer, and Aline Vasconcelos. An algebraic view of UML class diagrams. In Christophe Dony and Houari Sahraoui, editors, proceedings of the 6th colloquium on Languages and Models with Objects, pages 261--276. Hermès Science Publications, January 2000.
|
| |
5
|
|
| |
6
|
|
| |
7
|
Juan C. Bicarregui, Kevin C. Lano, and Tom S. E. Maibuam. Objects, associations and subsystems: A hierarchical approach to encapsulation. In Mehmet Aksit and Satoshi Matsuoka, editors, proceedings of 11th European Conference on Object-Oriented Programming, pages 324--343. Springer-Verlag, June 1997.
|
| |
8
|
|
| |
9
|
|
| |
10
|
Ruth Breu, Ursula Hinkel, Christoph Hofmann, Cornel Klein, Barbara Paech, Bernhard Rumpe, and Veronika Thurner. Towards a formalization of the unifed modeling language. In Mehmet Aksit and Satoshi Matsuoka, editors, proceedings of the 11th European Conference for Object-Oriented Programming, pages 344--366. Springer-Verlag, June 1997.
|
| |
11
|
Jean-Michel Bruel, Brian Henderson-Sellers, Franck Barbier, Annig Le Parc, and Robert B. France. Improving the UML metamodel to rigorously specify aggregation and composition. In Shushma Patel, Yingxu Wang, and Ronald H. Johnston, editors, proceedings of the 7th international conference on Object-Oriented Information Systems, pages 5--14. Springer-Verlag, August 2001.
|
| |
12
|
|
| |
13
|
Shyam R. Chidamber and Chris F. Kemerer. A metrics suite for object-oriented design. Technical Report E53-315, MIT Sloan School of Management, December 1993.
|
 |
14
|
Franco Civello, Roles for composite objects in object-oriented analysis and design, Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications, p.376-393, September 26-October 01, 1993, Washington, D.C., United States
|
| |
15
|
|
 |
16
|
S. Ducasse , M. Blay-Fornarino , A. M. Pinna-Dery, A reflective model for first class dependencies, Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications, p.265-280, October 15-19, 1995, Austin, Texas, United States
|
| |
17
|
Erich Gamma and Kent Beck. Test infected: Programmers love writing tests. Java Report, 3(7):37--50, July 1998.
|
| |
18
|
Erich Gamma and Thomas Eggenschwiler. JHotDraw. Web site, 1998.
|
| |
19
|
|
| |
20
|
|
| |
21
|
Yann-Gaël Guéhéneuc, Hervé Albin-Amiot, Rémi Douence, and Pierre Cointe. Bridging the gap between modeling and programming languages. Technical Report 02/09/INFO, Computer Science Department, école des Mines de Nantes, July 2002.
|
| |
22
|
|
 |
23
|
William Harrison , Charles Barton , Mukund Raghavachari, Mapping UML designs to Java, Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.178-187, October 2000, Minneapolis, Minnesota, United States
|
| |
24
|
|
| |
25
|
|
| |
26
|
Brian Henderson-Sellers and Franck Barbier. A survey of the UML's aggregation and composition relationships. L'objet : Logiciel, Base de données, Réseaux, 5(3/4):339--366, December 1999.
|
 |
27
|
|
| |
28
|
|
| |
29
|
|
 |
30
|
Bent Bruun Kristensen, Complex associations: abstractions in object-oriented modeling, Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications, p.272-286, October 23-28, 1994, Portland, Oregon, United States
|
| |
31
|
Esperanza Marcos, Belen Vela, José M. Cavero, and Paloma Cáceres. Aggregation and composition in object-Relational database design. In Albertas Caplinskas and Johann Eder, editors, proceedings of the 5th east-european conference on Advances in Databases and Information Systems, pages 195--209. Springer-Verlag, September 2001.
|
| |
32
|
James Noble and John Grundy. Explicit relationships in object-oriented development. In Bertrand Meyer, editor, proceedings of the 18th conference on the Technology of Object-Oriented Languages and Systems, pages 211--226. Prentice-Hall, November 1995.
|
| |
33
|
James Rumbaugh , Michael Blaha , William Premerlani , Frederick Eddy , William Lorensen, Object-oriented modeling and design, Prentice-Hall, Inc., Upper Saddle River, NJ, 1991
|
| |
34
|
Monika Saksena, Robert B. France, and Maria M. Larrondo-Petrie. A characterization of aggregation. In Colette Rolland, editor, proceedings of the 5th international conference on Object-Oriented Information Systems, pages 363--372. Springer-Verlag, September 1998.
|
 |
35
|
|
 |
36
|
|
| |
37
|
Sun Microsystems, Inc. Java Abstract Window Toolkit, May 2000.
|
CITED BY 17
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Carl Alphonce , Blake Martin, Green: a customizable UML class diagram plug-in for eclipse, Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INDEX TERMS
Primary Classification:
D.
Software
D.1
PROGRAMMING TECHNIQUES
D.1.5
Object-oriented Programming
Additional Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.1
Requirements/Specifications
Subjects:
Languages
D.2.7
Distribution, Maintenance, and Enhancement
Subjects:
Restructuring, reverse engineering, and reengineering
Keywords:
UML,
binary class relationships,
consensual definitions,
design-implementation discontinuity,
detection algorithms,
formalisations,
java,
minimal properties
REVIEW
"Raghvinder S Sangwan : Reviewer"
Verdickt et al. discuss a model transformation framework based on generic middleware, which can be semi-automatically mapped into more concrete middleware using a transformation algorithm. The transformed model can then be used to acquire the perf
more...
|