A syntactic approach to type soundness
Information and Computation
Specification and Analysis of System Architecture Using Rapide
IEEE Transactions on Software Engineering - Special issue on software architecture
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
A formal basis for architectural connection
ACM Transactions on Software Engineering and Methodology (TOSEM)
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Featherweight Java: a minimal core calculus for Java and GJ
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Towards a taxonomy of software connectors
Proceedings of the 22nd international conference on Software engineering
Types and programming languages
Types and programming languages
Component Software: Beyond Object-Oriented Programming
Component Software: Beyond Object-Oriented Programming
ArchJava: connecting software architecture to implementation
Proceedings of the 24th International Conference on Software Engineering
Proceedings of the 24th International Conference on Software Engineering
An Explicit Definition of Connectors for Component-Based Software Architecture
ECBS '04 Proceedings of the 11th IEEE International Conference and Workshop on Engineering of Computer-Based Systems
Abstract behavior types: a foundation model for components and their composition
Science of Computer Programming - Formal methods for components and objects pragmatic aspects and applications
Interaction-based programming with classages
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
First-class relationships in an object-oriented language
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Exogenous connectors for software components
CBSE'05 Proceedings of the 8th international conference on Component-Based Software Engineering
Hi-index | 0.00 |
The idea of a connector, which explicitly describes the interactions among components, is one of the important contributions of the research on software architecture. The importance of the connector as a first-class entity in software architecture has been increasingly recognized. In this paper we argue that such an important abstraction also deserves first-class support from programming languages. We present a new component-oriented programming language, SAJ (Software Architecture based Java), which integrates some architectural concepts such as the component, the port and particularly the connector into Java. The connector is treated as a first-class entity in SAJ as is the component so that software architecture can be made more explicit at implementation level and the simultaneous reuse of the component and the connector can be realized. The component model and the connector model underlying SAJ are also discussed in detail. We formalize our language giving both the type system and operational semantics and prove the type soundness property.