Directions in modelling large-scale software architectures

Modelling the software architectures of large systems is a challenging task. A wide variety of abstractions are required by developers to assist them in describing and analysing such architectures, including information about the components and relationships that comprise a system, the static and dynamic structure of the system, and the behavioural responsibilities of components of the system. In addition, good tool support is needed to provide modelling, analysis, design and code generation, and reverse engineering facilities. This paper analyses several architectural modelling approaches and their tools. Deficiencies with these current approaches are used to motivate a synthesised modelling approach and appropriate tool support.

[1]  John C. Grundy,et al.  High-level static and dynamic visualisation of software architectures , 2000, Proceeding 2000 IEEE International Symposium on Visual Languages.

[2]  A. Liu Dynamic distributed software architecture design with PARSE-DAT , 2000, Proceedings International Conference on Software Methods and Tools. SMT 2000.

[3]  John C. Grundy,et al.  Aspect-oriented requirements engineering for component-based software systems , 1999, Proceedings IEEE International Symposium on Requirements Engineering (Cat. No.PR00188).

[4]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[5]  John C. Grundy,et al.  A decentralized architecture for software process modeling and enactment , 1998, IEEE Internet Computing.

[6]  Bernard I. Witt,et al.  Software Architecture and Design: Principles, Models, and Methods , 1994 .

[7]  John Grundy,et al.  Static and dynamic visualisation of component-based software architectures , 1998 .

[8]  Alexander L. Wolf,et al.  Software architecture , 2001 .

[9]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[10]  John C. Grundy Visual Specification and Monitoring of Software Agents in Decentralized Process-Centred Environments , 1999, Int. J. Softw. Eng. Knowl. Eng..

[11]  John C. Grundy,et al.  Tool integration, collaboration and user interaction issues in component-based software architectures , 1998, Proceedings Technology of Object-Oriented Languages. TOOLS 28 (Cat. No.98TB100271).

[12]  John C. Grundy,et al.  ViTABaL: a visual language supporting design by tool abstraction , 1995, Proceedings of Symposium on Visual Languages.

[13]  John C. Grundy Engineering Component-based, User-configurable Collaborative Editing Systems , 1998, EHCI.

[14]  Mark Apperley,et al.  An architecture for decentralised process modelling and enactment , 1998 .

[15]  Herbert Schildt,et al.  Javabeans Programming From The Ground Up , 1998 .

[16]  Anil Mital,et al.  Second Edition: A Brief Guide to the Standard Object Modeling Language , 2000 .

[17]  T. C. Nicholas Graham,et al.  Flexibility Mapping Synchronous Groupware Architectures to Distributed Implementations , 1999, DSV-IS.

[18]  T. C. Nicholas Graham,et al.  ClockWorks: Visual Programming of Component-Based Software Architectures , 1996, J. Vis. Lang. Comput..

[19]  Kendall Scott,et al.  UML distilled - a brief guide to the Standard Object Modeling Language (2. ed.) , 2000, notThenot Addison-Wesley object technology series.

[20]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[21]  Terry Quatrani,et al.  Visual modeling with rational Rose and UML , 1998, Addison-Wesley object technology series.

[22]  David Garlan,et al.  Using tool abstraction to compose systems , 1992, Computer.

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

[24]  Thomas J. Mowbray,et al.  Inside CORBA - distributed object standards and applications , 1998, Addison-Wesley object technology series.

[25]  Paul Clements,et al.  Software Architecture in Practice: Addison-Wesley , 1998 .