The document discusses sequence diagrams and their elements. A sequence diagram models the interactions between objects in a system by showing message exchanges in time sequence. It contains lifelines that represent objects or roles, and messages that represent interactions between lifelines. Sequence diagrams can also include combined fragments that allow modeling alternative flows, loops, and other control structures.
This document discusses interaction diagrams, which describe how objects collaborate in behaviors and use cases. It specifically focuses on sequence diagrams, which emphasize the order of interactions, and collaboration diagrams, which emphasize interacting objects. Examples are provided of how sequence diagrams represent messages between objects and activation, asynchronous messages, and other elements to show conditional and concurrent processes.
The document discusses sequence diagrams and their components. A sequence diagram models the behavior of a use case by showing the sequence of messages passed between objects over time. It contains active objects along the top representing actors and classes, connected by messages that illustrate communication. Other elements include lifelines, activation boxes to indicate focus of control, and control information like conditions and iterations. The document provides examples and steps for constructing a sequence diagram based on a use case.
The document discusses different ways of implementing type conversion in Java. It covers widening and narrowing conversions, as well as assignment conversion, promotion, and casting. It provides examples of each type of conversion and discusses how conversions can occur during arithmetic expressions and assignments. It also covers wrapper classes and their role in type conversions.
Sequence diagrams show interactions between objects over time and are preferable to collaboration diagrams when there are several interactions involved in a behavior or the sequence of interactions gets complicated. Sequence diagrams layout symbols representing objects and their interactions along a y-axis representing time. For example, a purchase operation might involve charging a customer's account, removing an item from inventory, and creating a shipping order when the item arrives. Asynchronous messages allow objects to continue operating immediately after issuing a message rather than waiting for a response.
Sequence diagrams show the interactions between objects over time by depicting object lifelines and messages exchanged. They emphasize the time ordering of messages. To create a sequence diagram, identify participating objects and messages, lay out object lifelines across the top, and draw messages between lifelines from top to bottom based on timing. Activation boxes on lifelines indicate when objects are active. Sequence diagrams help document and understand the logical flow of a system.
This document defines and explains the key elements of a sequence diagram:
- Sequence diagrams show the interactions between objects through messages over time.
- Objects are represented by vertical lifelines and may send/receive synchronous, asynchronous, reflexive, return, create, and destroy messages.
- Activation bars on lifelines indicate when an object is active.
- Time progresses downward on the diagram, showing the order of messages.
- Events mark specific points of interaction like sending and receiving messages.
VISUAL BASIC 6 - CONTROLS AND DECLARATIONSSuraj Kumar
油
1. The document discusses various data types and controls available in VB.NET including textboxes, labels, combo boxes, list boxes, checkboxes and option buttons.
2. It describes how to declare and initialize variables of different data types like strings, integers, and doubles. Arrays can be single or multi-dimensional.
3. The various controls are described including their properties and common events. Methods like AddItem and RemoveItem are discussed for dynamically populating combo boxes and list boxes.
Master sequence diagrams with this sequence diagram guide. It describes everything you need to know on sequence diagram notations, best practices as well as common mistakes. It also explains how to draw a sequence diagram step by step. Plus it offers Creately sequence diagram templates you can click and edit right away.
The document discusses Visual Basic code for creating menus and menu items dynamically at runtime. It includes code to:
1) Add menu items to a runtime option menu by getting text values from textboxes and creating ToolStripMenuItems with that text.
2) Add click event handlers for the menu items that display a message box with the text of the clicked menu item.
3) Add a timer to a form and code to start, stop, and update a textbox with the elapsed time from the timer.
Interaction diagrams describe how objects interact and communicate with each other. The two main types are sequence diagrams and collaboration diagrams. Sequence diagrams show the time ordering of messages visually with objects arranged from top to bottom. Collaboration diagrams focus more on the relationships between objects and can show all messages between objects clearly. Both are used to model dynamic behavior and interactions in a system.
The document discusses generics and partial classes in C# and .NET framework 4.5. It provides code examples of using generics to define classes and methods that operate on type parameters. It also explains how to define partial classes that split a class definition across multiple files. The document then covers basics of Windows forms programming, including the Graphics object, drawing strings, lines, rectangles, and using coordinates and shapes.
The document discusses modeling techniques for object-oriented systems using Unified Modeling Language (UML) diagrams. It describes how to model message flows and object interactions using sequence diagrams and collaboration diagrams. It also explains how to model an object's lifetime behaviors using state chart diagrams and model procedural performance using activity diagrams. Specific examples are provided for each diagram type to illustrate their notation and usage.
This document provides an introduction and overview of key SQL concepts including:
- Batches allow executing multiple SQL statements together, but an error in one statement fails the entire batch.
- Variables can be local or global. Local variables are declared and assigned values within a batch while global variables are managed by the server.
- Control flow structures like IF/ELSE, WHILE loops, and CASE statements allow conditional execution and repetition of SQL statements.
Unit 3(advanced state modeling & interaction meodelling)Manoj Reddy
油
The document provides an overview of advanced state modeling and interaction modeling techniques in UML. It discusses nested state diagrams and concurrent state diagrams for controlling complexity in state diagrams. It also covers activity models, use case models, and sequence models for interaction modeling. The relationships between class models, state models, and interaction models are also briefly described.
The document discusses various C# concepts including constructors, inheritance, interfaces, collections, fields, and properties. It provides examples of how to use constructors to initialize objects, implement inheritance through deriving classes, define and implement interfaces, use collection classes like ArrayList and List, declare fields to store data in classes, and define properties as a way to encapsulate fields.
This document discusses events, delegates, multithreading, and garbage collection in VB.NET. It provides examples of how to handle events using delegates and the Handles keyword. It also describes how to create and manage threads for multithreading. Finally, it discusses how the .NET garbage collector automatically manages memory by collecting unused objects.
CS8592 Object Oriented Analysis & Design - UNIT III pkaviya
油
This document discusses various UML diagrams used for dynamic and implementation modeling in object-oriented analysis and design. It describes sequence diagrams, communication diagrams, system sequence diagrams, state machine diagrams, activity diagrams, package diagrams, component diagrams, and deployment diagrams. For each diagram type, it provides details on their purpose, notation, guidelines for use, and examples. The key diagrams covered are sequence diagrams, state machine diagrams, and activity diagrams. It also discusses when to apply different dynamic and implementation diagrams and how to construct them.
Lecture12 software design class diagramShahid Riaz
油
The document describes the key elements of a UML class diagram including classes, attributes, operations, relationships, interfaces, exceptions, packages and provides examples of each. It explains that a class diagram models the structure and behavior of a system by showing classes and relationships. Key relationships include associations, generalizations, dependencies and aggregations/compositions. The diagram notation for each element is also defined.
The document discusses inheritance in C++. It explains that classes can inherit publicly or privately from other classes, and this determines whether elements from the parent class are public or private in the child class. It also discusses how constructors and destructors are called during object creation and destruction when using inheritance. Polymorphism and virtual functions/destructors are explained. Abstract classes with pure virtual functions are introduced. The document concludes by briefly discussing operator overloading in C++ classes.
The document discusses various C# concepts related to classes and objects including constructors, inheritance, interfaces, properties, and auto-implemented properties. It provides examples of how to define classes with different types of constructors, use inheritance and overriding to extend classes, implement interfaces, and define public properties and auto-implemented properties to encapsulate data in a class.
The document discusses arrays and classes in C#. It describes that arrays are sequences of data of the same type that can be accessed by index. Classes define common behaviors and attributes with members that must have access modifiers. The document also explains properties of arrays like length, rank, and methods; and string class methods such as insert, length, copy, and compare.
The document discusses .NET generics and partial classes. It introduces generics, describing how they allow programmers to define placeholders for type parameters that are specified at runtime. It provides examples of generic methods and classes. It also covers partial classes, explaining that they allow a class definition to be split across multiple files for ease of development.
This document discusses pointers in C programming. It defines pointers as variables that contain memory addresses and can be used to indirectly access and manipulate other variables. It covers declaring and initializing pointer variables, pointer operators like address-of and dereference, using pointers to call functions, and arrays of pointers. Examples are provided to illustrate pointers to integers, characters, and how pointers can traverse arrays by incrementing the pointer. Exercises at the end demonstrate assigning a pointer variable the address of another variable and printing the value of the object pointed to.
The document discusses different approaches for handling out-of-bounds indexing of containers like std::vector in C++. It examines options like undefined behavior, debug checking, runtime exceptions, index remapping, and automatic resizing. The standard library uses undefined behavior for efficiency but other approaches provide safety checks or well-defined alternate behaviors.
This presentation discusses the basics of Variables and Arithmetic operations in Visual Basic, together with information on debugging resources within the program
The document discusses structures in C programming. It defines structures as a way to group individual elements of different types together under a single name. Structures allow defining custom data types that can contain integers, floats, chars, arrays, pointers, and other structures. The key points covered include defining structures, initializing structure members, nested structures, arrays of structures, pointers to structures, and passing structures to functions.
The document discusses interaction diagrams, which illustrate how objects interact via messages. It describes collaboration diagrams and sequence diagrams. Collaboration diagrams show object interactions in a graph format and demonstrate static connections, while sequence diagrams show interaction in a timeline format generally illustrating the sequence of events. The document provides examples and descriptions of collaboration diagrams, sequence diagrams, use case diagrams, and activity diagrams. It discusses their notation, how to construct them, strengths and weaknesses.
The document discusses various Unified Modeling Language (UML) diagrams used to model different aspects of software systems. It describes structure diagrams like class diagrams that show system composition and deployment diagrams that map software to hardware. It also covers behavioral diagrams like use case diagrams, interaction diagrams (sequence and communication diagrams), state-chart diagrams, and activity diagrams that model dynamic system behavior through object interactions and state transitions. Specific examples are provided for how to construct and interpret sequence diagrams, state machine diagrams, and activity diagrams.
Master sequence diagrams with this sequence diagram guide. It describes everything you need to know on sequence diagram notations, best practices as well as common mistakes. It also explains how to draw a sequence diagram step by step. Plus it offers Creately sequence diagram templates you can click and edit right away.
The document discusses Visual Basic code for creating menus and menu items dynamically at runtime. It includes code to:
1) Add menu items to a runtime option menu by getting text values from textboxes and creating ToolStripMenuItems with that text.
2) Add click event handlers for the menu items that display a message box with the text of the clicked menu item.
3) Add a timer to a form and code to start, stop, and update a textbox with the elapsed time from the timer.
Interaction diagrams describe how objects interact and communicate with each other. The two main types are sequence diagrams and collaboration diagrams. Sequence diagrams show the time ordering of messages visually with objects arranged from top to bottom. Collaboration diagrams focus more on the relationships between objects and can show all messages between objects clearly. Both are used to model dynamic behavior and interactions in a system.
The document discusses generics and partial classes in C# and .NET framework 4.5. It provides code examples of using generics to define classes and methods that operate on type parameters. It also explains how to define partial classes that split a class definition across multiple files. The document then covers basics of Windows forms programming, including the Graphics object, drawing strings, lines, rectangles, and using coordinates and shapes.
The document discusses modeling techniques for object-oriented systems using Unified Modeling Language (UML) diagrams. It describes how to model message flows and object interactions using sequence diagrams and collaboration diagrams. It also explains how to model an object's lifetime behaviors using state chart diagrams and model procedural performance using activity diagrams. Specific examples are provided for each diagram type to illustrate their notation and usage.
This document provides an introduction and overview of key SQL concepts including:
- Batches allow executing multiple SQL statements together, but an error in one statement fails the entire batch.
- Variables can be local or global. Local variables are declared and assigned values within a batch while global variables are managed by the server.
- Control flow structures like IF/ELSE, WHILE loops, and CASE statements allow conditional execution and repetition of SQL statements.
Unit 3(advanced state modeling & interaction meodelling)Manoj Reddy
油
The document provides an overview of advanced state modeling and interaction modeling techniques in UML. It discusses nested state diagrams and concurrent state diagrams for controlling complexity in state diagrams. It also covers activity models, use case models, and sequence models for interaction modeling. The relationships between class models, state models, and interaction models are also briefly described.
The document discusses various C# concepts including constructors, inheritance, interfaces, collections, fields, and properties. It provides examples of how to use constructors to initialize objects, implement inheritance through deriving classes, define and implement interfaces, use collection classes like ArrayList and List, declare fields to store data in classes, and define properties as a way to encapsulate fields.
This document discusses events, delegates, multithreading, and garbage collection in VB.NET. It provides examples of how to handle events using delegates and the Handles keyword. It also describes how to create and manage threads for multithreading. Finally, it discusses how the .NET garbage collector automatically manages memory by collecting unused objects.
CS8592 Object Oriented Analysis & Design - UNIT III pkaviya
油
This document discusses various UML diagrams used for dynamic and implementation modeling in object-oriented analysis and design. It describes sequence diagrams, communication diagrams, system sequence diagrams, state machine diagrams, activity diagrams, package diagrams, component diagrams, and deployment diagrams. For each diagram type, it provides details on their purpose, notation, guidelines for use, and examples. The key diagrams covered are sequence diagrams, state machine diagrams, and activity diagrams. It also discusses when to apply different dynamic and implementation diagrams and how to construct them.
Lecture12 software design class diagramShahid Riaz
油
The document describes the key elements of a UML class diagram including classes, attributes, operations, relationships, interfaces, exceptions, packages and provides examples of each. It explains that a class diagram models the structure and behavior of a system by showing classes and relationships. Key relationships include associations, generalizations, dependencies and aggregations/compositions. The diagram notation for each element is also defined.
The document discusses inheritance in C++. It explains that classes can inherit publicly or privately from other classes, and this determines whether elements from the parent class are public or private in the child class. It also discusses how constructors and destructors are called during object creation and destruction when using inheritance. Polymorphism and virtual functions/destructors are explained. Abstract classes with pure virtual functions are introduced. The document concludes by briefly discussing operator overloading in C++ classes.
The document discusses various C# concepts related to classes and objects including constructors, inheritance, interfaces, properties, and auto-implemented properties. It provides examples of how to define classes with different types of constructors, use inheritance and overriding to extend classes, implement interfaces, and define public properties and auto-implemented properties to encapsulate data in a class.
The document discusses arrays and classes in C#. It describes that arrays are sequences of data of the same type that can be accessed by index. Classes define common behaviors and attributes with members that must have access modifiers. The document also explains properties of arrays like length, rank, and methods; and string class methods such as insert, length, copy, and compare.
The document discusses .NET generics and partial classes. It introduces generics, describing how they allow programmers to define placeholders for type parameters that are specified at runtime. It provides examples of generic methods and classes. It also covers partial classes, explaining that they allow a class definition to be split across multiple files for ease of development.
This document discusses pointers in C programming. It defines pointers as variables that contain memory addresses and can be used to indirectly access and manipulate other variables. It covers declaring and initializing pointer variables, pointer operators like address-of and dereference, using pointers to call functions, and arrays of pointers. Examples are provided to illustrate pointers to integers, characters, and how pointers can traverse arrays by incrementing the pointer. Exercises at the end demonstrate assigning a pointer variable the address of another variable and printing the value of the object pointed to.
The document discusses different approaches for handling out-of-bounds indexing of containers like std::vector in C++. It examines options like undefined behavior, debug checking, runtime exceptions, index remapping, and automatic resizing. The standard library uses undefined behavior for efficiency but other approaches provide safety checks or well-defined alternate behaviors.
This presentation discusses the basics of Variables and Arithmetic operations in Visual Basic, together with information on debugging resources within the program
The document discusses structures in C programming. It defines structures as a way to group individual elements of different types together under a single name. Structures allow defining custom data types that can contain integers, floats, chars, arrays, pointers, and other structures. The key points covered include defining structures, initializing structure members, nested structures, arrays of structures, pointers to structures, and passing structures to functions.
The document discusses interaction diagrams, which illustrate how objects interact via messages. It describes collaboration diagrams and sequence diagrams. Collaboration diagrams show object interactions in a graph format and demonstrate static connections, while sequence diagrams show interaction in a timeline format generally illustrating the sequence of events. The document provides examples and descriptions of collaboration diagrams, sequence diagrams, use case diagrams, and activity diagrams. It discusses their notation, how to construct them, strengths and weaknesses.
The document discusses various Unified Modeling Language (UML) diagrams used to model different aspects of software systems. It describes structure diagrams like class diagrams that show system composition and deployment diagrams that map software to hardware. It also covers behavioral diagrams like use case diagrams, interaction diagrams (sequence and communication diagrams), state-chart diagrams, and activity diagrams that model dynamic system behavior through object interactions and state transitions. Specific examples are provided for how to construct and interpret sequence diagrams, state machine diagrams, and activity diagrams.
The document discusses various aspects of the design phase of software development including:
1. The design phase builds upon artifacts created in the analysis phase like use cases and conceptual models. Interaction diagrams are created to show how objects communicate and collaborate.
2. Real use cases describe detailed interface designs. Class diagrams summarize class definitions and relationships. Responsibilities are assigned to classes using patterns like expert, controller, and others.
3. Interaction diagrams illustrate object interactions and are dependent on prior artifacts. Collaboration and sequence diagrams represent different notation for the same interactions. Guidelines are provided for creating interaction diagrams.
A novel methodology for test scenario generation based on control flow analys...eSAT Publishing House
油
This document presents a novel methodology for generating test scenarios from UML 2.x sequence diagrams. It proposes constructing an intermediate control flow graph called a Sequence Control Flow Graph (SCFG) by analyzing the control flow in UML sequence diagrams. It also proposes a test scenario generation algorithm called STSGA that systematically generates test scenarios from the SCFG to test software in the early design phase and help testers later in the development cycle. The approach aims to address the challenges of fragments like alt, loop, break, par, and opt in UML sequence diagrams.
Object-oriented design involves representing a software system as interacting objects that manage their own state and operations. The key activities in object-oriented design are object identification, developing design models like class diagrams and sequence diagrams, and specifying object interfaces. Design evolution is simplified since changes made to objects do not unpredictably affect other objects due to encapsulation.
This document provides instructions for using WinCOM (Component Object Model) to export data from an Arduino motor controller application to an Excel spreadsheet. It discusses:
1) Using WinCOM to export data from the application to cells in an Excel spreadsheet by creating an Excel object and filling cells.
2) Controlling a DC motor with an Arduino board and sending motor data back to be exported to an Excel file.
3) Configuring COM port settings to communicate between the Arduino and computer for sending and receiving data.
The document discusses object-oriented design principles and their application to designing a weather station system. It describes identifying key objects like weather stations, instruments, and weather data. It also covers designing the weather station architecture with layers for communication, data collection, and instruments. Sequence and state machine models are mentioned as ways to design dynamic object interactions.
This document discusses UML interaction diagrams, specifically sequence diagrams and collaboration diagrams. It defines that interaction diagrams visualize interactive system behavior and consist of sequence diagrams and collaboration diagrams. Sequence diagrams represent message flow and lifelines, while collaboration diagrams depict object relationships and architecture. Notations for both include objects, links, and messages. Sequence diagrams show messages sequentially on lifelines, while collaboration diagrams attach messages to links between objects.
This document discusses UML interaction diagrams, specifically sequence diagrams and collaboration diagrams. It defines that interaction diagrams visualize interactive system behavior and consist of sequence diagrams and collaboration diagrams. Sequence diagrams represent message flow and lifelines, while collaboration diagrams depict object relationships and architecture. Notations for both include objects, links, and messages. Sequence diagrams show messages sequentially on lifelines, while collaboration diagrams attach messages to links between objects.
This document is a record notebook for a computer science student documenting the experiments completed in a CASE tools laboratory course. It contains details of 15 software systems developed during the course like passport automation, book banking, stock maintenance, etc. It also includes studies of UML diagrams like use case diagrams, sequence diagrams, class diagrams, etc. and how to connect a Visual Basic form to a Microsoft Access database.
Object Oriented Design in Software Engineering SE12koolkampus
油
The document discusses object-oriented design (OOD) and describes its key characteristics and processes. Specifically, it covers:
1) Objects communicate by message passing and are self-contained entities that encapsulate state and behavior.
2) The OOD process involves identifying objects and classes, defining their interfaces, relationships, and developing models of the system.
3) The Unified Modeling Language (UML) is used to describe OOD models including classes, objects, associations, and other relationships.
This document contains information about various Unified Modeling Language (UML) diagrams:
1. It defines use cases, components, sequence, and deployment diagrams and lists their key elements and purposes.
2. Use cases describe interactions between systems and users, components model physical or logical system aspects, and sequence diagrams show object interactions over time.
3. Deployment diagrams map software to hardware and show how systems are physically distributed and connected.
This document provides an overview of several Android development topics, including the Simple framework for serializing XML into Java objects, the Android process and thread model, AsyncTask for asynchronous operations, the Volley networking framework, and debugging using Eclipse. It describes the core components and best practices for each topic at a high level.
SE18_Lec 10_ UML Behaviour and Interaction DiagramsAmr E. Mohamed
油
The document discusses various Unified Modeling Language (UML) diagrams used to model different aspects of a system. It describes structure diagrams like class diagrams and deployment diagrams. It also explains behavior diagrams like use case diagrams, interaction diagrams (sequence and communication diagrams), state-chart diagrams, and activity diagrams. Specific examples are provided to illustrate sequence diagrams, state machine diagrams, and activity diagrams. Key concepts like objects, messages, states, transitions, events, and swimlanes are defined in the context of these diagram types.
The document provides an overview of Unified Modeling Language (UML). It discusses that UML is a standard modeling language used to visualize, specify and document artifacts of a software system. It then summarizes the history and evolution of UML from its origins combining different modeling approaches in the 1980s-1990s to the current version. The document also lists and briefly describes the main UML diagram types including class, use case, activity, sequence, collaboration, state chart, component and deployment diagrams. For each diagram type, it highlights the key elements and purpose.
Software Architecture and Project Management module III : PATTERN OF ENTERPRISEsreeja_rajesh
油
This document discusses various software architecture patterns. It begins by covering communication patterns, including the forward-receiver and client-dispatcher-server patterns. It then discusses structural patterns, including decorator, proxy, bridge, composite and others. For each pattern, it provides descriptions, examples, and UML diagrams. The document is focused on explaining different types of architectural patterns for software design.
The document discusses classes and objects in Python programming. It covers key concepts like defining classes, creating objects, assigning attributes to objects, passing objects as arguments and returning objects from functions. It provides examples to illustrate these concepts like defining a Point class to represent coordinate points, creating Rectangle class with a Point object as one of its attributes. The document also discusses concepts like aliasing of objects and how to create a copy of an object instead of alias.
1. Dokumen tersebut membahas diagram komponen dan diagram deployment.
2. Diagram komponen digunakan untuk memvisualisasikan organisasi dan ketergantungan antar komponen sistem, seperti file, library, tabel, dan lainnya.
3. Diagram deployment digunakan untuk memmodelkan distribusi komponen pada perangkat keras seperti node, device, client, dan server.
Dokumen ini membahas tentang pemetaan diagram kelas UML ke kode program. Diuraikan skema kelas Kucing dan skema pewarisan kelas Rumahan dari kelas Kucing beserta implementasinya dalam bahasa pemrograman. Diberikan contoh kode untuk mewakili relasi antara kelas Tiket dan Kendaraan dalam diagram kelas.
Class diagram menggambarkan struktur dan hubungan antar kelas dalam suatu sistem. Diagram ini menjelaskan kelas, atribut, metode, dan hubungan antar kelas seperti generalisasi, komposisi, agregasi, dan asosiasi. Class diagram digunakan untuk merancang dan memodelkan sistem berorientasi objek.
1. Dokumen tersebut membahas tentang konsep kelas dan objek dalam pemodelan berorientasi objek, termasuk penamaan kelas, atribut, metode, dan visibilitas antar objek.
2. Atribut menggambarkan properti kelas, sedangkan metode mengimplementasikan operasi yang dapat dilakukan pada objek kelas.
3. Terdapat beberapa jenis visibilitas antar objek seperti atribut visibilitas, parameter visibilitas, dan visibilitas lokal
Dokumen tersebut merupakan laporan tentang pemodelan sistem pembelian tiket menggunakan berbagai diagram UML seperti use case diagram, activity diagram, sequence diagram, dan collaboration diagram. Diagram-diagram tersebut digunakan untuk memvisualisasikan proses bisnis dan alur kerja sistem pembelian dan pembatalan tiket.
Teks tersebut membahas konsep-konsep dasar analisis dan desain berorientasi objek meliputi objek, kelas, atribut, metode, pesan, serta karakteristik seperti enkapsulasi, pewarisan, dan polimorfisme.
This document discusses software development processes. It describes the differences between systems development and software development. Software development focuses solely on producing software to satisfy user requirements. The document then discusses the main challenges in software development like ensuring quality and productivity. It introduces several software development life cycle models like waterfall, prototyping, iterative development and the unified process. Each model has its own advantages and disadvantages. User involvement and CASE tools can also support the development process.
Dokumen tersebut merangkum penggunaan diagram use case dalam analisis dan perancangan berorientasi objek. Diagram use case digunakan untuk menggambarkan interaksi antara pengguna (actor) dengan fungsi sistem (use case). Dokumen tersebut menjelaskan unsur-unsur diagram use case seperti actor, use case, hubungan antara actor dan use case, serta generalisasi dan inklusi use case.
2. SEQUENCE DIAGRAM
Merupakan suatu diagram interaksi yang
memodelkan suatu skenario tunggal yang dijalankan
pada sistem
Digunakan untuk memperlihatkan interaksi antar
obyek dalam perintah yang berurut.
Tujuan utama adalah mendefinisikan urutan
kejadian yang dapat menghasilkan output yang
diinginkan
3. SEQUENCE DIAGRAM
Partisipan : obyek atau entitas yang bertindak dalam
sequence diagram
Message : komunikasi antar obyek partisipan
Terdapat 2 tipe garis yaitu vertikal dan horisontal
Vertikal
: waktu maju berdasarkan waktu
Horisontal : obyek mana yang beraksi
4. ELEMEN NOTASI
Didefinisikan pada UML 2.0
Digambarkan dalam bentuk frame
Bersifat optional untuk menggambarkan batas grafis
suatu diagram.
7. TYPES OF INTERACTION
Creation
Synchronous
Pesan yang dikirim oleh 1 obyek ke obyek lain dan obyek pertama
menunggu sampai hasil aksi selesai.
Asynchronous
Menunjukkan pesan yang menyebabkan terjadinya pembentukan
instan obyek.
Pesan yang dikirim oleh 1 obyek ke obyek lain dan obyek pertama
tidak menunggu sampai hasil aksi selesai.
Reply
Menunjukkan nilai kembali dari obyek ke obyek yang megirim
pesan
Sumber : schaum outline
8. GUIDELINES FOR BUILDING A
UML SEQUENCE DIAGRAM
1.
2.
3.
4.
5.
6.
Set the context (i.e. scope the system)
Identify participating objects
Draw arbitrary lifelines for each class
Draw the duration of the objects on the class lifeline
Insert the object messages from top to bottom of
diagram (time-based)
Check the diagram for completeness
9. LIFELINES
Elemen notasi lifeline terletak pada posisi atas
diagram
Represent either roles or object instances that
participate in the sequence being modeled
Standar penamaan lifeline :
Instance
Name : Class Name
10. MESSAGES
The first message of a sequence diagram always starts
at the top and is typically located on the left side of
the diagram for readability.
Subsequent messages are then added to the diagram
slightly lower then the previous message.
11. MESSAGE (CONT.)
the analyst object makes a call to the system object which is an instance of the
ReportingSystem class.
The analyst object is calling the system object's getAvailableReports method.
The system object then calls the getSecurityClearance method with the argument of
userId on the secSystem object, which is of the class type SecuritySystem
the secSystem object returns userClearance to the system object when the
getSecurityClearance method is called.
The system object returns availableReports when the getAvailableReports method is
called.
14. GUARDS
When modeling object interactions, there will be times when a
condition must be met for a message to be sent to the object.
the guard is the text "[pastDueBalance = 0]." By having
the guard on this message, the addStudent message will
only be sent if the accounts receivable system returns a
past due balance of zero
15. COMBINED FRAGMENTS (ALTERNATIVES,
OPTIONS, AND LOOPS)
A combined fragment is used to group sets of
messages together to show conditional flow in a
sequence diagram.
The UML 2 specification identifies 11 interaction
types for combined fragments.
16. ALTERNATIVES
Alternatives are used to designate a mutually
exclusive choice between two or more message
sequences.
Alternatives allow the modeling of the classic "if then
else" logic e.g.
I buy three items, then I get 20% off my purchase; else I
get 10% off my purchase.
if
18. OPTION
The option combination fragment is used to model a
sequence that, given a certain condition, will occur;
otherwise, the sequence does not occur.
An option is used to model a simple "if then"
statement (i.e., if there are fewer than five donuts on
the shelf, then make two dozen more donuts).
19. OPTION (CONT.)
if a student's past due balance equals zero, then the addStudent,
getCostOfClass, and chargeForClass messages are sent. If the student's
past due balance does not equal zero, then the sequence skips sending any
of the messages in the option combination fragment.
20. LOOPS
Occasionally you will need to model a repetitive
sequence.
In UML 2, modeling a repeating sequence has been
improved with the addition of the loop combination
fragment.
22. REFERENCING ANOTHER SEQUENCE
DIAGRAM
Starting in UML 2, the "Interaction Occurrence"
element was introduced.
Interaction occurrences add the ability to compose
primitive sequence diagrams into complex sequence
diagrams.
The text "ref" is placed inside the frame's namebox,
and the name of the sequence diagram being
referenced is placed inside the frame's content area
along with any parameters to the sequence diagram.
25. GATES
Gates can be an easy way to model the passing of
information between a sequence diagram and its
context.
A gate is merely a message that is illustrated with one
end connected to the sequence diagram's frame's edge
and the other end connected to a lifeline
28. BREAK
almost identical in every way to the option combined
fragment, with two exceptions.
a break's frame has a namebox with the text "break" instead of
"option."
when a break combined fragment's message is to be executed, the
enclosing interaction's remainder messages will not be executed
because the sequence breaks out of the enclosing interaction
break combined fragment is much like the break keyword
in a programming language like C++ or Java
Breaks are most commonly used to model exception
handling
30. PARALLEL
When the processing time required to complete portions of
a complex task is longer than desired, some systems handle
parts of the processing in parallel
The parallel combination fragment is drawn using a frame,
and you place the text "par" in the frame's namebox
break up the frame's content section into horizontal
operands separated by a dashed line.
Each operand in the frame represents a thread of execution
done in parallel.
32. SUMMARY
The sequence diagram is a good diagram to use to
document a system's requirements and to flush out a
system's design.
The reason the sequence diagram is so useful is
because it shows the interaction logic between the
objects in the system in the time order that the
interactions take place.
34. TRY THIS YOURSELF
Draw up a sequence diagram modelling
the case when an advert campaign
manager retrieves the details of a
particular clients advertising campaign
and lists the details of a particular advert
from the campaign. The sequence diagram
should also show the case when a new
advert is created. Only call messages
(synchronous) should be used in this
example and use any iteration conditions
as you deem necessary.
Objects to use: CampainManager, Client,
Campaign, and Advert
35. A SOLUTION TO PREVIOUS SLIDE
:CampaignManager
:Client
:Campaign
:Advert
getClientName()
listCampaigns()
[For all client's campaigns]*getCampaignDetails()
listAdverts()
[For all adverts in campaign]*getAdvertDetails()
addNewAdvert()
Advert()
new Ad:Advert
36. TRY THIS TOO
Create a sequence diagram modelling the behaviour of
a PCB drilling machine. The machine will drill holes
in a PCB of given dimensions at a set of given coordinates. Co-ordinates are given as a list, which must
contain at least one set of co-ordinates. Drilling stops
when the end of the list is reached or when a user
interrupts the process.
37. A SOLUTION TO PREVIOUS SLIDE
loadFile(file)
:Computer
:drillController
:Driller
Drill(coord)
initSeq()
move(offset)
finalSeq()
[while not EOF]*Drill(coord)