Synopsis of the Thesis entitled

PATTERN BASED METHODOLOGY FOR OBJECT ORIENTED SYSTEMS

THESIS TO BE SUBMITTED TO THE FACULTY OF ENGINEERINGANDHRAUNIVERSITY FOR THE AWARD OF DEGREE OF DOCTOR OF PHILOSOPHY IN COMPUTER SCIENCE AND TECHNOLOGY

G. Saradhi Varma

DEPARTMENT OF COMPUTER SCIENCE AND
SYSTEMS ENGINEERING

INDIA

2003

“All well-structured object-oriented architectures are full of patterns. Indeed, one of the ways that I measure the quality of an object-oriented system is to judge whether or not its developers have paid careful attention to the common collaboration among its objects. Focusing on such mechanisms during a system’s development can yield an architecture that is smaller, simpler and far more understandable than if these patterns are ignored.”

By

Grady Booch

In recent times design patterns have been identified as the basic building blocks of object oriented design (OOD). A design pattern identifies the participating classes and instances, their roles and collaboration. Design patterns make use of basic object oriented (OO) principles like abstraction, inheritance, polymorphism and dynamic binding. They provide solutions for recurring design problems that occur across different domains in a particular context. Also design pattern capture the knowledge of designer’s experience in the form of a catalog in OO paradigm. The availability of such a catalog of design pattern helps both experienced and novice designers to recognize situations in which design reuse is possible.

In the catalog proposed by Gamma, patterns are classified based on their purpose and scope. Further, purpose is classified as creational, structural or behavioral and scope as class or object. For a design problem, a developer may refer to the pattern catalog to choose a suitable pattern for solving the problem. Even though catalog in its present form is very useful, effective usage of design patterns as presented in the catalog depends very much on the experience and intuition of the designer.

Design patterns have been recognized as an effective means of recording the experience of designers. This thesis takes one step forward by viewing design patterns as systematic building blocks in OO system design. A pattern based design handbook (PBDH) is proposed. Four key attributes to quantify a design pattern are identified. A measurement model for design patterns called pattern measure graph (PMG) is developed. A set of measures which can be extracted from the pattern measure graph is presented. The four key attributes are expressed in terms of these measures. The procedure for constructing the pattern based design handbook is provided. The weights for the four key attributes are likely to be converged by empirical validation on different projects across different organizations. A design methodology for software development based on patterns is developed, named as pattern based methodology (PBM). The key features of the methodology are outlined. It is possible to construct alternative design solutions for a given problem using PBM. These alternative design solutions can be evaluated using the PBDH. This thesis helps in estimating the trade-offs among alternative designs.

Existence of alternative patterns gives rise to alternative designs. PBM provides a mechanism to identify prospective alternatives for a design problem. Size can be used as a criterion to select a suitable design from the set of alternative designs. The current procedure to estimate the size of a pattern base design is application independent. But size can not be estimated with out including the functionality of an application. Accuracy of the estimate depends on the amount of information known about the application. But designing all the alternatives with complete information and selecting one among them is not advisable. This is because, the efforts of developers expended for the alternative designs will be wasted except for the suitable one. In this thesis, an approach to estimate the size of a pattern base design is explained. Relative size of all the alternative designs will be estimated. It considers only the non common patterns that exist in the alternative designs. This method takes minimum effort to select a suitable design from the set of alternative designs based on size.

Organization of the Thesis

Chapter 1 Introduction : Reports Object oriented methodologies, Design Patterns, Size estimation models.

Chapter 2 Literature Survey : State of art of Rumbaugh Et al’s Object Model , Booch Model, The Jacobson et al. Methodology , Coad and Yourdon object oriented analysis model, Shaler and Mellor Object Oriented Analysis Model, The FUSION Method, SLOC Model, Functional Points Model, Object points Model, Composite Model.

Chapter 3 Design Pattern Metrics : A measurement model for design patterns called pattern measure graph is developed which is derived from class diagram and object interaction diagram of the pattern. This representation is considered as a measurement model on which a set of metrics is based. These metrics are used to derive the quantified values of the four key attributes of the pattern.

Chapter 4 Pattern Based Methodology : A new design methodology named as Pattern Based Methodology (PBM) using patterns is presented. It incorporates the use of patterns in the design process.

Chapter 5 Estimating Relative Size : Presents procedure to estimate relative size when alternative designs exist. The procedure reduces the effort to select a suitable design from a set of alternative designs. It also brings the concept of relative measures to estimate different characteristics of a software system when alternative solutions exist.

Chapter 6 Object Oriented Function Points For PBM: After selecting a suitable design, its absolute size needs to be estimated. Size is estimated by adapting the function points technique to pattern based software which is presented in the chapter 5.

Chapter 7 Conclusions and Future Research: The four key measures are independent. It may be possible to bring out some relationships among these measures and also to derive an mathematical formula for estimating the complexity of a pattern measure graph.

Chapter 8 Appendix: Patterns catalog Proposed in ‘Design Patterns Elements of Reusable Object-Oriented Software’ By Erich Gamma converted to Pattern measure graphs using PBM.

Chapter 9: References

The following papers are presented in various International / National Conferences related to this thesis:

[1]. Prof G P Saradhi Varma , Dr KVSVN Raju “Design level measures for pattern oriented software development: A Case Study”, International conference 2003 Katmandu, Nepal.

[2]. Prof G P Saradhi Varma , Dr KVSVN Raju “Estimating design level measures when alternative design exist for a given object oriented design problem” International conference 2003 Bhubaneswar , India.

[3]. Prof G P Saradhi Varma , Dr KVSVN Raju “Pattern Based Design Hand Book for Pattern-Oriented Software Development”, International conference 2003 Bhubaneswar , India.

[4]. Prof G P Saradhi Varma “Estimating Reltive Size for a Pattern based methodology when alternative design exist for a given object oriented design problem” in CSI National Convention BIGO -2003 on 10th to 12th June 2003 at Vishakapatnam.

[5]. Prof G P Saradhi Varma “An approach to identify alternative solutions for an object oriented design” in National Level Seminar and by CSI V V Nagar Chapter, 14th – 15th Feb 2003.

[6]. Prof G P Saradhi Varma “Approach to select a suitable design from a set of alternative design for a given object oriented problem” in CSI XXVII National Convention at IISC Banglore on 29 – 31st , Oct 2002.