We would like to share a presentation that describes our principle-based classification of structural design smell. We believe that all structural design smells can be classified using famous four principles of object-orientation i.e. Abstraction, Encapsulation, Modularization, and Hierarchy.
Showing posts with label principle-based classification. Show all posts
Showing posts with label principle-based classification. Show all posts
Monday, 19 August 2013
Design smells poster for quick reference
This poster provides a quick overview of the design smells. The smells are classified as the violation of fundamental OO principles - abstraction, encapsulation, modularization, and hierarchy.
Take a printout and paste it in your cubicle for your quick reference!
Take a printout and paste it in your cubicle for your quick reference!
Monday, 12 August 2013
Design Smells: Overview, Classification, and Examples
Here is a presentation on design smells that talks about the need for understanding design smells in OO software systems, offers a classification based on our paper, and presents a few design smell examples. The presentation cites examples from well-known classes of JDK so that reader can relate to the provided description with much more ease.
Have a comment, feedback, or suggestions? Please do feel free to write us. Also you are welcome to post your own examples for these design smells :-)
Have a comment, feedback, or suggestions? Please do feel free to write us. Also you are welcome to post your own examples for these design smells :-)
Monday, 24 June 2013
Our paper on Design Smells published in JOT (June 2013 issue)
Title: Towards a
Principle-based Classification of Structural Design Smells
Abstract: Fred
Brooks in his book "The Mythical Man Month" describes how the
inherent properties of software (i.e. complexity, conformity, changeability,
and invisibility) make its design an "essential" difficulty. Good
design practices are fundamental requisites to address this difficulty. One
such good practice is that a software designer should be aware of and address
"design smells" that can manifest as a result of his design
decisions. However, our study of the vast literature on object-oriented design
smells reveals the lack of an effective organization of smells that could
better guide a designer in understanding and addressing potential issues in his
design. In order to address this gap, we have adopted a novel approach to
classify and catalog a number of recurring structural design smells based on
how they violate key object oriented (OO) design principles. To evaluate the
usefulness of our design smell catalog, we first asked Siemens CT DC AA
architects to use it to identify design smells in their projects, and later
elicited feedback from them about their experience. The feedback received
indicates that these architects found the catalog to be very useful. In this
paper, we present our catalog, classification, and naming scheme for design
smells and also highlight several interesting observations and insights that
result from our work.
Cite as: S.G. Ganesh, Tushar Sharma, Girish Suryanarayana,
“Towards a Principle-based Classification of Structural Design Smells”, Journal
of Object Technology, Volume 12, no. 2 (June 2013), pp. 1:1-29,
doi:10.5381/jot.2013.12.2.a1.
If you are interested to see the information discussed in
the above paper in the form of a presentation, it could be downloaded
from here.
A nice poster on design smell classification can be downloaded from here.
Abstract: Fred
Brooks in his book "The Mythical Man Month" describes how the
inherent properties of software (i.e. complexity, conformity, changeability,
and invisibility) make its design an "essential" difficulty. Good
design practices are fundamental requisites to address this difficulty. One
such good practice is that a software designer should be aware of and address
"design smells" that can manifest as a result of his design
decisions. However, our study of the vast literature on object-oriented design
smells reveals the lack of an effective organization of smells that could
better guide a designer in understanding and addressing potential issues in his
design. In order to address this gap, we have adopted a novel approach to
classify and catalog a number of recurring structural design smells based on
how they violate key object oriented (OO) design principles. To evaluate the
usefulness of our design smell catalog, we first asked Siemens CT DC AA
architects to use it to identify design smells in their projects, and later
elicited feedback from them about their experience. The feedback received
indicates that these architects found the catalog to be very useful. In this
paper, we present our catalog, classification, and naming scheme for design
smells and also highlight several interesting observations and insights that
result from our work.
Cite as: S.G. Ganesh, Tushar Sharma, Girish Suryanarayana,
“Towards a Principle-based Classification of Structural Design Smells”, Journal
of Object Technology, Volume 12, no. 2 (June 2013), pp. 1:1-29,
doi:10.5381/jot.2013.12.2.a1.
If you are interested to see the information discussed in
the above paper in the form of a presentation, it could be downloaded
from here.
A nice poster on design smell classification can be downloaded from here.
Subscribe to:
Comments (Atom)