|
ABSTRACT
Reuse has always been a major goal in software engineering, since it promises large gains in productivity, quality and time to market reduction. Practical experience has shown that substantial reuse has only successfully happened in two cases: libraries, where many generic and small components can be found; and product lines, where domains-specific components can be assembled in different ways to produce variations of a given product.In this paper we examine how product lines have successfully achieved reuse of coarse-grained components, and the underlying factors limiting this approach to narrowly scoped domains. We then build on this insight to present an approach, called software federation, which proposes a mechanism to overcome the identified limitations, and therefore makes reuse of coarse-grained components possible over a larger range of applications. Our approach extends and generalizes the product line approach, extending the concepts and mechanisms available to manage variability. The system is in use in different companies, validating the claims made in this paper.
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
|
R. van Ommering. Mechanisms for handling diversity in a Product Population. In proceedings of the 4th International Software Architecture Workshop (ISAW 4), June 2000.
|
| |
3
|
|
| |
4
|
J. McGregor. "Domain *". In Journal of Object Technology, Vol. 3, No. 7, July-August 2004.
|
| |
5
|
|
| |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
|
| |
10
|
|
| |
11
|
S. Deelstra, M. Sinnema, J. van Gurp, J. Bosch. Model Driven Architecture as Approach to Manage Variability in Software Product Families. In MDAFA 2003, CTIT Technical Report TR-CTIT-03-27, June 2003.
|
| |
12
|
|
| |
13
|
|
| |
14
|
M. Anastasopoulos, D. Muthig. An Evaluation of Aspect-Oriented Programming as a product line Implementation Technology. In Proceedings of the 8th International Conference on Software Reuse (ICSR 2004), July 2004.
|
| |
15
|
J. Hallstrom, N Sridhar, P. Silvilotti, A. Arora, W. Leal. A container-based Approach to Object-Oriented product lines. In Proceedings of the 44th Technology of Object-Oriented Languages and Systems Conference (TOOLS USA 2003), September 2003.
|
| |
16
|
|
| |
17
|
|
| |
18
|
H. Gomaa, M. Shin A Multiple-View Meta-modeling Approach for Variability Management in Software product lines. In Proceedings of the 8th International Conference on Software Reuse (ICSR 2004), July 2004.
|
| |
19
|
T. Le-Anh, J. Villalobos, J. Estublier. Multi-level Composition for Software Federations. In Proceedings of the 6th European Joint Conferences on Theory and Practice of Software (ETAPS 2003) Workshop on Software Composition, April 2003.
|
| |
20
|
J. Estublier, J. Villalobos, T. Le-Ahn, S. Sanlaville, G. Vega. An Approach and Framework for Extensible Process Support System. In Proceedings of the 9th European Workshop on Software Process Technology (EWSPT 2003), September 2003.
|
| |
21
|
|
| |
22
|
Bézivin, J. In search of a Basic Principle for Model Driven Engineering, Novatica/Upgrade, Vol. V, N°2, (April 2004), pp. 21--24, http://www.upgrade-cepis.org/issues/2004/2/upgrade-vol-V-2.html
|
| |
23
|
OMG, "Meta Object Facility (MOF) Specification" Version 1.4, April 2002
|
| |
24
|
Bézivin, J., Gérard, S. Muller, P.A., Rioux, L. MDA Components: Challenges and Opportunities, Metamodelling for MDA, First International Workshop, York, UK, (November 2003), http://www.cs.york.ac.uk/metamodel4mda/onlineProceedingsFinal.pdf
|
| |
25
|
|
| |
26
|
Booch G., Brown A., Iyengar S., Rumbaugh J., Selic B. The IBM MDA Manifesto The MDA Journal, May 2004, http://www.bptrends.com
|
| |
27
|
Favre J.M., "Towards a Basic Theory to Model Model Driven Engineering", 3rd Workshop in Software Model Engineering, WiSME 2004, http://www-adele.imag.fr/~jmfavre
|
| |
28
|
Greenfield, J. & Short, K. "Moving to Software factories", Software development, http://www.sdmagazine.com, Juillet 2004.
|
| |
29
|
Groupe OFTA Ingénierie de Modèles logiciels et Systèmes, Arago #30
|
| |
30
|
|
| |
31
|
Kurtev I., Bezivin J. , and Aksit M.. "Technological spaces: an initial appraisal.", In CoopIS, DOA'2002 Federated Conferences, Industrial track, Irvine, 2002.
|
| |
32
|
|
| |
33
|
OMG The MOF/QVT Queries, Views, Transformations request for proposal Soley, R. & the OMG staff MDA, Model-Driven Architecture, November 20000, http://www.omg.org/mda/presentations.htm
|
| |
34
|
|
| |
35
|
Czarnecki K. Overview of Generative Software Development.
|
| |
36
|
Soley, R. and the OMG staff. "Model-Driven Architecture". White paper, Draft 3.2. Available at www.omg.org, November 2000.
|
INDEX TERMS
Primary Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.2
Design Tools and Techniques
Additional Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.11
Software Architectures
D.2.12
Interoperability
D.2.6
Programming Environments
General Terms:
Design,
Experimentation
Keywords:
AOP,
COTS,
EAI,
MDA,
interoperability,
model driven software engineering,
process driven application,
product families,
product line,
reuse,
variability,
workflow
|