• No se han encontrado resultados

Introducció a l Enginyeria del Programari

N/A
N/A
Protected

Academic year: 2022

Share "Introducció a l Enginyeria del Programari"

Copied!
26
0
0

Texto completo

(1)

Introducció a l’Enginyeria del Programari

Manual del bon ús

Model de comportament Model conceptual

(2)

Què hi ha en aquest material

2

Atributs

Quin és el paper dels atributs

Atributs multiavaluats

Quins atributs cal explicitar, i amb quin tipus

Concepte associatiu

Usos: espai d’atributs, aglutinador, marca d’unicitat

Identitat entre associació i concepte associatiu

Identificador

Identificador dels conceptes associatius

Identifiquem l’enllaç a partir de les entitats enllaçades

Principi de l’existència de l’identificador

L’identificador és un atribut propi (cas dels conceptes) o un conjunt d’atributs externs (cas dels conceptes associatius)

Arguments dels ES

Per simplificar suposem que són entitats, no pas identificadors

(3)

3

Atributs i interrelacions

(4)

Recordatori:

Atributs

4

Atribut

Propietat rellevant que tenen totes les realitzacions concretes d'un mateix concepte abstracte

Ex. Color color

Valor

Cadascuna de les realitzacions concretes d'un mateix atribut

Ex. Blau

L'atribut modela una propietat; en donar valor a l’atribut definim una característica de l‘entitat

Aquesta Cadira és de Color Blau Color color = Blau

De fet l’atribut és un conjunt de valors (el tipus: Color) i el nom que usem per referenciar l’atribut (color)

El concepte Cadira té una propietat Color, que en aquesta realització concreta o entitat té el valor Blau

(5)

Consideracions sobre els atributs

5

Han d'aparèixer els requerits per l'anàlisi

Res d'atributs de les classes d'implementació

Res de claus foranes

Aquestes apareixen com a mecanisme d'implementació de les interrelacions

Tipus

Només a nivell semàntic

Ex. Comptador, Persona, Adreça, Data, Color

Res de tipus de màquina

Ex: int, char, string Color c_potes;

Color c_seient;

!!

(6)

Recordatori:

Propietat multiavaluada

7

Per representar una propietat multiavaluada usem una associació entre el concepte que té la propietat i un concepte que representa els valors possibles

L’associació expressa diferents enllaços amb una mateixa entitat e

Cada enllaç és un valor diferent per a la propietat determinada sobre e

Si en la multiavaluació és possible repetir valors, cal introduir un concepte que tingui el valor com a

atribut

Ex. Un estudiant treu dos sisos en controls diferents de la mateixa assignatura

És a dir, cal analitzar la compartició d’entitats i/o valors

(7)

Recordatori:

Valors múltiples

8

Sigui un concepte C amb un atribut a multiavaluat

Llavors

Cal introduir un concepte A que encapsuli els valors individuals de l’atribut

L’atribut de C s’ha d‘expressar amb una interrelació entre C i el nou concepte A

a*

C C

...

A

? a *

Multiplicitat

Depèn de la

compartició TrMono

(8)

Recordatori:

Valors amb estructura

9

Sigui un concepte C amb un atribut a tal que els seus valors tenen estructura interna

Llavors

Cal introduir un concepte A que encapsuli l’estructura

L’atribut de C s’ha d‘expressar amb una interrelació entre C i el nou concepte A

a

C C

...

A

? a 1

Estructura

Depèn de la

compartició TrAtom

(9)

Recordatori:

Usos dels conceptes associatius

10

En UML un concepte associatiu l’usem com un:

Espai d’atributs

És el mecanisme que ofereix l’UML per introduir atributs en una interrelació

Aglutinador

Per tal de poder expressar una propietat

multiavaluada d’una interrelació caldria una interrelació entre la primera interrelació i els

valors de la propietat

Com que això no és possible introduïm un concepte associatiu que és sobre qui definim la interrelació que expressa la propietat

multiavaluada

Marca d’unicitat

Cada entitat d’un concepte associatiu és per a un únic enllaç

Per cada enllaç hi ha una única entitat associativa

En el model ER les interrelacions tenen espai

pels atributs

En el model ER els conceptes associatius

s’introdueixen amb aquesta finalitat

(10)

Consideracions sobre els conceptes i associacions

11

Han d’aparèixer tots els conceptes i associacions rellevants pel nostre problema

En el cas que les necessitats diagramàtiques ens facin aparèixer nous conceptes o associacions:

Cal analitzar la bondat d’aquestes aparicions

Cal decidir si cal forçar el diagrama fins a aquest extrem o és preferible adjuntar una restricció semàntica

(11)

12

Identificadors i conceptes

associatius

(12)

Recordatori:

Identificador

13

Per tal de poder diferenciar totes les

realitzacions d'un mateix concepte, assumim que tot concepte té un atribut, que anomenem identificador, tal que:

És obligatori

En tot concepte (l'atribut)

En tota entitat (el valor)

El seu valor és únic

No hi ha dues realitzacions del mateix concepte que el realitzin (l'identificador) amb el mateix valor

(13)

Identificador d’una associació

14

És innecessari

Com a conseqüència de la premissa de simplicitat sobre els models, el considerem prohibit

A nivell dels enllaços, si coneixem les entitats enllaçades coneixem l’enllaç

Sabem que és únic

Per identificar un enllaç n’hi ha prou en expressar l’associació, i identificar les entitats enllaçades

(14)

Com expressar un enllaç

15

Associació m-n

Cada entitat d’un extrem de l’associació es pot enllaçar amb múltiples enllaços de l’altre extrem

Per conèixer un enllaç n’hi ha prou en conèixer els seus extrems

Associació 1-n

Cada entitat de l’extrem n de l’associació es pot enllaçar amb una única entitat de l’altre extrem

Per conèixer un enllaç n’hi ha prou en conèixer l’entitat de l’extrem multiavaluat de l’associació

Associació 1-1

Cada entitat d’un extrem de l’associació només es pot enllaçar amb un enllaç de l’altre extrem

Per conèixer un enllaç n’hi ha prou en conèixer-ne un qualssevol dels extrems

(15)

Identificador dels conceptes associatius

16

Per identificar una realització d'un concepte

associatiu n'hi ha prou en identificar l'enllaç de l'associació al que s'enllaça aquesta realització

És a dir, cal donar els identificadors de les realitzacions dels extrems de l'associació associada al concepte associatiu (no pas tots, només els imprescindibles)

Per identificar una realització de C n'hi ha prou en indicar l'enllaç corresponent de l'associació nom.

:nom = <:A, :B>

Els conceptes associatius no tenen atribut identificador

La identificació s'infereix del diagrama, sense necessitat de cap atribut propi A

C nom B

* *

(16)

Atributs i identificadors

17

En el primer cas podem explicitar o no l’atribut identificador

En el segon cas l’identificador no és pas cap atribut propi

Els identificadors estan formats per un sol atribut (cas dels conceptes) o bé per la concatenació

d’atributs externs (cas dels conceptes associatius)

(17)

Existència de l’identificador

18

Tot concepte té un atribut identificador

Els conceptes associatius no tenen cap atribut identificador

Principi

(18)

Recordatori:

Identitat i igualtat

19

La identitat implica igualtat

Dues entitats que són la mateixa, no poden tenir valors diferents en els atributs

Considerem que estem observant les entitats en el mateix moment

La igualtat no implica identitat

Dues entitats distintes (que no són la mateixa; que es poden distingir una de l’altra) poden ser iguals (poden tenir els mateixos valors en els seus atributs)

Identitat

Dues entitats són idèntiques si són la mateixa

Igualtat

Dues entitats són iguals si tenen els mateixos valors dels seus atributs

Per tant han de ser realitzacions del mateix concepte

(19)

Identitat entre enllaç i entitat associativa

20

Hi ha una identificació entre el concepte associatiu i l'associació que el defineix

Donat un concepte associatiu tenim l’associació

Donada l’associació, en cas d’existir, tenim el concepte associatiu

Hi ha una identificació entre una entitat

associativa i l‘enllaç sobre la que es defineix

Donat un enllaç tenim la realització del concepte associatiu

Donada una realització del concepte associatiu tenim un enllaç

Entitat

associativa:

Realització d’un concepte associatiu

(20)

L’entitat associativa és l’enllaç

Hi ha redundància de noms

L’associació i el concepte associatiu són el mateix; són idèntics

21

Pacient assignació CAP Metge de

Capçalera

1 *

Metge de capçalera

Pacient CAP

Assignació

* 1

M1 M2

Aquest model l’hem analitzat a

“Expressivitat dels conceptes associatius”

(21)

Identificadors i concepte associatiu

Té sentit que Metge de capçalera tingui com a identificador el nom del metge??

Penseu en:

De què ens informa l’identificador d’una entitat associativa?

Què necessitem per identificar una entitat associativa?

22

Pacient assignació CAP Metge de

Capçalera

1 *

M1

(22)

Identificadors i concepte associatiu (2)

Té sentit que Assignació tingui com a identificador el nom del metge??

L’atribut és el metge de capçalera o el seu nom??

24

Sol

Metge de capçalera

Pacient CAP

Assignació

* 1

M2

(23)

27

Arguments dels ES

(24)

Naturalesa dels arguments dels ES

28

En els contractes els arguments poden ser

Valors literals primitius

3, dilluns, 5-8-08, 10:23, ...

Entitats

c:Caminada

Identificadors

c:IdCaminada

De moment no ens plantegem si les entitats les passem com a tals o bé si només passem el seu identificador

Per simplificar, considerem els arguments com a entitats

(25)

Comunicació d’un enllaç

29

En el cas d’haver de comunicar una entitat

associativa, el que comunicarem seran les entitats sobre les que es defineix aquesta

(26)

Comunicació d’un enllaç

Si volem passar una proposta per paràmetre

haurem de passar un parell <agència, viatge>

Si volem passar una assignació per paràmetre haurem de passar un pacient

La multiplicitat (segurament errònia) ens evita haver de passar un

parell <pacient, cap>

30

Agència m n Viatge

Proposta m itinerari n Vol

Metge de capçalera

Pacient CAP

Assignació

* 1

Referencias

Documento similar

Per obtenir una visió global de l'anàlisi comparativa entre les escales de valors dels pares i les dels seus fills, presentem les taules 1 i 2, en què es recull la

Una comunitat és un grup de persones que tenen certs elements en comú, com ara l'idioma, els costums, els valors, la visió del món, la ubicació geogràfica o l'estatus social,

Tot i que, és un procés força complex, degut a què per una banda els clients de BSF són els propietaris dels estands gastronòmics i, aquests comercialitzen els

Per tant, tenint en compte les dues hipòtesis generals (“Donada la importància i possibilitats del Internet of Things, està suficientment implementat en els

L'Informe Includ-ed (2007) en els seus estudis confirmen que un dels requisits previs per a que els estudiants tinguin èxit a l'escola és l'actitud dels professors,

De l'altra, hi havia un grup considerable de parlants que sí que volia que els seus fills sabessin parlar la llengua dels avis, però al mateix temps no eren

Tant els jugadors convocats fins al novembre com els integrants de la selecció són els que mostren un millor rendiment dels components de les FE (memòria de

Si una línia recta és tallada per dues línies rectes de manera que els angles interiors del mateix costat.. sumin menys de dos rectes, i si aquestes dues línies rectes es