Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Swebook Original
Swebook Original
SOFTWARE
VERSIN 2004
do
SWEBOK
Bo
rra
BORRADOR - ESPAOL
VERSIN 2004
do
SWEBOK
Directores ejecutivos
Alain Abran, cole de Technologie Superieure
James W. Moore, The Mitre Corp.
rra
Directores
Pierre Bourque, cole De Technologie Superieure
Robert Dupuis, Universite Du Quebec A Montreal
Bo
Jefe de proyecto
Leonard L. Tripp, Chair, Professional Practices Committee,
IEEE Computer Society (2001-2003)
Copyright 2004 por The Institute of Electrical and Electronics Engineers, Inc. Todos los derechos reservados.
Copyright y permisos de impresin: Este documento puede ser copiado, completo o parcialmente, de cualquier forma o
para cualquier propsito, y con alteraciones, siempre que (1) dichas alteraciones son claramente indicadas como
alteraciones y (2) que esta nota de copyright est incluida sin modificacin en cualquier copia. Cualquier uso o distribucin
de este documento est prohibido sin el consentimiento expreso de la IEEE.
Use este documento bajo la condicin de que asegure y mantenga fuera de toda ofensa a IEEE de cualquier y toda
responsabilidad o dao a usted o su hardware o software, o terceras partes, incluyendo las cuotas de abogados, costes del
juicio, y otros costes y gastos relacionados que surjan del uso de este documento independientemente de la causa de dicha
responsabilidad.
do
IEEE PONE ESTE DOCUMENTO A DISPOSICIN TAL CUAL EST, SIN GARANTA ALGUNA, EXPRESADA O
IMPLICADA, COMO LA EXACTITUD, CAPACIDAD, EFICIENCIA COMERCIAL, O FUNCIONALIDAD DE ESTE
DOCUMENTO IEEE NO SER RESPONSABLE DE CUALQUIER CONSECUENCIA, INDIRECTA, FORTUITA,
EJEMPLAR, O DE PELIGROS ESPECIALES, AN SI IEEE HA ADVERTIDO DE LA POSIBILIDAD DE DICHOS
PELIGROS.
rra
Bo
TABLA DE CONTENIDOS
PRLOGO .............................................................................................................................................. vii
PREFACIO ............................................................................................................................................ xvii
CAPTULO 1. INTRODUCCIN A LA GUA ............................................................................................... 1-1
CAPTULO 2. REQUERIMIENTOS DEL SOFTWARE ................................................................................... 2-1
do
rra
Bo
rra
Bo
do
r
PRLOGO
En esta gua, el IEEE Computer Society establece por primera vez una base para el cuerpo de conocimiento del
campo de la ingeniera del software, y el trabajo, y el trabajo cubre parcialmente la responsabilidad de la Sociedad de
promover el avance de la teora y prctica de este campo. Llevando a cabo esta tarea, la Sociedad ha sido guiada por la
experiencia de otras disciplinas ms maduras sin ligarse a sus problemas o soluciones.
Ntese que la Gua no pretende definir el cuerpo de conocimiento, sino servir como un compendio y gua al cuerpo de
conocimiento que se ha desarrollado y evolucionado durante 4 dcadas. Es ms, este cuerpo de conocimiento no es
esttico. La Gua debe necesariamente desarrollarse y evolucionar segn madura la ingeniera del software. Sin embargo,
constituye un valioso elemento a la infraestructura de la ingeniera del software.
do
En 1958, el renombrado matemtico estadstico John Tukey, acuo el trmino software. El trmino Ingeniera del
Software se utiliz por primera vez en el ttulo de una conferencia de la OTAN celebrada en Alemania en 1968. La IEEE
Computer Society public las primeras Transacciones en Ingeniera del Software (Transactions on Software Engineering)
en 1972. El comit creado por la IEEE Computer Society para el desarrollo de estndares de ingeniera del software se
fund en 1976.
La primera vista global de la ingeniera del software emerge del trabajo del equipo liderado por Fletcher Buckley para
desarrollar el estndar IEEE Std 730 para la calidad del software finalizado en 1979. El objetivo de dicho estndar fue el de
proporcionar un mnimo de requerimientos aceptables y uniformes para el aseguramiento de la calidad. Este estndar
influy en el desarrollo de otros estndares posteriores relacionados con la gestin de la configuracin, pruebas de
software, requerimientos del software, diseo del software y verificacin y validacin del software.
rra
Durante los aos 1981-1985, la IEEE Computer Society organiz una serie de talleres de trabajo sobre la aplicacin
de los estndares de ingeniera del software en donde los profesionales que participaron compartieron sus experiencias con
los estndares existentes y planificaron futuros estndares incluyendo uno sobre medicin y mtricas para procesos y
productos de la ingeniera del software. El resultado fue el IEEE Std 1002, Taxonoma de estndares de ingeniera del
software (1986), el cual proporciono una visin global de la ingeniera del software. El estndar describe la forma y
contenido de una taxonoma de estndares de ingeniera del software. Explica los diferentes tipos de estndares de
ingeniera del software, sus relaciones externas y funcionales, y el rol de las distintas funciones en el ciclo de vida del
software.
Bo
En 1990 comenz una planificacin para un estndar internacional con una visin general. La planificacin se centr
en reconciliar las vistas de los procesos del software del estndar IEEE Std 1074 y el estndar 2167A del departamento de
defensa (DoD, en sus siglas en ingls) de los EE.UU. La revisin del estndar se public como DoD Std 498. El estndar
fue completado en 1995 como ISO/IEC 12207, Estndar para los procesos del ciclo de vida del software. Este estndar
proporciono un importante punto de arranque para el cuerpo de conocimiento contenido en este libro.
La aprobacin de la mocin por parte de la junta de gobierno del IEEE Computer Society supuso el arranque por
parte de Fletcher Buckley para la escritura de este libro. El consejo de la ACM (Association for Computing Machinery)
aprob la mocin en agosto de 1993. Las dos mociones llevaron a la creacin de un comit conjunto dirigido por Mario
Barbacci y Stuart Zweben. La misin del comit conjunto fue: establecer un conjunto apropiado de criterios y normas
para la prctica profesional de la ingeniera del software sobre las que puedan basarse decisiones industriales,
certificaciones profesionales y planes de estudios. El comit directivo organiz el trabajo en las siguientes reas:
1.
2.
3.
Este libro proporciona el primer punto, el cuerpo de conocimiento necesario y prcticas recomendadas.
El cdigo tico y conducta profesional para la Ingeniera del software fue terminado en 1998 y aprobado por la juntas
de gobierno de la ACM e IEEE Computer Society. Ha sido adoptado por numerosas empresas y organizaciones y se
incluye en libros de texto recientes.
El plan de estudios para estudios de grado fue completado en 2004.
Aunque no siempre definidas de manera precisa, cada profesin se basa en un cuerpo de conocimiento y prcticas
recomendadas. En muchos casos, estn formalmente documentadas, generalmente en un formato que permite que sean
usadas para acreditaciones de planes acadmicos, desarrollo de cursos y programas educativos, certificaciones
profesionales o licencias profesionales. Generalmente, una sociedad profesional o cuerpo relacionado mantiene la custodia
de la definicin formal. En los casos en los que no existe esa formalidad, el cuerpo de conocimiento y prcticas
recomendadas son generalmente reconocidas por profesionales y pueden ser codificadas en una variedad de formas por
los distintos usuarios.
Se espera que los lectores encuentren este libro til como gua para el conocimiento y recursos necesarios en el
desarrollo de su profesin como profesionales de la ingeniera del software.
Este libro est dedicado a Fletcher Buckley en reconocimiento a su empeo en el promover la ingeniera del software
como una disciplina profesional y su excelente profesionalidad como ingeniero de software para radares.
Bo
rra
do
EDITORES ASOCIADOS
Las siguientes personas trabajaron como directores asociados bien para la versin de prueba 2001 o bien la versin 2004.
Requerimientos del Software
Peter Sawyer and Gerald Kotonya, Computing Department, Lancaster University, Reino Unido,
{p.sawy er, g.kotonya}@lancaster.ac.uk
Diseo del Software
Guy Tremblay, Dpartement dinformatique, UQAM, Canad, tremblay.guy@uqam.ca
do
rra
Bo
do
rra
Larry Reeker, National Institute of Standards and Technology, Department of Commerce, EEUU
Las siguientes personas trabajaron con este comit en el control de cambios de la edicin del 2004:
Donald Bagert, Rose-Hulman Institute of Technology, representing the IEEE Computer Society Professional Practices
Committee
Bo
Ann Sobel, Miami University, representado a la junta ejecutiva del Computing Curricula Software Engineering
PANEL DE EXPERTOS
Las siguientes personas trabajaron como panel de expertos en la preparacin de la versin de prueba (Trial) de la
Gua:
Steve McConnell, Construx Software
Roger Pressman, R.S. Pressman and Associates
Bo
rra
do
REVISORES
Las siguientes personas trabajaron como directores asociados en la versin de prueba (Trial) 2001 y/o la versin 2004.
do
Bo
rra
do
Bo
rra
do
Bo
rra
do
Bo
rra
La siguiente mocin fue unnimemente aprobada por el junta de gobierno del IEEE Computer
Society en febrero del 2004.
Bo
rra
do
La junta de gobierno de IEEE Computer Society aprueba la edicin del 2004 de la Gua al cuerpo de conocimiento de la
ingeniera del software y autoriza al director del comit de prcticas profesionales a proceder con su impresin.
PREFACIO
Bo
do
rra
PROPSITO
EVOLUCIN DE LA GUA
Desde 1993 hasta el 2000, el IEEE Computer Society y la
ACM cooperaron en promover la profesionalizacin de la
ingeniera de software a travs de un comit para la
coordinacin de la ingeniera del software (Software
Engineering Coordinating Committee SWECC). El
cdigo de tica y conducta profesional fue completado
bajo la tutela de SWECC en1998 a travs de esfuerzos
voluntarios. El SWEBOK fue iniciado por el SWECC en
1998.
do
Bo
rra
do
LIMITACIONES
rra
Bo
Alain Abran
cole de technologie suprieure
James W. Moore
The MITRE Corporation
Pierre Bourque
cole de Technologie Suprieure
Robert Dupuis
Universit du Qubec Montral
Leonard Tripp
1999 President
IEEE Computer Society
do
RECONOCIMIENTOS
Diciembre 2004
La Web del proyecto SWEBOK es: http://www.swebok.org/
Bo
rra
rra
Bo
do
r
CAPITULO 1
INTRODUCCIN A LA GUA
do
rra
Bo
SON
LAS
CARACTERSTICAS
OBJETIVOS
DEL
PROYECTO
UNA
LOS
1.
DE
PROFESIN?
CULES SON
SWEBOK?
2.
3.
4.
Informtica
Gestin
Matemticas
Gestin de proyectos
Gestin de calidad
Ergonoma del software
Ingeniera de sistemas
ORGANIZACIN JERRQUICA
La organizacin de las AC en los captulos proporciona el
tercer objetivo del proyecto una caracterizacin de los
contenidos de la ingeniera del software. Especificaciones
detalladas por el equipo de coordinadores editoriales a los
coordinadores asociados en encuentra en el Apndice A.
do
5.
rra
Bo
Bo
LIBRO
do
Generalmente aceptado
rra
Especializado
Prcticas utilizadas solamente en
ciertos tipos de software
REQUERIMIENTOS
COLUMNA A)
DEL
SOFTWARE
(FIGURA
2,
do
Detectar
y
resolver
conflictos
entre
requerimientos
Descubrir las fronteras del software y como
deben interactuar con el entorno
Elaborar los requerimientos del sistema a
requerimientos software.
Bo
rra
CONSTRUCCIN
C)
DEL
do
rra
Bo
DEL
SOFTWARE
(FIGURA 2,
do
GESTIN DE LA INGENIERA
COLUMNA G)
rra
Bo
HERRAMIENTAS Y MTODOS EN LA
SOFTWARE (FIGURA 2, COLUMNA I)
INGENIERA DEL
APNDICE A. DESCRIPCIN
EN LAS AC
DE LAS ESPECIFICACIONES
DISCIPLINAS RELACIONADAS DE LA
SOFTWARE (FIGURA 2, COLUMNA K)
do
rra
Gestin de proyectos
Gestin de la Calidad
Ergonoma
Ingeniera de sistemas
Bo
Ingeniera de ordenadores
Informtica
Gestin
Matemticas
APNDICES
Proceso de los
requisitos
Captura de los
requisitos
Anlisis de
requisitos
Especificacin de
requisitos
Validacin de los
requisitos
Cuestiones claves
en diseo del
software
Estructura y
arquitectura del
software
Anlisis y evaluacin
de la calidad del
diseo del software
Pruebas del
software
Mantenimiento del
software
Fundamentos
de la
Construccin
del Software
Fundamentos
de pruebas
software
Fundamentos de
mantenimiento
del software
Gestin de la
Construccin
Consideraciones
Prcticas
Niveles de
prueba
Notaciones del
diseo del software
Tcnicas de
pruebas
Medidas de
las pruebas
Proceso de
pruebas
Estrategias y
mtodos del diseo
de software
rra
Consideraciones
prcticas
Fundamentos del
diseo del
software
Construccin de
software
Problemas clave
en mantenimiento
de software
Fundamentos de
los requisitos del
software
Diseo de software
Proceso de
mantenimiento
do
Requerimientos
del software
Bo
Tcnicas de
mantenimiento
Identificacin
de la
configuracin
Control de
configuracin
software
Registro del
estado de la
configuracin
Auditora de
configuracin
software
Iniciacin y
alcance
Proceso de
implementaci
n y cambios
Planificacin de
un proyecto
software
Definicin de
procesos
Promulgacin
del proyecto
software
Revisin y
evaluacin
Cierre
Medidas de la
ingeniera del
software
Valoracin del
proceso
Herramientas y
Mtodos de
Ingeniera del
software
Herramientas
de Ingeniera
del software
Requerimiento
s de las
herramientas
sw
Herramientas
de Diseo SW
Herramientas
de
Construccin
SW
Medidas de
productos y
procesos
Herramientas
de Pruebas de
SW
Herramientas
de
Mantenimiento
de SW
Las
Herramientas
de Direccin de
Configuracin
de SW
Herramientas
de Direccin en
la Ingeniera de
Software
rra
Gestin de
lanzamiento y
entrega
Proceso de
ingeniera del
software
Calidad del
Software
Fundamentos
de Calidad de
Software
Consideraciones
Prcticas
Procesos de
Gestin de
Calidad del
Software
Disciplinas
relacionadas a la
ingeniera del
software
Ingeniera de
la
computacin
Ciencia de la
computacin
Gestin del
proceso SCM
Gestin de la
ingeniera del
software
Gestin
Matemticas
do
Gestin de
configuracin
software
Las
Herramientas
de Proceso de
Ingeniera de
Software
Herramientas
de Calidad de
Software
Bo
Cuestiones de
Herramientas
Compuestas
Mtodos de
Ingeniera del
software
Mtodos
heursticos
Mtodos
formales
Mtodos de
prototipado
Gestin de
proyectos
Gestin de
calidad
Software a
medida
Ingeniera
de sistemas
rra
Bo
do
r
CAPITULO 2
REQUERIMIENTOS DE SOFTWARE
do
DAG
ACRNIMOS
DEL SOFTWARE
1.
rra
INTERRUPCIN
Bo
1.1.
Bo
rra
do
1.3.
Requisitos funcionales y no funcionales
Los requisitos funcionales describen las funciones que el
software va a ejecutar; por ejemplo, ajustarse a un
formato de texto o modular una seal. Se conocen
tambin como capacidades.
Los requisitos no funcionales son los que actan para
obligar la solucin. Los requisitos no funcionales se
conocen a veces como apremios o requisitos de calidad.
2.1.
Modelos de proceso
El objetivo de este asunto es proporcionar una
comprensin de que el proceso de los requisitos
do
1.4.
Caractersticas inesperadas
Algunos
requisitos
representan
caractersticas
inesperadas del software- esto es, los requisitos que no
pueden ser tratados por un solo componente, pero que su
satisfaccin va a depender
de cmo todos los
componentes de software nter operan. El requisito del
rendimiento de procesamiento para un centro de
llamadas, por ejemplo, dependera de cmo el sistema de
telfono, el sistema de informacin, y los operadores
obraron
recprocamente
bajo
condiciones
de
funcionamiento reales. Las caractersticas inesperadas
son crucialmente dependientes en la arquitectura del
sistema. [Som05]
rra
Bo
1.6.
Requisitos del sistema y requisitos del software
En este asunto, el sistema significa una combinacin
recproca de los elementos para lograr un objetivo
definido. stos incluyen el hardware, software, soporte
lgico inalterable, gente, informacin, tcnicas,
instalaciones, servicios, y otros elementos de apoyo,
segn lo definido por el consejo internacional sobre la
ingeniera de sistemas (INCOSE00).
2.2.
Agentes de proceso
Este asunto introduce los papeles de la gente que
participa en el proceso de los requisitos. Este proceso es
fundamental interdisciplinario, y el especialista de los
requisitos necesita mediar entre el dominio del tenedor
de apuestas y el de la tecnologa de dotacin lgica. Hay
mucha gente implicada adems del especialista de los
requisitos, cada uno de ellos tiene una funcin en el
software. Los tenedores de apuestas variarn segn los
proyectos, pero incluyen siempre usuarios/operadores y
clientes (quines no necesitan ser iguales). [Gog93]
Los ejemplos tpicos de los tenedores de apuestas del
software incluyen (pero no restringen)
do
rra
2.3.
Ayuda y gerencia de proceso
Este asunto introduce los recursos de la gerencia de
proyecto requeridos y consumidos por el proceso de los
requisitos. l establece el contexto para la primera
subzona (definicin de la iniciacin y del alcance) de la
tecnologa de dotacin lgica KA de la gerencia. Su
propsito principal es hacer el acoplamiento entre las
actividades de proceso identificadas en 2.1 y los temas
de coste, recursos humanos, entrenamiento, y
herramientas. [Rob99; Som97; You01]
Bo
2.4.
Calidad y mejora de proceso
Este asunto se refiere al gravamen de la calidad y de la
mejora del proceso de los requisitos. Su propsito es
acentuar el papel dominante que los requisitos procesan
en trminos de coste y puntualidad de un producto de
software, y de la satisfaccin del cliente con ello
[Som97]. Ayudar a orientar el proceso de los requisitos
con estndares de calidad y modelos de mejora de
proceso para el software y los sistemas. El proceso de
calidad y la mejora se relacionan de cerca con la calidad
del software y la tecnologa de dotacin lgica KA. De
inters particular estn las aplicaciones de calidad del
software, sus cualidades y medida, y la definicin de
proceso de software. Este punto abarca
3.
3.2.
Tcnicas de Captura de requisitos
[Dav93; Kot00; Lou95; Pfl01]
Bo
do
rra
3.1.
Anlisis de requisitos
[Som05]
do
4.
rra
Otras
clasificaciones
pueden
ser
apropiadas,
dependiendo de la prctica normal y del uso que se le d.
4.1
Bo
4.2.
El modelo conceptual
[Dav93; Kot00; Som05]
4.3.
do
rra
Bo
5.
Especificacin de requisitos
5.2.
do
4.4.
Negociacin de los requisitos
Otro trmino comnmente utilizado para este tema es
resolucin del conflicto. Esto se refiere a problemas de
resolucin de los requisitos donde los conflictos ocurren
entre dos stakeholders que requieren caractersticas
mutuamente incompatibles, entre los requisitos y los
recursos, o en entre requisitos funcionales y no
funcionales, por ejemplo.
5.3.
Bo
rra
6.1
do
6.
6.2.
Prototipado
[Dav93; Kot00; Som05; Tha97]
rra
Bo
Validacin modelo
[Dav93; Kot00; Tha97]
6.4.
Pruebas de aceptacin
[Dav93]
do
rra
7.
Consideraciones prcticas
El primer nivel de la descomposicin de los puntos
presentados en este KA puede parecer que describe una
secuencia lineal de actividades. sta es una vista
simplificada del proceso.
[Dav93]
Bo
del
proceso
de
los
7.2.
Cambiar a gestin
[Kot00]
7.3.
7.4
do
Bo
rra
do
rra
Bo
Bo
rra
do
Bo
rra
do
Bo
rra
do
Bo
rra
do
Bo
rra
do
do
rra
Bo
CAPTULO 3
DISEO DE SOFTWARE
do
ACRNIMOS
Bo
rra
INTRODUCCIN
El diseo se define en [IEEE610.12-90] como el
proceso para definir la arquitectura, los componentes, los
interfaces, y otras caractersticas de un sistema o un
componente y el resultado de este proceso. Visto
como proceso, el diseo del software es la actividad del
ciclo de vida de la cual los requisitos del software se
analizan para producir una descripcin de la estructura
interna del software que servir como la base para su
construccin.
Ms exacto, un diseo del software (el resultado) debe
describir la arquitectura del software, en cmo la
descomposicin del software, la organizacin de los
componentes, y los interfaces entre los mismos
componentes. Debe tambin describir los componentes
en un nivel de detalle que permita su construccin.
El diseo del software desempea un papel importante
en el desarrollo de software: permite que la Ingeniera
del software produzca los diversos modelos para la
solucin que se pondr en desarrollo. Podemos analizar
y evaluar estos modelos para determinar si o no
permitirn que se satisfaga los requisitos.
Podemos tambin examinar y evaluar varias soluciones
alternativas y compensaciones. Finalmente, podemos
utilizar los modelos que resultan para planear las
actividades subsecuentes del desarrollo, adems de
usarlas como entrada o punto de partida de la
construccin y prueba en un listado estndar de los
procesos del ciclo de vida del software, tales como,
procesos del ciclo de vida del software de IEEE/EIA
12207 [IEEE12207.0-96], diseo del software consiste
en dos actividades que quepan entre el anlisis de
requisitos del software y la construccin del software:
Diseo de la arquitectura del software (a veces
llamado diseo de nivel superior): describiendo la
estructura del software y organizacin e identificar a
nivel superior los varios componentes
Diseo detallado software del: describiendo cada
componente suficientemente para tener en cuenta su
construccin.
1.4.1.
Abstraccin
La abstraccin es el proceso de olvidarse de la
informacin para poder tratar las cosas que son
diferentes como si fueran iguales. *Lis01+ En
el contexto del diseo del software, dos
mecanismos dominantes de la abstraccin son
parametrizacin
y
especificacin.
La
abstraccin por la especificacin conduce a tres
clases importantes de abstraccin: abstraccin
procesal, abstraccin de los datos, y abstraccin
del control (iteracin). [Bas98: c6; Jal97: c5,
c6; Lis01: c1, c2, c5, c6; Pre04: c1]
1.4.2.
Acoplador y cohesin
El acoplador se define como la fuerza de las
relaciones entre los mdulos, mientras que la
cohesin es definida por cmo los elementos
que componen un mdulo son relacionados.
[Bas98: c6; Jal97: c5; Pfl01: c5; Pre04: c9]
1.3.1.
Diseo arquitectnico
El diseo arquitectnico describe cmo el
software se descompone y se organiza en los
componentes (la arquitectura) del software
[IEEEP1471-00]
1.3.2.
1.4.
Permitir tcnicas
do
Diseo detallado
El diseo detallado describe el comportamiento
especfico de estos componentes.
La salida de este proceso es un sistema de modelos y los
artefactos que registran las decisiones principales que se
han tomado. [Bud04: c2; IEE1016-98; Lis01: c13;
Pre04: c9]
Descomposicin y modularizacin
Descomposicin y modularizacin del software
en partes ms pequeas e independientes,
generalmente con la meta de poner diversas
funcionalidades o responsabilidades en diversos
componentes. [Bas98: c6; Bus96: c6; Jal97: c5;
Pfl01: c5; Pre04: c9]
1.4.4.
Encapsulacin/el ocultar de la
informacin
Medios que ocultan de la encapsulacin/de la
informacin que agrupan y que empaquetan los
elementos y los detalles internos de una
abstraccin y que hacen esos detalles
inaccesibles. [Bas98: c6; Bus96: c6; Jal97: c5;
Pfl01: c5; Pre04: c9]
Bo
rra
1.4.3.
1.4.6.
Desahogo,
lo
completo
y
deshacindose de lo primitivo
Alcanzando desahogo, lo completo, y medios
no primitivos se asegura que un componente
de software captura todas las caractersticas
importantes de una abstraccin, y nada ms.
[Bus96: c6; Lis01: c5].
do
2.
1.4.5.
Bo
rra
3.1. Estructuras y puntos de vista arquitectnicos
do
Bo
rra
4.
4.3
Medidas.
do
Bo
rra
do
[Bud0: c16; Dor02: v1: c6s2, s3; Fre83: VI; Jal97: c6; 2
Mar: D; Pre04: c9]
Numerosos mtodos de diseo de software basados en
objetos han sido propuestos. El campo se ha
desarrollado basado en el diseo objeto de los mediados
de los aos ochenta (sustantivo = objeto; verbo =
mtodo; adjetivo = cualidad) con el diseo orientado a
objetos, donde la herencia y el polimorfismo
desempean un papel importante, el campo del diseo
del componente-basado, donde la meta informacin
puede ser definida y ser alcanzada (con la reflexin, por
ejemplo). Aunque las races del diseo Orientado a
Objetos provienen del concepto de la abstraccin de los
datos, el diseo responsabilidad-conducido tambin se
ha propuesto como alternativo al diseo Orientado a
Objetos.
rra
Bo
Bo
rra
do
[Smi93]
[Pre04]
[Pfl01]
[Mey97]
[Mar02]*
{Mar94}
[Li s01]
[Jal 97]
[ISO15026-98]
[ISO9126-01]
[IEEE12207.096]
[IEEE1471-00]
[iEEE1028-97]
do
c1
c13s1,
c13s2
c1s1, c13s2,
c3s1c3s3,c125128, c9s1c9s3
c2s1
{c6s1}
2.1 Concurrencia
c2
c10s3
v1c4s2
c6s3
222
c16s3,
c16s4
c5s4.1
{c6s2}
c5s4.1
c2s4
c5s2,
c5s5
CSD
c30
{DD}
c32s4,
c32s5
c4s3-c4s5
c12
c13s3
c32s2
c31
* ver siguiente seccin
c9
c9
c5s3
c30
c5s4.1
c2
c9
c5s1,
c5s2,
c6s2
c2s3
Bo
{c5s2}
c2s2
c5s4.1
rra
[IEEE1016-98]
[Fre83]
[Dor02]
[Bus96]
c11s1
1.Fundamentos del
Diseo de Software
1.1Conceptos Generales
de Diseo
[Bud03]
[Bos00]
[Boo99]
[Bas03]
{Bas98}
c30
c5s5
c2s
5
c28
{c1
3s3
}
c28
{c1
5s1,
c15
s3}
c4s
2
c11
s3,
[c9s
1,
c9s
2,
c10
s2,
c10
s3}
c6s1
c1s1c1s3
c7s1,
c7s2,
c10s2c10s4,
c11s2
c11s4
4.3 Mtricas
c4
c5s2.1,
c5s2.2,
c5s3,
c5s4
c4
[Pre04]
[Pfl01]
c2s3
c6s4
v1c4s2
542
576
{D}
c5s5,
c7s3
c5s6,
c6s5,
c7s4
c14s1
c3
c30
c5s5
c5s6,
c5s7,
c11s5
c15
[Smi93]
[Mey97]
r
[Li s01]
[Jal 97]
DP
c6s2
c5s2.3
[Mar02]*
{Mar94}
[IEEE101698]
[iEEE102897]
[IEEE147100]
[IEEE12207.
0-96]
[ISO912601]
[ISO1502698]
*
c1s1c1s3,
c6s2
c6s3.1
[Fre83]
[Dor02]
[Bus96]
[Bud03]
[Bos00]
c5
Bo
c28
c5s
9
4. Anlisis de la Calidad y
Evaluacin del Diseo de
Software
4.1 Atributos de Calidad
do
c31
rra
[Boo99]
[Bas03]
{Bas98}
3. Estructura y Arquitectura
Software
6. Mtodos y Estrategias en
Diseo de Software
6.1 Estrategias generales
6.2 Diseo Orientado a Funciones
(Estructurado)
6.3 Diseo Orientado a Objetos
v1c5
c8,
c10,
c12
c5s1c5s4
c5s3,
c6s3
DR
c7s2
DR
304320,
533539
c5s1.4
328352
c5s4
c6s4
c10
c11
c8,c11
c13s13
c2s2
D
c9,c10
c9
6.6 Otros
181192
c11
c2s2
c29
[Smi93]
[Pfl01]
[Pre04]
[Mey97]
[Mar02]*
{Mar94}
[Li s01]
[Jal 97]
485490,
506513
420436
201120,
514532
Bo
c6,
c18
rra
do
429
[IEEE101698]
[iEEE102897]
[IEEE147100]
[IEEE12207.
0-96]
[ISO912601]
[ISO1502698]
c6
[Fre83]
[Bus96]
[Dor02]
[Bud03]
[Boo99]
c4, c8
c11,
c12,
c14,
c30,
c31
[Bos00]
[Bas03]
{Bas98}
{c8s
4}
c12s
1,
c12s
2
5. Notaciones de Diseo de
Software
EL
DISEO
DE
do
rra
Bo
DE
LECTURAS
do
APNDICE
A.
LISTA
COMPLEMENTARIAS
rra
Bo
do
Bo
rra
rra
Bo
do
r
CAPTULO 4
CONSTRUCCIN DEL SOFTWARE
OMG
UML
INTRODUCCIN
do
ACRNIMOS
DE
Bo
rra
do
Bo
rra
Gestin de la Construccin
3.
Consideraciones Prcticas
do
[McC04]
Se pueden medir numerosas actividades de
construccin y artefactos, incluidos el cdigo
desarrollado, el cdigo modificado, el cdigo
reutilizado, el cdigo destruido, la complejidad del
cdigo, las estadsticas de la inspeccin del cdigo, las
tasas de rectificacin de errores y de identificacin de
errores, y los horarios. Estas mediciones pueden ser
tiles para propsitos de gestin de la construccin,
asegurando la calidad durante la construccin,
mejorando los procesos de construccin, amn de otras
razones.
2.
rra
Bo
[Bec99; McC04]
La eleccin de un mtodo de construccin es un aspecto
clave de la planificacin de la actividad de
construccin. La eleccin de un mtodo de construccin
afecta hasta dnde se realizan los prerrequisitos de
construccin, el orden en el que se realizan, y el grado
hasta el que se espera que se completen antes de que
comience el trabajo de construccin.
El modo como se afronta la construccin afecta a la
habilidad del proyecto para reducir la complejidad,
anticipar cambios y construir para verificar. Cada uno
de estos objetivos puede tambin afrontarse en los
niveles de proceso, requisitos y diseo pero tambin
estarn influenciados por la eleccin de un mtodo de
construccin.
La planificacin de la construccin tambin define el
orden en el que se crean e integran, segn el mtodo
elegido, los componentes, los procesos de gestin de la
calidad del software, la asignacin de tareas a
ingenieros del software especficos y el resto de las
tareas.
Bo
rra
do
3.5 Reutilizacin
Bo
rra
do
[IEEE1517-99; Som05].
Tal y como se afirma en la introduccin del (IEEE151799):
El implementar la utilizacin del software conlleva
algo ms que crear y utilizar libreras de recursos.
Requiere formalizar la prctica de la reutilizacin por
medio de la integracin de procesos y actividades de
reutilizacin en el ciclo de vida del software. Sin
embargo, la reutilizacin tiene suficiente importancia en
la construccin del software como para dedicarle aqu
un tema.
Las tareas relacionadas con la reutilizacin en la
construccin del software durante su codificacin y
pruebas son:
[Som05]
[Mcc04]
[Mag93]
[Ker99]
[IEEE
12207.0]
[IEEE
1517]
[Hun00]
[Ben00]
[Bec99]
1. Fundamentos de
Construccin de
Software
1.2 Anticipacin a
Cambios
c2, c3
c17
c7,c8
c2, c3
c11,c13c14
c3-c5,
c24,
c31,
c32, c34
c2, c9
c21,
c23,
c34,
c43
c1, c5, c6
c2,c3,
c5,c7
rra
c4
c6
do
1.1 Minimizar la
Complejidad
1.4 Estndares de
Construccin
2. Gestin de la
Construccin
2.1 Modelos de
Construccin
2.2 Plan de
Construccin
3.3 Codificacin
3.4 Pruebas de
Construccin
3.5 Reusabilidad
3.6 Calidad de
Construccin
3.7 Integracin
c2, c3,
c27, c29
c3,
c4,c21,
c27-c29
c12,
c15,
c21
c17
c18-c10,
p175-6
c33
c18
c16
c25, c28
c6
c12,
c14-c20
c3, c5,
c24
C4
c6-c10
c18
c8, c20c23,
c31-c34
c4
c10
Bo
2.3 Mtricas de la
construccin
3. Consideraciones
Prcticas
3.1 Diseo de la
Construccin
3.2 Lenguajes de
Construccin
c2, c3,
c7-c9,
c24,
c27,
c28,
c31,
c32-c34
c5-c19,
c25-c26
X
c34,
c43
c4
c22, c23
c4,
c6, c7
c8, c20c25
X
c18
c14
c29
RECOMENDADAS
CONSTRUCCIN DE SOFTWARE
PARA
LA
Bo
rra
do
REFERENCIAS
Bo
rra
do
Bo
rra
do
Bo
do
rra
r
CAPTULO 5
PRUEBAS DEL SOFTWARE
ACRNIMOS
SRET
do
INTRODUCCIN
Bo
rra
do
Bo
rra
1.2.3
do
1.
rra
1.2.5
Bo
Niveles de Pruebas
Bo
Pruebas de Integracin
[Jor02:c13, 14; Pfl01:c8s7.4]
rra
2.1.2
do
Pruebas de Unidad
[Bei90:c1;
Per95:c17;
Pfl01:c8s7.3]
(IEEE1008-87)
Las pruebas de unidad verifican el funcionamiento
aislado de partes del software que se pueden probar
independientemente. Dependiendo del contexto, estas
partes podran ser subprogramas individuales o un
componente ms grande formado por unidades muy
relacionadas. Hay una definicin ms precisa de prueba
de unidad en el estndar IEEE de pruebas de unidad del
software (IEEE1008-87), que tambin describe un
mtodo integrado para realizar y documentar pruebas de
unidad sistemticamente. Normalmente, las pruebas de
unidad se realizan con acceso al cdigo fuente y con el
Pruebas de instalacin
[Per95:c9; Pfl01:c9s8.6]
Bo
2.2.3
Pruebas de regresin
[Kan99:c7; Per95:c11, c12; Pfl01:c9s8.1]
(Rot96)
rra
2.2.6
do
2.2.1
Pruebas
de
conformidad/pruebas
funcionales/pruebas de correccin
[Kan99:c7; Per95:c8] (Wak99)
2.2.7
Pruebas de rendimiento
[Per95:c17; Pfl01:c9s8.3] (Wak99)
Pruebas de desgaste
[Per95:c17; Pfl01:c9s8.3]
Pruebas de continuidad.
Pruebas de recuperacin
[Per95:c17; Pfl01:c9s8.3]
2.2.5
2.2.11
Materializacin de la confiabilidad y
evaluacin [Lyu96:c7; Pfl01:c9s.8.4] (Pos96)
Pruebas de configuracin
[Kan99:c8; Pfl01:c9s8.3]
[Kan99:c1]
Quizs la tcnica usada ms globalmente continan
siendo las pruebas ad hoc: las pruebas se generan a
partir la habilidad, intuicin y experiencia en programas
similares del ingeniero de software. Las pruebas ad hoc
pueden ser tiles para identificar casos de prueba
especiales, aquellos que no se pueden extraer
fcilmente mediante tcnicas formales.
3.1.2
Tcnicas de pruebas
do
2.2.13
3.2.1
Particiones de equivalencia
[Jor02:c7; Kan99:c7]
rra
Bo
Pruebas ad hoc
3.2.2
Tablas de decisin
[Bei90:c10s3] (Jor02)
3.2.6
do
Pruebas aleatorias
[Bei90:c13; Kan99:c7]
Conjeturar errores
[Kan99:c7]
rra
3.3.1
Criterio basado en el flujo de control
[Bei90:c3; Jor02:c10] (Zhu97)
Bo
3.4.2
Perfil operativo
[Jor02:c15; Lyu96:c5; Pfl01:c9]
3.5.2
Pruebas Orientadas
Pfl01:c8s7.5] (Bin00)
Objetos
[Jor02:c17;
seguridad
crtica
Bo
de
Funcional y estructuralmente
[Bei90:c1s.2.2; Jor02:c2, c9, c12; Per95:c17]
(Pos96)
rra
do
Deterministas vs aleatorias
(Ham92; Lyu96:p541-547)
4.1.3
Densidad de fallos
[Per95:c20] (IEEE982.1-88; Lyu96:c9)
4.1.4
Bo
Puntuacin de la mutacin
[Zhu97:s3.2-s3.3]
rra
Introduccin de errores
[Pfl01:c8] (Zhu97:s3.1)
do
4.2.2
Medidas de la cobertura/completitud
[Jor02:c9; Pfl01:c8] (IEEE982.1-88)
5.1.2
5.1.3
Bo
5.1.6
rra
do
Equipo de pruebas
independiente
interno
vs
equipo
5.1.7
Finalizacin
[Bei90:c2s2.4; Per95:c2]
5.2.1
Planificacin
[Kan99:c12; Per95:c19; Pfl01:c8s7.6]
(IEEE829-98:s4; IEEE1008-87:s1-s3)
Bo
rra
5.2.5
do
Ejecucin
[Bei90:c13; Kan99:c11] (IEEE1008-87:s6, s7)
5.2.7
Seguimiento de defectos
[Kan99:c6]
[Bec02]
[Bei09]
[Jor02]
[Kan99]
[Kan01]
[Lyu96]
c1
c2
c2s2.2
c2
c2s2.2
[Per95]
[Pfl01]
c1
c8
[Zhu97]
c1s1.4
c21
c1
do
c1
c1
c2
c3
c3, c13
rra
2. Niveles de Pruebas
c1
Pruebas de Unidad
c13
c8
c1
c17
c8s7.3
Pruebas de Integracin
c13,
c14
c8s7.4
c15
c9
c8
c9s8.3
Pruebas de aceptacin/
calificacin
c10
c9s8.5
Pruebas de Instalacin
c9
c9s8.6
Bo
c13
Pruebas de conformidad/Pruebas
funcionales/Pruebas de correccin
c7
Materializacin de la confiabilidad
y evaluacin
c8
c7
c9s8.4
c11,
c12
c9s8.1
Pruebas de Rendimiento
c17
c9s8.3
Pruebas de Desgaste
c17
c9s8.3
c17
c9s8.3
Pruebas de Regresin
c7
Pruebas de Continuidad
Pruebas de Recuperacin
Pruebas de Configuracin
c9s8.3
c8
III
s1.1
c8s7.3
c8
c9s8.3
[Bec02]
[Bei09]
[Jor02]
[Kan99]
[Kan01]
[Lyu96]
[Per95]
[Pfl01]
[Zhu97]
3. Tcnicas de Pruebas
3.1Pruebas Basadas en la
Intuicin y Experiencia
Pruebas ad hoc
c1
c3
c7
c7
c6
c7
Pruebas aleatorias
c11
c9
c8
s2.2
c13
c3
c7
c10
c8
c5
c3
c5
rra
c10s3
Basadas en Mquinas de
Estado Finito
Basadas en las
especificaciones formales
do
Tablas de Decisin
Conjeturar errores
c7
s3.2,
s3.3
c17
c15
Perfil operativo
Pruebas Orientadas a la
Confiabilidad del Software
c5
c9
c6
Bo
c17
c8s7.5
c20
c17
c1s2.2
c1,
c11s11.3
[Bec02]
[Bei09]
[Jor02]
[Kan99]
[Kan01]
[Lyu96]
[Per95]
[Pfl01]
[Zhu97]
c7s4.2
c9
c2
c1
c8
Densidad de fallos
c20
c9
Modelos de crecimiento de
la Confiabilidad
c7
do
c9
Introduccin de errores
c8
c8
Puntuacin de la mutacin
Comparacin y efectividad
relativa de las tcnicas
c8, c11
c17
rra
c13s3.2
III
c8
c5
c1-c4
c9
c13s5
c12
c19
c9s8.8
c13s2.2,
c1s2.3
c15
c4
c9
Bo
c9
Finalizacin
c2s2.4
Reutilizacin de pruebas y
patrones de pruebas
c13s5
c4, c21
c2
Generacin de casos de
Prueba
Desarrollo del entorno de
Pruebas
Ejecucin
c13
c12
c19
c7
c11
c11
c20,
c21
c5
c6
c20
c87s7.6
s3.2,
s3.3
s5
PARA
LA
Bo
rra
do
REFERENCIAS RECOMENDADAS
GESTIN DEL SOFTWARE
ADICIONALES
do
rra
Bo
do
Bo
rra
rra
Bo
do
r
CAPITULO 6
MANTENIMIENTO DEL SOFTWARE
ACRNIMOS
INTRODUCCIN:
do
rra
Bo
do
rra
Mantenimiento del
Software
Fundamentos de
Mantenimiento del
Software
Problemas clave en
Mantenimiento de
Software
Definicin y
Conceptos
Cuestiones
Tcnicas
Proceso de
Mantenimiento
Cuestiones de
Admnistracin
Bo
Naturaleza del
Mantenimiento
Necesidad de
Mantenimiento
Distribucin de
los
componentes
Mayora de Costes de
mantenimiento.
Estimacin de Coste
de Mantenimiento
Evolucin del
Software
Proceso de
Mantenimiento
Tcnicas de
Mantenimiento
Comprensin del
programa
Reingeniera
Actividades de
Mantenimiento
Medicin del
Mantenimiento
del Software
Categoras de
Mantenimiento
Ingeniera
Inversa
do
rra
Bo
Mejoras
Perfectivo
Adaptativo
2.
Entendimiento limitado.
[Dor02:v1c9s1.11.4; Pfl01:c11s11.3; Tak97:c3]
El entendimiento limitado se refiere a como rpidamente
un ingeniero de software puede entender donde hacer un
cambio o una correccin en el software que este
individuo no desarroll. La investigacin indica que
aproximadamente el 40 % al 60 % del esfuerzo de
mantenimiento est dedicado al entendimiento del
software para ser modificado. As, la comprensin del
software es de gran inters por parte de los ingenieros de
software.
La comprensin es ms difcil en la representacin
orientada por texto, en el cdigo original, por ejemplo,
donde es a menudo difcil de remontar la evolucin de
software por sus liberaciones/versiones si los cambios no
son documentados y cuando los desarrolladores no estn
disponibles para explicarlo, que es a menudo el caso.
2.1.2.
Pruebas
[Art88:c9; Pfl01:c11s11.3]
rra
Correction Enhancement
Correccin
Proactiva
Preventivo
Reactiva
Correctivo
2.1.1.
do
2.1.3.
Bo
Anlisis de impacto
[Art88:c3; Dor02:v1c9s1.10; Pfl01: C11s11.5]
2.1.4.
do
2.2.3. Proceso
[Pau93; Ben00:c6sb; Dor02:v1c9s1.3]
rra
Bo
2.2.5. Externalizacin
[Dor02:v1c9s1.7;
(Car94;McC02)
Pig97:c9s9.1,
s9.2],
2.3.3. Experiencia
[ISO14764-00:s7,
s7.2,
s7.2.1,
s7.2.4;
Pig97:c8;Sta94]
La Experiencia, en forma de juicio de expertos
(usando la tcnica Delphi, por ejemplo), analogas, y una
estructura de interrupcin de trabajo, deberan ser usados
para aumentar los datos de los modelos paramtricos.
Claramente el mejor acercamiento a la valoracin de
mantenimiento es el de combinar datos empricos y
experiencia. Deberan proporcionar estos datos como
consecuencia del uso de un programa de medida.
do
rra
Jon98:c27;
Bo
3.
El Proceso de Mantenimiento
Revisin de
Mantenimiento/
Aceptacin
Problema y Anlisis
de Modificacin
do
Modificacin
Implementacin
Migracin
rra
Retirada
Bo
Peticin de
modificacin
Anlisis
Diseo
Entrega
Implementacin
Prueba de Aceptacin
Prueba del Sistema
actividades de
de desarrollo de
el anlisis, el
documentacin.
3.2.1.
Actividades nicas
[Art88:c3; Dor02:v1c9s1.9.1; ieee1219-98:s4.1,
s4.2; ISO14764-99:s8.2.2.1, s8.3.2.1;
Pfl01:c11s11.2]
Bo
rra
do
3.2.2.
Apoyando actividades
[IEEE1219-98:A.7, 11 un ; IEEE12207.0-96:c6,
c7;ITI01; Pig97:c10s10.2, c18]; (Kaj01)
la identificacin de la organizacin de
mantenimiento de software
una estimacin de costes de mantenimiento de
software
El siguiente paso debe desarrollar el correspondiente
plan de mantenimiento de software. Este plan debera
estar preparado durante el desarrollo de software, y
debera especificar como los usuarios solicitarn
modificaciones de software o relatarn problemas.
El plan de mantenimiento de software [Pig97] es dirigido
en IEEE 1219 [IEEE1219-98] Y ISO/IEC 14764.
[ISO14764-99] ISO/IEC14764 proporciona directrices
para un plan de mantenimiento.
3.2.4.
ser
do
Bo
rra
4.2. Reingeniera
[Arn92:c1,
c3-c6;
Dor02:v1c9s1.11.4;
IEEE1219-98:La b 2], (Fow99)
3.2.5.
Calidad de software
[Art98:c7s4; IEEE12207.0-96:s6.3; ieee121998:A.7; ISO14764-99:s5.5.3.2]
No es suficiente, tampoco, simplemente esperar lo que
aument la calidad sea resultado del mantenimiento de
software. Debe ser planificado y procesos puestos en
prctica para apoyar el proceso de mantenimiento. Las
actividades y tcnicas para la Garanta de calidad de
Software (SQA), V*V, revisiones, y revisiones de
cuentas deben ser seleccionadas de comn acuerdo con
todos los otros procesos para alcanzar el nivel deseado
de calidad. Tambin le recomiendan que el mantenedor
adapte los procesos de desarrollos de software, tcnicos
y entregables, por ejemplo probando la documentacin,
y pruebe resultados.
IEEE1219-
c11s11.5
c11s11.3
Prueba
2.2 Gestin de
Elementos
Personal
c16
c9s9.4
s6.8,
s6.8.1
Mantenibilidad
c4s11
v1c9s1.6
c3
c11s
11.3
v1c9s1.1
1.4
c2s2.3
108-124
c1
c11s11.2
s3, s5.5
r
C2s2.3
c3
C31
c11s11.2
c11s11.3
do
s4.1,s4.3s4.1
0, s4.11,s6.2
s3.1.1,s3.1.2,
s3.1.7,A.1.7
v1c9s1.5
s5
c1s1.2
1.2 Naturaleza
del
Mantenimiento
c4s8-
v1c9s1.6
v1c9s1.1
0.1v1c9s1.1
0.3
s6c
rra
Comprensin
Limitada
s11.
4
2.1 Elementos
Tcnicos
s10.1,
s10.2,s10.3
C9
1.3 Necesidad
de
Mantenimiento
10-17
Alineamiento
con Objetivos
organizacionales
c1s1.0c1s1.2,c11s1.1
,c11s1.2
1.5 Evolucin
del Software
s5, s9.3,
s11.4
Anlisis de
Impacto
c3
1.6 Categoras
de
Mantenimiento
63-90
1.4 Mayora de
los Costes de
Mantenimiento
63-90
s6.1
S3.1.12
s4
63-90
1.1 Definiciones
y Terminologa
s6a
s3
Bo
1219-
1061-
2.Elementos
Clave en el
Mantenimiento
Software
14764-
[Tak 97]
[Sta 04]
[Pre 04]
[Pig 97]
[Pfl 01]
[Par 86]
[Leh 97]
[Jon 98]
[ISO
00]
[IEEE
12207.0-96]
[IEEE
98]
[IEEE
98]
[IEEE 610.1290]
[Hen 01]
[Dor 97]
[Dek 92]
[Car 90]
[Boe 81]
[Ben 00]
[Art88]
[Arn 92]
[Abr 93]
1.Fundamentos
del
Mantenimiento
del Software
4.3 Ingeniera
Inversa
c3
c7
c11s11.5
s6.2
s6.3
s5.5.3.2
A.11
c7,c8
s7
A.3
Actividad de
planificacin del
mantenimiento
A.7
c10s10.2
, c18
c6,c7
A.7,A.11
Actividades de
soporte
C4
B.2
B.3
c11s11.2
s8.2.2.1,
s8.3.2.1
s4.1-s4.2
v1c9s1.9
.1
s5.5
c2
c5
c7s1
s8
s4
s8
s9.2
239-249
Tabla 3
s2-s3
s7,s7.2,
s7.2.1,
s7.2.4
c6s6.1c6s6.3
c14s14.6
c8
r
c8
c8
c11s11.3
c27
c30
c30
c27
s7
c3
s7
c11s11.3
do
3. Proceso de
Mantenimiento
v1c9s1.1
1.4
s9.1
rra
s6b
s9.1,
s9.2,
s10.1
Experiencia
v1c9s1.1
1.4
s2, s6b,s9.2,
s10.1,s11.4
c3
c9s9.1c9s9.2
v1c9s
1.7
s7
Subcontratacin
v1c9s1.1
1.3
Gestin de la
configuracin
del software
c2,c10
3.2 Actividades
de
Mantenimiento
s11.4
c7s4
3.1 Procesos de
Mantenimiento
s7, s8,
s9.2,s9.3,
s11.4,s11.5
Modelos de
parametrizacin
s9.2,
s11.4,
s11.5
A.2
63-90
c8
c2s2.5
c12s12.1
c12s12.3
c4s7
s6a, s7
Aspectos
organizacionales
de
mantenimiento
4.2 Reingeniera
63-90
Estimacin de
costes
s9.2,
s10.3,s11.2,
s11.3,s11.5
4.1 Programa de
Comprensin
c14
Calidad del
software
c1,c3-c6
Actividades
nicas
63-90
Medidas
especficas
63-90
2.4 Medidas
c12
Bo
v1c9s1.3
s6b
Procesos
2.3 Estimacin
de Costes de
Mantenimiento
4. Tcnicas
para el
Mantenimiento
Bo
rra
do
Bo
rra
do
Bo
rra
do
Third
Bo
rra
do
Bo
do
rra
r
CAPTULO 7
GESTIN DE CONFIGURACIN DEL SOFTWARE
rra
do
CCB
CM
FCA
MTBF
PCA
SCCB
ACRNIMOS
Bo
INTRODUCCIN:
Un sistema se puede definir como una coleccin de
componentes que se organizan con el objetivo de
proporcionar una funcin o conjunto de funciones
determinadas (IEEE 610.12-90). La configuracin de un
sistema son las caractersticas funcionales y/o fsicas del
hardware, firmware, software o una combinacin de las
mismas, segn lo dispuesto en la documentacin tcnica
y el resultado obtenido en un producto. (Buc96) Tambin
se puede considerar como una coleccin de versiones
especficas de elementos de hardware, firmware o
software que se combinan de acuerdo con un proceso de
construccin especfico para un satisfacer un propsito
particular. Por tanto la gestin de configuracin es la
disciplina de identificar la configuracin de un sistema en
momentos diferentes con el propsito de controlar de una
manera sistemtica los cambios en la configuracin y
mantener la integridad y el seguimiento de de los
cambios en la configuracin durante el ciclo de vida del
sistema. (Ber97) Se define formalmente (IEEE610.12-90)
como Una disciplina que establece direccin y
seguimiento tcnicos y administrativos a: la
identificacin y documentacin de las caractersticas
funcionales y fsicas de un elemento de configuracin,
toma notas y produce informes de cambios en el proceso
y en el estado de implementacin y verifica el
cumplimiento de los requerimientos especificados.
La gestin de la configuracin del software (SCM) es un
proceso que soporta el ciclo de vida del software
(IEEE12207.0-96) que beneficia a la gestin de
proyectos, las actividades de desarrollo y mantenimiento,
las actividades de garanta y a los clientes y usuarios del
producto final.
El concepto de gestin de configuracin es aplicable a
todos los elementos que se pueden controlar, aunque
[Ber92
Bo
rra
do
1.3.2
Bo
1.3.3
La biblioteca de la SCM
Procedimientos de aprobacin y de peticin de
cambios del software (SCR)
Tareas de gestin de cambios y cdigo (y los
productos relacionados)
Informes del estado de configuracin del software y
reunin de medidas de la SCM
Auditora de la configuracin del software
Gestin y seguimiento de la documentacin del
software
Construccin del software
Gestin y seguimiento de los lanzamientos del
software y su distribucin
Las herramientas utilizadas en estas reas, tambin
pueden proporcionar medidas para mejorar el proceso.
Royce [Roy98] describe siete medidas centrales tiles
para gestionar procesos de la ingeniera del software. La
informacin disponible de las varias herramientas de la
SCM es afn al indicador de Trabajo y Progreso de Royce
y a sus indicadores de calidad de Cambio de Trfico y
Estabilidad, Ruptura y Modularidad, Repeticin del
Trabajo y Adaptabilidad y TMEF (Tiempo medio entre
fallos) y Madurez. Los informes para estos indicadores se
pueden organizar de varias maneras, como por elemento
de configuracin del software o por tipo del cambio
requerido.
La figura 3 muestra una asignacin representativa entre
las habilidades de las herramientas y procedimiento a
Actividades de la SCM.
rra
1.3.1
do
1.3.4
do
Control Proveedores/Subcontratas
[Ber92:c13; Buc96:c11; IEEE828-98:c4s3.6]
Un proyecto de software podra hacer uso o adquirir
productos software que se hayan comprado, como
compiladores u otras herramientas. La planificacin de la
SCM considera si y como se pondrn estos elementos
bajo control de configuracin (por ejemplo, integrados en
bibliotecas de proyecto) y como se evaluarn y
gestionarn los cambios y actualizaciones.
Consideraciones similares son aplicables al software
subcontratado. En este caso, tambin se deben establecer
los requerimientos de la SCM a ser impuestos a los
procesos de la SCM del subcontratista como parte del
subcontrato y los medios para monitorizar que se cumple
con ellos. El ltimo incluye consideraciones acerca de
que informacin de la SCM ha de estar disponible para
poder monitorizar, de una manera eficiente, que se
cumplen los requerimientos.
rra
1.5
Bo
1.3.5
Control de Interaccin [IEEE828-98:c4s3.5]
Cuando un elemento de software interacciona con otro
elemento de software o hardware, un cambio a cualquiera
de los dos elementos puede afectar al otro. La
planificacin para los procesos de la SCM considera
como se identificarn los elementos que interaccionan y
como se gestionarn y comunicarn los cambios a dichos
elementos. El papel de la SCM puede ser parte de
proceso de nivel de sistema ms general para el control y
especificacin de las interacciones y podra afectar a las
especificaciones de las interacciones, planes de control de
las interacciones e documentos de control de las
interacciones. En este caso, la planificacin de la SCM
para el control de las interacciones ocurre dentro del
contexto del proceso de nivel de sistema. Se puede
encontrar una discusin del rendimiento de las
actividades del control de las interacciones en
[Ber92:c12].
1.4
Plan de la
Pau93:L2-81]
SCM
[Ber92:c7;
1.5.1
Buc96:c3;
2.1.3
rra
1.5.2
2.1.2
do
3.
Identificacin de la Configuracin del
Software
[IEEE12207.0-96:c6s2.2]
Bo
2.1.4
Versiones del software [Bab86:c2]
Los elementos de software evolucionan al mismo tiempo
que el proyecto de software avanza. Una versin de un
elemento de software es un elemento identificado y
especificado particularmente. Se puede pensar en ella
como el estado de un elemento que evoluciona.
[Con98:c3-c5] Una revisin es una nueva versin de un
elemento que reemplazar la versin anterior. Una
variante es una nueva versin de un elemento que se
aadir la configuracin sin reemplazar la versin
anterior.
2.1.5
Lnea base [Bab86:c5; Buc96:c4; Pre04:c27]
La lnea base de un software es un conjunto de elementos
Figura 4 Adquisicin de elementos
4.
Bo
rra
2.1.6
do
Bo
3.1.2
do
[Ber92:c9;
rra
3.1.1
5.
Registro del Estado de la Configuracin del
Software
[IEEE12207.0-96:c6s2.4; Pau93:L2-85;
Pre04:c27;Som05:c29]
La contabilidad del estado de la configuracin del
software (SCSA) es la actividad de registrar y
proporcionar la informacin necesaria para una gestin
efectiva de la configuracin del software
4.1 Informacin del Estado de la Configuracin del
Software [Buc96:c13; IEEE828-98:c4s3.3]
6.
rra
5.
do
Bo
Bo
rra
do
c7
c3
Recursos y planificacin
c7
c3
Seleccin de herramientas e
implementacin
c15
Control Proveedores/Subcontratas
Control de Interaccin
c13
c12
1.4Plan de SCM
c7
6.2.1
[Som05]
[Roy98]
[Pre04]
[Pau93]
c29
c4s2
c4s4,
c4s5
c11
c3,
App
A
c4s3.6
c4s3.5
c6
L281
L287
do
Mtricas y mediciones
c3
c4
c4
188-202,
283-298
c3
c15
c6s2.2
c8
L283
c4s3.1
c4,
c6
c4,
c6
c2
c5
2.2Biblioteca Software
c2,
c5
c29
c27
rra
Configuracin software
c2
c27
c2
c27
c27
c27
c4
c4
c14
c4
c4s3.1
3. Control de la Configuracin Sw
c6s2.3
L282
L284
Bo
c4s3.2
c9
c9
c6
c9
c9
5. Auditora de la Configuracin Sw
5.1 Auditora de la Configuracin
Funcional
5.2 Auditora de la Configuracin Fsica
5.3 Auditora de una Lnea Base de Sw
6. Gestin del Lanzamiento y
Distribucin Sw
6.1 Construccin Software
6.2 Gestin del Lanzamiento Sw
c2
1.5Seguimiento de la SCM
[Moo98]
c5
1.3Planificacin de SCM
Organizacin y responsabilidades
c4s2.1
c4s1,
c4s2.3
[Mid97]
c2
[IEEE1220
7.0-96]
c2
[IEEE82898]
c4
[Dar90]
[Buc96]
[Con98]
[Ber92]
[Bab86]
c9,
c11
c9,
c11
c9,
c11
c12
c10
c13
c10
c13
c11
c15
c29
c27
c29
c27
c27
c4s3.2.4
c27
c29
c29
c6s2.4
L285
c27
c6s2.5
L286
c27,
c26
c4s3.3
c4s3.4
c6s2.6
c6
c29
c29
do
Bo
rra
do
Bo
rra
do
Bo
rra
do
rra
Bo
CAPTULO 8
GESTIN DE LA INGENIERA DEL SOFTWARE
do
ACRNIMOS
rra
Bo
do
Bo
rra
do
Bo
rra
Iniciacin y Alcance
2.
do
1.
rra
Bo
Planificacin de un Proceso
La seleccin de un modelo adecuado de ciclo de vida
del software (por ejemplo, un prototipado evolutivo en
espiral) y la adaptacin y el despliegue de ciclos de vida
del software, se emprenden a la luz del alcance
particular y de los requisitos del proyecto. Tambin se
seleccionan mtodos y herramientas pertinentes.
[Dor02: el v1c6,v2c8; Pfl01: el c2; Pre04: el c2; Rei02:
el c1,c3,c5; Som05: el c3; Tha97: el c3] A nivel de
proyecto, se utilizan mtodos y herramientas adecuados
para descomponer el proyecto en tareas, con entradas
asociadas, resultados y condiciones de finalizacin de
obra (por ejemplo, una estructura para la
descomposicin del trabajo). [Dor02: el v2c7; Pfl01: el
c3; Pre04: el c21; Rei02: el c4,c5; Som05: el c4; Tha97:
el c4,c6] Esto influye a su vez en las decisiones sobre el
horario y estructura de la organizacin de alto nivel del
proyecto.
do
rra
Bo
[Som05: c4]
do
rra
Bo
Se
evala
continuamente
y
a
intervalos
predeterminados la adhesin a los diferentes planes. Se
analizan los resultados y las condiciones de acabado de
cada tarea. Se evalan los entregables en trminos de
las caractersticas que ellos requieren (por ejemplo, por
medio de revisiones y auditoras). Se investiga el
consumo de fuerzas, la adhesin a horarios, y los costes
a da de hoy, y se examina el uso de recursos. Se revisa
de nuevo el perfil de riesgo del proyecto y se evala la
adhesin a los requisitos de calidad.
3.6 Informes
Revisin y Evaluacin
do
6.
rra
Cierre
Bo
Bo
rra
do
do
Bo
rra
[Dor02]
[Fen98]
[Pfl01]
[Pre04]
[Rei02]
[Som05]
c4
c7
c5
c6
c6
c6
[Tha97]
1.Iniciacin y Alcance
v1c6, v2c7,
v2c8
c3
v2c7
v2c7
v1c8,
v2c3-c5
c12
c1, c3,
c5
c3, c4
c3
c24
c3
c3
c23,
c24
c24
c25
c26
c13,
c14
c5, c6
c4, c23
c5
c8, c9
c11
c4
c4
c24,
c25
c4
c6, c7
c4
c10
c22
c12
c5, D
c3, c10
c25
c22
c3, c10
c10
c10
c3, c9
c3, c10
c10
c3, c10
c10
c3, c10
c10
c3, c10
c4
c5, G
c10,
c12
c10
v1c8, v2c3,
c5
c5, C,D,E,F
c4
c4
c8, c9
c3, c13
c9, c10
c4
v1c8,
v2c2-c5,
c7
v2c7
v1c8, v2c3,
c5
c3, c4,
c6
c4
c3
Bo
c2, c21
c2, c3
rra
v2c4
do
1.1 Determinacin y
Negociacin de Requisitos
1.2 Viabilidad, Anlisis
1.3 Construir para Verificar
2. Planificacin de un
Proyecto Software
2.1 Planificacin de un
Proceso
2.2 Determinar los
entregables
2.3 Esfuerzo, Horario y
Clculo del Coste
2.4 Reparto de Recursos
2.5 Gestin de Riesgos
2.6 Gestin de Calidad
PARA LA
GESTIN
Bo
rra
do
REFERENCIAS RECOMENDADAS
DEL SOFTWARE
do
rra
(Fay96) M.E. Fayad and M. Cline, Managing ObjectOriented Software Development, Computer,
September 1996, pp. 26-31.
Bo
do
rra
Bo
do
Bo
rra
Bo
rra
do
rra
Bo
do
r
CAPTULO 9
PROCESO DE INGENIERA DEL SOFTWARE
ingeniera del software. Este es el significado que
se pretende con el ttulo de esta KA y el que se usa
con ms frecuencia en la descripcin del KA.
ACRNIMOS
SCE
SEPG
INTRODUCCIN
OMG
QIP
SCAMPI
do
CMMI
EF
FP
HRM
IDEAL
rra
Bo
r
do
rra
Bo
Bo
rra
do
Consideraciones Prcticas
Definicin de Procesos
do
rra
Bo
9.
do
rra
Bo
do
rra
Bo
4.1.2
Medicin de la Estructura
4.1.3
Medicin de la Calidad
4.2.
Creacin de Modelos
do
rra
Bo
4.3.2
Implementacin de Modelos
4.4.1
Tcnicas Analticas
do
rra
Bo
4.4.2
Bo
rra
do
[Sti99]
[Som05]
[SEL96]
rra
[SEI01]
2.Definicin de Procesos
[San98]
[Pre04]
[Pfl01]
[OMG02]
[Mus99]
[Moi98]
[McF96]
[Joh99]
Gol99]
[Fow90]
[Fin94]
[Fen98]
[Com97]
do
[Boe03]
[Bec99]
[Bas92]
[Abr96]
c2
c3,
c11
c8c10
c25
c15
c24
c2
c2
4.1Medicin de Procesos
c2
Bo
c11
c4,
c6,c13
c6
c25
c3,
c11,c12
c22
c25
2.5Automatizacin
3.Valoracin del Proceso
3.1Modelos de Valoracin de Procesos
3.2Mtodos de Valoracin de Procesos
4.Medicin de Productos y Procesos
*
*
*
*
IEEE14143
.1
IEEE12207
IEEE 1540
IEEE 1517
IEEE 1219
IEEE 1074
IEEE 1061
IEEE 1044
ISO VIM
ISO20969
ISO20926
ISO19761
ISO15939
ISO15288
ISO15504
*
Bo
4.1Medicin de Procesos
rra
do
ISO14764
ISO9126
ISO9000-3
*
ISO9001
REFERENCIAS RECOMENDADAS
rra
do
Bo
[IEEE12207.0-96]
IEEE/EIA
12207.0-1996//ISO/
IEC12207:1995, Industry Implementation of Int. Std
ISO/IEC 12207:95, Standard for Information TechnologySoftware Life Cycle Processes, IEEE, 1996.
do
Software
Process
rra
Bo
(Rag89) S. Raghavan and D. Chand, Diffusing SoftwareEngineering Methods, IEEE Software, July 1989, pp. 8190.
(Rog83) E. Rogers, Diffusion of Innovations, Free Press,
1983.
(Sch99) E. Schein, Process Consultation Revisited:
Building the Helping Relationship, Addison-Wesley, 1999.
(SEI95) Software Engineering Institute, The Capability
Maturity Model: Guidelines for Improving the Software
Process, Addison-Wesley, 1995.
(SEL96) Software Engineering Laboratory, Software
Process Improvement Guidebook, Software Engineering
Laboratory, NASA/GSFC, Technical Report SEL-95-102,
April
1996,
available
at
http://sel.gsfc.nasa.gov/website/documents/online-doc/95102.pdf
do
rra
Bo
(Wei93)
G.M.
Weinberg,
Quality
Management, First-Order Measurement
Measuring Cost and Value), vol. 2, 1993.
Software
(Ch. 8,
(ISO9126-01)
ISO/IEC
9126-1:2001,
Software
Engineering-Product Quality-Part 1: Quality Model, ISO
and IEC, 2001.
(ISO14674-99) ISO/IEC 14674:1999, Information
Technology - Software Maintenance, ISO and IEC, 1999.
(ISO15288-02)
ISO/IEC
15288:2002,
Systems
Engineering-System Life Cycle Process, ISO and IEC,
2002.
(ISO15504-98) ISO/IEC TR 15504:1998, Information
Technology - Software Process Assessment (parts 1-9),
ISO and IEC, 1998.
(ISO15939-02)
ISO/IEC
15939:2002,
Software
Engineering-Software Measurement Process, ISO and
IEC, 2002.
do
(IEEE1540-01)
IEEE
Std
15402001//ISO/IEC16085:2003,IEEE Standard for Software
Life Cycle Processes-Risk Management, IEEE, 2001.
(IEEE12207.0-96)
IEEE/EIA
12207.0-1996//ISO/
IEC12207:1995, Industry Implementation of Int. Std
ISO/IEC 12207:95, Standard for Information TechnologySoftware Life Cycle Processes, IEEE, 1996.
(ISO20926-03)
ISO/IEC
20926:2003,
Software
Engineering-IFPUG 4.1 Unadjusted Functional Size
Measurement Method-Counting Practices Manual, ISO
and IEC, 2003.
(ISO20968-02)
ISO/IEC
20968:2002,
Software
Engineering-MK II Function Point Analysis Counting
Practices Manual, ISO and IEC, 2002.
rra
(ISO19761-03)
ISO/IEC
19761:2003,
Software
Engineering-Cosmic FPP-A Functional Size Measurement
Method, ISO and IEC, 2003.
Bo
(IEEE14143.1-00)
IEEE
Std
14143.1-2000//ISO/
IEC14143-1:1998, Information Technology-Software
Measurement-Functional Size Measurement-Part 1:
Definitions of Concepts, IEEE, 2000.
rra
Bo
do
r
CAPTULO 10
INSTRUMENTOS Y MTODOS DE LA INGENIERA DE SOFTWARE
ACRNIMOS
Herramientas y Mtodos de Ingeniera del software
Computer Assisted
Software Engineering
INTRODUCCIN
Herramientas de Ingeniera
del software
Mtodos de Ingeniera
del software
Requerimientos de las
herramientas sw
Mtodos heursticos
Herramientas de Diseo SW
Herramientas de Construccin
SW
Mtodos formales
do
Mtodos estructurados
Mtodos Orientados a Datos
Mtodos Orientados a Objetos
CASE
Herramientas de Pruebas de
SW
Mtodos de prototipado
Estilos de prototipado
Objetivo del prototipado
Tcnicas de evaluacin del
prototipado
Generadores de pruebas
Marcos de ejecucin de prueba
Evaluacin de prueba
Direccin de prueba
Anlisis de Funcionamiento
Herramientas de
Mantenimiento de SW
rra
Herramientas de Comprensin
Bo
Herramientas de Direccin en
la Ingeniera de Software
Herramientas de Calidad de
Software
Herramientas de revisin de
auditoria
Herramientas de anlisis estticos
Cuestiones de Herramientas
Compuestas
Herramientas de integracin de
tcnicas
Meta-herramientas
Herramientas de evaluacin
1.
do
rra
Bo
do
Configuracin de Software
[Dor02, Rei96, Som05]
Bo
rra
rra
do
Bo
[Pre04]
[Rei96]
[Som05]
v1c4s2
do
Bo
[Pfl01]
{PFL98}
{c4s1} ,v2c8s4
v2c8s4
v2c8s4
v2c8s4
rra
[Dor02]
{Dor97}
v2c8s4
v2c8s4
C8s7,c9s7
c112s2
c112s3
c112s5
c11s5
c112s5
c11s5
c112s3
c29
[Was96]
[Cla96]
[Pfl01]{PFL98}
[Rei96]
[Som05]
[Was96]
do
v2c8s4
c2s3, 2s4
c112s3, c112s4
c3
c112s5
v2c8s4
C8s7
c112s5
c1s8
c112s4
rra
v2c8s4
C9s10
v1c5s1, v1c6s3
c4s5
v1c5s1, v1c6s3
v1c6s2, v1c6s3
v1c6s5
c4s5
c5s7, c8s3
Bo
[Pre04]
v2c8s4
[Dor02]{Dor97}
*
c7-c9
c15
c7-c9
c7-c9
c12
c28
c9
c8
v1c4s4
v1c4s4
c4s6, c5s6
Bo
rra
do
A.
COMPLEMENTARIAS
LISTA
DE
LECTURAS
Bo
rra
do
APNDICE
Bo
rra
do
(IEEE1209-92)
IEEE
Std
1209-1992,
Recommended Practice for the Evaluation and
Selection of CASE Tools, (ISO/IEC 14102, 1995),
IEEE Press, 1992.
(IEEE1348-95)
IEEE
Std
1348-1995,
Recommended Practice for the Adoption of CASE
Tools, (ISO/IEC 14471), IEEE Press, 1995.
(IEEE12207.0-96) IEEE/EIA 12207.0-1996//ISO/
IEC12207:1995, Industry Implementation of Int.
Std. ISO/IEC 12207:95, Standard for Information
Technology Software Life Cycle Processes,
IEEE Press, 1996.
rra
Bo
do
r
CAPTULO 11
CALIDAD DEL SOFTWARE
CMMI
COTS
PDCA
SQA
SQM
TQM
V&V
INTRODUCCIN
do
ACRNIMOS
rra
Bo
DESGLOSE
SOFTWARE
1.
Ingeniera del
Software Cultura y
tica.
Valor y coste de la
calidad
Procesos de Gestin
de Calidad del
Software
Aseguramiento de
la Calidad del
Software
Verifications &
Validacin
Revisiones y
Auditorias
rra
Modelos y
Caractersticas de
Calidad
Consideraciones
Prcticas
do
Fundamentos de
Calidad de Software
Requerimientos de
calidad del software
Caracterizacin de
defectos
Tcnicas de Gestin
de Calidad del
Software
Tcnicas Dinmicas
Mejora de Calidad.
Bo
rra
do
2.
Bo
do
rra
Bo
Revisiones de gestin
Revisiones tcnicas
Inspecciones
Walk-throughs
Auditorias
do
rra
Bo
Exposicin de objetivos
Un producto software especfico
El plan especfico de gestin del proyecto
La lista de cuestiones claves asociadas al producto
El procedimiento de revisin tcnica
2.3.4.
2.3.3. Inspecciones
[Ack02; Fre98; Gil93; Rad02; Rak97]
1.
2.
Encontrara anomalas
Mejorar el producto software
Considerar implementaciones alternativas
Evaluar la conformidad con estndares
especificaciones
do
Walk-throughs
[Fre98; Hor03; Pfl01; Pre04; Som05; Wal89;
Wal96]
2.3.5.
Auditorias
[Fre98; Hor03; Pfl01; Pre01; Som05;Voa99;
Wal89; Wal96]
rra
Bo
Consideraciones Prcticas
Factores de influencia
Confiabilidad
do
hay bastantes en uso [Bei90, Chi96, Gra92], IEEE104493). La caracterizacin del Defecto (la anomala)
tambin es usada en auditorias y revisiones, el
responsable de revisin a menudo presenta una lista de
anomalas proporcionadas por miembros de equipo para
su consideracin en una reunin de revisin.
3.1.3.
rra
Bo
3.3.4.
Tcnicas Dinmicas
Bo
rra
do
3.3.1.
Tcnicas Analticas
Pruebas
do
3.3.5.
rra
Bo
Bo
rra
do
*
*
[Wei93]
[Wei96]
[Wal96]
[Sei02]
[Rak97]
[Pre04]
[Pfl01]
[NIST03]
[Mus99]
[McC77]
r
*
*
*
*
*
[Wal96]
*
*
*
*
[Wak99]
[Wal89]
[Sch99]
[Voa99]
[Pfl01]
[Pen93]
[Mus99]
[Rub94]
[Som05]
*
*
*
[Rak97]
[Sch99]
*
*
*
*
*
*
*
*
*
*
*
*
*
*
[Wal96]
[Wal89]
*
*
*
[Mus89]
[Gra92]
[Zel98]
*
*
[Wei93]
*
*
*
[Rak97]
[McC04]
*
*
*
[Rad02]
*
*
*
[Lyu96]
[Lev95]
[Pre04]
[Hor03]
[Fri95]
[Fre98]
[Fen97]
[Chi96]
[Con86]
[Bei90]
[Bas84]
Bo
*
*
*
[Lew92]
*
*
*
[Pfl01]
[Lew92]
[Kan02]
[Hor03]
[Jon96]
[Gil93]
[Ebe94]
2.
Procesos de Gestin de Calidad del Software
2.1. Aseguramiento de la Calidad del Software
rra
[Ack02]
3. Consideraciones Prcticas
3.1. Requerimientos de calidad del
software
3.2. Caracterizacin de defectos
3.3. Tcnicas de Gestin de Calidad
del Software
3.4. Medicin de calidad SW
[Llo03]
[Gra92]
*
*
[Fre98]
*
*
do
[Lew92]
[Lap91]
[Kia95]
[Jon96]
[ISO900
03-04]
ISO9001-00]
[IEEE99]
[Hou99]
[Dac01]
[Boe78]
1.
Fundamentos de Calidad de Software
1.1. Ingeniera del Software Cultura y tica.
RECOMENDADAS
PARA
CALIDAD SW
Bo
rra
do
REFERENCIAS
Bo
rra
do
A.
LISTA
DE
LECTURAS
COMPLEMENTARIAS
(Abr96) A. Abran and P.N. Robillard, Function Points
Analysis: An Empirical Study of Its Measurement
Processes, presented at IEEE Transactions on Software
Engineering, 1996. //journal or conference?//
(Art93) L.J. Arthur, Improving Software Quality: An
Insiders Guide to TQM, John Wiley & Sons, 1993.
(Bev97) N. Bevan, Quality and Usability: A New
Framework, Achieving Software Product Quality, E. v.
Veenendaal and J. McMullan, eds., Uitgeverij Tutein
Nolthenius, 1997.
(Cha89) R.N. Charette, Software Engineering Risk Analysis
and Management, McGraw-Hill, 1989.
(Cro79) P.B. Crosby, Quality Is Free, McGraw-Hill, 1979.
(Dem86) W.E. Deming, Out of the Crisis: MIT Press, 1986.
(Dod00) Department of Defense and US Army, Practical
Software and Systems Measurement: A Foundation for
Objective Project Management, Version 4.0b, October
2000, available at http://www.psmsc.com.
(Hum89) W. Humphrey, Managing the Software Process,
Chap. 8, 10, 16, Addison-Wesley, 1989.
(Hya96) L.E. Hyatt and L. Rosenberg, A Software Quality
Model and Metrics for Identifying Project Risks and
Assessing Software Quality, presented at 8th Annual
Software Technology Conference, 1996.
Bo
rra
do
APNDICE
rra
do
Bo
rra
Bo
do
r
CAPTULO 12
DISCIPLINAS RELACIONADAS CON LA
INGENIERA DEL SOFTWARE
INTRODUCCIN
Para circunscribir la Ingeniera del Software, es necesario identificar las disciplinas con las que la Ingeniera del Software
comparte un lmite comn. Este captulo identifica, en orden alfabtico, esas Disciplinas Relacionadas. Por supuesto, las
Disciplinas Relacionadas tambin comparten varios lmites en comn entre ellas mismas.
do
Usado como fuente reconocida y consensuada, este captulo identifica para cada Disciplina Relacionada:
rra
Sistemas distribuidos
REAS DE CONOCIMIENTO
Electronica
Ingeniera de la computacin
Sistemas embebidos
Interaccin Hombre-Mquina
Gestin de la informacin
Sistemas inteligentes
Redes
Sistemas operativos
Fundamentos de la programacin
Probabilidad y Estadstica
Bo
Algoritmos y Complejidad
Verificacin y Prueba
Diseo VLSI/ASIC
Circuitos y Sistemas
Lgica Digital
Estructuras discretas
hhtp://www.eng.auburn.edu/ece/CCCE/Iron_Man_Draft_October_
2003.pdf
Ciencia de la computacin
El informe final del volumen en Ciencia de la
computacin de Computing Curricula 2001 project
(CC2001)2 identifica la siguiente lista de reas de
conocimiento (identificadas como reas en el informe)
para la Ciencia de la computacin:
Gestin
Bo
Matemticas
Algebra lineal
Clculo Integral y Diferencial
Ecuaciones diferenciales
Probabilidad
ttp://www.computer.org/education/cc2001/final/cc2001.pdf
http://www.efmd.be/
3
4
Estadstica
Anlisis numrico
Matemtica discreta
rra
Estructuras discretas
Fundamentos de la programacin
Algoritmos y Complejidad
Arquitectura y Organizacin
Sistemas operativos
Sistemas centralizados
Lenguajes de programacin
Interaccin Hombre-Mquina
Grficos y computacin visual
Sistemas inteligentes
Gestin de la informacin
Problemas sociales y profesionales
Ingeniera del Software
Ciencia computacional y Clculo numrico
do
http://www.ccpe.ca/e/files/report_ceab.pdf
Gestin de calidad
La gestin de la calidad es definida en el ISO 9000-2000
como actividades coordinadas para dirigir y controlar una
organizacin con respecto a la calidad. Las tres
referencias seleccionadas en gestin de calidad son
5 http://sites.computer.org/ccse/volume/FirstDraft.pdf
6 PMBOK es una marca registrada de los Estados Unidos y otras
naciones.
de
calidad
de
desarrollo,
implementacin y verificacin
Mtodos cuantitativos
Procesado lxico
Caractersticas humanas
- Tratamiento de la informacin humana
- Lengua, comunicacin, interaccin
- Ergonmica
rra
gramtica
Bo
original.
reas de aplicacin
do
Arquitectura cognoscitiva
7.http://isotc.iso.ch/livelink/livelink.exe/fetch/2000/2122/687806
/ISO_TC_159__Ergonomics_.pdf?nodeid=1162319&vernum=0h
ttp://www.asq.org/cert/types/cqe/bok.html
8.http://isotc.iso.ch/livelink/livelink.exe/fetch/2000/2122/687806
/ISO_TC_159_Ergonomics_.pdf?nodeid=1162319&vernum=0
9 Esta lista fue compilada para la edicin del 2001 del SWEBOK
Guide para la lista de cursos ofrecidos por el Departamento de
Ciencia Cognitiva de la Universidad de John Hopkins University
y el ACM SIGCHI Curricula for Human-Computer.La lista fue
entonces refinada por tres expertos en el campo: dos de la
10 http://sites.computer.org/ccse/volume/FirstDraft.pdf
11 www.incose.org
Bo
rra
do
APNDICE A
ESPECIFICACIONES DE LA DESCRIPCIN DE REAS DE
CONOCIMIENTO PARA LA GUA HOMBRE DE HIERRO DE LA GUA
DEL CUERPO DE CONOCIMIENTO DE LA INGENIERA DEL
SOFTWARE
Conocimiento que es globalmente aceptado.
Este punto se detalla ms adelante.
d) La descomposicin de temas propuesta dentro de
un rea de Conocimiento no debe asumir
dominios
de
aplicaciones
especficos,
necesidades
de
negocio,
tamaos
de
organizaciones, filosofas de gestin, ciclos de
vida del software, tecnologas software o mtodos
de desarrollo del software.
do
INTRODUCCIN
e)
f)
rra
Y
REQUERIMIENTOS
PARA
LA
DESCOMPOSICIN DE TPICOS INTERRUPCIN DE LOS
ASUNTOS PARA LOS REQUISITOS DEL SOFTWARE
Bo
Los
temas
propuestos deben
ser
lo
suficientemente significantes incluso cuando se
citan fuera de la Gua al Cuerpo de Conocimiento
del Software.
j)
CRITERIOS
DE TEMAS
do
a)
a)
e)
rra
f)
c)
Bo
con
los
CRITERIOS
Y
REQUERIMIENTOS
PARA
LA
IDENTIFICACIN DE LAS REAS DE CONOCIMIENTO DE
LAS DISCIPLINAS RELACIONADAS
CONOCIMIENTO
rra
do
Introduccin
Descomposicin de temas del rea de Conocimiento
(por claridad, creemos que esta seccin debera de
estar situarse al principio y no en un apndice al final
del documento. Adems, debera de una figura
describiendo la descomposicin).
Matriz de temas vs. Material de referencia
Referencias recomendadas para el rea de
Conocimiento descrita (por favor, no mezclarlas con
las referencias usadas al escribir la descripcin del
rea de Conocimiento)
Lista de Lecturas Complementarias
Especializado
Prticas utilizadas solamente en
ciertos tipos de software
QU QUEREMOS DECIR
GENERALMENTE ACEPTADO?
CON
Bo
Generalmente aceptado
LONGITUD EN LA
CONOCIMIENTO
DESCRIPCIN DE LAS
REA
DE
La versin actual se
http://www.swebok.org/
encuentra
disponible
en
(EN
do
rra
est
disponible
en
Bo
encuentra
disponible
en
http://sunset.usc.edu/icse99/cfp /technical_papers.html
EDICIN
El Equipo Editorial y ESTILO Y GUAS TCNICAS
do
rra
Bo
rra
Bo
do
r
APNDICE B
EVOLUCIN DE LA GUA DEL CUERPO DE CONOCIMIENTO DE LA
INGENIERA DEL SOFTWARE
STAKEHOLDERS
do
INTRODUCCIN
Bo
rra
EL PROCESO DE EVOLUCIN
Obviamente, un proceso como de este calibre debe
evolucionar de manera abierta, consensuada, deliberada y
transparente tal que otros proyectos puedan sucesivamente
coordinar sus esfuerzos. La estrategia actualmente
planificada es planificar la evolucin siguiendo intervalos
de tiempo especficos. De esta manera se permite al
SWEBOK y proyectos coordinados revisiones que
converjan en una fecha determinada. El intervalo
planificado es de cuatro aos.
Al comienzo del intervalo, consultando los proyectos
coordinados, se determinara un plan para los cuatro aos.
Durante el primer ao, tambin se determinaran cambios
Bo
CAMBIOS ANTICIPADOS
Ntese que la Gua del SWEBOK es un documento
conservador por varias razones. Primero, se limita a
conocimiento caracterstico de la ingeniera del software;
por lo tanto, la informacin de las disciplinas relacionadas
(incluso aquellas que aquellas que se les aplica la
ingeniera del software) son descartadas. Segundo, est
desarrollada y aprobada por un proceso consensuado, por
lo que no se almacena la informacin que no haya recibido
una aceptacin general. Tercero, el conocimiento
contemplado como especializado en dominios especficos
es excluido. Finalmente y muy importante, la Gua
contiene slo el conocimiento que es generalmente
aceptado. A veces es necesario en la actualidad el uso de
tcnicas de validacin para obtener una aceptacin general
dentro de la comunidad.
Este enfoque conservador es evidente en la actual Gua
SWEBOK. Despus de 6 aos de trabajo, an contiene las
10 reas de Conocimiento. Una posible pregunta es si la
seleccin de las reas de Conocimiento ser algn da
alterada. El plan de evolucin contempla algunos criterios
para aadir un rea de Conocimiento nuevo o para
modificar el alcance de stas. En principio, el candidato
debe ser ampliamente reconocido dentro y fuera de la
comunidad de ingeniera del software como representacin
de un rea distintiva de conocimiento y el conocimiento
generalmente aceptado dentro del rea propuesta debe de
estar suficientemente detallada y completa para ser tratada
con el mismo mrito que aquellas que estn ya presentes
en la Gua SWEBOK. En trmino operacionales, debe de
estar lo menos posible acoplado el rea de Conocimiento
propuesto de las reas ya existentes, y ese
desacoplamiento debe de aadir un valor significante
sobre la taxonoma del conocimiento provisto por la Gua.
No obstante, simplemente por ser un rea transversal no
tiene justificacin de ser tratada separadamente por
separar, en muchos casos, simplemente genera un
problema de solapamiento. En general, el crecimiento del
nmero total de reas de Conocimiento tiende a ser
evitado cuando hace que aumenten los esfuerzos de los
lectores por encontrar la informacin deseada.
Aadiendo un tpico a rea de Conocimiento es ms fcil.
En principio, debe de estar madura (o, por lo menos,
alcanzando la madurez rpidamente) y generalmente
aceptada2. Los indicios para una aceptacin general
pueden ser encontrados en muchos sitios, incluyendo
currculos y estndares de ingeniera del software, y
rra
do
Bo
rra
do
rra
Bo
do
r
APNDICE C
IEEE Std
610.121990
(R2002)
IEEE Std
730-2002
IEEE Std
828-1998
Glosario
Estndar IEEE
de la
Terminologa de
la Ingeniera del
Software
Estndar IEEE
para los Planes
de
Aseguramiento
de la Calidad del
Software
Estndar IEEE
para los Planes
de Gestin de la
Configuracin
del Software
Estndar IEEE
de la
Documentacin
de Prueba del
Software.
Descripcin
Este estndar es un
glosario de la terminologa
de la ingeniera del
software.
Requisitos
del
Software
Diseo
del
Software
Construccin
del Software
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Bo
IEEE Std
829-1998
Nombre del
estndar
rra
Nmero
de
estndar
do
La siguiente tabla lista los estndares producidos por IEEE e ISO/IEC JTC1/SC7, al igual que otros estndares seleccionados de otras fuentes. Para cada estndar, se muestra
su nmero y ttulo. Adems, la columna de descripcin se proporciona un resumen sacado del propio estndar o de otros materiales introductorios. Cada uno de los estndares
se mapea a las reas de conocimiento del SWEBOK. En unos pocos casos como estndares de terminologa el estndar es aplicable a todas las reas de conocimiento; en
estos casos aparece una X en cada columna. En la mayora de los casos, cada estndar se fuerza un rea primaria de conocimiento marcada con una P y otras secundarias
marcadas con S. La lista est ordenada por el nmero de estndar sin tener en cuenta su categora (IEEE, ISO, etc.)
IEEE Std
830-1998
Recomendacin
IEEE para la
Prctica de la
Especificacin
de Requisitos del
Software.
Calidad
Descripcin
Estndar IEEE
de Diccionario
de Medidas para
Producir
Software Fiable.
IEEE Std
10081987
(R2003)
Estndar IEEE
para las Pruebas
Unitarias del
Software
IEEE Std
10121998
and
1012a1998
Estndar IEEE
para la
Validacin y
Verificacin del
Software
IEEE Std
10161998
Prctica IEEE
Recomendada
para las
Descripciones
del Diseo del
Software
Este documento
recomienda el contenido y
la organizacin de una
descripcin del diseo de
un software.
Estndar IEEE
para la Revisin
del Software
Diseo
del
Software
Construccin
del Software
Pruebas del
Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
Bo
IEEE Std
10281997
(R2002)
Mantenimiento
del Software
rra
IEEE Std
982.11988
Requisitos
del
Software
Nombre del
estndar
do
Nmero
de
estndar
IEEE Std
10451992
(R2002)
Estndar IEEE
para las Mtricas
de Productividad
del Software.
IEEE Std
10611998
Estndar IEEE
para la
Metodologa de
las Mtricas de
Calidad del
Software
Construccin
del Software
IEEE Std
1062,
Edicin
1998
Prctica IEEE
recomendada
para la
Adquisicin del
Software
Pruebas del
Software
Mantenimiento
del Software
Bo
IEEE Std
10581998
Estndar IEEE
para la
Planificacin de
la Gestin de un
Proyecto
Software
Diseo
del
Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Estndar IEEE
para la
Clasificacin de
Anomalas del
Software.
Descripcin
Requisitos
del
Software
do
IEEE Std
10441993
(R2002)
Nombre del
estndar
rra
Nmero
de
estndar
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
IEEE Std
10741997
IEEE Std
1175.12002
IEEE Std
12191998
Estndar IEEE
para el Proceso
del Ciclo de
Vida del
Desarrollo.
Gua IEEE para
la Interconexin
de Herramientas
CASE.
Clasificacin y
Descripcin.
Estndar IEEE
para el
Mantenimiento
del Software.
Estndar IEEE
para la
Aplicacin y
Gestin de
Procesos de
Ingeniera de
Sistemas.
Construccin
del Software
IEEE Std
12281994
Estndar IEEE
para Planes
Seguros del
Software.
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Diseo
del
Software
Bo
IEEE Std
12201998
Estndar IEEE
para la
Documentacin
de Usuario del
Software
Descripcin
Requisitos
del
Software
do
IEEE Std
10632001
Nombre del
estndar
rra
Nmero
de
estndar
Calidad
IEEE Std
1320.11998
Estndar IEEE
para el
Modelado
Conceptual
Sintaxis y
Semntica del
Lenguaje para
IDEF1X 97
(IDEFobject)
Gua IEEE para
Informacin
Tecnolgica
Definicin del
Sistema
Documento de
Concepto de
Operaciones
(ConOps)
Construccin
del Software
Bo
IEEE Std
1320.21998
Estndar IEEE
para el Lenguaje
de Modelado
Funcional
Sintaxis y
Semntica para
IDEF0.
Diseo
del
Software
IEEE Std
13621998
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
IEEE Std
1233,
Edicin
1998
Descripcin
Requisitos
del
Software
do
Nombre del
estndar
rra
Nmero
de
estndar
Calidad
IEEE Std
14621998 //
ISO/IEC
14102:19
95
Construccin
del Software
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
Diseo
del
Software
Bo
IEEE Std
14651998
//
ISO/IEC
12119
Estndar IEEE
para Informacin
Tecnolgica
Reutilizacin del
Software
Modelo de Datos
para la
Interoperabilidad
de las Libreras
de Reutilizacin
Estndar IEEE
Adopcin del
Estndar
Internacional
ISO/IEC
14102:1995
Informacin
Tecnolgica
Gua para la
Evaluacin y la
Seleccin de
Herramientas
CASE.
Estndar IEEE,
Adopcin del
Estndar
Internacional
ISO/IEC
12119:1994(E),
Informacin
Tecnolgica
Paquete
Software
Requisitos de
Calidad y de
prueba.
Descripcin
Requisitos
del
Software
do
IEEE Std
1420.11995,
1420.1a1996, y
1420.1b1999
(R2002)
Nombre del
estndar
rra
Nmero
de
estndar
IEEE Std
14901998
IEEE Std
15171999
Este documento
recomienda un marco
conceptual y contenido
para la descripcin
arquitectnica de sistemas
intensivos de software.
Estndar IEEE
para la
Informacin
Tecnolgica
Procesos del
Ciclo de Vida
del Software
Reutilizacin de
Procesos
Estndar IEEE
para los Procesos
del Ciclo de
Vida del
Software
Gestin de
problemas
Este documento es la
adopcin IEEE del Cuerpo
de la Gestin del Proyecto
de Conocimiento definido
por el Instituto de Gestin
del Proyecto. Identifica y
describe al conocimiento
generalmente aceptado con
lo que concierne a la
gestin del proyecto.
Construccin
del Software
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
P
Recomendacin
Prctica IEEE
para la
Descripcin
Arquitectnica
de Sistemas
Intensivos de
Software.
Gua IEEE
Adopcin del
Estndar PMI
Diseo
del
Software
Bo
IEEE Std
15402001
//
ISO/IEC
16085:20
03
Descripcin
Requisitos
del
Software
do
IEEE Std
14712000
Nombre del
estndar
rra
Nmero
de
estndar
Calidad
ISO
9001:
2000
ISO/IEC
91261:2001
Este documento
recomienda prcticas para
la ingeniera de las pginas
WWW para usar entornos
de redes internas y
externas.
Ingeniera del
Software
Calidad del
Producto
Parte 1:
Modelo de
calidad
Implementacin
Industrial del
Estndar
Internacional
ISO/IEC
12207:1995,
Estndar para la
Informacin
Tecnolgica
Procesos del
Ciclo de Vida
del Software
Construccin
del Software
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Prctica IEEE
Recomendada
para Internet
Ingeniera,
gestin y ciclo
de vida del Sitio
Web
Sistemas de
Gestin de
Calidad
Requisitos
Diseo
del
Software
Bo
IEEE/EI
A
12207.01996 //
ISO/IEC
12207:
1995
Descripcin
Requisitos
del
Software
do
IEEE Std
20012002
Nombre del
estndar
Calidad
rra
Nmero
de
estndar
IEEE/EI
A
12207.21997
Implementacin
Industrial del
Estndar
Internacional
ISO/IEC
12207:1995,
Estndar para la
Informacin
Tecnolgica
Procesos del
Ciclo de Vida
del Software
Consideraciones
en la
Implementacin
Adopcin IEEE
de ISO/IEC
14143-1:1998
Informacin
Tecnolgica
Medida del
Software
Medida del
Tamao
Funcional
Construccin
del Software
Parte 1:
Definicin de
Conceptos
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
Implementacin
Industrial del
Estndar
Internacional
ISO/IEC
12207:1995,
Estndar para la
Informacin
Tecnolgica
Procesos del
Ciclo de Vida
del Software
Ciclo de vida
de la
Informacin
Diseo
del
Software
Bo
IEEE Std
14143.12000 //
ISO/IEC
141431:1998
Descripcin
Requisitos
del
Software
do
IEEE/EI
A
12207.1 1996
Nombre del
estndar
rra
Nmero
de
estndar
ISO/IEC
14598
(Seis
partes)
ISO/IEC
14764:19
99
Informacin
Tecnolgica
Mantenimiento
del Software
Informacin
Tecnolgica
Niveles de
Integridad del
Software y del
Sistema
Diseo
del
Software
Pruebas del
Software
Mantenimiento
del Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Construccin
del Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
Este Estndar
Internacional introduce los
conceptos de los niveles y
requisitos de integridad del
software. Define los
conceptos asociados con
los niveles de integridad,
define los procesos para
determinar los niveles de
integridad y los requisitos
de integridad software, y
establece los requisitos en
cada proceso.
Bo
ISO/IEC
15026:19
98
Informacin
Tecnolgica
Ingeniera del
Software
Guas para la
Adopcin de
herramientas
CASE
Informacin
Tecnolgica
Evaluacin del
producto
Software
Descripcin
Requisitos
del
Software
do
ISO/IEC
TR
14471:19
99
Nombre del
estndar
rra
Nmero
de
estndar
ISO/IEC
15288:20
02
ISO/IEC
TR
15504
(9 partes)
y la
Preparaci
n de
IS 15504
(5
partes)
ISO/IEC
15939:20
02
Ingeniera del
Software
Proceso de
Valoracin
Ingeniera del
Software
Proceso de
Medida del
Software
Ingeniera del
Software
COSMIC-FFP
Mtodo de
medicin del
tamao
funcional.
Ingeniera del
Software
IFPUG 4.1
Mtodo de
medida del
tamao funcional
desajustado
Manual de
Prcticas de
Cmputo
Construccin
del Software
ISO/IEC
20926:20
03
Pruebas del
Software
Mantenimiento
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
Gestin de la
configuracin
del Software
Diseo
del
Software
Bo
ISO/IEC
19761:20
03
Informacin
Tecnolgica
Gua para
ISO/IEC 12207
(Procesos del
Ciclo de Vida
del Software)
Ingeniera de
Sistemas
Procesos del
Ciclo de Vida
del Sistema
Descripcin
Requisitos
del
Software
do
ISO/IEC
TR
15271:19
98
Nombre del
estndar
rra
Nmero
de
estndar
Diseo
del
Software
Construccin
del Software
Pruebas del
Software
Mantenimiento
del Software
Bo
rra
ISO/IEC
90003
Ingeniera del
Software
Anlisis de
Puntos de
Funcin Mk II
Manual de
Prcticas de
Cmputo
Ingeniera del
Software y
Sistemas
Pasos para la
Aplicacin de
ISO
9001:2000 al
Software del
Ordenador
Descripcin
Requisitos
del
Software
Gestin de la
configuracin
del Software
Gestin en
la
Ingeniera
del
Software
Procesos de
la
Ingeniera
del
Software
ISO/IEC
20968:20
02
Nombre del
estndar
do
Nmero
de
estndar
Herramientas
y Mtodos en
la Ingeniera
del Software
Calidad
rra
Bo
do
r
APNDICE D
CLASIFICACIN DE CONTENIDOS ACORDE A LA TAXONOMA DE
BLOOM
INTRODUCCIN
rra
do
Bo
do
Bo
rra
Bo
rra
do
1. Especificacin de requisitos
Conceptos generales de diseo
C
Contexto del diseo software
C
Proceso del diseo software
C
Tcnicas de habilitacin
AN
2. Temas clave en el diseo software
Concurrencia
AP
Manejo y control de eventos
AP
Distribucin de componentes
AP
Manejo de errores y excepciones y falta AP
de tolerancia
Interaccin y presentacin
AP
Persistencia de los datos
AP
3. Estructura y arquitectura del software
Estructuras y puntos de vistas de la
AP
arquitectura
Estilos de arquitectura (Patrones de
AN
arquitectura)
Patrones de diseo (Patrones de
AN
arquitectura)
Familias de programas y de marcos de
C
trabajo
4. Anlisis y evaluacin de la calidad del
diseo software
Atributos de calidad
C
Tcnicas de anlisis y evaluacin de la AN
calidad
Medidas
C
5. Notaciones de diseo del software
Descripciones estructurales (Esttico)
AP
Descripciones del comportamiento
AP
(Dinmico)
6. Mtodos y estrategias del diseo del
software
Estrategias generales
AN
Diseo orientado a funciones
AP
(Estructurado)
Diseo orientado a objetos
AN
Diseo centrado en la estructura de
C
datos
Diseo basado en componentes (CBC) C
Otros mtodos
C
Bo
rra
do
Desglose de contenidos
Nivel de
taxonoma
Separacin
Desglose dedecontenidos
contenidos
DISEO SOFTWARE
Nivel de
taxonoma
AN
AN
AN
AP
do
Desglose de contenidos
Desglose de contenidos
C
AP
AP
Bo
rra
C
AP
AN
AP
AN
AP
AN
AP
Nivel de
taxonoma
Nivel de
taxonoma
CONSTRUCCIN DEL
SOFTWARE
Bo
rra
do
Desglose de contenidos
C
C
Desglose de contenidos
Nivel de
taxonoma
GESTIN DE LA
CONFIGURACIN DEL
SOFTWARE
Nivel de
taxonoma
MANTENIMIENTO DEL
SOFTWARE
AP
AP
AP
C
C
C
AP
C
AP
AP
AP
AP
AP
AP
C
AP
AP
AP
C
C
AP
Bo
rra
do
Bo
rra
do
Desglose de contenidos
Nivel de
taxonoma
Desglose de contenidos
Nivel de
taxonoma
GESTIN DE LA INGENIERA
DEL SOFTWARE
AP
AP
AP
AP
AP
do
1. Herramientas software
Herramientas de requisitos del software
Herramientas de diseo del software
Herramientas de construccin del
software
Herramientas de pruebas del software
Herramientas de mantenimiento del
software
Herramientas del proceso de ingeniera
del software
Herramientas de calidad del software
Herramientas de gestin de la
configuracin del software
Herramientas de gestin de la
ingeniera del software
Herramientas para otros diversos
asuntos
2. Mtodos de ingeniera del software
Mtodos heursticos
Notaciones y mtodos formales
Mtodos de prototipado
Mtodos para otros diversos asuntos
Desglose de contenidos
AP
AP
AP
Bo
rra
AP
AP
AP
C
AP
C
Nivel de
taxonoma
Desglose de contenidos
Nivel de
taxonoma
MTODOS Y HERRAMIENTAS
DE INGENIERA DEL
SOFTWARE
rra
Bo
do
r