Correctness and composition of software architectures
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
Correct Architecture Refinement
IEEE Transactions on Software Engineering - Special issue on software architecture
A Model for Mobile Point-to-Point Data-flow Networks without Channel Sharing
AMAST '96 Proceedings of the 5th International Conference on Algebraic Methodology and Software Technology
AutoFocus: A Tool for Distributed Systems Specification
FTRTFT '96 Proceedings of the 4th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems
Structured Analysis and System Specification
Structured Analysis and System Specification
Secure Interoperation of Secure Distributed Databases
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
Refinement of Pipe-and-Filter Architectures
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
Architectural Refinement and Notions of Intransitive Noninterference
ESSoS '09 Proceedings of the 1st International Symposium on Engineering Secure Software and Systems
Computing refactorings of behavior models
MoDELS'05 Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems
On refinement of software architectures
ICTAC'05 Proceedings of the Second international conference on Theoretical Aspects of Computing
Hi-index | 0.00 |
A calculus is presented for the stepwise refinement of abstract information flow architectures. We give a mathematical model for information flow components based on relations between input and output communication histories, and describe system architectures using two views: the glass box view is a network of basic components, while the black box view regards the network itself as a component. This allows us to hierarchically compose systems. The calculus consists of basic rules to add or remove components and channels, and to replace components by subnetworks and vice versa. The correctness of the rules is justified by the refinement relation on the black box view of architectures.