Parallel program design: a foundation
Parallel program design: a foundation
Coordination languages and their significance
Communications of the ACM
Foundations for the study of software architecture
ACM SIGSOFT Software Engineering Notes
A superimposition control construct for distributed systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Dynamic structure in software architectures
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
The Unified Modeling Language user guide
The Unified Modeling Language user guide
Aspect-oriented programming: Introduction
Communications of the ACM
Constructing Formal Specifications from Informal Requirements
STEP '97 Proceedings of the 8th International Workshop on Software Technology and Engineering Practice (STEP '97) (including CASE '97)
Tool Support for Coordination-Based Software Evolution
TOOLS '01 Proceedings of the Technology of Object-Oriented Languages and Systems
Enforcing Business Policies Through Automated Reconfiguration
Proceedings of the 16th IEEE international conference on Automated software engineering
Object-Oriented Software Engineering: A Use Case Driven Approach
Object-Oriented Software Engineering: A Use Case Driven Approach
Interconnecting objects via contracts
UML'99 Proceedings of the 2nd international conference on The unified modeling language: beyond the standard
Hi-index | 0.00 |
Use-case driven software development processes can seriously compromise the ability of systems to evolve if a careful distinction is not made between "structure" and "use", and this distinction is not reflected immediately in the first model and carried through to the implementation. By "structure", we are referring to what derives from the nature of the application domain, i.e. to what are perceived to be the "invariants" or core concepts of the business domain, as opposed to the business rules that apply at a given moment and determine the way the system (solution) will be used. This paper shows how the notion of coordination contract can be used to support the separation between structure and use at the level of system models, and how this separation supports the evolution of requirements on "use" based on the revision or addition of use cases, with minimal impact on the "structure" of the system.