Designing Concurrent and Distributed Control Systems.

Saved in:
Bibliographic Details
Title: Designing Concurrent and Distributed Control Systems.
Authors: Aarsten, amund1 amund@polito.it, Brugali, Davide1 brugali@polito.it, Menga, Giuseppe2 menga@polito.it
Source: Communications of the ACM. Oct96, Vol. 39 Issue 10, p50-58. 9p. 7 Charts.
Subjects: Distributed operating systems (Computers), Programming languages, Pattern recognition systems, Computer architecture, Systems design, Software engineering
Abstract: The article discusses the design of a concurrent and distributed control system. The approach described in this article is based on the concept of patterns and pattern language. The G++ pattern language addresses the problem of designing large software control systems, made up of layers of concurrent control modules installed on a distributed computer architecture by following an evolutionary development process that derives the final implementation from a prototype of the logical design. The language is derived from the "divide and conquer" paradigm and deals with issues such as the organization of control modules in a hierarchy of inclusion and use relationships, and the visibility requirements between the control modules, concurrency, and distribution. The article presents a summary of the G++ pattern language for concurrent and distributed systems, the result of experience acquired from real-world projects over the last 10 years. The existence of design patterns is often very valuable for solving isolated design problems. A domain-specific pattern language does the same to a whole development project. Typically, engineers without experience with object-oriented programming or concurrent/distributed systems are able to develop systems of significant complexity after a period of three months.
Database: Engineering Source
Description
Abstract:The article discusses the design of a concurrent and distributed control system. The approach described in this article is based on the concept of patterns and pattern language. The G++ pattern language addresses the problem of designing large software control systems, made up of layers of concurrent control modules installed on a distributed computer architecture by following an evolutionary development process that derives the final implementation from a prototype of the logical design. The language is derived from the "divide and conquer" paradigm and deals with issues such as the organization of control modules in a hierarchy of inclusion and use relationships, and the visibility requirements between the control modules, concurrency, and distribution. The article presents a summary of the G++ pattern language for concurrent and distributed systems, the result of experience acquired from real-world projects over the last 10 years. The existence of design patterns is often very valuable for solving isolated design problems. A domain-specific pattern language does the same to a whole development project. Typically, engineers without experience with object-oriented programming or concurrent/distributed systems are able to develop systems of significant complexity after a period of three months.
ISSN:00010782
DOI:10.1145/236156.236168