Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo...

13
School of Computer Science, University of Oviedo Software Architecture Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo

Transcript of Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo...

Page 1: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do Software Architecture

Lab. 03

UML diagrams

PlantUML

2019-20

Jose Emilio Labra GayoPablo GonzálezIrene CidHugo Lebredo

Page 2: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

UMLUnified Modeling Language

Before UML there were several proposals

UML notation unifies them

Proposed by OMG (Object Management Group)

Current version UML 2.5.1 (2017)

Model = abstraction of a problemIt can have different diagrams

Diagram = partial graphic representation of a model

OCL = Object Constraint LanguageConstraints between objects using formal language

Page 3: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

14 UML Diagram types

Fuente: Wikipedia

Page 4: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Class diagrams

MusicManager

+conf:Configuration-playList:List<Song>-activeSong:integer

+randomPlay()+addSong(Song)+queryConf():Configuracion..

Visibility:• - Private• ~ Package• # Protectec• + Public

• Models the statis part of theproject, without taking intoaccount the time aspect

• Explains the relationshipsbetween the different classes.

• Arc42:8-Concepts

Page 5: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Person

+name

Professor

+startDate

University

+name+city

Student

+name+id

+id

Course

+name

1

1..* 1..*

1

Example

Inheritance

Composition(when the container is destroyed, thecontents are destroyed)

Aggregation

Page 6: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

UML Component diagram

GUI

Catalog

Shipping

Cart

Requires Provides

Page 7: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Sequence diagram

Models communication between

some objects at a given time

Objects can send two types of

messages: synchronous or

asynchronous

Arc42:6-RuntimeView

Page 8: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Deployment diagrams

Represents the final location of

the components in an app

Elements:

Nodes , Components,

relationships

Arc42: 07.DeploymentView

Fuente:VisualParadigm

Page 9: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Text-based tools

PlantUML YUML

@startuml componentactor Usuarioparticipant MusicManagerparticipant Configurationboundary PlayerUsuario -> MusicManager: playMusicManager -> MusicManager: randomMusicManager -> Configuration : getPlayerMusicManager --> Player : play@enduml

Page 10: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Drawing tools

Powerpoint

MsVisio

UMLet (https://www.umlet.com/)

Page 11: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

CASE tools

EnterpriseArchitectReverse Enginering with Java/C++

Oracle connection for relational

databases

Word, HTML templates

MagicDraw▫ Java based

▫ UML diagrams

▫ Reverse Engineering Java , C++

Visual Paradigm▫ Commercial (student license)

Modelio▫ Open source

▫ Java based

▫ Reverse Engineering Java , C++

Page 12: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

Diagramming the architecture

Video: https://www.youtube.com/watch?v=wgpSdpny-0c

Checklist:https://c4model.com/assets/software-architecture-diagram-review-checklist.pdf

Page 13: Presentación de PowerPoint · Lab. 03 UML diagrams PlantUML 2019-20 Jose Emilio Labra Gayo Pablo González Irene Cid Hugo Lebredo. Software Architecture l r ce, ty o UML Unified

Software ArchitectureS

ch

oo

lo

f C

om

pu

ter

Sc

ien

ce

, U

niv

er

sit

yo

f O

vie

do

End of presentation