skip to main content
10.1145/2602458.2602464acmconferencesArticle/Chapter ViewAbstractPublication PagescbseConference Proceedingsconference-collections
research-article

A specification schema for software connectors

Published:27 June 2014Publication History

ABSTRACT

Since the invention of the connectors that serve as one of the building blocks of software architecture, various researchers have described the characteristics of connectors that they have discovered in given software systems. These characteristics have frequently been revealed by employing a bottom-up approach to different disciplines of software engineering. As a consequence, numerous attributes of connectors have been introduced at a rather technical level, and the vocabulary regarding specific aspects of connectors is highly heterogeneous. This eclectic list of attributes is not an appropriate abstraction level for an architect when developing connectors for application software. Instead, it would be more helpful to have a framework that begins from a conceptual perspective and guides the software architect in identifying the attributes required for a specific connector. To this end, a hierarchical schema for specifying software connectors is proposed in this paper. In contrast to existing schemas in which either the attributes considered are few in number and ungrouped or the attribute specification and grouping was not the main focus of the research, this paper presents a homogenous specification schema at different levels of abstraction and is based on logical perspectives rather than technical features. The schema can support architects in various situations--such as connector selection and documentation--and can aid in implementing or generating concrete software connectors. The application of the schema will be demonstrated by specifying a software connector between Twitter and an application.

References

  1. Amirat, A., & Oussalah, M. (2009). First-class connectors to support systematic construction of hierarchical software architecture. Journal of Object Technology, 8(7), 107--130.Google ScholarGoogle ScholarCross RefCross Ref
  2. Bálek, D., & Plasil, F. (2000). Software connectors: A hierarchical model. Charles University, Prague, Tech. Report, 2Google ScholarGoogle Scholar
  3. Batista, T., Chavez, C., Garcia, A., Rashid, A., Sant'Anna, C., & Kulesza, U. (2006). Reflections on architectural connection: seven issues on aspects and ADLs. In Proceedings of the 2006 international workshop on Early aspects at ICSE (pp. 3--10). ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Batista, T., Chavez, C., Garcia, A., Kulesza, U., Sant-Anna, C., & Lucena, C. (2006). Aspectual connectors: supporting the seamless integration of aspects and ADLs. In Proceedings of the ACM SIGSoft XX Brazilian Symposium on Software Engineering (SBES'06), Florianopolis, Brazil.Google ScholarGoogle Scholar
  5. Bhattacharya, S., & Perry, D. E. (2007). Predicting Emergent Properties of Component Based Systems. In Commercial-off-the-Shelf (COTS)-Based Software Systems, 2007. ICCBSS'07. Sixth International IEEE Conference on (pp. 41--50). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Breslauer, D. (1996). On competitive on-line paging with lookahead (pp. 593--603). Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Bures, T., & Plasil, F. (2004). Communication style driven connector configurations. In Software Engineering Research and Applications (pp. 102--116). Springer Berlin Heidelberg.Google ScholarGoogle ScholarCross RefCross Ref
  8. Byna, S., Chen, Y., & Sun, X. H. (2008). A taxonomy of data prefetching mechanisms. In Parallel Architectures, Algorithms, and Networks, 2008. I-SPAN 2008. International Symposium on (pp. 19--24). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Clements, P., Garlan, D., Bass, L., Stafford, J., Nord, R., Ivers, J., & Little, R. (2002). Documenting software architectures: views and beyond. Pearson Education. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Fairbanks, G. (2010). Just enough Software Architecture -- A Risk-Driven Approach. Marshall & BrainerdGoogle ScholarGoogle Scholar
  11. Garlan, D. (1998). Higher Order Connectors. Workshop on Compositional Software Architecture, Monterey, CAGoogle ScholarGoogle Scholar
  12. Garlan, D., and Shaw, M. (1994). An Introduction to Software Architecture. Computer Science Department, Carnegie Mellon University. Paper 724.Google ScholarGoogle Scholar
  13. Hirsch, D., Uchitel, S., & Yankelevich, D. (1999). Towards a periodic table of connectors. In COORDINATION (p. 418). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Hofmeister, C.; North, R., Soni, D. (1999). Applied software architecture. Addison-Wesley Professional. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Hohpe, G., & Woolf, B. A. (2004). Enterprise integration patterns: Designing, building, and deploying messaging solutions. Addison-Wesley Professional. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Honey, C., & Herring, S. C. (2009, January). Beyond microblogging: Conversation and collaboration via Twitter. In System Sciences, 2009. HICSS'09. 42nd Hawaii International Conference on (pp. 1--10). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Issarny, V., Bennaceur, A., & Bromberg, Y. D. (2011). Middleware-layer connector synthesis: Beyond state of the art in middleware interoperability. In Formal Methods for Eternal Networked Software Systems (pp. 217--255). Springer Berlin Heidelberg.Google ScholarGoogle ScholarCross RefCross Ref
  18. Kazman, R., Clements, P., Bass, L., & Abowd, G. (1997). Classifying architectural elements as a foundation for mechanism matching. In Computer Software and Applications Conference, 1997. COMPSAC'97. Proceedings. The Twenty-First Annual International (pp. 14--17). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J. M., & Irwin, J. (1997). Aspect-oriented programming (pp. 220--242). Springer Berlin Heidelberg.Google ScholarGoogle Scholar
  20. Kircher, M. (2001). Lazy Acquisition. In EuroPLoP (pp. 151--164).Google ScholarGoogle Scholar
  21. Kircher, M., & Jain, P. (2002). Eager Acquisition. In EuroPLoP (pp. 511--520).Google ScholarGoogle Scholar
  22. Lau, K. K., Elizondo, P. V., & Wang, Z. (2005). Exogenous connectors for software components. In Component-Based Software Engineering (pp. 90--106). Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Lau, K. K., Ling, L., Ukis, V., & Elizondo, P. V. (2007). Composite connectors for composing software components. In Software Composition (pp. 266--280). Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Lopes, A., Wermelinger, M., & Fiadeiro, J. L. (2001). A compositional approach to connector construction. In Recent Trends in Algebraic Development Techniques (pp. 201--220). Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Lopes, A., Wermelinger, M., & Fiadeiro, J. L. (2003). Higher-order architectural connectors. ACM Transactions on Software Engineering and Methodology (TOSEM), 12(1), 64--104. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Marangozov, V., Bellissard, L., Vion-Dury, J. Y., & Riveill, M. (1997). Connectors: a Key Feature For Building Distributed Component-based Architectures. interfaces, 1(r2), r2.Google ScholarGoogle Scholar
  27. May, N. (2005, March). A survey of software architecture viewpoint models. In Proceedings of the Sixth Australasian Workshop on Software and System Architectures (pp. 13--24).Google ScholarGoogle Scholar
  28. Medvidovic, N., & Taylor, R. N. (2000). A classification and comparison framework for software architecture description languages. Software Engineering, IEEE Transactions on, 26(1), 70--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Mehta, N. R., Medvidovic, N., & Phadke, S. (2000). Towards a taxonomy of software connectors. In Proceedings of the 22nd international conference on Software engineering (pp. 178--187). ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Mehta, N. R., & Medvidovic, N. (2003). Composing architectural styles from architectural primitives. In ACM SIGSOFT Software Engineering Notes (Vol. 28, No. 5, pp. 347--350). ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Mellor, S. J., Scott, K., Uhl, A., & Weise, D. (2002). Model-driven architecture. In Advances in Object-Oriented Information Systems (pp. 290--297). Springer Berlin Heidelberg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Ren, J; Taylor, R., Dourish, P., & Redmiles, D. (2005). Towards an architectural treatment of software security: a connector-centric approach. In Proceedings of the 2005 workshop on Software engineering for secure systems--building trustworthy applications (SESS '05). ACM, New York, NY, USA, 1--7. DOI=10.1145/1082983.1083203 http://doi.acm.org/10.1145/1082983.1083203 Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Shaw, M. (1994). Procedure Calls Are the Assembly Language of Software Interconnection: Connectors Deserve First-Class Status. Software Engineering Institute. Paper 234.Google ScholarGoogle Scholar
  34. Shaw, M., & Clements, P. (1997). A field guide to boxology: Preliminary classification of architectural styles for software systems. In Computer Software and Applications Conference, 1997. COMPSAC'97. Proceedings, The Twenty-First Annual International (pp. 6--13). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Spitznagel, B., & Garlan, D. (2001). A compositional approach for constructing connectors. In Software Architecture, 2001. Proceedings. Working IEEE/IFIP Conference on (pp. 148--157). IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Spitznagel, B. (2005). Compositional transformation of software connectors. PhD thesis, Carnegie Mellon University School of Computer Science Technical Report Carnegie Mellon University-CS-04--128 Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Tanenbaum, A. S., & Van Steen, M. (2006). Distributed systems, 2nd ed. Prentice Hall Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Zhao, D., & Rosson, M. B. (2009, May). How and why people Twitter: the role that micro-blogging plays in informal communication at work. In Proceedings of the ACM 2009 international conference on Supporting group work (pp. 243--252). ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Zimmermann, H. (1980). OSI reference model--The ISO model of architecture for open systems interconnection. Communications, IEEE Transactions on, 28(4), 425--432Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. A specification schema for software connectors

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        CBSE '14: Proceedings of the 17th international ACM Sigsoft symposium on Component-based software engineering
        June 2014
        200 pages
        ISBN:9781450325776
        DOI:10.1145/2602458

        Copyright © 2014 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 27 June 2014

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        CBSE '14 Paper Acceptance Rate21of62submissions,34%Overall Acceptance Rate55of147submissions,37%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader