Het oude systeem: BPA, BPI, BPR

advertisement
SYSTEM PROPOSAL
We (Taco en Marilou) hebben ervoor gekozen
om het systeem proposal aan het einde van de
design op te leveren, omdat tijdens de design
fase de modellen nog worden aangepast.
De systeem proposal gaat dus het
eindresultaat van de modellen bevatten i.p.v.
een tussenversie die bij de design worden
hergebruikt.
1
Taken ......................................................................................................................... 3
Gedetailleerde requirements .................................................................................... 4
Requirements voor versie 1 ................................................................................... 4
Het inlezen van mzXML en pepXML. ............................................................... 4
Visualisatie......................................................................................................... 4
mzXML : inlezen .............................................................................................. 4
Bovenaanzicht ................................................................................................. 4
Dwarsdoorsneden ............................................................................................ 4
Pijlknopje ......................................................................................................... 5
Statusbalk ........................................................................................................ 5
pepXML ........................................................................................................... 5
MS/MS ............................................................................................................. 5
Het oude systeem: BPA, BPI, BPR ........................................................................... 6
Uitleg BPA, BPI, BPR ........................................................................................... 6
Toepassing in het project ...................................................................................... 6
Informatieverzameling ............................................................................................. 7
Modellen .................................................................................................................... 8
Functioneel modelleren: ........................................................................................ 8
Activity diagram ................................................................................................ 8
Structureel ........................................................................................................... 18
CRC Cards ........................................................................................................ 18
Class Diagrams ................................................................................................ 24
Gedragsmatig....................................................................................................... 30
Sequence diagrams .......................................................................................... 30
Communication diagrams................................................................................ 35
Communication diagrams................................................................................ 35
Gedragsmatige state machines ....................................................................... 40
2
Taken
De analyse hebben we als een geheel team doorlopen, werkend in paren.
Uiteindelijk kwam naar voren dat het beter was de analyse versneld door te lopen en
dan meer tijd te gaan besteden aan design, waar we de diagrammen aanpassen
door te kijken in hoeverre het voorstel haalbaar en verstandig is.
Tijdens de design lopen eerst gezamenlijk de fasen door die sequentieel plaats
vinden. Bij HCI layer en DB layer, splitsen we op in twee groepen: het blauwe en het
rode team. Behalve zorgdragen voor de HCI, regelt het blauwe team ook de Class
and Method Design voor zover mogelijk, rekening houdend met de nog niet bedachte
datastructuur.
Voorlopige takenverdeling:
Rode Team
Blauwe Team
Joris
Marnix
Michel
Roeland
Steven
Taco
Albert Jan
Marilou
3
Gedetailleerde requirements
Requirements voor versie 1
Het inlezen van mzXML en pepXML.
Hierbij is het belangrijk dat de parser gemakkelijk kan worden aangepast. Het inlezen
van pepXML is niet per se nodig. Let op: binnenkort komt er een nieuwe parser voor
mzXML versie 3!
Visualisatie
mzXML : inlezen
-
We gebruiken workspaces
Je kunt meerdere samples inlezen.
Het inlezen van een sample doe je dmv file > load sample
Er komt dan een popup schermpje zoals Screenshot2.
Dit schermpje kun je minimaliseren door op het hoofdscherm te klikken.
Je kunt een sample verwijderen door op delete te drukken.
Vervolgens volgt er ‘weet u het zeker ’
Ook kun je op samples die zijn ingeladen de rechtermuisknop gebruiken waar
een soort snelkoppelingen staan zoals ‘add’ en delete.
Na het inlezen van mzXML wordt een bovenaanzicht van het 3d beeld
weergegeven. Als er meerdere samples zijn geselecteerd, vind er stacking
plaats in het bovenaanzicht.
Deze kun je vervolgens met een checkbox (?) aan en uitzetten (zodat deze
wel of niet zichtbaar wordt in het bovenaanzicht)
En met een dropdown menu kunnen we de kleur selecteren.
Bovenaanzicht
-
-
-
Meerdere samples: geef mengkleuren weer, en dus geen zwart (Een manier
om automatisch kleuren toe te kennen is het totale kleurbereik op te delen
tussen het aantal samples die getekend moeten worden.)
Bovenaanzicht - Bij normale mode: klik in bovenaanzicht levert twee
dwarsdoorsneden (verticaal en horizontaal). Als er van een piek een ms/ms
beschikbaar is, zet om het geklikte punt een gekleurd vierkantje. Om het
vierkantje dubbelklikken levert linksonder in het scherm een msms-spectrum.
Bovenaanzicht - Bij zoom on selection mode: door met de muis te slepen kan
een deel van het scherm geselecteerd worden. Als je binnen dat kader klikt,
wordt er ingezoomd, klik je erbuiten, verdwijnt het kader. Ben je ingezoomd,
verschijnen er schrollbars horizontaal en verticaal. Een klik met de rechtermuis
zorgt weer teruggaan naar het oude scherm.
Bovenaanzicht - Magnifying glass: klik met linkermuis knop is inzoomen op
geklikte punt, anders uitzoomen.
Klikt de gebruiker op een piek waar veel andere pieken zich bevinden: neem
dan de hoogste piek.
Dwarsdoorsneden
-
Dwarsdoorsneden – zijn op de zelfde manier interactief als bovenaanzicht.
4
Pijlknopje
Pijlknopje: om assen te draaien (tijd verticaal, m/z horizontaal omdraaien).
Statusbalk
Informatie over welke modus, welk punt geklikt, hoever is het inladen, etc.
pepXML
De gehaalde informatie uit de grafiek + de informatie van pepXML wordt in het
scherm boven de ms/ms weergegeven. Samen levert dit een zeer waarschijnlijke
peptide die als sample is ingeladen.
Als er meerdere goede matches zijn voor een piek in het pepXMLbestand,
altijd de beste score kiezen. Als waarden heel dicht bij elkaar liggen (van best
scorende), kan er eventueel gedacht worden aan een waarschuwingsbericht, maar
dit is een extraatje.
MS/MS
Als je in de normale mode zit bij het bovenaanzicht zijn er vierkantjes zichtbaar
(zowel in bovenaanzicht als misschien in de dwarsdoorsneden). Hierop kun je klikken
en dan wordt er in dit MSMSschermpje een spectrum weergegeven.
Mogelijkheid om in msms scherm uit te vergroten.
Met kleur moeten we in het bovenaanzicht aangeven welke een goede identificatie
geven (bijv. als deze boven een bepaalde (ingestelde? ) mascot score komen )
- Het moet mogelijk zijn van meerdere samples een msms weer te geven (ook
deze kun je aan en uitzetten in het spectrum).
- Vervolgens komt hier nog wat muisfunctionaliteit: als een tweede muisklik in
het bovenaanzicht een zelfde piek, maar dan in een ander sample betreft,
wordt deze samen met de oude msms weergegeven in de msmsspectra. Gaat
het hier om een andere piek, dan kunnen we geen reactie geven.
5
Het oude systeem: BPA, BPI, BPR
Uitleg BPA, BPI, BPR
BPA – kleine verandering maken in het oude systeem. Het oude systeem wordt veel
onderzocht. Er zijn twee technieken: Problem Analysis (user vertelt het probleem) en
Root Cause Analysis (pak het probleem bij de wortel aan).
BPI – efficiëntie (do things right) en doeltreffendheid (do right things) verhogen. Hier
is minder onderzoek naar het oude systeem. Een aantal technieken: Duration
Analysis (bekijk oude systeem en hoeveel tijd die processen duren), Activity Based
Costing (bekijk oude systeem en hoeveel die processen kosten), Information
Benchmarking (kijken naar andere bedrijven).
BPR – veel verandering, weinig onderzoek naar het oude systeem. Er zijn drie
technieken: Outcome Analysis (de outcomes die wat betekenen voor de klanten),
Technologiy Analysis (nieuwe technieken toevoegen), Activity Elimination (in
business process proberen taken weg te halen).
Er is sprake van BPA, BPI of BPR afhankelijk van: Business Value, Project Cost,
Breadth of Analysis (scope of analysis) en risk.
Toepassing in het project
In hoeverre gebruiken we het oude systeem? Nauwelijks, we bouwen een nieuw
programma en gebruiken daarbij wel enkele al bestaande ideeën. Met het begrip ‘het
systeem’ moeten we wel duidelijk onderscheid maken tussen enerzijds de hele
analysecyclus (van het moment dat de eiwitten verwerkt worden in de
massaspectrometer tot de export van piekverschillen die ons programma gevonden
heeft), en anderzijds alleen de visualisatiestap (wat ons programma moet gaan doen,
maar wat nu bijvoorbeeld alleen gedaan kan worden met MSight). In het eerste geval
spreken we van BPI (Business Process Improvement), dus een verbetering van het
huidige systeem. In het tweede geval spreken we van BPR, dus een radicale nieuwe
aanpak.
De term die het meest van toepassing is, is Business Process Reengineering
6
Informatieverzameling
Informatieverzameling is nodig om de requirements duidelijk te krijgen. In februari
hebben we twee meetings gehad met de klant. We hebben toen een lijst met
requirements opgesteld en om goedkeuring gevraagd.
Verdere informatieverzameling zou nog kunnen, maar is van latere zorg.
7
Modellen
We houden in principe nog geen rekening met de implementatie tijdens de analyse.
Bij de design fase zullen we deze modellen aanpassen. Hieronder staat het
eindresultaat.
Functioneel modelleren:
We weten nu de requirements van het nieuwe systeem. We gaan nu de verzamelde
informatie organiseren en representeren in activity diagrams en use cases.
Activity diagram
Waarom: Dit is een logisch model van processen en work flows, een formele manier
om weer te geven hoe een business systeem interacteert met de omgeving (de
activiteiten van de user).
Uitleg diagram:
= een action of groep van activiteiten (of een state, zoals in
het geval van Magnifying Glass)
= het begin van de diagram
= het einde van de diagram
= een keuzeoptie voor de gebruiker
= de volgorde van de uitvoer.
Verantwoording keuzes
Bij het opstarten, start je in de normal mode. Je kunt alleen in de normal mode een
msms spectrum opvragen. Vanaf de normal mode kun je in de andere modes komen.
In alle drie de modussen kun switch axes, close workspace, save workspace, load
workspace, create workspace, load sample en delete sample uitvoeren.
Versie: 2006-02-27 posted by Marnix
8
9
Use case en use case beschrijving
Waarom: begrijpen van functies van het systeem. De basis functies van het systeem
worden functioneel gemodelleerd. De beschrijving geeft op een simpele manier de
systeem functies, gezien vanaf de gebruiker. Ook wordt er rekening gehouden met
het feit dat er meerdere soorten gebruikers bestaan. De diagrammen zijn functioneel
en geven ook de basisfuncties weer: wat kan de user doen en wat is hierop de
reactie van het systeem. Elk diagram geeft één functie weer.
Uitleg diagram:
Actor1
= een persoon of systeem.
UseCase1
= representeert een belangrijk stuk van de functionaliteit van
het systeem.
= relatie van het typ associatie
*
*
«extends»
= representeert een extensie van een use case om optioneel
gedrag te includen. De pijl loopt van de basis use case naar de
geincluded use case.
10
Use case diagram:
Versie: 2006-02-27 posted by Marnix
Verantwoording keuzes – Use case diagram
De gebruiker interacteert met de volgende use cases: load sample, delete sample,
create, load, close en save workspace, normal, magnifying glass en zoom on
selection mode, switch axes en MSMSspectrum.
Bij het sluiten van een workspace kan er gevraagd worden of de wijzigingen moeten
worden opgeslagen: uitvoer van de close workspace use case.
Bij het laden en sluiten van een workspace, kan gevraagd worden eerst de
betreffende te sluiten. Dit is niet verplicht, er mogen meerdere workspaces worden
geopend.
Bij het laden van een sample kan het zijn dat ook de use case create of load
workspace wordt gedraaid, als er geen workspace geopend is.
11
Verantwoording keuzes - Use case description:
We hebben de volgende use cases gemaakt:
 load sample, delete sample
 create workspace, load workspace, save workspace, close workspace
 change mode, switch axes, user interaction
Dit zijn de wat oudere use cases maar die wat specifiekere informatie bevatten:
 MSMS Spectrum
 normal mode, magnifying glass mode, zoom on selection mode
Versie: 2006-02-27 both posted by Marnix
Use Case Name: Load sample
ID: 1 Importance level: high
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to analyse an extra sample in Spectre.
Brief description: The User chooses a file which contains data of a sample, and loads it into the
program.
Trigger: The User decides that he needs the information of an extra sample for analysis.
Type: External
Relationships:
Association: User
Include:
Extend: Create New Workspace, Load Workspace
Generalization:
Normal Flow of Events:
1. The User presses the button ‘load sample’ or selects a corresponding menu option.
2. The User selects which file to load, and presses the load button.
If there is no workspace currently loaded, then execute the Select Workspace
Exceptional Flow.
3. Spectre parses the data of the sample.
If the User clicks the “In background” button, then execute the In
Background Alternate Flow.
4. Spectre visualizes the parsed data on the main screen, and adds the sample to the
checkbox list of currently loaded samples.
Subflows:
Alternate/Exceptional Flows:
2a. Select Workspace
Spectre asks the User if he/she wants to create or load a workspace.
If the User wants to create a new workspace,
execute the Create Workspace Use Case.
If the User wants to load an existing workspace,
execute the Load Workspace Use Case.
3a. In Background
The “Load sample” window disappears and the progress bar is moved to the status bar, at
the bottom of the screen.
If the User double-clicks on the progress bar, the “Load sample” window reappears.
Use Case Name: Delete sample
Primary Actor: User
Stakeholders and Interests:
User – Wants to remove a sample.
ID: 2 Importance level: high
Use Case Type: Detail, essential
12
Brief description: The User removes the selected sample from the current workspace.
Trigger: The User does not need to analyze a sample (anymore), and wants to delete it.
Type: External
Relationships:
Association: User
Include:
Extend:
Generalization:
Normal Flow of Events:
1. The User selects the corresponding menu option.
2. The User confirms.
Subflows:
Alternate/Exceptional Flows:
13
Use Case Name: Create workspace
ID: 3 Importance level: med
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to create a workspace.
Brief description: The User chooses a name for the workspace and confirms the new
workspace.
Trigger: The User needs a new workspace, because he/she wants to analyse new samples.
Type: External / internal
Relationships:
Association: User
Include:
Extend: Close Workspace
Generalization:
Normal Flow of Events:
1. The User selects the corresponding menu option, or wants to load a sample when no
workspace is currently loaded.
2. The User is prompted for a name for the workspace.
3. The User confirms the creation of the new workspace.
Subflows:
Alternate/Exceptional Flows:
Use Case Name: Load workspace
ID: 4 Importance level: med
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to load a workspace.
Brief description: The User chooses the name of the workspace to load, and confirms the
selected workspace.
Trigger: The User needs an existing workspace, because he/she wants to continue analysing
some samples.
Type: External / internal
Relationships:
Association: User
Include:
Extend: Close Workspace
Generalization:
Normal Flow of Events:
1. The User selects the corresponding menu option, or wants to load a sample when no
workspace is currently loaded.
2. The User selects the workspace file.
3. The User confirms.
Subflows:
Alternate/Exceptional Flows:
14
Use Case Name: Save workspace
ID: 5 Importance level: med
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to save a workspace.
Brief description: The User chooses a name for the workspace that has to be saved, and stores
it.
Trigger: The User needs to store which samples are loaded and analyzed.
Type: External / internal
Relationships:
Association: User
Include:
Extend:
Generalization:
Normal Flow of Events:
1. The User selects the corresponding menu option, or wants to exit Spectre without having
saved the current workspace.
2. The User selects the file to which to save, or types a new name for the workspace.
3. The User confirms.
Subflows:
Alternate/Exceptional Flows:
Use Case Name: Close workspace
ID: 6 Importance level: med
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to close a workspace.
Brief description: The User closes a workspace because it is no longer needed.
Trigger: The User wants to shut down the program or decides the workspace is no longer
needed.
Type: External / internal
Relationships:
Association: User
Include:
Extend: Save Workspace
Generalization:
Normal Flow of Events:
1. The User selects the corresponding menu option or exits the program.
2. If some changes were made since the last save: the User is asked if he/she wants to save
the current workspace.
If the User wants to save the current workspace,
execute the Save Workspace Use Case.
3. The User confirms.
Subflows:
Alternate/Exceptional Flows:
15
Use Case Name: Change mode
ID: 7 Importance level: high
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to select cross sections or view msms-spectra of certain peaks.
Brief description: The User works in normal mode, selecting points for cross section graphs and
viewing msms-spectra.
Trigger: The User starts up the program, or switches to normal mode during analysis.
Type: External / internal
Relationships:
Association: User
Include:
Extend:
Generalization:
Normal Flow of Events:
1. The User presses a mode button or selects the corresponding menu option, or an action of
the Users results in an automatic mode switch.
2. The current mode changes to the selected mode.
Subflows:
Alternate/Exceptional Flows:
Use Case Name: Switch axes
ID: 8
Importance level: low
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to switch the time and m/z axes in the main screen.
Brief description: The User clicks a button to switch the two axes.
Trigger: The User clicks the “switch axes” button.
Type: External
Relationships:
Association: User
Include:
Extend:
Generalization:
Normal Flow of Events:
1. The axes of “time” and “m/z” in the main screen are switched, and the two cross section
graphs are switched correspondingly.
Subflows:
Alternate/Exceptional Flows:
16
Use Case Name: User Interaction
ID: 9 Importance level: high
Primary Actor: User
Use Case Type: Detail, essential
Stakeholders and Interests:
User – Wants to interact with the graphs in the program.
Brief description: The User does some mouse operations on graph screens in the program, and
the program responds accordingly.
Trigger: Mouse operations by the User, in one of the graphs.
Type: External
Relationships:
Association: User
Include:
Extend:
Generalization:
Normal Flow of Events:
1. The User clicks or drags the mouse in/on one of the graphs.
2. The program decides which mode to select.
3. The program executes the selected mode with the mouse input.
Subflows:
Alternate/Exceptional Flows:
17
Structureel
Beschrijving van de structuur van de data die door het business proces wordt
ondersteund. Structurele modellen representeren de logische organisatie van
data.
CRC Cards
Waarom: Een model waar componenten van de software in voorkomen. De crc cards
bevatten uiteindelijk alle informatie om een logische structuur als model te bouwen.
Uitleg diagram: (Dit spreekt op zich)
Verantwoording: (Dit spreekt op zich)
Versie: 2006-03-07, posted by Albert Jan.
Class name: Sample
ID: 1
Description:
Associated Use Cases:
An internal data structure that holds all
knowledge about one sample/experiment
Responsibilities:
Collaborators:
Gives access to MS data points
Gives access to MS/MS data points
Gives access to Peptide data points
Can indicate availability of pepData
Can save its data to a file
SampleWriter
Attributes:
Relations:
-mzData
-SampleWriter
-pepData
-VirtualSample (extends)
-ID
-RealSample (extends)
-Workspace
Class name: SampleWriter
ID: 2
Description:
Associated Use Cases:
An entity capable of writing sample data to
various file formats
Responsibilities:
Collaborators:
Write sample data to a file
Sample
Relations:
-Sample
18
Class name: RealSample
ID: 3
Description:
Associated Use Cases:
A sample data structure based on an input
file
Responsibilities:
Collaborators:
Is bound to a file (cannot be changed)
SampleParser
Relations:
-Sample (Generalization)
-SampleParser (Aggregation)
Class name: VirtualSample
ID: 4
Description:
Associated Use Cases:
A sample that exists solely within the
program
Responsibilities:
Collaborators:
Can return a selection of itself
VitualSample
Can modify its own data points
Upon a save becomes a RealSample
RealSample
Relations:
-Sample (Generalization)
Class name: SampleParser
ID: 5
Description:
Associated Use Cases:
An entity which can read various file
formats and parse them into a RealSample
Responsibilities:
Collaborators:
Must be bound to a file
Get (parse) all data from a file
Get (parse) a arbitrary data point
Relations:
-RealSample
19
Class name: Workspace
ID: 6
Description:
Associated Use Cases:
An environment for the user to work in
Responsibilities:
Collaborators:
Can return current visual settings
VisualSettings
Can return currently loaded samples
Sample
Can remove an arbitrary sample
Can add a sample
Sample
Can set visual settings
VisualSettings
Attributes:
Relations:
-ID
-Processor
-Samples
-Sample (Aggregation)
Class name: VisualSettings
ID: 7
Description:
Associated Use Cases:
An entity which remembers an user's
settings of all modifiable visualisation
parameters
Responsibilities:
Collaborators:
Can set its variables
Can return its variables
Attributes:
-samples (to be drawn)
-colors
-axis orientation
-zoom
-viewports heights/widths for all graphs
-currently displayed ms/ms diagram
Relations:
-Workspace
Class name: GUI
ID: 8
20
Class name: GUI
ID: 8
Description:
Associated Use Cases:
An entity which handles all user interaction
Responsibilities:
Collaborators:
Keeps track of user's mouse activity
Can summon a (magnifying) window
Can set additional info in pepData
Sample, via Processor
Relations:
-Processor
Class name: Mode
ID: 9
Description:
Associated Use Cases:
Represents a mode of the GUI which can
be set by the user. This also contains the
mode's caption; meaning the responses of
the GUI given its current mode
Responsibilities:
Collaborators:
The current mode can be changed
The mode can respond to events
GUI, via processor
Contains a 'normal' mode
VisualSettings, via Processor
Contains a 'zoom' mode
VisualSettings, via Processor
Contains a 'magnify' mode
VisualSettings, via Processor
Knows all possible modes
Attributes:
Relations:
-PossibleModes
-Processor
Class name: Graph
ID: 10
Description:
Associated Use Cases:
Represents all kinds of graphs
Responsibilities:
Collaborators:
Can paint itself
Can paint its axis
21
Class name: Graph
ID: 10
Attributes:
Relations:
-Image
-MSGraph
-Width
-MSMSGraph
-Height
-CrossSectionGraph
-Zoomvariables
-Processor
Class name: MSGraph
ID: 11
Description:
Associated Use Cases:
Represents an m/z / time graph
Responsibilities:
Collaborators:
Can paint itself
Relations:
-Graph (Generalization)
Class name: CrossSectionGraph
ID: 12
Description:
Associated Use Cases:
Represents both time/intensity and m/z /
intensity 2D Graphs
Responsibilities:
Collaborators:
Can paint itself
Relations:
-Graph (Generalization)
Class name: MSMSGraph
ID: 13
Description:
Associated Use Cases:
Represents a 2D MSMS Graph
Responsibilities:
Collaborators:
Can paint itself
Relations:
-Graph (Generalization)
Class name: Processor
ID: 14
22
Class name: MSMSGraph
ID: 13
Description:
Associated Use Cases:
Handles all communication between
modular parts of this system. Responsible
for providing a clear and robust interface,
with reliable interaction
Responsibilities:
Collaborators:
Keeps track of currently active workspace
Workspace
Can change currently active workspace
Workspace
Can update relevant modules
-(currently only Graphs)
Graph
Gives access to the GUI
GUI
Keeps track of currently active graphs
Graph
Can add a new graph
Graph
Can add remove a graph
Graph
Can return the current Mode
Mode
Can remove workspaces
Workspace
Can create new workspaces
Workspace
Can change active mode
Mode
Attribute:
Relations:
-Graphs
Workspace
-Workspaces
Graph
Mode
GUI
23
Class Diagrams
Waarom: Dit diagram laat de klassen en de relaties tussen de klassen die blijven
tijdens het runnen van het systeem.
Uitleg diagram:
GUI
+MAIN(in args : object)
+init()
= een klasse
1
1
= een associatie?
= Overerving - (klasse onderin extends abstracte klasse bovenin)
= een associatie??
Methode/ attribuut:
+ is public – not hidden to other objects
# is protected – wel hidden, behalve voor een subklasse
- is private – wel hidden, dit is de default.
Verantwoording keuzes: (spreek voor zich)
Versie 2006-04-06 posted by Joris
24
25
26
27
28
29
Gedragsmatig
Hoe zal het systeem reageren.
Sequence diagrams
Waarom: het onderliggende business proces weer te geven. Het is een illustratie van
de objecten die participeren in een use case. Ook de berichten die tussen de
objecten bewegen tijdens één use case worden weergegeven.
Uitleg diagram:
= de lengte van een execution
Workspace
= de lifeline van workspace
Workspace(id)
= een message
= een return message
Verantwoording keuzes (spreek voor zich)
30
31
32
33
34
Communication diagrams
Waarom: het onderliggende business proces weer te geven. In feite is een
communication een object diagram dat berichten weergeeft.
Uitleg diagram:
User
= een actor
2: changeMode(id)
= een association met een message
GUI
= een object
Verantwoording keuzes: (spreekt voor zich)
35
ChangeMode en switchAxes en algemene interactie
36
Load Sample, delete sample
37
Save workspace, close workspace
38
createWorkspace, loadWorkspace.
39
Gedragsmatige state machines
Dit diagram hebben we niet gemaakt.
40
Download