Herramientas CASEy XP.pptx

71
HERRAMIENT AS CASE Universidad Mariano Gálvez Facultad de Ingeniería en Sistemas Clase de Análisis de Sistemas

Transcript of Herramientas CASEy XP.pptx

Page 1: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 1/71

HERRAMIENTAS CASEUniversidad Mariano Gálvez

Facultad de Ingeniería enSistemasClase de Análisis de Sistemas

Page 2: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 2/71

¿Que es la HerramientaCASE?

  (Computer Aided Software Engineering Ingenier!a de Software Asistida por "rdenador#

  Son diversas aplicaciones informáticas destinadas a

aumentar la productividad en el desarrollo de software

reduciendo el coste de las mismas en términos de tiempo yde dinero. Estas herramientas nos pueden ayudar en todoslos aspectos del ciclo de vida de desarrollo del software entareas como el proceso de realizar un diseño del proyecto,calculo de costes, implementación de parte del códigoautomáticamente con el diseño dado, compilaciónautomática, documentación o detección de errores entreotras.

Page 3: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 3/71

Su Historia

  Aunue ésos son los inicios de las herramientasinformáticas ue ayudan a crear nuevos proyectosinformáticos, la primera herramienta !ASE fue E"celeratorue salió a la luz en el año #$%& y tra'a(a'a 'a(o una

 plataforma )!.

  *as herramientas !ASE alcanzaron su techo a principios delos años $+. En la época en la ue - ha'/a conseguidouna alianza con la empresa de software A01!ycle paratra'a(ar con sus mainframes, estos dos gigantes tra'a(a'ancon herramientas !ASE ue a'arca'an todo el ciclo de vidadel software. )ero poco a poco los mainframes han ido

siendo menos utilizados y actualmente el mercado de las-ig !ASE ha muerto completamente a'riendo el mercadode diversas herramientas más espec/2cas para cada fasedel ciclo de vida del software.

Page 4: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 4/71

Te$nolog!a CASE

  *a tecnolog/a !ASE supone la automatización del desarrollodel software, contri'uyendo a me(orar la calidad y la

 productividad en el desarrollo de sistemas de información yse plantean los siguientes o'(etivos3

• )ermitir la aplicación práctica de metodolog/as

estructuradas, las cuales al ser realizadas con unaherramienta se consigue agilizar el tra'a(o. • 4acilitar la realización de prototipos y el desarrollo con(unto

de aplicaciones. • Simpli2car el mantenimiento de los programas. • e(orar y estandarizar la documentación. •

 Aumentar la porta'ilidad de las aplicaciones. • 4acilitar la reutilización de componentes software. • )ermitir un desarrollo y un re2namiento visual de las

aplicaciones, mediante la utilización de grá2cos .

Page 5: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 5/71

   Automati%ar 

  5El desarrollo del software5*a documentación

5*a generación del código5El cheueo de errores5*a gestión del proyecto

  &ermitir

5*a reutilización del software5*a porta'ilidad del software5*a estandarización de la documentación

"'eti)os

Page 6: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 6/71

Componentes de una Herramienta

CASE  0e una forma esuemática podemos decirue una herramienta !ASE se componede los siguientes elementos3

• 6epositorio 7diccionario8 donde se

almacenan los elementos de2nidos ocreados por la herramienta, y cuyagestión se realiza mediante el apoyo deun Sistema de 9estión de -ase de 0atos7S9-08 o de un sistema de gestión de2cheros.

• eta modelo 7no siempre visi'le8

, ueconstituye el marco para la de2nición delas técnicas y metodolog/as soportadas

 por la herramienta.

Page 7: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 7/71

Componentes de una Herramienta CASE(Continua$i*n#

• !arga o descarga de datos, son facilidades ue permiten cargar el repertorio de la herramienta !ASEcon datos provenientes de otros sistemas, o 'iengenerar a partir de la propia herramienta esuemas de

'ase de datos, programas, etc. ue pueden, a su vez,alimentar otros sistemas. Este elemento proporcionaas/ un medio de comunicación con otras herramientas.

• !ompro'ación de errores, facilidades ue permitenllevar a ca'o un análisis de la e"actitud, integridad yconsistencia de los esuemas generados por la

herramienta.• nterfaz de usuario, ue constará de editores de te"to

 y herramientas de diseño grá2co ue permitan,mediante la utilización de un sistema de ventanas,iconos y men:s, con la ayuda del ratón, de2nir losdiagramas, matrices, etc. ue incluyen las distintas

metodolog/as. 

Page 8: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 8/71

Repositorio Metamodelo

GEERA!"R !EIF"RMES

#ERRAMIE$AS

!E CARGA %!ESCARGA !E!A$"S

FACI&I!A!ES !E C"M'R"(ACI )

I$ERFA* !E USUARI"+'iattini et al.

,-

Componentes de una Herramienta CASE(Continua$i*n#

Page 9: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 9/71

Clasi/caci0n de 1erramientasCASE

• Clasifcación por cobertura – Toolkits

• Con2unto de 1erramientas so3t4are +integradas 5ueautomatizan alguna 3ase del ciclo de vida +análisis6

dise7o6 gesti0n6 .... Comparten la (! de soporte 8 lainter3az de usuario.

 – Workbenchs• Con2unto de 1erramientas so3t4are integradas 5ue

automatizan el ciclo de vida en más de una 3ase6típicamente en todas las 3ases de desarrollo9 análisis :

dise7o : implementaci0n +inclu8endo la documentaci0nasociada. Es decir6 asisten en todo el proceso 8proporcionan un producto documentado 8 operativo.Además de compartir la (! de soporte 8 la inter3az deusuario6 están ;asadas en una misma metodología.

Page 10: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 10/71

Según grado de

integración:• Tool+its +<uego de 1erramientas• Con2unto de 1erramientas so3t4are 5ue automatizan

alguna 3ase del ciclo de vida +análisis6 dise7o6 gesti0n6 ....Comparten la (! de soporte 8 la inter3az de usuario.Integraci0n ;a2a.

• ,or+'en$-s +(anco de tra;a2o• Con2unto de 1erramientas so3t4are 5ue automatizan el

ciclo de vida en más de una 3ase6 típicamente en análisis: dise7o : implementaci0n +inclu8endo documentaci0nasociada. Asisten en todo el proceso 8 proporcionan unproducto documentado 8 operativo. Además de compartir

la (! de soporte 8 la inter3az de usuario6 están ;asadas enuna misma metodología. Integraci0n media.

• I&SE +ntegrated )ro(ect Support Environment • Integraci0n alta. Cu;ren todo el ciclo de vida6 la gesti0n de

pro8ectos 8 de la con/guraci0n.

Page 11: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 11/71

Seg=n las 3ases del ciclo de vida5ue a;ordan9

• CASE 3rontales +front5end o .pper CASE9 #erramientas deapo8o a las primeras 3ases9 – Análisis6 dise7o.

• CASE dorsales 7'ac;5end8 o /ower CASE9 #erramientas de

apo8o a las =ltimas 3ases9 – Implementaci0n +generaci0n de c0digo. – 'rue;as +ca2a ;lanca 8 ca2a negra. – Mantenimiento.

• ICASE +ntegrated5!ASE –

Contienen elementos de <pper  8 *ower  CASE9 contemplantodo el ciclo de desarrollo.

• 6everse Engineering +Ingeniería inversa• CARE +!omputer Aided 6euirements Engineering

Page 12: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 12/71

Clasi/caci0n por

3uncionalidad• =erramientas de gestión de proyectos a8udan a la plani/caci0n 8

seguimiento del pro8ecto – 'lani/caci0n9 agenda de desarrollo. – Estimaci0n9 costes6 duraci0n6 es3uerzo. – Control9 productividad6 calidad.

• =erramientas de análisis 8 diseño.• =erramientas de prototipado 8 simulación.• =erramientas de programación.

 – Editores dirigidos por la sinta>is +ca;eceras de su;rutinas6 pala;ras clave6identaci0n6 nomenclatura de varia;les6 ...

 – Generadores de estructuras de programas. – Entornos integrados de desarrollo para soporte de un lengua2e +editor6 compilador6

depurador.• =erramientas de integración 8 pruebas.

 – Analizadores estáticos. – !epuradores. – Generadores de datos. – Comparadores +e.g. de /c1eros.

• =erramientas de soporte.• =erramientas de mantenimiento.

 – Ingeniería inversa. – Reingeniería.

Page 13: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 13/71

Clasi/caci0n por posici0n

• .pper CASE9 #erramientas de apo8o a las primerasases – M?tricas del so3t4are. – Estimaci0n de costes. – 'lani/caci0n temporal.

• Medium CASE9 #erramientas de apo8o a las asescentrales. – Análisis. – !ise7o.

/ower CASE9 #erramientas de apo8o a las últimas ases. – Implementaci0n +generaci0n de c0digo. – 'rue;as +ca2a ;lanca 8 ca2a negra. – Mantenimiento. – !ocumentaci0n de la implementaci0n 8 documentaci0n para el

usuario /nal.

Page 14: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 14/71

#erramientas de análisis 8 dise7o

• 'ermiten crear 8veri/car !F!@s6diagramas ER6 de

clase6 deestructura...• #erramientas de

prototipado9 – !ise7adores de pantallas – Generadores de men=s – Generadores de in3ormes – &engua2es de

especi/caci0n e2ecuta;les

• E2emplos9 – !ESIGER de "RAC&E –

EAS% CASE de Evergreen – Rational R"SE – EBCE&ERA$"R de Intersolv – "(<EC$ MAER de MarD I. – "M$ool de G$E. – 'ARA!IGM 'lus de 'latinum

 – SI&ERRU de CSA Researc1 – S%S$EM Arc1itect de 'opDin

So34are S8stems

Page 15: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 15/71

Integra$i*n de las Herramientas CASE en el  futuro

  *as herramientas !ASE evolucionan hacia trestipos de integración3

• *a integración de datos permite disponer de

herramientas !ASE con diferentes estructuras dediccionarios locales para el intercam'io de datos.

• *a integración de presentación con2ere a todaslas herramientas !ASE el mismo aspecto.

*a integración de herramientas permite disponerde herramientas !ASE capaces de invocar a otras!ASE de forma automática. 

Page 16: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 16/71

Herramientas CASE m0s

utili%adas  !"in 

)*A>?< E6win es una herramienta para el diseño de 'asede datos, ue -rinda productividad en su diseño, generación,

 y mantenimiento de aplicaciones. 0esde un modelo lógicode los reuerimientos de información, hasta el modelo f/sico perfeccionado para las caracter/sticas espec/2cas de la 'asede datos diseñada, además E6win permite visualizar laestructura, los elementos importantes, y optimizar el diseñode la 'ase de datos. 9enera automáticamente las ta'las ymiles de l/neas de stored procedure y triggers para los

 principales tipos de 'ase de datos. 

E6win soporta principalmente 'ases de datos relacionalesS@* y 'ases de datos ue incluyen racle, icrosoft S@*Server, Sy'ase. El mismo modelo puede ser usado paragenerar m:ltiples 'ases de datos, o convertir una aplicación

de una plataforma de 'ase de datos a otra.

Page 17: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 17/71

Eas1CASE

  Esta herramienta permite automatizar las fasesde análisis y diseño dentro del desarrollo de unaaplicación, para poder crear las aplicacionese2cazmente B desde el procesamiento detransacciones a la aplicación de 'ases de datosde cliente1servidor, as/ como sistemas de tiemporeal.

 

Herramientas CASE m0s

utili%adas

Page 18: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 18/71

"ra$le 2esigner  

racle 0esigner es un con(unto de herramientas

 para guardar las de2niciones ue necesita elusuario y automatizar la construcción rápida deaplicaciones cliente1servidor grá2cas. ntegradocon racle 0eveloper, racle 0esigner, ue

 provee una solución para desarrollar sistemasempresariales de segunda generación.

 En el lado del Servidor, racle 0esigner soporta

la de2nición, generación y captura de diseño dediferentes tipos de 'ases de datos, por medio decone"ión desde racle.

Herramientas CASE m0s

utili%adas

Page 19: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 19/71

S1stem Ar$-ite$t  

Esta herramienta posee un repositorio :nico ueintegra todas las herramientas, y metodolog/as usadas. En

la ela'oración de los diagramas, System Architect conectadirectamente al diccionario de datos, los elementosasociados, comentarios, reglas de validaciones,normalización, etc.

 )osee control automático de diagramas y datos,

normalizaciones y 'alanceamiento entre diagramasC)adre e =i(oC, además de 'alanceamiento horizontal, uetra'a(a integrado con el diccionario de datos, asegurandola compati'ilidad entre el odelo de 0atos y el odelo4uncional.

 

Herramientas CASE mas

utili%adas

Page 20: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 20/71

Eemplos de Interfa$es de

Herramientas CASE

Page 21: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 21/71

Eemplos de Interfa$es de

Herramientas CASE

Page 22: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 22/71

Eemplos de Interfa$es de

Herramientas CASE

Page 23: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 23/71

Con$lusi*nSin lugar a dudas las herramientas C#S han $enido a re$olucionarla orma de automati%ar los aspectos cla$e en el desarrollo de lossistemas de inormación& debido a la gran plataorma de seguridad'ue orecen a los sistemas 'ue las usan y es 'ue (stas& brindan todauna gama de componentes 'ue incluyen todas o la mayor)a de losre'uisitos necesarios para el desarrollo de los sistemas& han sidocreadas con una gran e*actitud en torno a las necesidades de losdesarrolladores de sistemas para la automati%ación de procesosincluyendo el análisis& diseño e implantación+

,as -erramientas C#S como se pudo haber $isto tienen $ariasclasifcaciones+ .ebido a la gran demanda 'ue tienen las C#S sue*igencia en cuanto a su uso ha ido aumentando& por lo 'ue todaC#S debe entre otras cosas:

• /roporcionar topolog)as de aplicación 0e*ibles• /roporcionar aplicaciones portátiles

• 1rindar un Control de $ersión• Crear código compilado en el ser$idor• .ar un Soporte multiusuario• 2recer Seguridad .esde 'ue se crearon (stas herramientas 345678 hasta la actualidad&las C#S cuentan con una credibilidad y e*actitud 'ue tienen un

reconocimiento uni$ersal& siendo usadas por cual'uier desarrolladory 9 o programador 'ue busca un resultado óptimo y efciente& pero

Page 24: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 24/71

'rogramaci0n E>trema+B'Universidad Mariano Gálvez

Facultad de Ingeniería enSistemasClase de Análisis de Sistemas

Page 25: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 25/71

'roceso de desarrollo deso3t4are

• El típico proceso de desarrollo de so3t4areconsta de las siguientes 3ases9 – Conceptualizaci0n 8 captura de re5uisitos. –

Análisis 8 !escripci0n 3uncional – !ise7o – Codi/caci0n – 'rue;as –

!istri;uci0n

Page 26: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 26/71

El pro;lema de laproductividad

• &os documentos 8 diagramas se producen de las3ases desde la Conceptualizaci0n 1asta el !ise7o.

• Estos documentos inclu8en la descripci0n de los

re5uisitos6 diagramas UM& como casos de uso6diagramas de clases6 de actividad6 etc.• Se produce un mont0n de papeles considera;le.• Este mont0n de papeles pierde su valor en cuanto

se empieza a crear el c0digo6 so;re todo si es un

sistema 5ue va cam;iando con 3recuencia dado5ue no 1a8 tiempo para actualizar toda ladocumentaci0n 8 los cam;ios se 1acen s0lo en elc0digo.

• Se pierde la cone>i0n entre documentaci0n 8c0digo.

Page 27: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 27/71

'or 5u? 3racasan los pro8ectos deso3t4areH

• Retrasos 8 desviaciones en laplani/caci0n.

• Coste de mantenimiento elevados.• Alta tasa de de3ectos.• Re5uisitos mal comprendidos.• Cam;ios de negocio.•

Falsa ri5ueza de características.• Cam;ios de personal.

Page 28: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 28/71

Como soluciona B' estos

pro;lemasH• Retrasos 8 desviaciones9

versiones cortas.• Cancelan el pro8ecto9

entregas peri0dicas.•

Sistemas deteriorados 8de3ectos9 prue;as continuas.• Re5uisitos mal comprendidos9

cliente dentro del e5uipo.• Cam;ios de negocio9

versiones cortas.• Falsa ri5ueza de

características9 realizar tareasprioritarias.• Cam;ios de personal9 anima

el contacto 8 la integraci0n.

Page 29: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 29/71

Metodologías ágiles de desarrollo deso3t4are +i

• Conocidos anteriormente comoMetodologías &ivianas6 los procesoságiles de desarrollo de so3t4are

evitan los tortuosos 8 ;urocráticoscaminos de las metodologíastradicionales 8 se en3ocan en la

gente 8 los resultados.

Page 30: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 30/71

Metodologías ágiles de desarrollo deso3t4are +ii

• Minimizar la cantidad de es3uerzo 8tiempo gastados en construirmodelos 5ue s0lo servirán como

documentaci0n.• Asegurar 5ue el so3t4are entregado

3unciona para los usuarios.•

'ermitir 5ue el pro8ecto se adapte demanera e>i;le e inmediata a loscam;ios originados por tecnologías8o re5uisitos.

Page 31: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 31/71

Metodologías ágiles de desarrollo deso3t4are +iii

• 'rogramaci0n e>trema +B'• Metodologías Cr8stal• SCRUM• !esarrollo de so3t4are adaptativo• !esarrollo guiado por características +F!!• Metodología de desarrollo de sistemas

dinámicos +!S!M

Page 32: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 32/71

Ju? es B'H

• KUn proceso ligero6 de ;a2o riesgo6e>i;le6 predeci;le6 cientí/co 8divertido de desarrollar so3t4areL.

ent (ecD +E>treme 'rogrammingE>plained

• aci0 en ,,-• 'ro8ecto CN de !aimlerC1r8sler

Page 33: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 33/71

Características de B'

• Metodología creada a ;ase de prue;a 8error.

• Surge considerando O valores 5ue pueden

me2orar cual5uier pro8ecto de so3t4are9Simplicidad6 Comunicaci0n6Realimentaci0n6 Cora2e.

• E>presada en 3orma de P prácticas

+algunas e>istentes desde 1ace a7os6 5uese soportan las unas a las otras 8con3orman un con2unto completo.

Page 34: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 34/71

&os O valores +i

• Simplicidad9 B' propone el principio de1acer la cosa más simple 5ue pueda3uncionar6 en relaci0n al proceso 8 lacodi/caci0n. Es me2or 1acer algo simple

1o86 5ue 1acerlo más complicado 1o8 8pro;a;lemente nunca usarlo.• Comunicaci0n9 Algunos pro;lemas en los

pro8ectos tienen su origen en 5ue alguienno di2o algo a alguien más so;re algoimportante en alg=n momento. B' 1acecasi imposi;le la 3alta de comunicaci0n.

Page 35: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 35/71

&os O valores +ii

• Realimentaci0n9 retroalimentaci0n concreta 83recuente del cliente6 del e5uipo 8 de los usuarios/nales da una ma8or oportunidad de dirigir eles3uerzo.

Cora2e9 se re5uiere cora2e para con/ar en 5ue laretroalimentaci0n durante el camino es me2or 5uetratar de adivinar todo con anticipaci0n. Sere5uiere valor para comunicarse con los demáscuando eso podría e>poner la propia ignorancia.

Se re5uiere valor para mantener el sistemasimple6 de2ando para ma7ana las decisiones dema7ana. %6 sin un sistema simple6 comunicaci0nconstante 8 retroalimentaci0n6 es di3ícil servaleroso.

Page 36: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 36/71

B' en la práctica +i

• Retroalimentaci0n a escala /na9!esarrollo guiado por prue;as'lani/caci0n iterativaCliente como parte del e5uipo

'rogramaci0n en pares

• 'roceso continuo9 Integraci0n continua

Re3actorizaci0n&i;eraci0n pe5ue7a6 entregas 3recuentes

Page 37: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 37/71

B' en la práctica +ii

• Entendimiento compartido9 !ise7o simple Metá3oras del sistema

'ropiedad colectiva del c0digo Estándares de codi/caci0n

(ienestar del programador9Ritmo sosteni;le +Semanas de OQ 1oras

Page 38: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 38/71

Ciclo de la B'

Page 39: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 39/71

'roceso de desarrollo de so3t4arecon B' +i

Page 40: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 40/71

'roceso de desarrollo de

so3t4are con B' +ii

Page 41: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 41/71

'roceso de desarrollo de so3t4arecon B' +iii

Page 42: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 42/71

'roceso de desarrollo de so3t4arecon B' +iv

R l t +1i t i d

Page 43: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 43/71

Relatos +1istorias deUsuario +i

• Una #istoria de usuario es un relato acerca de 5u?pro;lema de;e resolver el sistema. Cada relato se escri;een una tar2eta 8 representa una parte de la 3uncionalidad5ue es co1erente para el cliente.

• Son escritos por el cliente o usuario6 con la a8uda de losdesarrolladores6 para permitir estimar los tiempos 8 asignarprioridades.

• &os clientes a8udan a asegurar 5ue la ma8oría de la3uncionalidad deseada para el sistema está cu;ierta con las1istorias.

• Constan de N 0 O líneas escritas por el cliente en unlengua2e no t?cnico sin 1acer muc1o 1incapi? en los

detalles no se de;e 1a;lar ni de posi;les algoritmos parasu implementaci0n6 ni de dise7os de ;ase de datosadecuados6 etc.

Page 44: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 44/71

Relatos +1istorias de Usuario+ii

Page 45: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 45/71

'lani/caci0n

• En el 2uego deplani/caci0n6 elcliente 8 losprogramadoresnegocian el alcancedel pro8ecto paracada iteraci0n.

• El 3actor crítico espermitir al cliente

tomar las decisionesde negocio 8 al e5uipode desarrollo tomarlas decisionest?cnicas.

Page 46: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 46/71

!ise7o simple

• El dise7o de;e ser lo más simpleposi;le9 no introducir estructura6 ni3uncionalidad antes de tiempo.

• Se puede a7adir comple2idad másadelante.

• Inconveniente9 encer la tendencia al

Kgran dise7o previoL

Page 47: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 47/71

'rue;as automatizadas +i

•  $odo c0digo 5ue puede 3allar de;e tener unaprue;a.

• #acer la prue;a a=n antes de la implementaci0n.• Inconveniente9 ";liga a imponer una 3orma de

tra;a2ar 8 puede ser necesaria3ormaci0ne>periencia.• !os tipos9 'rue;a de Unidad +o del 'rogramador

8 'rue;a de Aceptaci0n +o Funcional6 o delCliente.

• &a 'rue;a de Aceptaci0n es una prue;a 3ormalconducida para determinar si un sistemasatis3ace los criterios de aceptaci0n 8 permite alcliente determinar si acepta o no el sistema.

Page 48: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 48/71

'rue;as automatizadas +ii

• 'ara cada lengua2e de programaci0n 1a81erramientas de 'rue;a de Unidad 5ue permitenautomatizar la e2ecuci0n de las mismas6 como

 <Unit para <ava. +ver

1ttp9444.>programming.comso3t4are.1tm• Frecuentemente una 'rue;a de Unidad es me2or5ue un comentario para a8udar a entender por5u? una determinada 3unci0n es necesaria6 parademostrar c0mo es llamada una 3unci0n 8 cuales

son los resultados esperados6 8 para documentarde3ectos en versiones previas del programa 5ue5ueremos asegurarnos de 5ue no vuelvan.

Page 49: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 49/71

Integraci0n continua

•  $odos los cam;ios de;en ser integrados ala ;ase del c0digo al menos diariamente.

• &as prue;as de;en correr al QQ antes 8despu?s de la integraci0n.

• Cada nueva versi0n de;e tener la mínima3uncionalidad e>tra 5ue tiene sentido.

• Enca2a con Krelease earl86 release o3tenL• enta2as9 tener realimentaci0n de los

usuarios 8 o3recer pronto nueva3uncionalidad +:?>ito.

Page 50: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 50/71

'rogramaci0n en pares

• &a 'rogramaci0n en 'ares re5uiere 5uedos desarrolladores participen en unpro8ecto en una misma estaci0n detra;a2o.

• Cada miem;ro lleva a ca;o la acci0n 5ueel otro no está 1aciendo en esemomento9 Mientras uno redacta 'rue;asde Unidad el otro piensa acerca de laclase 5ue satis3ará a dic1a prue;a6 pore2emplo.

• &os estudios demuestran 5ue6 trasaprender #a;ilidades 'ersonales dosprogramadores son más 5ue do;lementeproductivos 5ue uno s0lo para una tareadeterminada.

Page 51: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 51/71

Re3actorizaci0n +i

• Es una t?cnicadisciplinada dereestructurar

cual5uier c0digoe>istente6 alterandosu estructura internasin modi/car sucomportamientoe>terno.

¿Si su software fuera unedificio, se parecería mas auno de la izquierda o de laderecha?

 

Page 52: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 52/71

Re3actorizaci0n +ii

• Si un programa 3unciona pero está mal dise7ado6 prontosurgirán pro;lemas a la 1ora de actualizarlo. &os pro;lemasmás comunes pueden ser catalogados como Kolor dec0digoL +8a 5ue la acumulaci0n de los mismos provocan5ue el c0digo apeste.

• E>isten listas de re3actorizaciones. E2emplo9

#dd /arameter

 A method needs more information from its caller.

#dd a parameter or an obect that can pass on this inormation+

 

Page 53: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 53/71

Caso de Estudio +i

•  $omado de Universidad 'olit?cnica de alencia+Espa7a1ttp9444.dsic.upv.esasignaturas3acultadlsie2emplo>p

• El pro8ecto consiste en el desarrollo de un

sistema de gesti0n para una empresa decon3ecciones. En dic1a gesti0n de la empresa seinclu8en gesti0n de pedidos6 gesti0n de clientes+tanto principal como los de temporada63acturaci0n6 gesti0n de productos6 gesti0n de

materias primas6 etc...

Page 54: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 54/71

Caso de Estudio +ii

• Gesti0n delpro8ecto9 – 'lani/caci0n del

pro8ecto – !iario de

Actividades• Implementaci0n9

 – (ase de !atos – Inter3aces de

Usuario – C0digo Fuente

'rue;as

!ocumento deMicroso3t ord

'resentaci0n deicroso3t 'o4er'oi

'resentaci0n deicroso3t 'o4er'oi

!ocumento deMicros o3t ord

!ocumento deMicros o3t ord

!ocumento deMicros o3t ord

!ocumento deMicros o3t ord

#$M& !ocumen!ocumento deMicros o3t ord

!ocumento deMicros o3t ord

!ocumento deMicros o3t ord

Page 55: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 55/71

Vltimas ideasW

• El m?todo de desarrollo empleado por la programaci0ne>trema 8 el 5ue suele llevarse a ca;o en la generaci0n deSo3t4are &i;re tienen grandes parecidos.

• #a8 algunas prácticas de la programaci0n e>trema 5ue nose usan de manera ma8oritaria +prue;as de unidad 8 deaceptaci0n6 metá3ora 8 re3actorizaci0n 8 5ue son mu8

interesantes 8 provec1osas.• B' 8 ;ases de datos9 cuidar 5ue tanto (!s relacionales

como orientadas al o;2eto sean e>i;les6 de manera demigrar 3ácilmente los datos en caso de cam;ios.

• En cuanto al lanzamiento de cada miniXversi0n6 usar unaestaci0n de integraci0n 5ue permite a los desarrolladores

o;servar 5ui?n 8 cuándo se está realizando6 manteniendoesta;ilidad en el sistema.

Page 56: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 56/71

Arquitectura de software

dirigida por modelos(Model-Driven Architecture)

Page 57: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 57/71

#ERRAMIE$AS CASE

CASE-UML

Rational Rose, Argo/UM, !ogether, UModel,

MagicDraw, Meta"dit#, $oseidon

CASE-Tiempo Real

Rapsod%, Rational Rose Real !ime, RapidRMA

CASE-MDA&ptimal', AndroMDA, Ameos, !ogether Architect,

odagen, Arct%ler, MD" tudio, &*+ecteering

Page 58: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 58/71

#erramientas CASEXM!A

Unas PQ 1erramientas CASE se ;asan en UM& 8s0lo un Q soporta parcialmente M!A.&imitaciones en procesos de9•

ingeniería directa +3or4ard engineering• ingeniería reversa +reverse engineering• trans3ormaciones +re/namientos6 re3actoring• análisis de consistencia• o proveen asistencia en reenginería de

sistemas legac8

Page 59: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 59/71

#erramientas CASE 8

Page 60: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 60/71

#erramientas CASE 8tecnologías M!A

Tecnologías MDA• UML (Unified Modeling Language)

 – UML Profiles

 – M! (Me"a #$ec" !acili"%)

• &M' ( &ML Me"ada"a 'n"ercange)

• CM (Common areouse Model)

#erramientas CASE 8

Page 61: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 61/71

#erramientas CASE 8tecnologías M!A

&M'

Es un es"*ndar de M+ para in"ercam#io de modelos

UML, Es usado para mapear M! a &ML (e&"ensi#le

Marup Language), Especifica c.mo los modelos M!

pueden ser represen"ados en la forma de &ML "ags/ los me"a-

modelos M! se "raducen a &ML Documen" T%pe Defini"ion

(DTD) % los modelos se "raducen a &ML documen"os 0ue se

corresponden con los DTDs,

Es"e &ML #asado en &M' permi"e el in"ercam#io en"re1arias erramien"as % reposi"orios2 UML3 sof"4are(5a1a3 C6)

"ecnologías de componen"s (E573 'DL) % #ases de da"os,

#erramientas CASE 8

Page 62: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 62/71

#erramientas CASE 8tecnologías M!A

CM

Define un forma"o com8n de in"ercam#io para

me"ada"os en da"a 4areouse, Pro1ee un lengua$e

com8n % definiciones de me"amodelos para da"os en

da"a4areouse, El me"amodelo "iene muco en

com8n con el me"amodelo UML % agrega me"aclases3

por e$emplo3 para modelar #ases de da"os

relacionales, En el con"e9"o de MDA3 laespecificaci.n CM es 8"il para la in"egraci.n

legac%,

A" *asadas en MDA

Page 63: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 63/71

A" *asadas en MDA

&ptimal'

&ptimal' (ompuware) es una herramienta que soporta

MDA a nivel de $M ($lattform ndependent Model) para dos plataformas '"" %."!.

Modelos

• Modelo de dominio – Modelo de clases

 – Modelo de servicio

• Modelo de la aplicaci0n

 – Modelo de presentaci0n – Modelo de negocio

 – D1M

• Modelo de c0digo

A" *asadas en MDA

Page 64: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 64/71

A" *asadas en MDA

&ptimal'

Transformaciones

1asadas en !$ ( !emplate $attern anguage)

$atrones de tecnolog2a

• !ransformaci0n de modelos de dominio a

  modelos de aplicaci0n

$atrones de implementaci0n

• !ransformaci0n de modelo de aplicaci0n ac0digo

A" *asadas en MDA

Page 65: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 65/71

A" *asadas en MDA

&ptimal'

Proceso de desarrollo

• +eneraci.n au"om*"ica a par"ir del P'M de

los modelos PSM de la capa de presen"aci.n

(4e#)3 capa de negocio (E57) % #ases de da"os

• Distinci0n entre *loques li*res % protegidos en

el c0digo para impedir la modificaci0n del

c0digo generado.• a interfa3 we* generada proporciona una

navegaci0n por defecto para cada o*+eto de

negocio.

A" *asadas en MDA

Page 66: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 66/71

A" *asadas en MDA

Arct%ler 

Arct%ler( nteractive &*+ects) soporta UM

4.5, & % dise6o centrado en modelos.

Modelos

Un $M es representado en t7rminos de modelos de

clase. o distingue entre $M % $M. "l modelo

de c0digo es representado como un su*sistema donde

diferentes paquetes de c0digo son representados comocomponentes.

A" *asadas en MDA

Page 67: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 67/71

A" *asadas en MDA

Arct%ler 

!ransformaciones

"s un sistema *asado en uso de cartuchos

(cartridges) para descripci0n de

transformacionesque permite generar aplicaciones de n capas

codificadas en +ava/'"" % 8/."! a partir de

diagramas UM % la especificaci0n de los procesos de negocio

A" *asadas en MDA

Page 68: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 68/71

A" *asadas en MDA

Arct%ler 

!ransformaciones

ntegra herramientas de modelado (UM) %

desarrollo (ingenier2a directa, inversa,

construcci0n % despliegue de modelos *asados

en M&9) con la arquitectura ARA! que

 permite la creaci0n, edici0n % mantenimiento de

cartuchos MDA que definen transformaciones 

A" *asadas en MDA

Page 69: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 69/71

A" *asadas en MDA

Arct%ler 

!ransformaciones

Arquitectura ARA!

Un cartucho contiene un con+unto de reglas de

transformaci0n. ":isten numerosos cartuchos

 para numerosas plataformas'"", ."!, we*,..

Utili3an $rofiles UM para incluir en los

modelos aspectos espec2ficos de una plataforma.Una propiedad es la herencia que permite definir 

un cartucho a partir de otro e:istente.

CASE ;asadas en UM&M!A

Page 70: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 70/71

CASE ;asadas en UM&M!A&imitaciones

• "n general, representan e:tensiones de A"UM, muchas est;n *asadas en UM 4.< queno est;n alineadas on M&9.

•imitada o ine:istente integraci0n de nivelesde M % $M.

• os procesos de ingenier2a directa( forwardengineering) no integran especificaciones&. =eneran esqueletos de c0digo.

• "scaso o nulo soporte para la validaci0n demodelos % transformaciones.

CASE ;asadas en UM&M!A

Page 71: Herramientas CASEy XP.pptx

8/17/2019 Herramientas CASEy XP.pptx

http://slidepdf.com/reader/full/herramientas-casey-xppptx 71/71

CASE ;asadas en UM&M!A&imitaciones

•  o e:isten rigorosos fundamentos para definirtransformaciones entre modelos.

• "scasa tra3a*ilidad

• "scaso soporte de ingenier2a inversa % engeneral de round-trip ingenier2a.

• oporte nulo para la reingenier2a de sistemas

legac%.•  o integran t7cnicas de refactoring en distintos

niveles.