1 / 39

ITEC 403 Seminar

ITEC 403 Seminar. Unıfıed modellıng language (uml). 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. WHAT IS UNIFIED PROCESS?.

joses
Download Presentation

ITEC 403 Seminar

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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. 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 UWhat 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 UMLWhy 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. 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. 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. 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. 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 DiWhen to apply use case diagramsagram • 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. fig1 designed by Halide Sariçizmeli

  15. Figure 2 – partial Use Case diagram Example Fig2. 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..) ActorsActors are the users of a system. When one system is the actor of another system, label the actor system with the actor stereotype. Use CaseDraw use cases using ovals. Label the ovals with verbs that represent the system's functions. designed by Halide Sariçizmeli

  18. Use case diagram(continue...) RelationshipsIllustrate 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. Use case diagram(continue...) SystemDraw your system's boundaries using a rectangle that contains use cases. Place actors outside the system's boundaries. designed by Halide Sariçizmeli

  20. 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. 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. Association fig3 designed by Halide Sariçizmeli

  25. 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 0..1, 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. 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. 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. Whole part relationship, Aggregation implies a relationship where the child can exist independently of the parent designed by Halide Sariçizmeli

  30. 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. 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

  35. 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. 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. 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. 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

More Related