Reusing software architectures: a formal basis

Paolo Ciaccia, Paolo Ciancarini, Wilma Penzo · 2002

The research topic of software architectures is increasing its importance, as software systems become more and more complex, difficult to understand, and too expensive to design from scratch. It is becoming clear that it is possible to reuse and adapt already existing software architectures, if adequate techniques are applied during the development process. We discuss how a method based on a formal design notation supports specification, design, verification, and especially reuse of a software architecture. Our method consists of analyzing a formal specification written in Z to produce a formal design document written in Larch. The use of two different formal notations allows us to exploit specific techniques and tools to help a designer in reasoning on and verifying properties and features of a software architecture document. To validate our approach we present a formal treatment of a software architecture which has been reused in real development processes.

Read the paper · More papers on PaperTik