You are on page 1of 11

Introduction to Object Oriented Analysis Object-oriented programming (OOP) is used to manage the complexity of software systems.

Object oriented Analysis and Design OOA is an approach used to

Simplicity: software objects model real world objects, so the complexity is reduced and the program structure is very clear; Modularity: each object forms a separate entity whose internal workings are decoupled from other parts of the system; Modifiability: it is easy to make minor changes in the data representation or the procedures in an OO program. Changes inside a class do not affect any other part of a program, since the only public interface that the external world has to a class is through the use of methods; Extensibility: adding new features or responding to changing operating environments can be solved by introducing a few new objects and modifying some existing ones; Maintainability: objects can be maintained separately, making locating and fixing problems easier; Re-usability: objects can be reused in different programs.

Introduction to Unified Modeling Language (UML) UML is a most useful method of visualization and documenting software systems design.UML uses object oriented design concepts and it is independent of specific programming language. Unified Modeling Language is a popular technique for documenting and modeling system .the UML uses set of symbols to represent graphically the various components and relationships within the system and UML can be used for business processing modeling and requirements modeling ,it mainly is used to support object oriented system analysis and to develop the object models. Real time UML, this method is the application of UML to design of real-time system. It represents the system with structural and behavioral language models and those designing modeling include the architectural mechanical and detailed design .Object oriented methodologies have employed in the construction of the real time system.

Structural modeling: Structural modeling captures the static features of a system. They consist of the followings:

Classes diagrams Objects diagrams Deployment diagrams Package diagrams Composite structure diagram Component diagram

Structural model represents the framework for the system and this framework is the place where all other components exist. So the class diagram, component diagram and deployment diagrams are the part of structural modeling. They all represent the elements and the mechanism to assemble them. Behavioral Modeling: Behavioral model describes the interaction in the system. It represents the interaction among the structural diagrams. Behavioral modeling shows the dynamic nature of the system. They consist of the following:

Activity diagrams sequence diagram Use case diagrams

All the above show the dynamic sequence of flow in a system. The static view helps an analyst communicate with a client. The dynamic view, as youll see, helps an analyst communicate with a team of developers, and helps the developers create programs. UML Diagram Types 1 Class Diagram Shows relationships between classes and pertinent information about classes themselves. The class diagrams are the only diagrams which can be directly mapped with object oriented languages and thus widely used at the time of construction.

2 Object Diagram Shows a configuration of objects at an instant in time.

icon is a rectangle, just like the class icon, but the name is underlined. In the icon on the left, the name of the specific instance is on the left side of a colon, and the name of the class is on the right side of the colon. The name of the instance begins with a lowercase letter. Its also possible to have an anonymous object,

3 Use-case Diagram Shows actors, use-cases, and the relationships between them. Use case diagrams model the functionality of a system using actors and use cases. Use cases are services or functions provided by the system to its users. One of the benefits of use case analysis is that it shows the boundary between the system and the outside world. Actors are typically outside the system, whereas use cases are inside. You use a rectangle (with the name of the system somewhere inside) to represent the system boundary. The rectangle encloses the systems use cases.

System Draw your system's boundries using a rectangle that contains use cases. Place actors outside the system's boundries. Use Case Draw use cases using ovals. Label with ovals with verbs that represent the system's functions.
4

Actors Actors are the users of a system. When one system is the actor of another system, label the actor system with the actor stereotype.

Relationships Illustrate relationships between an actor and a use case with a simple line. For relationships among use cases, use arrows labeled either "include" or "extends." A "include" relationship indicates that one use case is needed by another in order to perform a task. An "extends" relationship indicates alternative options under a certain use case.

4.State Diagram It is a dynamic view of a system.

A seminar during registration.

5. Sequence diagram Show an interaction between a group of collaborating objects. interaction diagrams are to visualize the interactive behaviour of the system. Now visualizing interaction is a difficult task. So the solution is to use different types of models to capture the different aspects of the interaction. That is why sequence and collaboration diagrams are used to capture dynamic nature but from a different angle. So the purposes of interaction diagram can be describes as:

To capture dynamic behavior of a system. To describe the message flow in the system. To describe structural organization of the objects.
6

To describe interaction among objects.

6 Package Diagram A diagram which combines a number of classes or components into a subsystem

7 Activity Diagram Very similar to a flowchartshows actions and decision points, but with the ability to accommodate concurrency. activity diagram is used to show message flow from one activity to another. Activity diagrams are not only used for visualizing dynamic nature of a system but they are also used to construct the executable system by using forward and reverse engineering techniques.

8 Deployment Diagram The name Deployment itself describes the purpose of the diagram. Deployment diagrams are used for describing the hardware components where software components are deployed. Component diagrams and deployment diagrams are closely related. Component diagrams are used to describe the components and deployment diagrams shows how they are deployed in hardware. UML is mainly designed to focus on software artifacts of a system. But these two diagrams are special diagrams used to focus on software components and hardware components. So most of the UML diagrams are used to handle logical components but deployment diagrams are made to focus on hardware topology of a system. Deployment diagrams are used by the system engineers.

10 Timing Diagrams : A diagram which shows how long an object is in a particular state. Specially useful when designing embedded software for devices.

11 Interaction Overview Diagram A variant on UML activity diagramswhich overview control flow. Replace some of the activities in the activity diagram with sequence / communication diagrams (or a combination of the two) Shows how objects interact within each activity of a use case.

10

Three activities in visiting a library.

An interaction overview diagram that expands the activity diagram

11

You might also like