Formal Software Design Technique – A Pattern Based Approach

Main Article Content

Shouvik Dey Swapan Bhattacharya


Design patterns are usually modeled and documented in natural languages and visual languages, such as the Unified Modeling Language. UML does not keep track of pattern-related information when a design pattern is applied or composed with other patterns. Existing graphical notations are not able to provide complete information to the designers for specifying the role and scope of execution of the participating classes and their methods in a particular design pattern or combination of patterns. Also the existing formal specification languages for design patterns are not complete enough. They basically tend to focus on specifying structural and behavioral aspect of design patterns without taking care of the several extension mechanisms. Existing formal languages are not strong enough to provide several pattern related information like the role of a participating class or a method in combination of patterns which is indeed very important information to pattern users. This paper introduces an extension to the UML Class diagram to better represent design patterns and based on this mechanism a grammar FSDP (Formal Specification of Design Pattern) for this design specification is provided to automate the software pattern design techniques. FSDP is able to represent design pattern and combination of patterns in a more informative way compare to the existing formal languages

Article Details

How to Cite
DEY, Shouvik; BHATTACHARYA, Swapan. Formal Software Design Technique – A Pattern Based Approach. INFOCOMP Journal of Computer Science, [S.l.], v. 9, n. 2, p. 27-38, june 2010. ISSN 1982-3363. Available at: <>. Date accessed: 16 june 2019.
Design Patterns, Pattern combination, Role of class, Scope of execution, Remote method, UML, Class diagram