República Bolivariana de Venezuela Venezuela Ministerio del Poder Popular para la Educación Superior Universidad Centro-Occidental “isandro !lvarado" #ecanato de Ciencias Cienc ias $ %ecnolo&'a
Barquisimeto, 15 de Diciemre del !"1#. $ndice ,ntroducción+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++3
78u9 es Merinde:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++5 Catorce 2e;ores pr
2
Introducci%n a tecnolo&'a desde sus inicios se *unda2entó co2o una >erra2ienta capaz de a&ilizar actividades en la vida cotidiana+ Pese a ?ue en sus co2ienzos 9sta avanzó con pasos t'2idos) durante un per'odo co2prendido por las d9cadas de .410 a .4=0 >ubo un i2pulso particular2ente e@ponencial en los avances tecnoló&icos a nivel de >ardAare+ #urante estas dos d9cadas) los siste2as su*rieron considerables cat'bridas resultando 9sta el punto inter2edio entre las dos anteriores) to2ando las 2e;ores pr
3
&'u( es Merinde) Metodolo&'a de la red nacional de inte&ración $ #esarrollo de So*tAare ibre Merinde es un pro$ecto de So*tAare ibre S ?ue propone un esticieran uso de una 2etodolo&'a $ docu2entación estandarizada) buscando alcanzar una trazabilidad entre docu2entos $ si&uiendo un 2is2o est
4
*atorce me+ores r-cticas de la Metodología Esta 2etodolo&'a se inspira en las catorce 2e;ores prando al 2<@i2o todos los recursos disponibles+ Estas sonF -
!daptar el proceso de desarrolloF el ob;etivo es 2antener la a&ilidad durante el proceso de desarrollo) establecer planes con representación realista) $ esti2aciones con*or2e a las condiciones del pro$ecto $ durante todo el ciclo
-
de vida de 9ste+ !lto nivel de abstracciónF esta 2etodolo&'a *avorece los niveles altos de abstracción debido a ?ue a$uda a reducir la co2ple;idad del pro$ecto entre los
-
involucrados+ Centrarse en la ar?uitecturaF ade2acia el estableci2iento te2prano de una ar?uitectura capaz de soportar los
-
ca2bios de *uturas revisiones en la construcción $ 2anteni2iento+ Códi&o est
-
reutilización de co2ponentes) per2itiendo el claro e ntendi2iento de 9ste+ Colaboración entre e?uipoF el 2arco de traba;o da a la co2unicación $ la colaboración entre los 2ie2bros del e?uipo de traba;o un papel *unda2ental)
pues propicia un a2biente de traba;o alta2ente productivo+ - #e2ostrar resultados iterativa2ente e incre2ental2enteF Merinde se encuentra co2puesto por *ases ?ue estito secundario) con el cual se busca 2iti&ar los ries&os desde los 2asta los 2
casos de uso cr'ticos para el pro$ecto+ #iri&ido por Casos de UsoF se utilizan debido a ?ue son la >erra2ienta est
5
ade2
2o2ento+ En*o?ue continuo en la calidadF contiene 2ecanis2os para ?ue la calidad de todos los arte*actos se evalúe en varios puntos durante todo el proceso de
-
desarrollo) especial2ente al *inal de cada iteración+ En*o?ue en los ries&osF los ries&os son conte2plados desde el inicio del pro$ecto >asta el *inal del 2is2o a trav9s de di*erentes arte*actos) per2itiendo pro&ra2ar las actividades ?ue deben e;ecutarse durante las
-
iteraciones+ Go2ento del aprendiza;e de e@perienciasF a trav9s de retroali2entaciones se busca el *o2ento del aprendiza;e de las e@periencias obtenidas en cada uno de
-
los pro$ectos realizados+ ,nteracción continua con clienteF el cliente cu2ple un rol *unda2ental dentro de la 2etodolo&'a) lle&ando a ser considerado co2o uno de los principales involucrados para llevar a cabo 2uc>as de las actividades *unda2entales del
proceso de desarrollo de so*tAare a lo lar&o de todo el ciclo de vida propuesto+ - Modelar el so*tAareF el 2odelo es el tipo de arte*acto 2
con;unto de 2odelos+ Per2anecer <&il $ esperar los ca2biosF el ca2bio es un *actor de ries&o cr'tico en los pro$ectos de so*tAare) siendo to2ado por la 2etodolo&'a desde un en*o?ue <&il) buscando crear las condiciones necesarias a trav9s de sus
6
actividades para Hestiónarlos lo 2as te2prana2ente posible con su proceso iterativo e incre2ental+ -
structura del Proceso Merinde MeRinde absorbe parte de la estructura de UP) lle&ando a poseer dos di2ensiones) las cuales sonF
/
+e 0orizontal: representa el tie2po $ es considerado el e;e de los aspectos din<2icos del proceso+ ,ndica las caracter'sticas del ciclo de vida del proceso
I
e@presado en t9r2inos de *ases) iteraciones e >itos+ +e ertical: representa los aspectos est
structura Din-mica de la Metodología Gase de inicio: en esta se plantea la visión ?ue tiene el e?uipo o desarrollador en cuanto a lo ?ue ser< el siste2a) *i;aber to2ado en cuenta los costos en recursos) el tie2po total del pro$ecto) los ries&os e incertidu2bres ?ue pueda &enerar) ade2
7
se elabora una ar?uitectura en diversas interacciones >asta lo&rar el producto deseado+ Esta *ase debe se&uir el patrón de todos los casos de uso planteados en la *ase de inicio+ !de2acerse realizable el producto en cuestión+ #ic>a *ase conclu$e cuando el e?uipo del pro$ecto tiene en claro los ries&os principales ?ue puedan a*ectar al producto) de 2anera de saber cuo producto deben de estar incluidas todas las propiedades) ele2entos) re?uisitos $Jo e@i&encias) las cuales previa2ente deben >aber sido evaluadas $ probadas total2ente) obteniendo de esta 2anera una versión del producto ?ue sea aprobada o ad2isible para ?uien va$a a >acer uso de esta+ En conclusión) el ob;etivo de esta *ase es el desarrollo total del siste2a $a preparado para la *ase de transición) debe >aber sido probada toda su *uncionalidad $ aplicación de 2anera de evitar ?ue sea pospuesta la *ase de transición por incu2pli2iento de los criterios de esta *ase+ Gase de %ransiciónF el producto en esta *ase debe de estar en 2anos de los usuarios *inales en su *or2a *uncional) lue&o de ?ue >a$a sido probado $ aceptado en su totalidad por dic>os usuarios) ade2
8
structura st-tica de la Metodología El e;e est
el desarrollo de so*tAare consiste en la de*inición de las tareas ?ue sero roles b
!nalista de CalidadF es el encar&ado de la revisión de todos los docu2entos ?ue re*le;an el avance del pro$ecto dia&ra2a Hantt) reporte de estado) actas de reunión) reporte de pendientes) $ otras a*ines al control $ se&ui2iento del pro$ecto) $ de veri*icar ?ue los ob;etivos del 2arco de desarrollo se cu2plan+ Este rol se pueden desco2poner en dos sub rolesF co2it9 de dirección $
-
co2it9 de se&ui2iento+ !nalista de ProductoF diri&e el proceso de captura de re?ueri2ientos) de*ine los actores $ casos de uso $ estructura el 2odelo de casos de uso) estableciendo la *or2a en ?ue *uncionar< el siste2a $ cu
9
restricciones del 2is2o+ Este rol se desco2pone en el sub rol de especi*icador -
de re?uisitos+ !r?uitecto de So*tAareF Se encar&a de la de*inición de la ar?uitectura ?ue &uiara el desarrollo) $ de la continua re*inación de la 2is2a en cada iteración+ Este rol se puede desco2poner en los si&uientes sub rolesF dise(ador) dise(ador de base de datos) dise(ador de inter*az de usuario $ dise(ador de
pa?uetes+ - #esarrolladorF tiene a su car&o la codi*icación de los co2ponentes en códi&o *uente en al&ún len&ua;e de alto nivel a desarrollar en la iteración debe elaborar $ e;ecutar las pruebas unitarias realizadas sobre el códi&o desarrollado $ ade2
desco2pone en los si&uientes sub rolesF i2ple2entador e inte&rador+ ,nvolucradoF es cual?uier persona ?ue se vea a*ectada por el resultado del pro$ecto+ Entre los sub roles ?ue posee se encuentranF cliente) cual?uier rol)
-
dise(ador &r<*ico) docu2entador t9cnico) usuario) entre otros+ 'der del Pro$ectoF es el encar&ado de establecer las condiciones de traba;o+ Por tal 2otivo tiene la *unción de diri&ir $ asi&nar recursos) coordinar las interacciones con los clientes $ usuarios *inales) plani*icar las iteraciones $ el traba;o+ Sus sub roles sonF in&eniero de procesos) ;e*e de con*i&uración) ;e*e
-
de control de ca2bios $ ;e*e de i2plantación+ MentorF est< 'nti2a2ente li&ada con el proceso de desarrollo de so*tAare) ?ue conoce todas las practicas involucradas $ entiende el por?u9 de la 2is2a+ Sus dos sub roles sonF revisor $ revisor t9cnico+
-
ProbadorF realiza las pruebas identi*icadas $ de*inidas previa2ente) utilizando las instrucciones) 29todos $ >erra2ientas necesarias para este rol+ Su desco2posición en sub roles esF analista de pruebas) dise(ador de pruebas $ especialista en Pruebas+
10
ArtefactosF son todos a?uellos productos resultantes del proceso de desarrollo+
MeRinde propone setenta $ seis arte*actos ?ue pueden ser creados durante el proceso de desarrollo de so*tAare+ Estos arte*actos van desde el propio códi&o *uente >asta la docu2entación aportada por el cliente $ la entre&ada por el e?uipo de desarrollo al cul2inar cada >ito dentro del pro$ecto+ Ka$ arte*actos ?ue se convierten en docu2entos) as' 2is2o cuando se desarrolla un siste2a para un tercero >a$ arte*actos ?ue pueden ser entre&ados al cliente $ otros ?ue no) esto depende *unda2ental2ente por el acuerdo ?ue se realice entre las partes+ ! continuación se presenta una tabla con los arte*actos propuestos con indicación de necesidadF
11
12
13
Artefactos CompuestosF os arte*actos 2encionados anterior2ente ?ue ser
&enerados $ utilizados por el pro$ecto constitu$en los entre&ables+ !l&unos arte*actos estos arte*actos constituidos por terceros se encuentran en la si&uiente tablaF
14
Discilinas de la Metodología a 2etodolo&'a propuesta MeRinde se or&aniza en disciplinas+ as disciplinas poseen *lu;os de traba;os en donde cada uno conlleva a actividades ?ue a su vez est
Modelado del De&ocioF con 9sta se pretende lle&ar a un 2e;or entendi2iento de la or&anización donde se va a i2plantar el siste2a de so*tAare+ os principales 2otivos para e;ecutar esta disciplina son los si&uientesF ase&urarse de ?ue el producto ser< al&o útil $ no un obst
os ob;etivos espec'*icos de la disciplina 2odelado de ne&ocio sonF •
!se&urar ?ue clientes) usuarios *inales $ desarrolladores ten&an un
•
entendi2iento co2ún de la or&anización ob;etivo+ #erivar los re?ueri2ientos del siste2a necesarios para apo$ar a la
•
or&anización ob;etivo en su 2e;ora+ Entender el proble2a actual en la or&anización ob;etivo e identi*icar
•
-
potenciales 2e;oras+ Entender la estructura $ la din<2ica de la or&anización para la cual el
siste2a va a ser desarrollado or&anización ob;etivo+ Re?ueri2ientosF El ob;etivo principal de esta disciplina es establecer las *unciones ?ue se ?uiere ?ue satis*a&a el siste2a a construir+ En esta l'nea los re?ueri2ientos son el contrato ?ue se debe cu2plir) de 2odo ?ue los usuarios *inales tienen ?ue co2prender $ aceptar los re?ueri2ientos ?ue se especi*i?uen+ Para obtener los re?ueri2ientos se deben aplicar practicas de
15
licitación a los involucrados en el pro$ecto) anotar $ validar todas sus solicitudes+ os ob;etivos espec'*icos de la disciplina re?ueri2ientos sonF #e*inir el <2bito del siste2a+ • #e*inir una inter*az de usuarios para el siste2a) en*ocada a las • •
necesidades $ 2etas del usuario+ Establecer $ 2antener un acuerdo entre clientes $ otros involucrados
•
sobre lo ?ue el siste2a deber'a >acer+ Proveer a los desarrolladores un 2e;or entendi2iento de los
•
re?ueri2ientos del siste2a+ Proveer una base para esti2ar recursos $ tie2po de desarrollo del
•
siste2a+ Proveer una base para la planeación de los contenidos t9cnicos de las iteraciones+
-
!nace el siste2a de so*tAare a desarrollar) por tal 2otivo este se interesa en los re?ueri2ientos *uncionales+ Por otro lado) el dise(o es un re*ina2iento ?ue to2a en cuenta los re?ueri2ientos no *uncionales) por lo cual se centra en co2o el siste2a cu2ple sus ob;etivos+ os ob;etivos espec'*icos de la disciplina an
-
i2ple2entación+ #esarrollar una ar?uitectura para el siste2a+ • %rans*or2ar los re?ueri2ientos al dise(o del *uturo siste2a+ • ,2ple2entaciónF El ob;etivo principal de esta disciplina es convertir los ele2entos del dise(o en ele2entos de i2ple2entación) dic>os ele2entos son códi&os *uentes) e;ecutables) binarios) entre otros+ Otra parte de esta disciplina son las pruebas de unidad) las cuales se li2itan a los co2ponentes de so*tAare
16
i2ple2entados+ #e esta disciplina se obtiene un siste2a e;ecutable estable) constituido de los resultados producidos por los pro&ra2adores individuales+ os ob;etivos espec'*icos de la disciplina i2ple2entación sonF Cada desarrollador decide en ?ue?ue orden i2ple2enta los ele2entos • • • •
•
-
del subsiste2a+ ,nte&rar el siste2a si&uiendo el plan+ Doti*icar los errores de dise(o) si se encuentran+ Plani*icar ?ue subsiste2as deben ser i2ple2entados $ en ?ue?ue orden deben ser inte&rados) *or2ando el Plan de ,nte&ración+ Probar los subsiste2as individual2ente+
PruebasF El principal ob;etivo de esta disciplina es de evaluar la calidad del producto ?ue se est< desarrollando a trav9s de las di*erentes *ases por las cuales este pasa) 2ediante la aplicación de pruebas concretas para validar ?ue las suposiciones >ec>as en el dise(o $ los re?ueri2ientos se est9n cu2pliendo satis*actoria2ente) esto ?uiere decir ?ue se veri*ica ?ue el producto *uncione co2o se dise(o $ ?ue los re?ueri2ientos son satis*ec>os cabal2ente+ Esta disciplina brinda soporte para encontrar $ docu2entar $ solucionar de*ectos en la calidad del siste2a a las otras disciplinas+ Esta disciplina debe estar presente en todo el ciclo de vida del desarrollo del siste2a para ir re*inec>as en el • dise(o
-
$
especi*icaciones
de
re?ueri2ientos
por
2edio
de
de2ostraciones concretas+ Validar las *unciones del producto de so*tAare se&ún lo dise(ado+ • Validar ?ue los re?ueri2ientos *ueron i2ple2entados apropiada2ente+ • ,2plantaciónF Esta disciplina tiene co2o ob;etivo distribuir e instalar con 9@ito el siste2a elaborado por el e?uipo de desarrollo $ ase&urar la disponibilidad del producto para los usuarios *inales+ Sus ob;etivos espec'*icos sonF
17
• • • • •
Gor2ar a los usuarios $ al cuerpo encar&ado de distribuir el siste2a+ ,nstalar el so*tAare+ Mi&rar el so*tAare e@istente+ Probar el producto en su entorno de e;ecución *inal+ Proveer asistencia $ a$uda a los usuarios+
El se&undo &rupo lo inte&ran las disciplinas lla2adas de soporte o HestiónF -
Hestión de Con*i&uración $ Ca2biosF El ob;etivo de esta disciplina es 2antener la inte&ridad de todos los ob;etos ?ue se crean en el proceso $ controlar los ca2bios+ Se debe identi*icar ele2entos de con*i&uración) restrin&ir $ auditar los ca2bios a esos ele2entos) $ de*inir $ diri&ir la distribución de los 2is2os+ Sus ob;etivos espec'*icos sonF !se&urar ?ue los productos desarrollados sean co2pletados $ • • •
• • •
• •
-
corre&idos debida2ente+ #ar soporte a los 29todos de desarrollo+ Mantener la consistencia de los productos durante la evolución de los 2is2os+ Mantener la inte&ridad del producto+ Proveer datos para 2edir el pro&reso+ Proveer los 2edios e*icientes para adaptarse apropiada2ente a los ca2bios $ a los replantea2ientos de planes de traba;o+ Proveer un a2biente estable durante el desarrollo del producto+ Proveer una brec>a para auditorias ?ue per2ita identi*icar el por ?u9)
cua sido 2odi*icado un pro$ecto+ Restrin&ir los ca2bios a los productos se&ún las pol'ticas del pro$ecto+ • Hestión del Pro$ectoF El ob;etivo de la &estión del pro$ecto es conse&uir alcanzar los ob;etivos propuestos) ad2inistrar el ries&o $ superar las restricciones para desarrollar un producto ?ue sea acorde a los re?ueri2ientos de los clientes $ usuarios+ os ob;etivos espec'*icos de la disciplina Hestión del Pro$ecto sonF Proveer &u'as practicas para realizar planeación) contratar personal) • e;ecutar $ 2onitorear el pro$ecto+
18
• •
-
Proveer un 2arco de traba;o para &estionar ries&os+ Proveer un 2arco de traba;o para la &estión de pro$ectos de so*tAare
intensivos+ Hestión del !2bienteF a *inalidad de esta disciplina es dar soporte al pro$ecto con los procesos) 29todos $ >erra2ientas correctas+ O*rece una descripción de las >erra2ientas ?ue se van a necesitar para el apropiado desarrollo del so*tAare) ?ue contendr< las >erra2ientas de desarrollo $ del proceso) plantillas) docu2entos) linea2ientos a se&uir) $ cual?uier otro ele2ento necesario para llevar adelante con 9@ito el desarrollo del pro$ecto+ En concreto los ob;etivos espec'*icos de esta disciplina sonF Con*i&urar el proceso+ • Establecer $ con*i&urar las >erra2ientas para ?ue se a;usten a la • • • •
or&anización+ Me;orar el proceso de desarrollo+ Proveer los servicios t9cnicos necesarios+ Seleccionar $ ad?uirir >erra2ientas+
19
*onclusi%n El proceso de desarrollo MeRinde co2prende una 2etodolo&'a alta2ente sustentada) en la cual se lo&ran re*le;ar los procesos 2edulares de un proceso de desarrollo) 2anteniendo una cualidad de esperarse por su condición de 2etodolo&'a tradicional) la cual es la alta 2antenibilidad del so*tAare &racias a la rica docu2entación) ade2
20