[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/239098.239106acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
Article
Free access

Using object-oriented typing to support architectural design in the C2 style

Published: 01 October 1996 Publication History

Abstract

Software architectures enable large-scale software development. Component reuse and substitutability, two key aspects of large-scale development, must be planned for during software design. Object-oriented (OO) type theory supports reuse by structuring inter-component relationships and verifying those relationships through type checking in an architecture definition language (ADL). In this paper, we identify the issues and discuss the ramifications of applying OO type theory to the C2 architectural style. This work stems from a series of experiments that were conducted to investigate component reuse and substitutability in C2. We also discuss the limits of applicability of OO typing to C2 and how we addressed them in the C2 ADL.

References

[1]
R. Allen and D. Garlan. Formalizing Architectural Connection. In Proceedings of the Sixteenth International Conference on Software Engineering, pages 71-80, Sorrento, Italy, May 1994.
[2]
D. Batory and S. O'Malley. The Design and Implementation of Hierarchical Software Systems with Reusable Components. ACM Transactions on Software Engineering and Methodology, pages 355- 398, October 1992.
[3]
F. DeRemer and H. H. Kron. Programming in the Large Versus Programming in the Small. IEEE Transactions on Software Engineering, pages 80-86, June 1976.
[4]
D. Garlan. What is Style? In David Garlan, editor, Proceedings of the First International Workshop on Architectures for Software Systems, pages 96-100, April 1995.
[5]
D. Garlan, R. Allen, and J. Ockerbloom. Exploiting Style in Architectural Design Environments. In Proceedings of SIGSOFT94: Foundations of Software Engineering, pages 175-188, New Orleans, LA, USA, December 1994.
[6]
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object- Oriented Software. Addison-Wesley, Reading, Massachusetts, 1995.
[7]
M. L. Griss, W. Kozaczynski, A. 1. Wasserman. C. Jette, and others. Object-Oriented Reuse. In proceedings of the Third International Conference on Software Reuse. Rio de Janeiro, Brazil, November 1994.
[8]
D. Garlan and M. Shaw. An Introduction to Software Architecture: Advances in Software Engineering and Knowledge Engineering, volume I. World Scientific Publishing, 1993.
[9]
U. Holzle. Integrating Independently-Developed Components in Object-Oriented Languages. In Proceedings of the 7th European Conference on Object-Oriented Programming (ECOOP' 93), pages 36-56, Kaiserslautern. Germany. July 1993.
[10]
U. Holzle and D. Ungar. Optimizing Dynamically- Dispatched Calls with Run-Time Type Feedback. In ACM SIGPLAN'94 Conference on Programming Language Design and Implementation (PLDI), pages 326-336, Orlando, FL, June 1994.
[11]
D. Lea and J. Marlowe. Interface-Based Protocol Specifications of Open Systems Using PSL. In Proceedings of the 9th European Conference on Object-Oriented Programming (ECOOP'95), pages 374-398, Aarhus, Denmark, August 1995.
[12]
D. C. Luckham and J. Vera. An Event-Based Architecture Definition Language. IEEE Transactions on Software Engineering, pages 717-734, September 1995.
[13]
B. H. Liskov and J. M. Wing. A Behavioral Notion of Subtyping. ACM Transactions on Programming Languages and Systems, November 1994.
[14]
R. McDaniel and B. A. Myers. Amulet's Dynamic and Flexible Prototype-Instance Object and Constraint System in C++. Technical Report, CMU-CS-95-176, Carnegie Mellon University, Pittsburgh, PA.
[15]
N. Medvidovic and R. N. Taylor. Reuse of Off-the- Shelf Constraint Solvers in C2-Style Architectures. Technical Report UCI-ICS-96-28, University of California, Irvine, July 1996.
[16]
N. Medvidovic, R. N. Taylor, E. J. Whitehead, Jr. Formal Modeling of Software Architectures at Multiple Levels of Abstraction. In Proceedings of the Cal fornia Software Symposium (CSS'96), Los Angeles, CA, April 1996.
[17]
M. Moriconi, X. Qian, and R. A. Riemenschneider. Correct Architecture Refinement. IEEE Transactions on Software Engineering, pages 356-372, April 1995.
[18]
O. Nierstrasz. Regular Types for Active Objects. In Proceedings of the ACM Conference on Object- Oriented Programming: Systems, Languages, and Applications (OOPSLA'93), Washington, D. C., USA, October 1993.
[19]
O. Nierstrasz and T. D. Meijler. Requirements for a Composition Language. In Proceedings of ECOOP'94 Workshop on Models and Languages for Coordination of Parallelism and Distribution, pages 147-161, Bologna, Italy, July 1994.
[20]
D. E. Perry and A. L. Wolf. Foundations for the Study of Software Architectures. ACM SIGSOFT Software Engineering Notes, pages 40-52, October 1992.
[21]
J. Palsberg and M. I. Schwartzbach. Object-Oriented Type Inference. In Proceedings of the ACM Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 146- 161, Phoenix, AZ, USA, October 1991.
[22]
J. Palsberg and M. I. Schwartzbach. Three Discussions on Object-Oriented Typing. ACM SIGPLAN OOPS Messenger, 3(2):31-38, 1992.
[23]
J. Robbins and D. Redmiles. Software Architecture Design from the Perspective of Human Cognitive Needs. In Proceedings of the California Software Symposium (CSS'96), Los Angeles, CA, USA, April 1996.
[24]
M. Sannella. Sky Blue: A Multi-Way Local Propagation Constraint Solver for User Interface Construction. In Proceedings of the Seventh Annual ACM Symposium on User Interface Software and Technology, Marina del Ray, CA, November 1994, pages 137-146.
[25]
R. N. Taylor, N. Medvidovic, K. M. Anderson, E. J. Whitehead, Jr., J. E. Robbins, K. A. Nies, P. Oreizy, and D. Dubrow. A Component- and Message-Based Architectural Style for GUI Software. IEEE Transactions on Software Engineering, pages 390- 406, June 1996.
[26]
W. Tracz. "DSSA (Domain-Specific Software Architecture) Pedagogical Example." Software Engineering Notes, July 1995.
[27]
D. M. Yellin and R. E. Strom. Interfaces, Protocols, and the Semi-Automatic Construction of Software Adaptors. In Proceedings of the ACM Conference on Object-Oriented Programming: Systems, Languages, and Applications, pages 176-190, Portland, OR, USA, October 1994.

Cited By

View all
  • (2021)Architectural Archipelagos: Technical Debt in Long-Lived Software Research Platforms2021 IEEE/ACM International Conference on Technical Debt (TechDebt)10.1109/TechDebt52882.2021.00019(94-98)Online publication date: May-2021
  • (2019)A deep recurrent Q network towards self‐adapting distributed microservice architectureSoftware: Practice and Experience10.1002/spe.277850:2(116-135)Online publication date: 28-Nov-2019
  • (2017)Microservice Ambients: An Architectural Meta-Modelling Approach for Microservice Granularity2017 IEEE International Conference on Software Architecture (ICSA)10.1109/ICSA.2017.32(1-10)Online publication date: Apr-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGSOFT '96: Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
October 1996
190 pages
ISBN:0897917979
DOI:10.1145/239098
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1996

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SOFT96
Sponsor:
SOFT96: SIGSOFT '96
October 16 - 18, 1996
California, San Francisco, USA

Acceptance Rates

Overall Acceptance Rate 17 of 128 submissions, 13%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)95
  • Downloads (Last 6 weeks)7
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Architectural Archipelagos: Technical Debt in Long-Lived Software Research Platforms2021 IEEE/ACM International Conference on Technical Debt (TechDebt)10.1109/TechDebt52882.2021.00019(94-98)Online publication date: May-2021
  • (2019)A deep recurrent Q network towards self‐adapting distributed microservice architectureSoftware: Practice and Experience10.1002/spe.277850:2(116-135)Online publication date: 28-Nov-2019
  • (2017)Microservice Ambients: An Architectural Meta-Modelling Approach for Microservice Granularity2017 IEEE International Conference on Software Architecture (ICSA)10.1109/ICSA.2017.32(1-10)Online publication date: Apr-2017
  • (2014)Software architecture: a travelogueFuture of Software Engineering Proceedings10.1145/2593882.2593886(29-39)Online publication date: 31-May-2014
  • (2014)Architecture ConstraintsSoftware Architecture 210.1002/9781118945087.ch2(37-90)Online publication date: 3-Jun-2014
  • (2013)Are We There Yet? Analyzing Architecture Description Languages for Formal Analysis, Usability, and RealizabilityProceedings of the 2013 39th Euromicro Conference on Software Engineering and Advanced Applications10.1109/SEAA.2013.34(177-184)Online publication date: 4-Sep-2013
  • (2012)Architecture-Centered Integrated VerificationComputer Engineering10.4018/978-1-61350-456-7.ch202(201-222)Online publication date: 2012
  • (2012)Semantic Analysis of Component-aspect Dynamism for Connector-based Architecture StylesProceedings of the 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture10.1109/WICSA-ECSA.212.23(151-160)Online publication date: 20-Aug-2012
  • (2012)A Semantic Framework for Business Process Modeling Based on Architecture StylesProceedings of the 2012 IEEE/ACIS 11th International Conference on Computer and Information Science10.1109/ICIS.2012.16(513-520)Online publication date: 30-May-2012
  • (2011)Improving product line architecture design and customization by raising the level of variability modelingProceedings of the 12th international conference on Top productivity through software reuse10.5555/2022115.2022133(151-166)Online publication date: 13-Jun-2011
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media