Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unıfıed modellıng language (uml)

Similar presentations


Presentation on theme: "Unıfıed modellıng language (uml)"— Presentation transcript:

1 Unıfıed modellıng language (uml)
ITEC 403 Seminar

2 designed by Halide Sariçizmeli
OBJECTIVES Explain the concept of Unified Process (UP) Describe Unified Modeling Language (UML) Explain the types of UML Diagrams Use-Case Diagram Class Diagram Activity Diagram Sequence Diagram designed by Halide Sariçizmeli

3 WHAT IS UNIFIED PROCESS?
Unified Process (UP) is an example of a system development methodology, based on object-oriented design. It consists of multiple iterations. Each iteration has a problem-solving approach of defining the requirements, analyzing and designing the solution, implementing and finally testing the system components. Unified Process life cycle is taken in 4 phases; Inception, Elaboration, Construction and Transition. designed by Halide Sariçizmeli

4 designed by Halide Sariçizmeli
UP Life cycle designed by Halide Sariçizmeli

5 WHAT IS UNIFIED PROCESS?
Anytime people need to record or communicate information, in any context, it is very useful to create a model. A model is a representation of the solution of a problem taken into consideration during the system development period. designed by Halide Sariçizmeli

6 What is U What are UML diagrams? ML?
UML, which stands for Unified Modeling Language, is a way to visually represent the architecture, design, and implementation of complex software systems. When you’re writing code, there are thousands of lines in an application, and it’s difficult to keep track of the relationships and hierarchies within a software system. UML diagrams divide that software system into components and subcomponents. designed by Halide Sariçizmeli

7 What is UML Why should you use UML diagrams?
UML is a standardized modeling language that can be used across different programming languages and development processes, so the majority of software developers will understand it and be able to apply it to their work. Though many engineers dread diagrams, they’re useful in an Agile development environment: they keep development productive and focused. Instead of thinking them as just a “nice to have,” treat your UML diagrams as core aspects of documentation. designed by Halide Sariçizmeli

8 designed by Halide Sariçizmeli
Benefits: Bring new team members or developers switching teams up to speed quickly. Navigate source code. Plan out new features before any programming takes place. Communicate with technical and non-technical audiences more easily. designed by Halide Sariçizmeli

9 designed by Halide Sariçizmeli
UML Diagrams There are a number of different UML diagrams that provides a look of the system from different perspectives, here are the models required for the ITEC403 progress report: Use Case diagram (General and Partial) Domain Model Class diagrams Activity diagrams Sequence Diagrams designed by Halide Sariçizmeli

10 designed by Halide Sariçizmeli
What is UML? To gain the greatest benefit from UML, it must be used at the beginning of the process when requirements are being collected, reviewed and evaluated. Traditionally, this has been a relatively informal activity involving discussion within technical committees. UML can provide the formalization and visualization which make the requirements clear and unambiguous. designed by Halide Sariçizmeli

11 designed by Halide Sariçizmeli
USECASE DIAGRAM Use case diagrams model how users, displayed as stick figures called “actors,” interact with the system. This type of UML diagram should be a high-level overview of the relationships between actors and systems, so it can be a great tool for explaining your system to a non-technical audience. designed by Halide Sariçizmeli

12 Use Case Di When to apply use case diagrams agram
A use case diagram doesn't go into a lot of detail— for example, don't expect it to model the order in which steps are performed. Instead, a proper use case diagram depicts a high-level overview of the relationship between use cases, actors, and systems. Experts recommend that use case diagrams be used to supplement a more descriptive textual use case. designed by Halide Sariçizmeli

13 UML use case diagrams are ideal for:
Representing the goals of system-user interactions Defining and organizing functional requirements in a system Specifying the context and requirements of a system Modeling the basic flow of events in a use case designed by Halide Sariçizmeli

14 designed by Halide Sariçizmeli
fig1 designed by Halide Sariçizmeli

15 Figure 2 – partial Use Case diagram Example
designed by Halide Sariçizmeli

16 Use case diagram(continue...)Case Diagram
For the progress report you are required to draw the use- case diagram from 2 perspectives; general and partial. The general use-case diagram, will display all the system functions and all the actors with the relationship lines as in fig.1. The partial use-case diagrams are designed for each actor separately, showing each actor’s role in the system by including the relative functions with the relationship lines as in fig.2. designed by Halide Sariçizmeli

17 Use Case Diagram(continue..)
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. Use Case  Draw use cases using ovals. Label the ovals with verbs that represent the system's functions. designed by Halide Sariçizmeli

18 designed by Halide Sariçizmeli
Use case diagram(continue...) Relationships  Illustrate relationships between an actor and a use case with a simple line. For relationships among use cases, use arrows labeled either "uses" or "extends." A "uses" 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 designed by Halide Sariçizmeli

19 designed by Halide Sariçizmeli
Use case diagram(continue...) System  Draw your system's boundaries using a rectangle that contains use cases. Place actors outside the system's boundaries. designed by Halide Sariçizmeli

20 designed by Halide Sariçizmeli
Use case diagram(continue...) Generalization is used when you find two or more use cases that have commonalities in behavior, structure, and purpose. When this happens, you can describe the shared parts in a new, often abstract, use case, that is then specialized by child use cases. designed by Halide Sariçizmeli

21 designed by Halide Sariçizmeli
Class Diagramagram Class diagrams are one of the most useful types of diagrams in UML as they clearly map out the structure of a particular system by modeling its classes, attributes, operations, and relationships between objects. designed by Halide Sariçizmeli

22 The standard class diagram is composed of three sections:
Upper section: Contains the name of the class. This section is always required, whether you are talking about the classifier or an object. Middle section: Contains the attributes of the class. Use this section to describe the qualities of the class. This is only required when describing a specific instance of a class. Bottom section: Includes class operations (methods). Displayed in list format, each operation takes up its own line. The operations describe how a class interacts with data. designed by Halide Sariçizmeli

23 Figure 3 – Member access modifiers(visibility) single Class
All classes have different access levels depending on the access modifier (visibility). Here are the access levels with their corresponding symbols: Public (+) Private (-) Protected (#) Package (~) designed by Halide Sariçizmeli

24 designed by Halide Sariçizmeli
Association fig3 designed by Halide Sariçizmeli

25 designed by Halide Sariçizmeli
In the example above(fig3), the Car class and RoadTrip class are interrelated. At one end of the line, the Car takes on the association of "assignedCar" with the multiplicity value of , so when the instance of RoadTrip exists, it can either have one instance of Car associated with it or no Cars associated with it. In this case, a separate Caravan class with a multiplicity value of 0..* is needed to demonstrate that a RoadTrip could have multiple instances of Cars associated with it. Since one Car instance could have multiple "getRoadTrip" associations—in other words, one car could go on multiple road trips—the multiplicity value is set to 0..* designed by Halide Sariçizmeli

26 designed by Halide Sariçizmeli
Inheritance fig4 designed by Halide Sariçizmeli

27 Inheritance(continue..)
In this example(fig4), the object "Car" would inherit all of the attributes (speed, numbers of passengers, fuel) and methods (go(), stop(), changeDirection()) of the parent class ("Vehicle") in addition to the specific attributes (model type, number of doors, auto maker) and methods of its own class (Radio(), windshieldWiper(), ac/heat()). Inheritance is shown in a class diagram by using a solid line with a closed, hollow arrow. designed by Halide Sariçizmeli

28 designed by Halide Sariçizmeli
Aggregation In this type of relationship, a more complex object is created by the assembling of different objects together. The interaction within the different group of objects is defined by Aggregation. The integrity of the objects are protected, and the response of the assembled objects are decided by the control object. In aggregation, the classes nurture the ‘has a’ relationship. designed by Halide Sariçizmeli

29 designed by Halide Sariçizmeli
Whole part relationship, Aggregation implies a relationship where the child can exist independently of the parent designed by Halide Sariçizmeli

30 designed by Halide Sariçizmeli
Composition It is a form of an aggregation which represents the whole part relationship. Here, the part classifier lifetime is dependent on the whole classifier lifetime. In a class, a strong life-cycle is represented by the composition relationship. There is usually a one direction flow of data here. It is generally indicated by a solid line. designed by Halide Sariçizmeli

31 Composition(continue...)
Composition implies a relationship where the child cannot exist independent of the parent. designed by Halide Sariçizmeli

32 designed by Halide Sariçizmeli
Activity Diagramgram The Unified Modeling Language includes several subsets of diagrams, including structure diagrams, interaction diagrams, and behavior diagrams. Activity diagrams, along with use case and state machine diagrams, are considered behavior diagrams because they describe what must happen in the system being modeled. designed by Halide Sariçizmeli

33 Activity Diagram(continue..)
Activity diagrams present a number of benefits to users. Consider creating an activity diagram to: Demonstrate the logic of an algorithm. Describe the steps performed in a UML use case. Illustrate a business process or workflow between users and the system. Simplify and improve any process by clarifying complicated use cases. Model software architecture elements, such as method, function, and operation. designed by Halide Sariçizmeli

34 designed by Halide Sariçizmeli
Symbol Description Initial node Final Node Decision Node Activcity Symbol(Action state) Join Node Fork Node Merge designed by Halide Sariçizmeli

35 designed by Halide Sariçizmeli
Activity Diagrams For the progress report we require an activity diagram for each use-case (function) in the system, in order to understand the workflow better. designed by Halide Sariçizmeli

36 designed by Halide Sariçizmeli
Sequence Diagram Sequence diagrams are a popular dynamic modeling solution in UML because they specifically focus on lifelines, or the processes and objects that live simultaneously, and the messages exchanged between them to perform a function before the lifeline ends. Along with our UML diagramming tool, use this guide to learn everything there is to know about sequence diagrams in UML. designed by Halide Sariçizmeli

37 Sequence Diagram Notations (continue..)
Lifeline A lifeline represents an individual participant in the Interaction. Actor An Actor a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data). An actor can also be an external to the subject (i.e., in the sense that an instance of an actor is not a part of the instance of its corresponding subject). They typically represent roles played by human users, external hardware, or other subjects designed by Halide Sariçizmeli

38 designed by Halide Sariçizmeli
Call Message A call message defines a particular communication between lifelines of an interaction, which represents an invocation of operation of target lifeline. Return Message A return message defines a particular communication between lifelines of an interaction, which represents the pass of information back to the caller of a corresponded former message. designed by Halide Sariçizmeli

39 designed by Halide Sariçizmeli
Sequence Diagram For the progress report we require an Sequence diagram for each use-case (function) in the system, in order to understand the workflow better. designed by Halide Sariçizmeli


Download ppt "Unıfıed modellıng language (uml)"

Similar presentations


Ads by Google