ABSTRACT
Maintaining integrity, consistency, and enforcing conformance in architectures of large-scale systems requires specification and enforcement of many different forms of structural constraints. While type systems have proved effective for enforcing structural constraints in programs and data structures, most architectural modeling frameworks include only weak notions of typing or rely on first-order logic constraint languages that have steep learning curves and that become unwieldy when scaling to large systems.
We present the CADENA Architecture Language with Meta-modeling (CALM) - that uses multi-level type systems to specify and enforce a variety of architectural constraints relevant to development of large-scale component-based systems. CADENA is a robust and extensible tool that has been used to specify a number of industrial-strength component models and applied in multiple industrial research projects on model-driven development and software product lines.
References
- G. Abowd, R. Allen, and D. Garlan. Using style to understand descriptions of software architecture. In Proceedings of the 1st ACM SIGSOFT symposium FSE, pages 9--20. ACM Press, 1993. Google Scholar
Digital Library
- R. Allen and D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, 6(3):213--249, July 1997. Google Scholar
Digital Library
- CADENA web site. http://cadena.projects.cis.ksu.edu/.Google Scholar
- A. Childs, J. Greenwald, G. Jung, M. Hoosier, and J. Hatcliff. Calm and cadena: Metamodeling for component-based product-line development. Computer, 39(2):42--50, February 2006. Google Scholar
Digital Library
- P. Clements and L. Northrop. Software Product Lines. Addison Wesley, 2002.Google Scholar
- E. M. Dashofy, A. van der Hoek, and R. N. Taylor. An infrastructure for the rapid development of XML-based architecture description languages. In Proceedings of the 24th International Conference on Software Engineering (ICSE), pages 266--276. ACM Press, 2002. Google Scholar
Digital Library
- E. Di Nitto and D. S. Rosenblum. Exploiting ADLs to specify architectural styles induced by middleware infrastructures. In Proceedings of the 21st international conference on Software engineering, pages 13--22. IEEE Computer Society Press, 1999. Google Scholar
Digital Library
- D. Garlan, R. Monroe, and D. Wile. Acme: an architecture description interchange language. In Proceedings of the 1997 conference of the Centre for Advanced Studies on Collaborative research (CASCON). IBM Press, 1997. Google Scholar
Digital Library
- D. Gay, P. Levis, D. Culler, and E. Brewer. nesC 1.1 Language Reference Manual. http://nescc.sourceforge.net/, May 2003.Google Scholar
- D. Gay, P. Levis, R. von Behren, M. Welsh, E. Brewer, and D. Culler. The nesC language: A holistic approach to networked embedded systems. In Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation, pages 1--11. ACM Press, 2003. Google Scholar
Digital Library
- A. Gokhale, K. Balasubramanian, and T. Lu. CoSMIC: addressing crosscutting deployment and configuration concerns of distributed real-time and embedded systems. In Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications (OOPSLA), pages 218--219. ACM Press, 2004. Google Scholar
Digital Library
- J. Hatcliff, W. Deng, M. Dwyer, G. Jung, and V. P. Ranganath. Cadena: An integrated development, analysis, and verification environment for component-based systems. In Proceedings of the 25th International Conference on Software Engineering (ICSE), volume 841, pages 160--173. IEEE Computer Society Press, May 2003. Google Scholar
Digital Library
- International Organization for Standardization. Information technology - open systems interconnection - basic reference model: The basic model. ISO/IEC 7498-1, 1994.Google Scholar
- G. Jung. The type system of calm. Technical Report SAnToSTR2006-3, Kansas State University, Department of Computing and Information Sciences, 2006.Google Scholar
- G. Karsai, M. Maróti, Á. Lédeczi, J. Gray, and J. Sztipanovits. Composition and cloning in modeling and meta-modeling. IEEE Transactions on Control Systems Technology, 12(2):263--278, March 2004.Google Scholar
Cross Ref
- A. Kompanek. Modeling a system with acme. http://www.cs.cmu.edu/~acme.Google Scholar
- Á. Lédeczi, M. Maróti, A. Bakay, G. Karsai, J. Garrett, C. Y. Thomason, G. G. Nordstrom, and P. Völgyesi. The generic modeling environment. In Proceedings of the Workshop on Intelligent Signal Processing, May 2001.Google Scholar
- Á. Lédeczi, G. Nordstrom, G. Karsai, P. Völgyesi, and M. Maróti. On metamodel composition. In Proceedings of the 2001 IEEE International Conference on Control Applications (CCA), pages 756--760, 2001.Google Scholar
- J. Magee and J. Kramer. Dynamic structure in software architectures. In Proceedings of the 4th ACM SIGSOFT Symposium on Foundations of Software Engineering, pages 3--14. ACM Press, 1996. Google Scholar
Digital Library
- V. Matena, S. Krishnan, L. DeMichiel, and B. Stearns. Applying Enterprise JavaBeans. Addison Wesley, 2003. Google Scholar
Digital Library
- N. Medvidovic, P. Oreizy, J. E. Robbins, and R. N. Taylor. Using object-oriented typing to support architectural design in the c2 style. In Proceedings of the 4th ACM SIGSOFT Symposium on Foundations of Software Engineering, pages 24--32. ACM Press, 1996. Google Scholar
Digital Library
- N. Medvidovic and R. N. Taylor. A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering, 26(1):70--93, January 2000. Google Scholar
Digital Library
- R. Monroe. Capturing software architecture design expertise with armani. Technical Report CMU-CS-98-163, CMU School of Computer Science, September 2000.Google Scholar
- Object Management Group. OMG formal/06-04-01 (CORBA Component Model Specification, v4.0), April 2006.Google Scholar
- B. C. Pierce. Types and Programming Languages. MIT Press, 2002. Google Scholar
Digital Library
- M. Shaw and D. Garlan. Software Architecture. Prentice Hall, 1996.Google Scholar
- J. Warmer and A. Kleppe. The Object Constraint Language. Addison Wesley, 2nd edition, August 2003. Google Scholar
Digital Library
- xADL 2.0 schemas. http://www.isr.uci.edu/projects/xarchuci/ext-overview.html.Google Scholar
Index Terms
A type-centric framework for specifying heterogeneous, large-scale, component-oriented, architectures





Comments