Vous êtes sur la page 1sur 5

sumario

N 171, septiembr N 171, septiembr N 171, septiembr N 171, septiembr N 171, septiembre-octubr e-octubr e-octubr e-octubr e-octubre 2004, ao XXX e 2004, ao XXX e 2004, ao XXX e 2004, ao XXX e 2004, ao XXX
en resumen
TPS o el software como proceso > 02
Rafael Fernndez Calvo
monografa
Tecnologa de Proceso Software
(En colaboracin con Upgrade Upgrade Upgrade Upgrade Upgrade)
Editores invitados: Francisco Ruiz Gonzlez, Gerardo Canfora
Presentacin. La Tecnologa de Proceso Software y la mejora
de la gestin de los proyectos y de la calidad de los productos > 03
Francisco Ruiz Gonzlez, Gerardo Canfora
Procesos Software: caractersticas, tecnologa y entornos > 05
Francisco Ruiz Gonzlez, Gerardo Canfora
Cuestiones clave y nuevos retos en la Tecnologa de Proceso Software > 09
Jean-Claude Derniame, Flavio Oquendo
Una taxonoma de los Servicios de Entornos de Ingeniera de Software:
la futura norma ISO/IEC 15940 > 14
Dan Hyung Lee, Juan Garbajosa Sopea
Software libre y de cdigo abierto:
un nuevo modelo para el desarrollo de software? > 18
Alfonso Fuggetta
Aplicacin de los principios bsicos de la Ingeniera de Modelos
al campo de la Ingeniera de Procesos > 22
Jean Bzivin, Erwan Breton
Lenguajes de Modelizacin de Procesos de Software basados en UML > 27
Pere Botella i Lpez, Xavier Franch Gutirrez, Josep M. Rib Balust
Soporte a los Procesos Software en un Entorno de Ingeniera del Software
orientado a Procesos > 32
Hans-Ulrich Kobialka
Gestin de proyectos distribuidos con GENESIS > 38
Lerina Aversano, Andrea De Lucia, Matteo Gaeta,
Pierluigi Ritrovato, Maria Luisa Villani
Medicin de los Procesos Software > 43
Flix Garca Rubio, Francisco Ruiz Gonzlez, Mario Piattini Velthuis
contribucin invitada
Ms all de Internet: la Red Universal Digital > 48
Fernando Sez Vacas
secciones tcnicas
Administracin Pblica electrnica
Agncia Catalana de Certificaci: la certificacin digital
en la Administracin Pblica catalana > 52
Josep Llopis Mndez
Ingeniera del Software
Diseo basado en componentes: alternativas en la etapa de particin > 55
Arantza Irastorza Goi, Arturo Jaime Elizondo, Oscar Daz Garca
Desarrollo de Sistemas de Inspeccin Visual Automatizada
a partir de la descripcin de un Patrn Arquitectural Genrico > 63
Cristina Vicente Chicote, Carlos Fernndez Andrs, Pedro Snchez Palma
Profesin informtica
TIC y Sociedad de la Informacin: propuestas para una nueva etapa > 66
Josep Molas i Bertrn
Referencias autorizadas > 68
sociedad de la informacin
Personal y transferible
Proteccin de datos personales y Seguridad del Estado > 73
Ofelia Tejerina Rodrguez
programar es crear
Diseo de suelos (CUPCAM 2003, problema G, solucin) > 74
Juan Cspedes Prieto, Antonio Fernndez Anta, ngel Herranz Nieva
asuntos interiores
Coordinacin editorial / Programacin de Novtica > 76
Normas de publicacin para autores / Socios Institucionales > 77
Monografa del prximo nmero: "Criptografa"
Novtica Novtica Novtica Novtica Novtica, revista fundada en 1975 y decana de la
prensa informtica espaola, es el rgano oficial de
expresin y formacin continua de ATI ATI ATI ATI ATI (Asociacin de
Tcnicos de Informtica). Novtica Novtica Novtica Novtica Novtica edita tambin
Upgrade Upgrade Upgrade Upgrade Upgrade, revista digital de CEPIS CEPIS CEPIS CEPIS CEPIS (Council of European
Professional Informatics Societies), en lengua inglesa,
y es miembro fundador de UPENET UPENET UPENET UPENET UPENET (UPGRADE
European NETwork)
<http://www.ati.es/novatica/>
<http://www.upgrade-cepis.org/>
ATI ATI ATI ATI ATI es miembro fundador de CEPIS CEPIS CEPIS CEPIS CEPIS (Council of European
Professional Informatics Societies) y es representante de Espaa
en IFIP IFIP IFIP IFIP IFIP (International Federation for Information Processing);
tiene un acuerdo de colaboracin con ACM ACM ACM ACM ACM (Association for
Computing Machinery), as como acuerdos de vinculacin o
colaboracin con AdaSpain AdaSpain AdaSpain AdaSpain AdaSpain, AI2 AI2 AI2 AI2 AI2 y ASTIC. ASTIC. ASTIC. ASTIC. ASTIC.
CONSEJO EDITORIAL CONSEJO EDITORIAL CONSEJO EDITORIAL CONSEJO EDITORIAL CONSEJO EDITORIAL
Antoni Carbonell Nogueras, Francisco Lpez Crespo, Julin Marcelo Cocho, Celestino
Martn Alonso, Josep Molas i Bertrn, Roberto Moya Quiles, Csar Prez Chirinos,
Mario Piattini Velthuis, Fernando Piera Gmez (Presidente del Consejo), Miquel
Sarries Gri, Asuncin Yturbe Herranz
Coordinacin Editorial Coordinacin Editorial Coordinacin Editorial Coordinacin Editorial Coordinacin Editorial
Rafael Fernndez Calvo <rfcalvo@ati.es>
Composicin y autoedicin Composicin y autoedicin Composicin y autoedicin Composicin y autoedicin Composicin y autoedicin
Jorge Llcer
Traducciones Traducciones Traducciones Traducciones Traducciones
Grupo de Lengua e Informtica de ATI <http://www.ati.es/gt/lengua-informatica/>
Administracin Administracin Administracin Administracin Administracin
Toms Brunete, Mara Jos Fernndez, Enric Camarero, Felicidad Lpez
SECCIONES TECNICAS: COORDINADORES SECCIONES TECNICAS: COORDINADORES SECCIONES TECNICAS: COORDINADORES SECCIONES TECNICAS: COORDINADORES SECCIONES TECNICAS: COORDINADORES
Administracin Pblica electrnica Administracin Pblica electrnica Administracin Pblica electrnica Administracin Pblica electrnica Administracin Pblica electrnica
Gumersindo Garca Arribas, Francisco Lpez Crespo (MAP)
<gumersindo.garcia@map.es>, <flc@ati.es>
Arquitecturas Arquitecturas Arquitecturas Arquitecturas Arquitecturas
Jordi Tubella (DAC-UPC) <jordit@ac.upc.es>
Vctor Vials Yfera (Univ. de Zaragoza) <victor@unizar.es>
Auditora SITIC Auditora SITIC Auditora SITIC Auditora SITIC Auditora SITIC
Marina Tourio, Manuel Palao (ASIA)
<marinatourino@marinatourino.com>, <manuel@palao.com>
Bases de datos Bases de datos Bases de datos Bases de datos Bases de datos
Coral Calero Muoz, Mario G. Piattini Velthuis
(Escuela Superior de Informtica, UCLM)
<Coral.Calero@uclm.es>, <mpiattin@inf-cr.uclm.es>
Derecho y tecnologas Derecho y tecnologas Derecho y tecnologas Derecho y tecnologas Derecho y tecnologas
Isabel Hernando Collazos (Fac. Derecho de Donostia, UPV)<ihernando@legaltek.net>
Isabel Davara Fernndez de Marcos (Davara & Davara) <idavara@davara.com>
Enseanza Universitara de la Informtica Enseanza Universitara de la Informtica Enseanza Universitara de la Informtica Enseanza Universitara de la Informtica Enseanza Universitara de la Informtica
Joaqun Ezpeleta Mateo (CPS-UZAR) <ezpeleta@posta.unizar.es>
Cristbal Pareja Flores (DSIP-UCM) <cpareja@sip.ucm.es>
Gestin del Conocimiento Gestin del Conocimiento Gestin del Conocimiento Gestin del Conocimiento Gestin del Conocimiento
Joan Baiget Sol (Cap Gemini Ernst & Young) <joan.baiget@ati.es>
Informtica y Filosofa Informtica y Filosofa Informtica y Filosofa Informtica y Filosofa Informtica y Filosofa
Josep Corco (UIC) <jcorco@unica.edu>
Esperanza Marcos (ESCET-URJC) <cuca@escet.urjc.es>
Informtica Grfica Informtica Grfica Informtica Grfica Informtica Grfica Informtica Grfica
Miguel Chover Sells (Universitat Jaume I de Castelln) <chover@lsi.uji.es>
Roberto Viv (Eurographics, seccin espaola) <rvivo@dsic.upv.es>
Ingeniera del Software Ingeniera del Software Ingeniera del Software Ingeniera del Software Ingeniera del Software
Javier Dolado Cosn (DLSI-UPV) <dolado@si.ehu.es>
Luis Fernndez (PRIS-EI-UEM) <lufern@dpris.esi.uem.es>
Inteligencia Artificial Inteligencia Artificial Inteligencia Artificial Inteligencia Artificial Inteligencia Artificial
Federico Barber,Vicente Botti (DSIC-UPV)
<{vbotti, fbarber}@dsic.upv.es>
Interaccin Persona-Computador Interaccin Persona-Computador Interaccin Persona-Computador Interaccin Persona-Computador Interaccin Persona-Computador
Julio Abascal Gonzlez (FI-UPV) <julio@si.ehu.es>
Jess Lors Vidal (Univ. de Lleida) <jesus@eup.udl.es>
Internet Internet Internet Internet Internet
Alonso lvarez Garca (TID) <alonso@ati.es>
Lloren Pags Casas (Indra) <pages@ati.es>
Lengua e Informtica Lengua e Informtica Lengua e Informtica Lengua e Informtica Lengua e Informtica
M. del Carmen Ugarte (IBM) <cugarte@ati.es>
Lenguajes informticos Lenguajes informticos Lenguajes informticos Lenguajes informticos Lenguajes informticos
Andrs Marn Lpez (Univ. Carlos III) <amarin@it.uc3m.es>
J. ngel Velzquez (ESCET-URJC) <a.velazquez@escet.urjc.es>
Libertades e Informtica Libertades e Informtica Libertades e Informtica Libertades e Informtica Libertades e Informtica
Alfonso Escolano (FIR-Univ. de La Laguna) <aescolan@ull.es>
Lingstica computacional Lingstica computacional Lingstica computacional Lingstica computacional Lingstica computacional
Xavier Gmez Guinovart (Univ. de Vigo) <xgg@uvigo.es>
Manuel Palomar (Univ. de Alicante) <mpalomar@dlsi.ua.es>
Mundo estudiantil Mundo estudiantil Mundo estudiantil Mundo estudiantil Mundo estudiantil
Adolfo Vzquez Rodrguez (Rama de Estudiantes del IEEE-UCM)
<a.vazquez@ieee.org>
Profesin informtica Profesin informtica Profesin informtica Profesin informtica Profesin informtica
Rafael Fernndez Calvo (ATI) <rfcalvo@ati.es>
Miquel Sarries Gri (Ayto. de Barcelona) <msarries@ati.es>
Redes y servicios telemticos Redes y servicios telemticos Redes y servicios telemticos Redes y servicios telemticos Redes y servicios telemticos
Luis Guijarro Coloma (DCOM-UPV) <lguijar@dcom.upv.es>
Josep Sol Pareta (DAC-UPC) <pareta@ac.upc.es>
Seguridad Seguridad Seguridad Seguridad Seguridad
Javier Areitio Bertoln (Univ. de Deusto) <jareitio@eside.deusto.es>
Javier Lpez Muoz (ETSI Informtica-UMA) <jlm@lcc.uma.es>
Sistemas de Tiempo Real Sistemas de Tiempo Real Sistemas de Tiempo Real Sistemas de Tiempo Real Sistemas de Tiempo Real
Alejandro Alonso, Juan Antonio de la Puente
(DIT-UPM)<{aalonso,jpuente}@dit.upm.es>
Software Libre Software Libre Software Libre Software Libre Software Libre
Jess M. Gonzlez Barahona, Pedro de las Heras Quirs
(GSYC-URJC) <{jgb,pheras}@gsyc.escet.urjc.es>
Tecnologa de Objetos Tecnologa de Objetos Tecnologa de Objetos Tecnologa de Objetos Tecnologa de Objetos
Jesus Garca Molina (DIS-UM) <jmolina@correo.um.es>
Gustavo Rossi (LIFIA-UNLP, Argentina) <gustavo@sol.info.unlp.edu.ar>
Tecnologas para la Educacin Tecnologas para la Educacin Tecnologas para la Educacin Tecnologas para la Educacin Tecnologas para la Educacin
Juan Manuel Dodero Beardo (UC3M) <dodero@inf.uc3m.es>
Francesc Riviere (PalmCAT) <friviere@wanadoo.es>
Tecnologas y Empresa Tecnologas y Empresa Tecnologas y Empresa Tecnologas y Empresa Tecnologas y Empresa
Pablo Hernndez Medrano (Bluemat) <pablohm@bluemat.biz>
TIC para la Sanidad TIC para la Sanidad TIC para la Sanidad TIC para la Sanidad TIC para la Sanidad
Valentn Masero Vargas (DI-UNEX) <vmasero@unex.es>
TIC y Turismo TIC y Turismo TIC y Turismo TIC y Turismo TIC y Turismo
Andrs Aguayo Maldonado, Antonio Guevara Plaza (Univ. de Mlaga)
<{aguayo, guevara}@lcc.uma.es>
Las opiniones expresadas por los autores son responsabilidad exclusiva de losmismos.
Novtica Novtica Novtica Novtica Novtica permite la reproduccin de todos los artculos, salvo los marcados con
o copyright, debindose en todo caso citar su procedencia y enviar a Novtica Novtica Novtica Novtica Novtica un
ejemplar de la publicacin.
Coordinacin Editorial, Redaccin Central y Redaccin ATI Madrid Coordinacin Editorial, Redaccin Central y Redaccin ATI Madrid Coordinacin Editorial, Redaccin Central y Redaccin ATI Madrid Coordinacin Editorial, Redaccin Central y Redaccin ATI Madrid Coordinacin Editorial, Redaccin Central y Redaccin ATI Madrid
Padilla 66, 3, dcha., 28006 Madrid
Tlfn.914029391; fax.913093685 <novatica@ati.es>
Composicin, Edicin y Redaccin ATI Valencia Composicin, Edicin y Redaccin ATI Valencia Composicin, Edicin y Redaccin ATI Valencia Composicin, Edicin y Redaccin ATI Valencia Composicin, Edicin y Redaccin ATI Valencia
Av. del Reino de Valencia 23, 46005 Valencia
Tlfn./fax 963330392 <secreval@ati.es>
Administracin y Redaccin ATI Catalua Administracin y Redaccin ATI Catalua Administracin y Redaccin ATI Catalua Administracin y Redaccin ATI Catalua Administracin y Redaccin ATI Catalua
Via Laietana 41, 1, 1, 08003 Barcelona
Tlfn.934125235; fax 934127713 <secregen@ati.es>
Redaccin ATI Andaluca Redaccin ATI Andaluca Redaccin ATI Andaluca Redaccin ATI Andaluca Redaccin ATI Andaluca
Isaac Newton, s/n, Ed. Sadiel,
Isla Cartuja 41092 Sevilla, Tlfn./fax 954460779 <secreand@ati.es>
Redaccin ATI Aragn Redaccin ATI Aragn Redaccin ATI Aragn Redaccin ATI Aragn Redaccin ATI Aragn
Lagasca 9, 3-B, 50006 Zaragoza.
Tlfn./fax 976235181 <secreara@ati.es>
Redaccin ATI Asturias-Cantabria Redaccin ATI Asturias-Cantabria Redaccin ATI Asturias-Cantabria Redaccin ATI Asturias-Cantabria Redaccin ATI Asturias-Cantabria <gp-astucant@ati.es>
Redaccin ATI Castilla-La Mancha Redaccin ATI Castilla-La Mancha Redaccin ATI Castilla-La Mancha Redaccin ATI Castilla-La Mancha Redaccin ATI Castilla-La Mancha <gp-clmancha@ati.es>
Redaccin ATI Galicia Redaccin ATI Galicia Redaccin ATI Galicia Redaccin ATI Galicia Redaccin ATI Galicia
Recinto Ferial s/n, 36540 Silleda (Pontevedra)
Tlfn.986581413; fax 986580162 <secregal@ati.es>
Suscripcin y Ventas Suscripcin y Ventas Suscripcin y Ventas Suscripcin y Ventas Suscripcin y Ventas
<http://www.ati.es/novatica/interes.html>,o en ATI Catalua o ATI Madrid
Publicidad Publicidad Publicidad Publicidad Publicidad
Padilla 66, 3, dcha., 28006 Madrid
Tlnf.914029391; fax.913093685 <novatica.publicidad@ati.es>
Imprenta Imprenta Imprenta Imprenta Imprenta
9Impressi S.A., Juan de Austria 66, 08005 Barcelona.
Depsito legal: Depsito legal: Depsito legal: Depsito legal: Depsito legal: B 15.154-1975 -- ISSN: 0211-2124; CODEN NOVAEC
Portada: Portada: Portada: Portada: Portada: Antonio Crespo Foix / ATI 2004
Diseo: Diseo: Diseo: Diseo: Diseo: Fernando Agresta / ATI 2004
novtica / upgrade n 171 septiembre-octubre 2004 5 monografa
Tecnologa de Proceso Software monografa
1. Caractersticas de los Proce-
sos Software
La definicin de Proceso Software (PS) com-
plementa el concepto de ciclo de vida en el
sentido de que ste ltimo define el esqueleto
y la filosofa para llevar a cabo un PS, pero
no es suficiente para guiar y controlar un
proyecto de desarrollo y/o mantenimiento.
Un PS es un conjunto coherente de polti-
cas, estructuras organizacionales, tecnolo-
gas, procedimientos y artefactos que son
necesarios para concebir, desarrollar, insta-
lar y mantener un producto software [3].
La naturaleza especial de los PS est deter-
minada por las siguientes caractersticas:
a) Son complejos.
b) No son procesos de produccin tpicos,
ya que estn dirigidos por excepciones, se
ven muy determinados por circunstancias
impredecibles y cada uno tiene peculiarida-
des que lo distinguen de los dems.
c) Tampoco son procesos de ingeniera
pura, ya que se desconocen las abstraccio-
nes adecuadas (no existe una ciencia experi-
mental en la que apoyarse), dependen dema-
siado de demasiada gente, el diseo y la
produccin no estn claramente diferencia-
dos, y los presupuestos, calendarios y cali-
dad no pueden ser planificados de forma
suficientemente fiable.
d) No son (completamente) procesos
creativos, ya que algunas partes pueden ser
descritas en detalle y algunos procedimien-
tos son impuestos previamente.
e) Estn basados en descubrimientos que
dependen de la comunicacin, coordinacin
y cooperacin dentro de marcos de trabajo
predefinidos: los entregables generan nue-
vos requerimientos; los costes del cambio
del software no suelen reconocerse; y el xito
depende de la implicacin del usuario y de la
coordinacin de muchos roles (ventas, desa-
rrollo tcnico, cliente, etc.).
La necesidad de participacin humana de
forma creativa y la ausencia de acciones
repetitivas hacen que ni el desarrollo ni el
mantenimiento del software sean procesos
de fabricacin, pero existen algunas simili-
tudes entre ambos tipos de procesos que son
tiles para comprender los procesos soft-
ware con una perspectiva ms amplia. Al
igual que los procesos de fabricacin, los
procesos software constan de dos sub-pro-
cesos interrelacionados: el proceso de pro-
duccin y el proceso de gestin [5].
El proceso de produccin se relaciona con la
produccin y el mantenimiento del producto
propiamente dichos, mientras que el proce-
so de gestin proporciona los recursos nece-
sarios para el proceso de produccin y lo
controla. Esto ltimo es posible si el proceso
de produccin devuelve informacin al pro-
ceso de gestin sobre su comportamiento.
Estas relaciones estn representadas en la
figura 1 figura 1 figura 1 figura 1 figura 1, donde tambin se muestran las
relaciones entre el proceso y el entorno exter-
no: la peticin sobre el producto ha de ser
llevada a cabo desde el mundo exterior, es
decir el entorno exterior es quien justifica la
existencia del proceso de produccin. Ade-
ms la gestin tiene que cumplir con los
estndares actuales que existen en el entor-
no; es decir, el entorno exterior influye tam-
bin indirectamente en el proceso de pro-
duccin. Finalmente, los procesos de pro-
duccin y de gestin explotan tecnologas
que tambin vienen del entorno.
2. Tecnologa de Proceso Software
La esencia de la Tecnologa de Proceso Soft-
ware (TPS) es que permite la integracin de
tecnologas de produccin y de gestin en un
nuevo entorno de trabajo, conocido como
Entorno de Ingeniera del Software orien-
tado al Proceso (PSEE, Process-centered
Software Engineering Environment), que da
soporte a los procesos de gestin y de pro-
duccin de forma integrada. La figura 2 figura 2 figura 2 figura 2 figura 2
Procesos Software: caractersticas,
tecnologa y entornos
Francisco Ruiz Gonzlez
1
,
Gerardo Canfora
2
1
Grupo Alarcos, Escuela Superior de Infor-
mtica, Universidad de Castilla-La Man-
cha;
2
Research Cent re on Sof t ware
Technology (RCOST), Universit degli Studi
del Sannio (Benevento, Italia)
<Francisco.RuizG@uclm.es>, <Francisco.RuizG@uclm.es>, <Francisco.RuizG@uclm.es>, <Francisco.RuizG@uclm.es>, <Francisco.RuizG@uclm.es>,
<canfora@unisannio.it> <canfora@unisannio.it> <canfora@unisannio.it> <canfora@unisannio.it> <canfora@unisannio.it>
Resumen: en este artculo introductorio presentamos el concepto de Proceso Software (PS) y las
propiedades que caracterizan y distinguen a estos procesos de otros tipos de procesos (por ejemplo,
los tpicos de produccin industrial). A continuacin justificamos el inters de disponer de una tecnolo-
ga, conocida como Tecnologa de Proceso Software (TPS), que permita automatizar e integrar los
procesos de produccin y de gestin en los proyectos software. Por ltimo, presentamos las coleccio-
nes de herramientas integradas, conocidas como Entornos de Ingeniera del Software (EIS), cuyo
objetivo es dar soporte a los citados procesos. Para concluir, se hace un resumen del problema de la
integracin de las herramientas componentes de un Entorno y de la manera de hacer que un Entorno
sea orientado a procesos.
Palabras clave: Entorno de Integracin de Herramientas, Ingeniera del Software, Orientacin a Proce-
sos, Proceso Software, Tecnologa de Proceso Software.
Autores
Francisco Ruiz Gonzlez es Doctor en Informtica por la Universidad de Castilla-La Mancha (UCLM) y
Licenciado en CC. Qumicas, especialidad Qumica-Fsica, por la Universidad Complutense de Madrid en
1983. Es profesor del Depto. de Informtica de la UCLM desde 1989, destinado en la Escuela Superior
de Informtica de Ciudad Real, de la cual ha sido Director entre 1993 y 2000. Anteriormente fue Director
de los Servicios Informticos de la UCLM (1985-1989) y tambin trabaj de analista-programador y jefe
de proyectos en varias compaas privadas. Es miembro del grupo Alarcos de I+D, <http://alarcos.inf-
cr.uclm.es>. Sus temas de investigacin actuales incluyen: tecnologa y modelado de procesos soft-
ware, mantenimiento del software, y metodologas para planificar y gestionar proyectos software. Otros
temas de trabajo en el pasado han sido SIG (Sistemas de Informacin Geogrficos), entornos software
para la educacin y bases de datos deductivas. Ha publicado ocho libros y catorce captulos sobre los
temas citados y tiene 90 publicaciones en revistas y conferencias nacionales e internacionales. Ha sido
miembro de nueve comits de programa y de siete comits organizadores de congresos. Pertenece a
diversas asociaciones cientficas y profesionales: ACM, IEEE-CS, ATI, AEC, AENOR, ISO JTC1/SC7,
EASST, AENUI y ACTA.
Gerardo Canfora es Catedrtico de Informtica en la Facultad de Ingeniera y Director del Research
Centre on Software Technology (RCOST) de la Universit degli Studi del Sannio, en Benevento (Italia). Ha
participado en las comits de programa y de organizacin de diversas conferencias internacionales. Ha
sido co-presidente del comit de programa de International Workshop on Program Comprehension
(IWPC1997); International Conference on Software Maintenance (ICSM2001); y European Conference
on Software Maintenance and Reengineering (CSMR2004). Tambin ha sido presidente general del
CSMR2003. Sus intereses de investigacin incluyen mantenimiento y evolucin del software, compren-
sin de programas e ingeniera inversa, mejora del proceso software, gestin del conocimiento, e inge-
niera del software orientada a servicios. Sobre estos temas ha publicado ms de 100 artculos en
revistas y conferencias internacionales. Es editor asociado del "IEEE Transactions on Software Engineering"
y participa en el consejo editorial del "Journal of Software Maintenance and Evolution: Research and
Practice".
novtica / upgrade n 171 septiembre-octubre 2004 6 monografa
monografa Tecnologa de Proceso Software
muestra el impacto de esta nueva tecnologa,
mostrando como el PSEE implementa, con-
trola y mejora los flujos de informacin con los
cuales el proceso de gestin controla al proce-
so de produccin. El objetivo principal de la
TPS es dominar la complejidad inherente al PS
mediante una comprensin profunda del pro-
ceso en s mismo y mediante un soporte auto-
matizado por medio de un PSEE.
Un aspecto fundamental para lograr el citado
objetivo es el soporte computerizado del pro-
ceso; es decir, la disponibilidad de un modelo
de procesos y los medios adecuados para de-
finirlo, modificarlo, analizarlo y realizarlo [1].
Consecuentemente con la definicin anterior,
la TPS saca provecho de diversas reas y
conceptos:
1. 1. 1. 1. 1. Tecnologas Tecnologas Tecnologas Tecnologas Tecnologas de desarrollo y mantenimien-
to de software, que aportan las herramientas e
infraestructuras necesarias para hacer posible
--y econmicamente factible-- crear y mante-
ner productos software complejos que satisfa-
gan las necesidades actuales y futuras.
2. 2. 2. 2. 2. Mtodos y tcnicas Mtodos y tcnicas Mtodos y tcnicas Mtodos y tcnicas Mtodos y tcnicas para el desarrollo y
mantenimiento de software, que suponen el
soporte metodolgico esencial para aprove-
char de manera eficiente las tecnologas y rea-
lizar con xito las actividades de desarrollo y
mantenimiento del software.
3. 3. 3. 3. 3. Comportamiento organizacional Comportamiento organizacional Comportamiento organizacional Comportamiento organizacional Comportamiento organizacional, es de-
cir, la ciencia de las organizaciones y las perso-
nas es til en TPS porque, en general, los
proyectos software se llevan a cabo por equi-
pos de personas que tienen que ser coordina-
dos y dirigidos dentro de una estructura
organizacional eficiente.
4. 4. 4. 4. 4. Marketing y economa Marketing y economa Marketing y economa Marketing y economa Marketing y economa, ya que los proyec-
tos de desarrollo y mantenimiento de software
no son esfuerzos autnomos sino que, como
pasa con cualquier otro producto, el software
debe estar dirigido a satisfacer las necesidades
de clientes/usuarios reales.
En conclusin, al desarrollar o mantener soft-
ware es necesario prestar atencin a la comple-
ja interrelacin que se produce entre los facto-
res organizacionales, culturales, tecnolgi-
cos y econmicos.
Figura 1. Proceso de produccin vs proceso de gestin.
Figura 2. Impacto de la Tecnologa de Proceso Software.
Proceso de Gestin Proceso de Produccin
Controla
Realimenta
Tecnologa de Gestin Tecnologa de Produccin
Entorno exterior
Explota
Explota
Proporciona
Proporciona
Estandariza
Justifica

Proceso de Gestin Proceso de Produccin
Tecnologa de
Gestin
Tecnologa de
Produccin
Entorno exterior
Explota
Integra
Proporciona
Proporciona
Estandariza Justifica


Tecnologa de
Procesos
Proporciona
PSEE
Integra
Soporta
novtica / upgrade n 171 septiembre-octubre 2004 7 monografa
Tecnologa de Proceso Software monografa
3. Entornos de Ingeniera del Soft-
ware
Aunque el uso de herramientas para ayudar
a los desarrolladores en la produccin de
software ha existido, de una u otra manera,
desde los das iniciales de la Informtica, el
concepto de Software Engineering
Environment (SEE), es decir, Entorno de
Ingeniera del Software (EIS), es bastante
reciente. Un EIS se define como "una colec-
cin de herramientas que proporcionan un
soporte automtico, parcial o total, a las
actividades de Ingeniera del Software". Ha-
bitualmente, estas actividades se llevan a
cabo en el marco de un proyecto software y
se refieren a aspectos tales como la especifi-
cacin, desarrollo, reingeniera o manteni-
miento de sistemas software.
Los EIS tambin se han conocido con otros
nombres: IPSE (Integrated Project Support
Environment), ISEE (Integrated Software
Engineering Environment), Coalicin de
herramientas CASE, Herramientas CASE
federadas, o ISF (Integrated Software
Factory).
El trmino EIS se puede aplicar a sistemas
de un alcance muy diferente: desde un con-
junto de unas pocas herramientas ejecutn-
dose sobre el mismo sistema, hasta un entor-
no totalmente integrado capaz de gestionar
y controlar todos los datos, procesos y acti-
vidades del ciclo de vida de un producto
software.
Gracias a la automatizacin de actividades
(de forma parcial o total), un EIS puede
aportar importantes beneficios a una orga-
nizacin: reduccin de costes (alta produc-
tividad), mejora en la gestin y mayor cali-
dad en el producto final. Por ejemplo, la
automatizacin de actividades repetitivas --
como la ejecucin de casos de prueba-- no slo
mejora la productividad, sino que tambin
ayuda a asegurar la completitud y consisten-
cia de las actividades de prueba.
Habitualmente, un EIS maneja informa-
cin relacionada con:
a) El software en desarrollo o mantenimien-
to (especificaciones, datos de diseo, cdigo
fuente, datos de pruebas, planes de proyec-
to, ...);
b) Los recursos del proyecto (costes, recur-
sos informticos, personal, responsabilida-
des y obligaciones, ...); y
c) Los aspectos organizacionales (polticas
de la organizacin, estndares y
metodologas empleados, ...).
Un EIS da soporte a actividades humanas
mediante una serie de servicios servicios servicios servicios servicios que descri-
ben las capacidades del entorno. Los servi-
cios proporcionan una correspondencia en-
tre un conjunto de procesos escogidos, rela-
tivos al ciclo de vida del software, y su
automatizacin mediante el uso de herra-
mientas. En la mayora de los casos la
funcionalidad de una herramienta est rela-
cionada con uno o ms servicios.
El inters en los EIS comenz a principios de
los aos 90, cuando surgieron las primeras
propuestas de modelos de referencia y se
propusieron las primeras clasificaciones de
los servicios que deberan incluirse [8]. Pero
ha sido a comienzos del siglo XXI cuando se
han desarrollado entornos que realmente
intentan satisfacer los ambiciosos objetivos
que implica la definicin de EIS dada ante-
riormente [6].
3.1. Integracin
El concepto que ms diferencia un EIS de un
simple conjunto de herramientas ejecutn-
dose en una computadora bajo un mismo
sistema operativo es el grado de integracin
que provee. El concepto de integracin apli-
cado a un EIS puede significar varias cosas
relacionadas pero diferentes:
El grado en que diferentes herramientas
pueden comunicar eficazmente entre s den-
tro del marco de trabajo del EIS.
Una medida de las relaciones entre los
componentes de un EIS.
La facilidad, interoperabilidad,
portabilidad, escalabilidad, productividad,
etc., producida por la interaccin "sin par-
ches" entre un conjunto de componentes de
un EIS.
Compartir un mismo sistema de gestin de
objetos (gestor del repositorio) en vez de un
sistema de ficheros separado para cada he-
rramienta es un aspecto importante de la
integracin, pero no es el nico. Un EIS debe
disponer de un conjunto de interfaces que
permitan la cooperacin entre herramientas
de fabricantes diversos. Por esta razn, la
integracin implica los tres aspectos siguien-
tes:
Un conjunto de servicios Un conjunto de servicios Un conjunto de servicios Un conjunto de servicios Un conjunto de servicios. Muchos de los
servicios que se describen en apartados pos-
teriores son aplicables a la integracin. Por
ejemplo, utilizar un sistema de gestin de
objetos comn con esquemas comunes per-
mite que las herramientas compartan obje-
tos; utilizar caractersticas de presentacin
globales en el interfaz de usuario permite
disponer de un "aspecto de visualizacin"
similar en todas las herramientas; o los ser-
vicios de gestin de procesos y de comunica-
cin son necesarios para que las herramien-
tas puedan comunicarse unas con otras.
Una nueva dimensin para cada servi- Una nueva dimensin para cada servi- Una nueva dimensin para cada servi- Una nueva dimensin para cada servi- Una nueva dimensin para cada servi-
cio cio cio cio cio. Tener servicios comunes permite pero
no obliga a la integracin (los constructores
de herramientas no estn obligados a utili-
zarlos). Esta nueva dimensin indica el gra-
do en que un servicio pude contribuir a
aumentar la integracin.
Una poltica Una poltica Una poltica Una poltica Una poltica. Tambin se requiere im-
plantar polticas para que los constructores
de las herramientas, marcos de trabajo y
plataformas utilicen los servicios de integra-
cin eficientemente. Un ejemplo de esto son
las "guas de estilo" para constructores de
herramientas.
Segn Thomas y Nejmeh [7], la necesidad
de integracin en un EIS abarca varias di-
mensiones diferentes (figura 3 figura 3 figura 3 figura 3 figura 3):
Datos Datos Datos Datos Datos. La integracin de los datos es la
capacidad de compartir la informacin den-
tro del EIS. El grado de integracin de datos
puede ser alto (las herramientas usan una
base de datos comn con un esquema co-
mn), mediano (formatos de datos comu-
nes) o bajo (utilizar mecanismos de traduc-
cin). Otra caracterstica que la integracin
de datos puede incluir es la composicin.
Control Control Control Control Control. La integracin del control es la
capacidad de combinar las funcionalidades
ofrecidas en un entorno de forma flexible.
Las combinaciones pueden corresponder a
preferencias de un proyecto y estar dirigidas
por los procesos software subyacentes.
Presentacin Presentacin Presentacin Presentacin Presentacin. La integracin de la pre-
sentacin es la capacidad de interactuar con
las funcionalidades del entorno mediante
pantallas de apariencia similar y modos de
interaccin similares.
Procesos Procesos Procesos Procesos Procesos. La integracin de procesos es
la capacidad de acceder a las funcionalidades
del entorno utilizando un PS predefinido
que est siendo realizado con soporte auto-
mtico.
3.2. Orientacin a procesos
Ya se ha comentado la importancia que los
EIS orientados a procesos (o PSEE) tienen
en la TPS. De hecho, el principal papel de un
EIS es dar soporte para llevar a cabo los PS
de forma eficaz. Este punto de vista est
ganando peso porque los procesos de desa-
rrollo y mantenimiento de software se han
convertido, cada vez ms, en actividades
complejas y laboriosas de carcter intelec-
tual, con un alto potencial para la mejoras en
El concepto de Entorno
de Ingeniera del Software
(EIS) es bastante reciente


novtica / upgrade n 171 septiembre-octubre 2004 8 monografa
monografa Tecnologa de Proceso Software
Figura 3. Propiedades de la Integracin de Herramientas en un EIS.
la calidad y la productividad basadas en la
disciplina, la gestin, y la ayuda de EIS y
otras tecnologas informticas.
Muchas organizaciones tienen problemas
para definir y realizar los pasos que transfor-
man las necesidades del usuario en un pro-
ducto software, de manera que sean
repetibles, medibles con respecto a su im-
pacto en los objetivos de calidad y adaptables
o mejorables. Por tanto, la ayuda de un EIS
para implantar un proceso definido durante
la realizacin de un proyecto software puede
proporcionar beneficios sustanciales a corto
plazo.
Dentro de un EIS, los servicios de gestin de
procesos contribuyen a este soporte eficaz
de los PS proveyendo facilidades orientadas
al usuario final para definir y utilizar proce-
sos que pueden reemplazar la invocacin
indisciplinada, difcil de controlar, y tediosa
de herramientas individuales. Garg y Jazayeri
[4] han considerado que el soporte a proce-
sos en un EIS est basado en las siguientes
funcionalidades:
Definicin de procesos Definicin de procesos Definicin de procesos Definicin de procesos Definicin de procesos. Los ingenieros
software utilizan el EIS para definir un pro-
ceso de cara a su utilizacin en uno o ms
proyectos.
Anlisis de procesos Anlisis de procesos Anlisis de procesos Anlisis de procesos Anlisis de procesos. Dentro del EIS, un
modelo de proceso puede ser analizado para
verificar su consistencia, completitud y co-
rreccin.
Presentacin de procesos Presentacin de procesos Presentacin de procesos Presentacin de procesos Presentacin de procesos. El EIS inclu-
ye soporte para la visualizacin grfica de
los PS (flujos de actividades) y de los pro-
ductos (diagramas estructurados).
Simulacin de procesos Simulacin de procesos Simulacin de procesos Simulacin de procesos Simulacin de procesos. El EIS soporta
el uso de simulaciones para poder evaluar la
idoneidad de un proceso antes de consumir
recursos en su realizacin real.
Automatizacin de procesos Automatizacin de procesos Automatizacin de procesos Automatizacin de procesos Automatizacin de procesos. Una vez
un proceso ha sido definido, las actividades
que no requieren intervencin humana pue-
den ser identificadas y automatizadas por el
EIS.
Supervisin de procesos Supervisin de procesos Supervisin de procesos Supervisin de procesos Supervisin de procesos. El EIS super-
visa la realizacin de un proceso y registra la
historia de las actividades llevadas a cabo.
Esta historia del proceso puede utilizarse
despus para futuros desarrollos de nuevos
procesos o mejora del existente.
Soporte de cambios en procesos Soporte de cambios en procesos Soporte de cambios en procesos Soporte de cambios en procesos Soporte de cambios en procesos. El EIS
permite que una organizacin cambie sus
definiciones de procesos sin tener que inte-
rrumpir el trabajo.
Apertura. Apertura. Apertura. Apertura. Apertura. El EIS provee herramientas
para intercambiar datos y metadatos con
herramientas no integradas o con otros EIS.
Soporte multiusuario Soporte multiusuario Soporte multiusuario Soporte multiusuario Soporte multiusuario. Habitualmente,
los proyectos de Ingeniera del Ssoftware
son realizados por grupos de personas con
diferentes roles, por tanto, el EIS debe dar
servicio a todas las personas que trabajan
juntas en un proceso.
Direccin de procesos Direccin de procesos Direccin de procesos Direccin de procesos Direccin de procesos. Los ingenieros
software utilizan el EIS para llevar a cabo
diferentes etapas de un proceso. El EIS debe
ofrecer ayuda para elegir las etapas siguien-
tes en base al modelo del proceso y del
estado actual.
Interfaz de usuario especfico para cada Interfaz de usuario especfico para cada Interfaz de usuario especfico para cada Interfaz de usuario especfico para cada Interfaz de usuario especfico para cada
tarea tarea tarea tarea tarea. Basndose en el modelo del proceso, el
EIS puede adaptar el interfaz de usuario a las
necesidades de cada tarea y as evitar un exceso
de informacin presentada al usuario.
Cada vez es ms frecuente que el desarrollo y
mantenimiento de un producto software sea
realizado con la colaboracin de varias empre-
sas u organizaciones. Por ello, en los ltimos
aos ha cobrado auge el estudio de los proble-
mas que surgen cuando se desea que varios
PSEEs diferentes y separados colaboren, y,
ms concretamente, que exista interopera-
bilidad entre los procesos que soportan. Entre
las diversas propuestas formuladas para abor-
dar este problema, destacan las federaciones
de PSEEs. En esta lnea, algunos autores han
propuesto usar la metfora de la alianza inter-
nacional, donde cada organizacin gestiona
sus propios procesos (igual que cada pas tiene
sus leyes) y los procesos inter-organizacionales
actan de forma semejante al de los tratados
entre pases.
En la bibliografa se han propuesto dos tipos
de arquitecturas conceptuales para federa-
ciones de PSEEs: basadas en el control, que
favorecen la centralizacin al existir mode-
los de procesos comunes; y las basadas en el
estado, que disponen de un espacio de traba-
jo donde se almacena el estado comn [2].
4. Conclusiones
En este artculo hemos presentado los prin-
cipales aspectos de la Tecnologa de Proceso
Software: el objeto de atencin (los procesos
software y sus caractersticas); el inters y
justificacin de dar soporte automtico a
estos procesos; y los requisitos, funcionalidad
y caractersticas de integracin y de orienta-
cin a procesos que deben tener las coleccio-
nes de herramientas para satisfacer estas
necesidades.
Referencias

[1] J.C. Derniame, B.A. Kaba, D. Wastell, (eds.).


Software Process: Principles, Methodology and
Technology. LNCS 1500, Springer-Verlag, 1999.
[2] J. Estublier, P.Y. Cunin, N. Belkhatir. Architectures
for Process Support System Interoperability.
Proceedings of the Fifth International Conference on
the Software Process (ICSP98), 15-17 Junio, Chicago
(Estados Unidos), pp. 137-147, 1998.
[3] A. Fuggetta. Software Process: A Roadmap.
22nd International Conference on Software
Engineering (ICSE2000), Future of Software
Engineering Track, June 4-11, Limerick (Irlanda),
ACM, 2000.
[4] P.K. Garg, M. Jazayeri. Process-centered Soft-
ware Engineering Environments: A Grand Tour. En A.
Fuggetta, A. Wolf (eds.); Software Process. John
Wiley & Sons, 1996.
[5] R. McLeod Jr. Management Information Systems.
McMillan Publishing, New York, 1990.
[6] H. Ossher, W. Harrison, P. Tarr. Software
Engineering Tools and Environments: a Roadmap.
International Conference on Software Engineering
(ICSE) - Future of SE Track. Limerick (Irlanda), pp.
261-277, 2000.
[7] I. Thomas, B.A. Nejmeh. Definitions of Tool
Integration for Environments. IEEE Software, 9(2), pp.
29-35, 1992.
[8] M.V. Zelkowitz. Software Engineering Environment
Capabilities. Journal of Systems and Software. Elsevier
Science, 35(1), pp. 3-14, 1996.
Herramienta
Interoperabilidad
Cuanto trabajo debe realizarse para
manipular datos producidos por otra
herramienta?
No redundancia
Cuantos datos manejados por una
herramienta estn duplicados o se
pueden derivar de los datos manejados
por otra herramienta?
Consistencia de Datos
Cmo de bien cooperan dos
herramientas para mantener las
restricciones semnticas de las datos
que manejan ambas?
Intercambio de Datos
Cuanto trabajo debe realizarse para
hacer que los datos no persistentes
generados por una herramienta sean
utilizables por otra?
Sincronizacin
Cmo de bien comunica una
herramienta los cambios que hace a
los valores de datos comunes no
persistentes?
DATOS
PROCESOS
Pasos de Proceso
Cmo de bien se combinan las
herramientas para soportar la
realizacin de un paso de proceso?
Evento
Cmo de bien llegan a acuerdos las
herramientas sobre los eventos
requeridos para soportar un proceso?
Restricciones
Cmo de bien cooperan las
herramientas para cumplir una
restriccin?
PRESENTACIN
Apariencia y Comportamiento
Hasta qu punto utilizan las
herramientas apariencias de pantalla y
comportamiento interactivo similares?
Paradigma Interactivo
Hasta qu punto dos herramientas
utilizan metforas y modelos mentales
similares?
CONTROL
Provisin
Hasta qu punto los servicios de una
herramienta son utilizados por otras
herramientas en el entorno?
Uso
Hasta qu punto una herramienta
utiliza los servicios provistos por las
otras herramientas del entorno?

Vous aimerez peut-être aussi