Automated configuration of distributed applications from reusable software architectures

In this paper a reuse-oriented perspective is taken to designing and implementing configurable distributed applications. An application domain is defined as a family of systems that have some features in common and others that differentiate them. During domain engineering, reusable specifications, architectures and component types are developed, which capture the similarities and variations of the family of systems that compose the application domain. Target systems are generated by tailoring the reusable specification and architecture given the requirements of the target system, and configuring a target system based on the tailored architecture. The paper describes an automated approach for configuring distributed applications from a reusable architecture and library of predefined component types.

[1]  Naranker Dulay,et al.  Regis: a constructive development environment for distributed programs , 1994, Distributed Syst. Eng..

[2]  Vijayan Sugumaran,et al.  A Knowledge-Based Software Engineering Environment for reusable software requirements and architectures , 1996, Automated Software Engineering.

[3]  Hassan Gomaa,et al.  A software engineering environment for configuring distributed applications from reusable software architectures , 1997, Proceedings Eighth IEEE International Workshop on Software Technology and Engineering Practice incorporating Computer Aided Software Engineering.

[4]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[5]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[6]  Naranker Dulay,et al.  A constructive development environment for parallel and distributed programs , 1994, Proceedings of 2nd International Workshop on Configurable Distributed Systems.

[7]  David Lorge Parnas,et al.  Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .

[8]  Hassan Gomaa,et al.  Reusable software requirements and architectures for families of systems , 1995, J. Syst. Softw..

[9]  Hassan Gomaa,et al.  A reuse-oriented approach for structuring and configuring distributed applications , 1993, Softw. Eng. J..

[10]  G.A. Farrukh,et al.  An approach for generating executable distributed applications from reusable software architectures , 1996, Proceedings of ICECCS '96: 2nd IEEE International Conference on Engineering of Complex Computer Systems (held jointly with 6th CSESAW and 4th IEEE RTAW).

[11]  Naranker Dulay,et al.  Structuring parallel and distributed programs , 1993, Softw. Eng. J..

[12]  Hassan Gomaa Software design methods for concurrent and real-time systems , 1993, SEI series in software engineering.

[13]  Vijayan Sugumaran,et al.  A Knowledge-Based Software Engineering Environment for Reusable Software Requirements and Architectures , 1996 .