Professional Documents
Culture Documents
UMLDiagramasdeClasesEjercicio2Conelmazodando
Conelmazodando
Haciendoloquehayquehacer
07/24/2013DEJOANPAON
UMLDiagramasdeClasesEjercicio2
i
9Votes
Introduccin
Enelejercicioanterior(hps://joanpaon.wordpress.com/2013/07/01/umldiagramadeclases
ejercicio1/)seexpusounsupuestoprcticosobreelquesetenaquerealizareldiseodeun
diagramadeclases.Dichosupuestorecorracasitodaslasposibilidadesderelacinentre
clases.Enlaentradadehoyseexponeunsegundoejerciciosevaairunpocomsall,
involucrandoalinterfazcomogarantedelarealizacindeespecicacionesfuncionales.
Enunciado
CrearunproyectoUMLllamadoTorneoenelquesediseeundiagramadeclases
quemodelelaestructuranecesariaparamanejarlosdatosdelosencuentrosdeuntorneode
tenisdemesaenlamodalidaddesorteoyeliminatoria.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
1/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Deltorneointeresaconocerlafechadeltorneo,losencuentroscelebradosyelganador.
Decadajugador,quedebedeconocerperfectamentelasreglas,interesasaberelnmerode
federadodelafederacindelaqueesmiembro.
Decadapersonainteresasabersusdatosbsicos:NIF,nombrecompletoyfechade
nacimiento.LaclaseFechasemodelacontrescampos(da,mesyao)detipoentero.Laclase
Nifsemodelaconuncampodetipoenterollamadodniyuncampodetipocarcterllamado
letra.
Decadaencuentrointeresaconocerlosoponentes,elganadoryelresultadonaldel
marcadordecadaunadelastrespartidasquesejuegana21puntos.
Anlisisdelenunciado
Elprimerpasoarealizarconsisteenleerdetenidamenteelenunciadoydelextraertodala
informacinposible.Avecesescuestindeaplicarelsentidocomn,avecesescuestinde
unircabossueltos,avecesescuestindesimplelgicayavecesescuestindepura
deduccin,perosiempresiempreescuestinderazonarporaproximacionessucesivasyde
experiencia.
Bien,parecequeelenunciadoreerenicamenteunmodeladodedatos,node
comportamiento,porloqueseprocederarealizarunalistadeloselementosms
signicativosparaelproyectoquesepuedanextraerdelenunciado.
1.NombredelproyectoTorneo
2.NombredeldiagramaEncuentrosTorneo
3.temsElementossignicativosdelenunciado.
Encuentro
Fechadeltorneo
Jugador
Nmerodefederado
Persona
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
2/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Persona
Nif
Nombrecompleto
Fechadenacimiento
Dia
Mes
Ao
Dni
Letra
Oponente
Resultadonal
Partida
Diseodeclases
Recurdesequelasclasessonentidadesqueencapsulaninformacin,setrataportantodever
quinformacindelalistaanteriorestrelacionadaentresyverlaformadeencapsularlaen
susrespectivasclases.
Seprocederaidenticarlasclasesapartirdelenunciadoydeencapsularenellasla
informacinrelacionada.Estepasoserealizarconsiderandodeformaaisladaunasclasesde
otras.Posteriormente,cuandoseveanlasrelaciones,sedepurarsucomposicin.
Enestafasedelmodeladoseprocedesiempredesdelasclasesmstrivialesalasms
complejas.
ClaseNif
(hps://joanpaon.les.wordpress.com/2013/06/nif.png)
ClaseFecha
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
3/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/06/fecha.png)
ClaseNombre
(hps://joanpaon.les.wordpress.com/2013/06/nombre.png)
ClaseMarcador
(hps://joanpaon.les.wordpress.com/2013/07/marcador.png)
ClasePersona
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
4/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/06/persona.png)
ClaseJugador
(hps://joanpaon.les.wordpress.com/2013/07/jugador.png)
ClasePartida
(hps://joanpaon.les.wordpress.com/2013/07/partida.png)
ClaseEncuentro
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
5/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/encuentro.png)
ClaseTorneo
(hps://joanpaon.les.wordpress.com/2013/07/torneo.png)
Relaciones
Enestafasesevaaevaluarquclasestienenqueverconquotras,esdecirsusrelaciones.
Paraqueelprocedimientoresultelomssencilloposibleseestudiarnlasrelacionesdosa
dos.
Herencia
Primeroseabordanlasrelacionesdeherenciaempezandoporaquellasqueresultentrivialeso
msevidentes.
Aunquenoesmuyortodoxo,lareglaparadetectarunarelacindeherenciaesjarseenel
catlogodeclasesdiseadasenlafaseanterior,yversiexistealgunaclasecuyosatributos
seanunsubconjuntodealgunaotra.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
6/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
PersonaJugador
EnestecasoresultaquelosatributosdelaclasePersonasonunsubconjuntodelosdelaclase
JugadorysemnticamentetienesentidodecirquelaclaseJugadoresunaespecializacinde
laclasePersona.
(hps://joanpaon.les.wordpress.com/2013/07/personajugador.png)
ObsrvesequelosatributosqueheredalaclaseJugador,queeslaclaseespecializada,nose
representan.Obsrvesetambinquelaechaquerepresentaestarelacinvadesdelaclase
hijaalaclasemadre,tienelneacontinua,puntadeechacerrada,notienecardinalidady
noestetiquetadaporningnrol.
Asociacin
Unavezsehanresueltolasrelacionesdeherencialetocaelturnoalasrelaciones
deasociacin.Seprocedersiempreabordandoprimerolastrivialesomssimplesy
continuandoporlasdems.Paraqueresultemsclaro,elanlisisserealizarconsiderando
lasclasesdedosendos.
PersonaFecha
Aunariesgoderesultartediosoperoconelobjetivodequeresultelomsclaricadorposible,
elanlisisdelarelacinentreestasdosclasesserealizarpasoapaso.
Estaasociacinestrivial.LaclasePersonatieneunatributodetipoFecha,dichodeotra
manera,laclasePersonatieneunareferenciaaunobjetodelaclaseFecha.
Lasasociacionesserepresentanconunalneadetrazocontinuoqueunelasclasesvinculadas.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
7/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/personafecha0.png)
Roles
Asconsiderado,elatributofechaNacdelaclasePersonapasaaserelroldelarelacinque
vinculaaambasclases.Porlotanto,desaparecedelaclasePersonayapareceenlalneade
vinculacinjuntoalaclasedesutipo.
(hps://joanpaon.les.wordpress.com/2013/07/personafecha1.png)
Navegabilidad
Ahorahayqueabordarlanavegabilidadtratandodeversidesdeunaclasesepuedeirala
otra.EsevidentequelaclaseFechanotieneinformacindelaclasePersonaporloquela
navegabilidaddesdelaclaseFechanoesposible.
Sinembargo,laclasePersonatieneunareferenciaalaclaseFechaporloquesesviablela
navegabilidaddesdelaclasePersonahacialaclaseFecha.Lanavegabilidadseexpresacon
unapuntadeechaabiertapuestaenelladodelaclasealaquesellega.
(hps://joanpaon.les.wordpress.com/2013/07/personafecha2.png)
Cardinalidades
Elsiguientepasoesabordarlascardinalidadesomultiplicidades,esdecirelnmerode
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
8/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Elsiguientepasoesabordarlascardinalidadesomultiplicidades,esdecirelnmerode
instanciasdecadaclasequeintervienenenlarelacin.Pararesolverestepasohayque
preguntar:
Porcadainstanciadeunadelasdosclasescuntasinstanciasdelaotraclasepuedenenextremo
intervenircomomnimo(Cardinalidadmnima)ycomomximo(Cardinalidadmxima)?
Yluegohacerlaspreguntasalrevs.
Cuntasfechasdenacimientocomomnimotienecadapersona:1
Cuntasfechasdenacimientocomomximotienecadapersona:1
Cuntaspersonaspuedennacercomomnimoenunadeterminadafecha:0
Cuntaspersonaspuedennacercomomximoenunadeterminadafecha:Varias
(hps://joanpaon.les.wordpress.com/2013/07/personafecha3.png)
Obsrvesequecuandolacardinalidadmnimaymximacoincidensloserepresentaunade
ellas.Obsrvesetambinquecuandolacardinalidadmximaesmltipleylacardinalidad
mnimaesceroreereunacardinalidadmltipleopcionalyserepresentaconunasterisco.
TodoParte
Elsiguientepasoconsisteenconsiderarquclaseeslaparte[PARTE]yquclaseeslaparte
[TODO].Dichodeotromodoquincontieneaquin.Enestecasoladiscriminacinestrivial:
laclasePersonaeslaparte[TODO]porquetieneunareferenciaalaclaseFechaqueeslaparte
[PARTE].
AgregacinComposicin
Elsiguientepasoconsisteendeterminarsilarelacindeasociacinentrelasclasesesde
agregacinodecomposicin.Paraquelarelacinseadecomposicinescondicinnecesaria
quelacardinalidaddelaparte[TODO]sea1.Comoestenoeselcasolarelacinesde
agregacin.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
9/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/personafecha4.png)
Obsrvesequelaparte[TODO]seidenticadibujandounromboacostadoenlalneadela
relacin.Obsrvesetambinqueelseharepresentadoelromboenblancoparaidenticaruna
relacindeagregacin.
Yesteesbsicamenteelprocesoaseguirparaanalizarlasrelacionesdeasociacinentrelas
clasesdeundiagramadeclasesUML.Ensituacionesmscomplejashabrquereconsiderar
estemtodoparaintroducirlosnuevoselementosinvolucrados.
PersonaNif
ElanlisisdelarelacinentreestasdosclasesdeterminaquecadaobjetodelaclaseNifest
unvocamenteunidoaunsoloobjetodelaclasePersona,yviceversa,porloquela
cardinalidadenambosladoseslaunidad.tantomnimacomomxima.
Ademssemnticamentesidesaparecelaparte[TODO],elobjetodelaclasePersona,la
existenciadelaparte[PARTE],elobjetodelaclaseNif,yanopuedeserutilizadoydebera
desaparecertambin.Estadependenciaexistencialapuntaaunarelacindetipo
Composicin.
(hps://joanpaon.les.wordpress.com/2013/07/16.png)
Obsrvesequelaparte[TODO]seidenticadibujandounromboacostadoenlalneadela
relacin.Obsrvesetambinqueelseharepresentadoelromboennegroparaidenticaruna
relacindecomposicin.
PersonaNombre
LarelacinentrelaclasePersonaylaclaseNombreesmuyparecidaalarelacinexistente
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
10/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
LarelacinentrelaclasePersonaylaclaseNombreesmuyparecidaalarelacinexistente
entrelaclasePersonaylaclaseFecha.
(hps://joanpaon.les.wordpress.com/2013/07/17.png)
ObsrvesequealirexpresandolosatributosdelaclasePersonacomorolesdesusrespectivas
relaciones,enelcontextodeestesupuesto,eldiagramaquerepresentalaclasePersonayano
contieneningnatributo.
EncuentroJugador
LarelacinentrelaclaseEncuentroylaclaseJugadoresmuyinteresante.Comosepuede
apreciarhaytresrelacionesdiferentesconsusrespectivosroles.
(hps://joanpaon.les.wordpress.com/2013/07/encuentrojugador1.png)
Obsrvesequesisedecidieranodiscriminarlosrolesjugador1yjugador2,susrespectivas
relacionessepodranfusionarenunasolaquesepodracodicarutilizandoalgunacoleccin
dedoselementos.
Respectoalascardinalidades,obsrvesequetodoslosjugadoresqueparticipenenun
encuentrotienenquehacerloenalgunodedosroles:jugador1ojugador2peronoenlosdos
almismotiempo.Asimismo,aquellosjugadoresqueparticipenenvariosencuentrospueden
ostentardiferentesrolesencadaunodeellos,ono.Finalmente,elganadordeunencuentro
debeserunodelosdosparticipantesdelmismo.Estasrestriccionessepodranexpresarenlos
correspondientesdiagramasdecomportamiento.
EncuentroMarcador
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
11/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Enelcontextodelsupuestodeesteejercicio,enunencuentrosecelebrantrespartidas,el
primerjugadorquelleguea21puntosganalapartida.Eljugadorqueganemspartidasde
unencuentroganaelencuentro.Obsrvesequenopuedehaberempatenienlaspartidasni
enelencuentro.
LaclaseMarcadorencapsulaelresultadodeunapartidamediantedosnmerosdetipo
entero,elprimernmerocorrespondealospuntosdeprimerjugadoryelsegundonmeroa
lospuntosdelsegundojugador.Unodeellosdebecontenerelnmero21ycorresponderal
ganadordelapartidayelotrovalordebeestarsituadoentre0y20.
(hps://joanpaon.les.wordpress.com/2013/07/encuentromarcador.png)
ObsrvesequesehamodelizadounarelacindeComposicinporque,apesardequeen
partidasdiferentespuedandarseresultadosiguales,losobjetosinstanciadosdelaclase
Marcadorqueencapsulanestosresultadosnosecomparten,ergosidesapareceelencuentro
desaparecensusresultados.
TorneoFecha
LarelacinentrelaclaseTorneoylaclaseFechaesmuyparecidaalarelacinexistenteentre
laclasePersonaylaclaseFecha.
(hps://joanpaon.les.wordpress.com/2013/07/torneofecha.png)
TorneoEncuentro
Paraquehayauntorneoesnecesarioquehayaalmenosunencuentro.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
12/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/torneoencuentro.png)
Ntesequesehaestablecidounarelacindecomposicindebidoaquelosencuentros
celebradosenunsorteonosonvlidosparaotro.
TorneoJugador
Elobjetivodeuntorneoestenersiempreunganador.Esaguralatienequeostentaralguno
delosjugadoresquehanparticipadoenl.
ClasePartida
Llegadosaestepuntotodaslasrelacionesentreclasesestnestablecidas.Apesardeque
inicialmentesemodellaclasePartidapararecogerlosdatosdelosparticipantesdecada
partidaydesuresultado,desdeelpuntodevistaalquesehallegadosiguiendoel
razonamientoargumentadohastaahoraresultaqueestaclasenoesnecesarianiconveniente,
porloqueseprescindirdeella.
Estadecisinnoesunavueltaatrsnimuchomenos.Eneldiseodediagramasdeclaseses
muynormalyconvenienterealizarcontinuosreplanteosenlamedidaqueelavanceenel
razonamientoclaricaprogresivamentelasituacin.
Interfaces
Terminadoeldiseodelosdatosencapsuladosenlasrelacionesentrelasdiferentesclasesel 13/17
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Terminadoeldiseodelosdatosencapsuladosenlasrelacionesentrelasdiferentesclasesel
siguientepasoesdetectarlasposiblescapacidadesfuncionalesquedebenreunirdichasclases
expresadasenformaderealizacindeinterfaces.
InterfazIJugador
Siseconvieneenquelacapacidaddejugaraltenisdemesavieneproporcionadaporel
contenidodeundeterminadomtodo,todaclasequerepresenteaunapersonaquesabejugar
aestedeporteincorporarestemtodoensucdigo.
Sinembargo,Cmoreconoceraunjugadordetenisdemesasinverlojugar?Larespuesta
vieneatravsdelosinterfaces.Uninterfazescomounttuloquefacultaasuposeedorenuna
determinadahabilidad.Assereconoceaunjugadorporsuttulo,comoseconoceaun
mdicoporsuttulouniversitario,unextintorecazporsucerticadodeindustria,la
reparacindeuncocheporsufactura,etc.
(hps://joanpaon.les.wordpress.com/2013/07/ijugador.png)
Enestecasoseconvendrenqueelinterfazqueinvisteaunapersonacomounjugadorde
tenisdemesasellamaIJugadoryqueelmtodoquecorrespondeaesacapacidadse
llamajugarTenisMesa.
Realizaciones
Enestafasesevaasealarquclasesdebenimplementarlascapacidadesfuncionales
denidasatravsdelosinterfaces,esdecirsusrealizaciones.
JugadorIJugador
ParaexpresarquelaclaseJugadorrealizaelinterfazIJugadorseutilizalasiguiente
representacin.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
14/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/jugadorijugador.png)
Advirtasequelaclaseyelinterfazestnvinculadosporunalneadetrazodiscontinuo,con
unapuntadeechacerradaenelladodelinterfazyqueenningnladoseexpresael
contenidodelmtodoimpuestoporelinterfaz.
Diagramacompleto
Ahorasetratadeponerlotodojuntoenundiagramadeclasescompleto.
(hps://joanpaon.les.wordpress.com/2013/07/encuentrostorneo.png)
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
15/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
(hps://joanpaon.les.wordpress.com/2013/07/encuentrostorneo.png)
EsteejercicioestdisponiblecomounarchivoZIP
(hps://dl.dropboxusercontent.com/u/11424209/Torneo.zip)quesecorrespondeconun
proyectodelaherramientaUMLllamadaModelio(hp://www.modeliosoft.com/).Para
abrirlohayqueimportaresteproyectodesdesumenprincipal.
EnlasiguienteentregaseabordarunejerciciounpocomscomplejodediseodeDiagrama
declasesUML.
Siestainformacintehasidotilhzmelosaberysinotambin.
Saludos.
Acerca de estos anuncios (https://wordpress.com/about-theseads/)
EstaentradafuepublicadaenJava,UMLyetiquetadaDiagramadeclases,Java,Programacin,
UML,UniedModelingLanguage.Guardaelenlacepermanente.
2pensamientosenUMLDiagramasdeClases
Ejercicio2
pepeores|11/01/2013en22:44
Paramihasidomuymuytil,querasabersitienesmsejerciciosdeestetipoperocon
basesdedatos(conalgunaclasequeseaconexinporejemployusebd),yaqueno
encuentropormasquemiroynotengomuyclarolasrelacionesquetendraquehacercon
estaclase.
Responder
VitmarAliaga|12/14/2015en16:46
buenisimomeestaayudandoconprendermaseltemadediagramadeclasesGracias
Responder
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
16/17
20/5/2016
UMLDiagramasdeClasesEjercicio2Conelmazodando
Responder
CreaunblogounsitiowebgratuitosconWordPress.com.|EltemaMistyLake.
https://joanpaon.wordpress.com/2013/07/24/umldiagramadeclasesejercicio2/
17/17