ABSTRACT
An important aspect of architectural knowledge is the capture of software relationships [25]. But current definitions [25, 21, 23] do not adequately capture external system relationships [5], and offer no guidance on implicit relationships [29]. This leaves architects either unaware of critical relationships or, to 'roll their own' based on aggregations of code-level call structures, resulting in critical architectural gaps and communication problems within Systems of Software intensive Systems (S3) environments [2]. These environments may also restrict the sharing of architectural knowledge due to either legal, or contractual constraints, or overwhelm due to the size and number of involved systems adding to the challenges of identifying and describing the relationships.
This paper presents a novel S3 Architectural Viewpoint consisting of; 1) an extensible taxonomy of relationships (building on existing relationship concepts), 2) a systematic, repeatable technique to detect both immediate and composite relationships, and 3) proposes the Annotated Design Structure Matrix to link S3 views, with existing dependency analysis technique. The goal is an architectural approach for sharing and analysis of architectural knowledge relating to relationships, in an S3 environment. The research is ongoing and validation will be performed through case studies from industry collaborations.
- A. Adi, D. Gilat, R. Ronen, R. Rothblum, G. Sharon, and I. Skarbovsky. Modeling and monitoring dynamic dependency environments. In ICSC 2005, IEEE Int. Conf. on Services Computing, pages 208--214, 2005. Google ScholarDigital Library
- M. Bass, V. Mikulovic, L. Bass, H. James, and C. Marcelo. Architectural misalignment: An experience report. In WICSA '07, 6th Working IEEE/IFIP Conf. on Soft. Arch., pages 17--17, 2007. Google ScholarDigital Library
- P. J. Boxer and S. Garcia. Enterprise architecture for complex system-of-systems contexts. In Proceedings of IEEE International Systems Conference 2009, pages 253--256, Vancouver, BC, Canada, 2009.Google ScholarCross Ref
- H. P. Breivold, I. Crnkovic, R. Land, and S. Larsson. Using dependency model to support software architecture evolution. In ASE '08, 23rd IEEE/ACM Int. Conf. on Automated Software Engineering - Workshops., pages 82--91, Sept. 2008.Google ScholarDigital Library
- J. Brondum. Software architecture for systems of software intensive systems (s3): The concepts and detection of inter-system relationships. In ICSE '10, 32nd ACM/IEEE int. Conf. on Soft. Eng. - Doc. Symposium, May 2010. Google ScholarDigital Library
- M. Cataldo, R. B. LLC, J. A. Roberts, and J. D. Herbsleb. Software dependencies, work dependencies, and their impact on failures. IEEE Transactions on Software Engineering, 2009. Google ScholarDigital Library
- P. Clements, D. Garlan, L. Bass, J. Stafford, R. Nord, J. Ivers, and R. Little. Documenting software architectures: views and beyond. Addison-Wesley, 2002. Google ScholarDigital Library
- P. Clements, R. Kazman, and M. Klein. Evaluating software architectures: methods and case studies. Addison-Wesley, 2006.Google Scholar
- T. Erl. Soa patterns, 2009. http://www.soapatterns.org - Acc. 31 Jan 2010.Google Scholar
- R. Farenhorst, J. F. Hoorn, P. Lago, and H. van Vliet. The lonesome architect. In WICSA/ECSA '09, Joint Working IEEE/IFIP Conf. on Soft. Arch. & European Conf. on Soft. Arch., pages 61--70, 2009.Google ScholarCross Ref
- R. High Jr, G. Krishnan, and M. Sanchez. Creating and maintaining coherency in loosely coupled systems. IBM Systems Journal, 47(3):358, 2008. Google ScholarDigital Library
- G. Hohpe. Patterns and best practices for enterprise integration. http://www.enterpriseintegrationpatterns.com - Acc. 31 Jan 2010.Google Scholar
- S. Huynh, Y. Cai, Y. Song, and K. Sullivan. Automatic modularity conformance checking. In ICSE '08: 30th Int. Conf. on Software Engineering, pages 411--420, 2008. Google ScholarDigital Library
- IEEE. Recommended practice for architectural description of software-intensive systems. 2007.Google Scholar
- A. Jansen and J. Bosch. Software architecture as a set of architectural design decisions. In WICSA '05, 5th Working IEEE/IFIP Conf. on Soft. Arch., pages 109--120, 2005. Google ScholarDigital Library
- M. Keen, A. Acharya, S. Bishop, A. Hopkins, S. Milinski, C. Nott, R. Robinson, J. Adams, and P. Verschueren. Patterns: Implementing an SOA Using an Enterprise Service Bus. IBM Redbooks. 2004. Google ScholarDigital Library
- G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proc. of ECOOP, volume 1241, pages 220--220, Jyvaskyla, Finland, 1998.Google Scholar
- U. Lindemann. The design structure matrix (dsm) - dsmweb.org, 2005. Accessed 31st Jan. 2010.Google Scholar
- M. W. Maier. Architecting principles for systems-of-systems. Systems Engineering, 1(4):267--284, 1998.Google ScholarCross Ref
- R. Malan and D. Bredemeyer. Less is more with minimalist architecture. IEEE IT Pro, page 48, 2002. Google ScholarDigital Library
- N. R. Mehta, N. Medvidovic, and S. Phadke. Towards a taxonomy of software connectors. In ICSE '00, 22nd Int. Conf. on Soft. Engineering, pages 178--187, 2000. Google ScholarDigital Library
- B. Meyer. Applying 'design by contract'. IEEE Computer, 25(10):40--51, 1992. Google ScholarDigital Library
- OMG. Unified modelling language v2.2, Feb 2009.Google Scholar
- M. P. Papazoglou. Service-oriented computing: Concepts, characteristics and directions. In WISE '03: 4th Int. Conf. on Web Info. Systems Eng., 2003. Google ScholarDigital Library
- D. E. Perry and A. L. Wolf. Foundations for the study of software architecture. SIGSOFT Soft. Eng. Notes, 17(4):40--52, 1992. Google ScholarDigital Library
- A. Radjenovic and R. F. Paige. The role of dependency links in ensuring architectural view consistency. In WICSA 2008. 7th Working IEEE/IFIP Conf. on Soft. Architecture, pages 199--208, 2008. Google ScholarDigital Library
- M. Shaw and P. Clements. A field guide to boxology: preliminary classification of architectural styles for software systems. In COMPSAC '97. 21st Int. Comp. Soft. and App. Conf., pages 6--13, 1997. Google ScholarDigital Library
- J. Tyree and A. Akerman. Architecture decisions: Demystifying architecture. IEEE Software, 22(2):19--27, 2005. Google ScholarDigital Library
- E. Woods and N. Rozanski. The system context architectural viewpoint. In WICSA/ECSA '09, Joint Working IEEE/IFIP Conf. on Soft. Arch. & European Conf. on Soft. Arch., pages 333--336, 2009.Google ScholarCross Ref
- J. A. Zachman. A framework for information systems architecture. IBM systems journal, 26(3):276, 1987. Google ScholarDigital Library
- L. Zhu, M. Staples, and R. Jeffery. Scaling up software architecture evaluation processes. In ICSP '08, Proc. on International Conference on Software Process, volume 5007, page 112. Springer, 2008. Google ScholarDigital Library
- L. Zhu, M. Staples, and V. Tosic. On creating industry-wide reference architectures. EDOC '08. 12th Int. IEEE Enterprise Dist. Object Computing Conf., pages 24--30, 2008. Google ScholarDigital Library
- O. Zimmermann, U. Zdun, T. Gschwind, and F. Leymann. Combining pattern languages and reusable architectural decision models into a comprehensive and comprehensible design method. In WICSA '08, 7th Working IEEE/IFIP Conf. on Soft. Architecture, pages 157--166, 2008. Google ScholarDigital Library
Index Terms
- Towards an architectural viewpoint for systems of software intensive systems
Recommendations
Software architecture for systems of software intensive systems (S3): the concepts and detection of inter-system relationships
ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2Key to software architecture is the description of relationships between software components [10] supported by commonly understood semantic definitions [9][8]. However, the definitions do not adequately capture the inter-system level software ...
Refining missions to architectures in software-intensive systems-of-systems
JSOS '17: Proceedings of the Joint 5th International Workshop on Software Engineering for Systems-of-Systems and 11th Workshop on Distributed Software Development, Software Ecosystems and Systems-of-SystemsAn important concern in the design of a software-intensive system-of-systems (SoS) is modeling both global and individual missions to be accomplished by the SoS and its cooperating constituent systems. A first step towards the concretization of mission ...
Characterizing Architecture Description Languages for Software-Intensive Systems-of-Systems
SESOS '15: Proceedings of the 2015 IEEE/ACM 3rd International Workshop on Software Engineering for Systems-of-SystemsSystems-of-Systems (SoS) result from associating independent, complex systems for fulfilling given missions. In particular, SoS require software architectures that can cope with their dynamic, critical nature. Selecting adequate Architecture Description ...
Comments