
TL;DR
This paper formalizes software design patterns and verifies their correctness using truly concurrent process algebra, aiming to advance software engineering from experience-based to science-based practices.
Contribution
It introduces a formalization and verification method for software patterns using process algebra, proposing it as an intermediate pattern language.
Findings
Patterns are formalized according to architecture categories.
Verification of pattern correctness is achieved through process algebra.
Process algebra serves as a rigorous intermediate language for patterns.
Abstract
The software patterns provide building blocks to the design and implementation of a software system, and try to make the software engineering to progress from experience to science. The software patterns were made famous because of the introduction as the design patterns. After that, patterns have been researched and developed widely and rapidly. The series of books of pattern-oriented software architecture should be marked in the development of software patterns. As mentioned in these books, formalization of patterns and an intermediate pattern language are needed and should be developed in the future of patterns. So, in this book, we formalize software patterns according to the categories of the series of books of pattern-oriented software architecture, and verify the correctness of patterns based on truly concurrent process algebra. In one aspect, patterns are formalized and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsService-Oriented Architecture and Web Services · Software Engineering and Design Patterns · Advanced Software Engineering Methodologies
