Abstract
Component-based development promotes a software development process that focuses on component reuse. How to describe a desired component before searching in the repository? How to find an existing component that fulfills the required functionalities? How to capture the system personalization based on its constitutive components' customization? To answer these questions, this paper claims that components should be described using three different forms at three development stages: architecture specification, configuration and assembly. However, no architecture description language proposes such a detailed description for components that supports such a three step component-based development. This paper proposes a three-level Adl, named Dedal, that enables the explicit and separate definitions of component roles, component classes, and component instances.
- R. Allen and D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, 6(3): 213--249, 1997. Google Scholar
Digital Library
- R. Allen, D. Garlan, and R. Douence. Specifying dynamism in software architectures. In Proceedings of the Workshop on Foundations of Component-Based Software Engineering, Zurich, Switzerland, September 1997.Google Scholar
- R. J. Allen. A formal approach to software architecture. PhD thesis, 1997. Chair-David Garlan. Google Scholar
Digital Library
- E. Bruneton, T. Coupaye, M. Leclercq, V. Quéma, and J.-B. Stefani. The fractal component model and its support in java: Experiences with auto-adaptive and reconfigurable systems. Softw. Pract. Exper., 36(11--12): 1257--1284, 2006. Google Scholar
Digital Library
- T. Bures, P. Hnetynka, and F. Plasil. Sofa 2.0: Balancing advanced features in a hierarchical component model. In SERA '06, pages 40--48, Seattle, USA, 2006. IEEE Computer Society. Google Scholar
Digital Library
- M. R. V. Chaudron and I. Crnkovic. Software Engineering; Principles and Practice, chapter Component-based Software Engineering, pages 605--628. John Wiley & Sons, 2008.Google Scholar
- S. W. Cheng, D. Garlan, B. Schmerl, J. P. Sousa, B. Spitznagel, and P. Steenkiste. Using architectural style as a basis for system self-repair. In The 3rd Working IEEE/IFIP Conference on Software Architecture, pages 45--59, Montreal, Canada, 2002. Google Scholar
Digital Library
- I. Crnkovic, M. Chaudron, and S. Larsson. Component-based development process and component lifecycle. In ICSEA '06, page 44, Papeete, French Polynesia, october 2006. Google Scholar
Digital Library
- I. Crnkovic, S. Sentilles, A. Vulgarakis, and M. Chaudron. A classification framework for software component models. IEEE Trans Software Eng, 37(5): 593--615, October 2011. Google Scholar
Digital Library
- E. M. Dashofy, A. V. der Hoek, and R. N. Taylor. A highly-extensible, xml-based architecture description language. In WICSA '01, pages 103--112, Washington, DC, USA, 2001. Google Scholar
Digital Library
- E. M. Dashofy, A. van der Hoek, and R. N. Taylor. An infrastructure for the rapid development of xml-based architecture description languages. In ICSE '02, pages 266--276, Orlando, Florida, 2002. ACM Press. Google Scholar
Digital Library
- E. M. Dashofy, A. van der Hoek, and R. N. Taylor. A comprehensive approach for the development of modular software architecture description languages. ACM Trans. Softw. Eng. Methodol., 14(2): 199--245, 2005. Google Scholar
Digital Library
- P. H. Feiler, D. P. Gluch, and J. J. Hudak. The architecture analysis & design language (AADL): An introduction. Technical Report CMU/SEI-2006-TN-011, Software Engineering Institute, Carnegie Mellon University, 2006.Google Scholar
Cross Ref
- P. Hnetynka, F. Plasil, T. Bures, V. Mencl, and L. Kapova. SOFA 2.0 metamodel. Technical report, Dep. of SW Engineering, Charles University, December 2005.Google Scholar
- M. Leclercq, A. E. Ozcan, V. Quema, and J.-B. Stefani. Supporting heterogeneous architecture descriptions in an extensible toolset. In ICSE '07, pages 209--219, 2007. Google Scholar
Digital Library
- J. Magee, N. Dulay, S. Eisenbach, and J. Kramer. Specifying distributed software architectures. In ESEC'95, pages 137--153, Sitges, Spain, September 1995. Google Scholar
Digital Library
- J. Magee and J. Kramer. Dynamic structure in software architectures. SIGSOFT Softw. Eng. Notes, 21(6): 3--14, 1996. Google Scholar
Digital Library
- N. Medvidovic, D. S. Rosenblum, and R. N. Taylor. A language and environment for architecture-based software development and evolution. In ICSE'99, pages 44--53, Los Angeles, CA, May 1999. Google Scholar
Digital Library
- N. Medvidovic, R. N. Taylor, and E. J. Whitehead. Formal modeling of software architectures at multiple levels of abstraction. In CSS'96, pages 28--40, April 17, 1996.Google Scholar
- F. Plasil and S. Visnovsky. Behavior protocols for software components. IEEE Trans. Softw. Eng., 28(11): 1056--1076, 2002. Google Scholar
Digital Library
- M. Shaw, R. DeLine, D. V. Klein, T. L. Ross, D. M. Young, and G. Zelesnik. Abstractions for software architecture and tools to support them. IEEE Trans. Softw. Eng., 21(4): 314--335, 1995. Google Scholar
Digital Library
- M. Shaw, R. DeLine, and G. Zelesnik. Abstractions and implementations for architectural connections. In ICCDS '96, pages 2--10, Annapolis, Maryland, 1996. Google Scholar
Digital Library
- M. Shaw and D. Garlan. Software architecture: perspectives on an emerging discipline. Prentice-Hall, Inc., 1996. Google Scholar
Digital Library
- H. Y. Zhang, C. Urtado, and S. Vauttier. Connector-driven process for the gradual evolution of component-based software. In ASWEC'09, Gold Coast, Australia, April 2009. Google Scholar
Digital Library
- H. Y. Zhang, C. Urtado, and S. Vauttier. Architecture-centric component-based development needs a three-level ADL. In M. A. Babar and I. Gorton, editors, ECSA'10, pages 295--310, Copenhagen, Denmark, August 2010. Google Scholar
Digital Library
- H. Y. Zhang, C. Urtado, and S. Vauttier. Architecture-centric development and evolution processes for component-based software. In SEKE'10, Redwood City, USA, July 2010.Google Scholar
Index Terms
A three-level component model in component based software development
Recommendations
A three-level component model in component based software development
GPCE '12: Proceedings of the 11th International Conference on Generative Programming and Component EngineeringComponent-based development promotes a software development process that focuses on component reuse. How to describe a desired component before searching in the repository? How to find an existing component that fulfills the required functionalities? ...
An empirical study on decision making in off-the-shelf component-based development
ICSE '06: Proceedings of the 28th international conference on Software engineeringComponent-based software development (CBSD) is becoming more and more important since it promotes reuse to higher levels of abstraction. As a consequence, many components are available being either open-source software (OSS) or commercial-off-the-shelf (...
Importance of software component characterization for better software reusability
Component-based software development (CBSD) is the process of assembling existing software components in an application such that they interact to satisfy a predefined functionality. This approach can potentially be used to reduce software development ...






Comments