Foundations for the study of software architecture
ACM SIGSOFT Software Engineering Notes
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
A Component- and Message-Based Architectural Style for GUI Software
IEEE Transactions on Software Engineering - Special issue: best papers of the 17th International Conference on Software Engineering (ICSE-17)
Electronic commerce: a manager's guide
Electronic commerce: a manager's guide
Using weaves for software construction and analysis
ICSE '91 Proceedings of the 13th international conference on Software engineering
A Metaobject Architecture for Fault-Tolerant Distributed Systems: The FRIENDS Approach
IEEE Transactions on Computers
Architecture-based runtime software evolution
Proceedings of the 20th international conference on Software engineering
Enterprise JavaBeans
Communications of the ACM
Java and XML
Characteristics of application software maintenance
Communications of the ACM
Learning DCOM
Dependability: Basic Concepts and Terminology
Dependability: Basic Concepts and Terminology
Software Maintenance Management
Software Maintenance Management
N-Version Design Versus One Good Version
IEEE Software
An Architecture-Based Approach to Self-Adaptive Software
IEEE Intelligent Systems
Notes on Data Base Operating Systems
Operating Systems, An Advanced Course
Service-based software: the future for flexible software
APSEC '00 Proceedings of the Seventh Asia-Pacific Software Engineering Conference
Coordinated Exception Handling in Distributed Object Systems: From Model to System Implementation
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
Fault Tolerance in Concurrent Object-Oriented Software through Coordinated Error Recovery
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
Hi-index | 0.00 |
Distributed software systems are increasingly used to support business applications. This requires three crucial properties of any architecture: first, the system has well defined dependability attributes; second, it is flexible, in that it can be modified to accommodate new or changed applications; and third, the several subcomponents or subsystems can interwork to meet the needs of the large-scale distributed application. Existing work has concentrated on solving these problems as separate issues. A new system abstraction model is proposed here in which these problems are addressed together. Dependability is achieved largely by the use of coordinated atomic actions to structure and control the dynamic behaviour of the system, by providing effective error recovery and supporting dynamic system change. Flexibility and interworking are addressed by multiple architecture levels and component interaction mechanisms. Software components involved in the system are classified into three loosely coupled levels: "core", "internal-business-logic" and "service interfaces". While the interface to the system environment permits the highest level of flexibility, the core components remain relatively stable. An example implementation of the proposed abstract architecture is outlined by means of available technologies including XML, Java Server Pages, CORBA and JDBC.