2009kuriansphd.pdf (1.75 MB)
A case for pattern-based software engineering
thesisposted on 2010-05-10, 10:54 authored by Susan Kurian
Embedded software development is characterized by design issues involving time and resource constraints. An application- specific user interface complicates the process of developing such software using PC-based development environments. Reusing established best-practices is a useful method of dealing with such complexities. Design patterns are well-documented, time-tested solutions to classic design problems and capture significant domain knowledge. This thesis is concerned with the use of one such pattern collection suitable for building embedded systems with a time-triggered architecture. Traditionally, a practitioner wishing to incorporate design patterns into the software being developed would read the documentation and apply the suggested solution manually. More recently, code generators designed to automate the process of converting a pattern solution to source code, have been developed. In either approach, the example solution offered as part of the pattern documentation plays a key role in obtaining source code from the design pattern documentation. However patterns contain a lot of other information which can contribute to the evaluation and application of the design pattern in a project. The research described here suggests a framework for the use of patterns for developing software. It recognises the fact that example implementations of patterns are well-used entities. The research focuses on the use of the remaining information, particularly pattern relationships available within the document, to support design space exploration activities. This process is illustrated using a simple cruise control system. In a bid to standardize the process of using design-specific information captured in the pattern documentation, this thesis describes an approach to formalise the pattern language. It suggests an approach based on the use of context-free grammars, to represent the natural language information held in the pattern documentation. It illustrates the use of the suggested approach using an elevator-based case study.
The UK Government (Department for Education and Skills) ORSAS award;The University of Leicester (Department of Engineering) departmental scholarship;TTE Systems Ltd. (industrial sponsors)
Date of award2010-01-15
Awarding institutionUniversity of Leicester