Document Type : Original Research Paper


Department of Statistics, Mathematics, and Computer Science, Allameh Tabataba’i University


Analysis and design of object oriented is onemodern paradigms for developing a system. In this paradigm, there are several objects and each object plays some specific roles. Identifying objects (and classes) is one of the most important steps in the object-oriented paradigm. This paper makes a literature review over techniques to identify objects and then presents six taxonomies for them. The first taxonomy is based on the documents exist for a domain. The second taxonomy is based on reusable previous knowledge and the third one relies on commonalities in a domain. The fourth taxonomy is concerned with decomposing a domain. The fifth taxonomy is based on experience view and sixth one is related to use the abstraction in a domain. In this paper, the constraints, strengths and weaknesses of the techniques in each taxonomy are described. Then, the techniques are evaluated in four systems inside an educational center in a university. A couple of approach is recommended for finding objects, based on some practical experiences obtained from the evaluation.


[1] G. Bavota, A D. Lucia, A. Marcus, and R. Oliveto, “Automating extract class refactoring: an improved method and its evaluation,” Empirical Software Engineering, Vol. 19, pp. 1616- 1664, 2014.
[2] G. Nanda, N. C. Kar, “A Survey And Comparison Of Characteristics Of Motor Drives Used In Electric Vehicles,” IEEE Electrical and Computer Engineering Conf, pp. 811-814.
[3] G. Booch., “Object-Oriented Development,” IEEE Transaction on Software Engineering, 12 (2), pp. 211-221, 1986
[4] G. Booch., “Software Engineering with Ada,” Benjamin/Cummings Publishing Co., Menlo Park, California, 1983
[5] G. Booch, J. Rumbaugh, and I. Jacobson, “The Unified Modeling Language User Guide,” Addison Wesley, 1998
[6] G. Booch, J. Rumbaugh, and I. Jacobson “The Unified Software Development Process,”Addison-Wesley, 1998
[7] F. P. Brooks, “The Silver Bullet, Essence and Accidents of Software Engineering,” Information Processing '86. Ed., Kugler H. J., Elsevier Science Publishers B.B. (North-Holland), 1986
[8] F. P. Brooks, “The Mythical Man-month: Essay on Software Engineering,” Addison-Wesley, 1982
[9] B. Bruegge, and A. H. Dutoit, “Object-Oriented Software Engineering: Using UML, Patterns, and Java,” Pearson Prentice Hall,2010
[10] G. Canforaa, A. Cimitilea, A. D Luciaa, and G. A. D Lucca, “Decomposing Legacy Systems into Objects: An Eclectic Approach,” Information and Software Technology, Vol. 43, pp. 401-412, 2001
[11] Ch. Peter, “The entity-relationship model-Toward a unified view of data,” ACM Trans. on Database Systems, Vol. 1(1.), pp. 9-36, 1976
[12] P. Coad, and E. Yourdon, “Object-Oriented Analysis,” Yourdon Press, 1991
[13] A. Cockburn., “Writing Effective Use Cases (Draft 3),” Addison Wesley Longman, 2000.
[14] E. Codd, “Extending the database relational model to capture more meaning,” ACM Trans. on Database Systems, Vol. 4(4), pp. 397-434, 1979
[15] A. V. Deursen, T. Kuipers, “Identifying Objects Using Cluster and Concept Analysis,” Proc. of 21st International Conference on Software Engineering, Los Angeles, CA, ACM Press, New York, pp.246-255, 1999
[16] Faculty of Electrical, Computer and IT engineering, Islamic Azad University, Qazvin Branch,
[17] M. Fokaefs, N. Tsantalis, E. Strouliaa, and A. Chatzigeorgioub, “Identification And Application Of Extract Class Refactoring In Object-Oriented Systems,” Journal of Systems and Software, Vol. 85 , pp. 2241–2260, 2012.
[18] M. Fowler, , and K. Scott, “UML Distilled A Brief Guide to The Standard Object Modeling Guide,” 2ndEdition,Addison Wesley Longman, Inc, 1999
[19] N. Goldsein, and J. Alger “Developing Object-Oriented Software for the Macintosh Anaiysis, Design, and Programming,” Addison-Wesley, 1992
[20] J.V.Gurp , and J. Bosch, “Design, Implementation and Evolution of Object-Oriented Frameworks: Concepts and Guidelines,” Software—Practice and Experience, Vol. 31, pp. 277-300, 2001
[21] I. Jacobson. and G. Booch, “The Unified Software Development Process,” Addison-Wesley, Reading, MA, 1999
[22] I. Jacobson, M.P. Christerson, and F. Overgaard, “ObjectOriented Software Engineering- A Use Case Approach,” Addison-Wesley, Wokingham, England, 1992
[23] Josuttis, M. Nicolai, “The C++ Standard Library: A Tutorial and Reference,” Addison-Wesley, 1999
[24] R. King, “My Cat Is Object-Oriented”, Object-Oriented Concepts, Databases and Applications”, Addison Wesley, 1989 [25] M. Langer, “Analysis and Design of Information Systems”, 3rdEdition, Springer-Verlag London Limited, 2008
[26] R.C. Lee and W.M. Tepfenhart, “UML and C++: A Practical Guide to Object-Oriented Development,” 2ndEdition, Pearson Prentice Hall, 2005
[27] J. Martin, and J. Odell, Object-Oriented Analysis and Design, Prentice-Hall, 1992
[28] S. M. McMennin, and J. F. Palmer. Essential System Analysis, Yourdon Press, 1984
[29] Merriam-Webster Online (2011), Dictionary and Thesaurus, fromhttp://
[30] B. Meyer, “Object-Oriented Software Construction,” PrenticeHall International (UK) Ltd., Cambridge, UK, 1988
[31] Musser, R. David, and A. Saini., “STL Tutorial and Reference Guide C++ Programming with the Standard Template Library,” Addison Wesley, 1996
[32] S.h. Pfleeger, and J.M. Atlee, “Software Engineering: Theory and Practice,” 4th Edition, Pearson, 2010
[33] R. S. Pressman, “Software Engineering: A Practitioner's Approach,” 8th Edition, McGraw-Hill, 2015
[34] M. R. Quillian, “Semantic Memory In Marvin Minsky,” Semantic Information Processing. Cambridge, MIT Press, 1968 [35] H. Rashidi, “Software Engineering-A programming approach,” 2ndEdition, AllamehTabataba’i University Press (in Persian), Iran, 2014
[36] D. Ross, “Applications and Extensions of SADT,” IEEE Computer, 1985, Vol. 18 (4), pp. 25-34.
[37] J. Rumbaugh, “Getting Started: Using Use Cases To Capture Requirements,” Object-Oriented Programming, Vol. 7(5), pp. 8- 12, 1994
[38] J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen, “Object-Oriented Modeling and Design,” PrenticeHall, 1992
[39] S. Schlaer, and S. Melior, “Object-Oriented Systems Analysis: Modeling the World in Data,” Yourdon Press, 1988
[40] S. Schlaer, , and S. Melior. Object Lifecycles: Modeling the World in States,Yourdon Press, 1992
[41] Y. Sommerville, “Software Engineering,” 9th Edition, Pearson Education, 2010.
[42] L. A. Stein, , H. Lieberman, and D.Ungar, “A shared view of sharing: The Treaty of Orlando,” Object-Oriented Concepts, Databases, and Applications”,Eds. by W. Kim , and F. H. Lechosky, ACM Press, New York, 1989
 [43] B. Stroustroup, “The C++ Programming Language,” AddisonWesley, 1991
[44] K.S. Subhash et al., “NLP based Object-Oriented Analysis and Design from Requirement Specification,” International Journal of Computer Applications, , Vol. 47 (21), 2012
[45] M. E. Winston, R. Chaffer, and D. Herrmann, “A Taxonomy of Part-Whole Relations,” Cognitive Science, Vol. 11, pp. 417-444, 1987.
[46] R. Wirfs-Brock, “Designing Object-Oriented Software,” Prentice-Hall, 1990
[47] E. N. Yourdon, and L. L. Constatine,“Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design,”Prentice-Hall, Englewood Cliffs, New Jersey, 1979.
[48] D. Rosenberg, and M. Stephens, “Use Case Driven Object Modeling with UML: Theory and Practice,” Apress, 2007. [49] C. Larman, “:Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development”, 3rd edition, Prentice Hall, 2005.
[50] H. Rashidi, “A Systematic Approach to Financial Planning in Firms and Its Implementation in an Enterprise,” Quarterly Journal of Fiscal and Economic Policies, Vol. 2 (8), PP. 73-92, 2014. 


Journal of Electrical and Computer Engineering Innovations (JECEI) welcomes letters to the editor for the post-publication discussions and corrections which allows debate post publication on its site, through the Letters to Editor. Letters pertaining to manuscript published in JECEI should be sent to the editorial office of JECEI within three months of either online publication or before printed publication, except for critiques of original research. Following points are to be considering before sending the letters (comments) to the editor.

[1] Letters that include statements of statistics, facts, research, or theories should include appropriate references, although more than three are discouraged.

[2] Letters that are personal attacks on an author rather than thoughtful criticism of the author’s ideas will not be considered for publication.

[3] Letters can be no more than 300 words in length.

[4] Letter writers should include a statement at the beginning of the letter stating that it is being submitted either for publication or not.

[5] Anonymous letters will not be considered.

[6] Letter writers must include their city and state of residence or work.

[7] Letters will be edited for clarity and length.