Object-oriented modeling is the best approach for large software designing and development. It uses iterative approach for identification of classes. In this report, identification of classes will discuss. There are different ways of software development, but Object oriented approach is best for managing all the process of system development. Classes are collection of objects, which are created for accessing the functions of a class. Classes identification is a hard process in object oriented approach. This report is about identification of software classes.
Keywords: Class, Object, use-cases, and entity.
Object oriented approaches are best way to solve a problem in different style. It provides a pre-solution of a given task with help of tools. It is a programming ways for explaining designing of project in different styles. There are different diagrams for understanding the flow of information in the project as well as controls of the project, such as use case diagrams, class diagrams (Bruegge, 2008).
There are different ways for designing classes for a project. Use cases are best way to identify software classes. Software designing is a basic part of a project. There are four basic parts of a project are analysis, designing, coding, and testing. In starting of project, using object-oriented approach, design a flow diagram for better understanding of a project (Conallen, 2012). There are many advantages of this approach. I will discuss about identification of classes in next part of this report. In addition, I will discuss about the control classes and behavior of the system.
What is the best way to identify software classes from use cases?
Unified Modeling Language (UML) is an object oriented based approach for development softwares. It has different diagrams for showing functional requirements of a project, such as use case diagram, class diagram, and others. It is so difficult to design classes from use cases. There are different ways for identify software classes from use cases. It is possible by software as well as from step to step analyzing different cases from requirement. It is so necessary that each requirement is fulfill, which is the vendor provides. There are so many basic tools for finding classes from requirement, such as Eiffel studio for project management. (Gomaa, 2011)
First step for finding classes is analyze behavior of described use cases. There are different classes present in the use cases, such as boundary classes, entity classes, and control classes. Best way to find classes is based on three perspectives of the system, which are actors, information used by system, and system control logic. Identification of classes means, it should be described by name in some sentences (Jacobson, 1993).
Find boundary classes:
They are the interface between outside the system. Boundary classes are having objects, which are changes in the surroundings. That changes affecting system sometimes by user requirements. Every system has different types of boundary classes, such as user interface, system interface, and device interface classes (Larman, 2012).
For finding user interface classes, take actors form use cases, each actor has at least one boundary object. Using object classes coordinate with the actor. The boundary object handles all responsibilities; sometimes it reduces some responsibilities to the subsidiary objects. Therefore, each actor should require a boundary object. We can make sketches or take screenshots from GUI application for creating classes. It is showing flow of events of the use case diagrams (Liang, 2003).
For system interface classes, external systems are responsible. As an example, In an Automated Teller Machine (referred as ATM), always check the balance in the customer account the Actor using ATM network. An object of control class is called for checking the correct information, and according to that takes a suitable decision. For device interface classes, there are some objects, which are affecting system working are considered in the device interface classes (Tsang, et al., 2004).
Find Entity Classes
These are present the storage of information in the system. These objects are persistent, and passive. It is used in the business modeling work for accessing thousands of data chucks in the information system. Attributes of different entities are also considered in identifying the classes for better understanding of control flow and data flow in the project.
Find Control Classes:
These classes are providing coordination between system and behavior controls. It used use case diagram. Sometimes control classes identify using boundary and entity objects. Use case diagrams are also a presentation of control flow. It is like de-coupling of use case in a class’s format. They are providing different things, which are:
• Controls are fix and cannot change by the surroundings
• Each transaction is listed and follow the define control logic
• There should be some Changes according to the need of the system
• All the sets of entity classes can be used for the coordinating other classes
• Flow of control should be maintained every time
There are few steps for finding control classes, which are:
• Finding Control Class from use cases
• Encapsulate Flow of Events and separate Control Classes from others
• Separates control class in the different parts according to actors.
For identifying classes from use case, it is must to understand the use case in different ways, such as controls flow, information flow, and actors of the system. All these classes are making complete system. Control classes are so important for designing the system. As other classes can be, find using the de-coupling of the use case diagram (Van Lamsweerde, 2009). Use case diagrams are designed according to particular work of an actor in that project. Therefore, it can be de-coupled and changes it into the classes, but boundaries should be considered for the data flow and information storage. There are so many things are useful for object-oriented approach, such as abstraction, and encapsulation of data. Use cases, actors and relationship between both are used for identification of classes.
It is concluded from previous part of this report that, object oriented approaches are the best way to understanding requirements of a project. It is useful for the cost saving and avoid unnecessary delays in the project. In this report, different ways of identifying classes was discussed and which types of classes can created by the help of use case diagram.
A unified modeling language is an innovation in the field of analyzing requirements of the systems using different diagram. Use case diagrams are most suitable type of diagrams for showing flow of control and information. UML provides a better way to understand system requirements. Finally, it is concluded that, on basis of behavior, identification of classes is simple and best way. It provides different classes and their objects for managing data and control in the system. The goals of use cases are helpful for identification of classes.