Está en la página 1de 24

Ingeniera de Software I

ACM (Association for Computing Machinery)



Fue fundada en 1947 como la primera sociedad cientfica y educativa
acerca de la Computacin. Es la mayor sociedad de la informtica educativa y
cientfica del mundo, proporciona recursos que permitan avanzar en la
informtica como ciencia y como profesin. Adems ofrece premier del campo
de la computacin de la Biblioteca Digital y sirve a sus miembros y la profesin
de la informtica con las publicaciones de vanguardia, conferencias y recursos
profesionales.
Cuenta con varios Grupos de Inters Especial (SIGs)
Grupos de Inters Especial de ACM ofrece una gran cantidad de
conferencias, publicaciones y actividades en la escala de lo local a lo global,
que proporciona oportunidades ilimitadas para compartir los conocimientos
tcnicos y el conocimiento de primera mano de las ltimas tendencias de
desarrollo. A continuacin algunas reas y Sigs ms estrechamente asociados
con cada rea.
Sigai - Inteligencia Artificial
SIGBio Bioinformtica
SIGARCH -Arquitectura de Computadores
SIGECOM - Comercio Electrnico
SIGLOG -Lgica y Computacin

Algunas Membresas de ACM
Programas de Seguros
Descuentos y ofertas especiales
Bibliotecas
Membresas Corporativas
Beneficios para estudiantes y profesionales
Publicaciones
Ingeniera de Software I

Te permite acceder a las diferentes publicaciones y revistas en lnea
,boletines y actas de congresos, subscripciones a bibliotecas etc.
Conferencias
ACM tiene un espacio especial donde uno puede informarse de las
diversas conferencias a realizarse, con calendario completo de los eventos, la
organizacin, fecha de presentacin etc.
Actividades Educativas
ACM promueve la educacin a travs de iniciativas que respondan a las
necesidades cambiantes de los estudiantes y profesionales en tecnologas de
cmputo y de informacin.
Premios
Lugar donde se puede encontrar todos los ganadores ACM, procesos
de nombramientos y una gua completa para el establecimiento de un premio,
entre otras informaciones importantes.
Centro de Formacin y Empleos
ACM cuenta con un lugar perfecto para quienes buscan trabajo y para
los empleadores de la industria de la comunicacin para comunicarse entre s.
Existen infinidad de personas que buscan una oportunidad tanto en puestos de
trabajo informticos, como en el mundo acadmico y empresarial: profesores,
cargos universitarios, programador etc., que tan solo pueden enviar su CV para
acceder a estas oportunidades.

FUENTE: http://www.acm.org/

SEI (Software Engineering Institute)

Es un instituto federal estadounidense de investigacin y desarrollo, fundado
por Congreso de los Estados Unidos en 1984 para desarrollar modelos de
evaluacin y mejora en el desarrollo de software.
Ingeniera de Software I

Durante cuatro dcadas, el SEI ha estado ayudando a las organizaciones
gubernamentales y de la industria para adquirir, desarrollar, operar y mantener
sistemas de software que son innovadores, asequibles, duraderos y confiables.
Productos y Servicios
SEI ofrecen una amplia gama de productos, incluyendo la formacin presencial,
la certificacin, y ms-para servir a las necesidades de los clientes y socios en
todo el mundo de aprendizaje.
Su misin es fomentar la adopcin de las mejores prcticas a travs de la
formacin y cuentan con cursos que son creados y entregados por
reconocidos expertos que tienen experiencia prctica en las disciplinas que
ensean. Incluyen ejercicios prcticos y escenarios en el mundo real slo una
cuestin de das, adems SEI Formacin proporciona las herramientas
necesarias para crear y mantener el software, los sistemas y organizaciones
que estn eficientes, seguros y confiables.
Certificaciones
El SEI otorga certificaciones a personas que demuestran el dominio de un
conjunto especfico de capacidades, habilidades y conocimientos en relacin a
un rea de conocimiento en particular. Y estas tienen su beneficios como
aumentar el rendimiento de la organizacin as como tambin cada una de las
personas certificadas ganan capacidades y habilidades para ayudar a la
organizacin a alcanzar sus objetivos de negocio, etc.
reas de Trabajo
SEI cuenta con varias reas de trabajo como: Rendimiento y fiabilidad,
Medicin y Anlisis, Arquitectura de Software, Sistema de Sistemas entre otros.

Investigacin y Desarrollo de la SEI
La investigacin y la ingeniera personal SEI incluyen lderes reconocidos en la
adquisicin, calidad de software, la garanta de software y la ciberseguridad. Su
trabajo se centra en la mejora del desarrollo en estas reas:
Ingeniera de Software
Ciberseguridad
Enfoque de Seguridad
Departamento de Defensa de los Estados Unidos(DoD) capacidades de
los componentes crticos

Bibliotecas Virtuales, donde puedes acceder a los diversos temas de tu
inters
Calendario de Eventos, donde puedes encontrar los diversos eventos y
talleres a realizarse.
Consultora en el SEI
El SEI acepta compromisos para ayudar a las organizaciones aplicar las
mejores prcticas en las siguientes reas de trabajo financiados:
Ingeniera de Software I

Apoyo Adquisicin
Medicin y Anlisis
Rendimiento y Fiabilidad
Procesos y Mejora del Rendimiento
Gestin de Riesgos
Arquitectura de Software
Lneas de Producto Software
Sistema de Sistemas

FUENTE: http://www.sei.cmu.edu

IEEE( Institute of Electrical and Electronics Engineers)

IEEE es la mayor asociacin profesional del mundo dedicada al avance de la
innovacin tecnolgica y excelencia en beneficio de la humanidad
Afiliacin y Servicios
Los valores clave de IEEE membresa son la innovacin tcnica, el acceso a la
informacin de vanguardia, oportunidades de networking, y beneficios
exclusivos para miembros.
Beneficios de la membresa
IEEE ofrece un acceso a la informacin tcnica ms importante de la industria,
oportunidades de contactos, herramientas de desarrollo de carrera, y muchos
otros beneficios exclusivos para sus miembros.
Sociedades y Comunidades
Como asociacin tcnica ms grande del mundo, IEEE est compuesta por
una variedad de grupos, que trabajan en publicaciones, conferencias, y la
Ingeniera de Software I

construccin de comunidades tcnicas. Hay dos maneras de involucrarse con
IEEE:
Por rea de inters (grupos de conocimiento): Grupos IEEE conocimiento son
comunidades membresas y voluntarias impulsadas, proporcionando la
investigacin de vanguardia y conocimientos sobre diversos temas.
Y por ubicacin geogrfica (en su rea): IEEE est dividido en diez regiones
geogrficas de todo el mundo. Dentro de las regiones, hay secciones locales,
captulos y grupos de afinidad.
Redes virtuales
Una red virtual es una comunidad basada en la Web de las personas que
tienen un propsito compartido o intereses comunes.
Publicaciones y Normas
IEEE ofrece una amplia gama de publicaciones de calidad y normas que hacen
que el intercambio de conocimientos tcnicos y la informacin posible entre los
profesionales de la tecnologa.
Conferencias y Eventos
IEEE produce publicaciones de la conferencia de vanguardia en diversas reas
de la tecnologa que son reconocidos por el mundo acadmico y la industria en
todo el mundo. Y en la pgina podemos encontrar publicaciones de las
conferencias, ejecucin, las reuniones y eventos de las mismas.
Educacin y Formacin
IEEE ofrece una amplia gama de aprendizaje, promocin de las carreras, y
oportunidades de empleo dentro de las ciencias de la ingeniera, la
investigacin y otras reas tecnolgicas.
Ofertas de empleo en IEEE
Como parte de un equipo global, los miembros del personal tienen la
oportunidad de colaborar con un conjunto diverso de colegas cuyo talento y
compromiso con la integridad de ellos uno de los activos ms valiosos de la
organizacin hacer.

FUENTE: http://www.ieee.org/




Ingeniera de Software I


SWEBOK (Software Engineering Body Of Knowledge)
Gua de la Ingeniera de Software Cuerpo del Conocimiento

SWEBOK est estructurada en 12 captulos completamente divididos en
subcaptulos, que explican todos los componentes del cuerpo de conocimiento
de la ingeniera del software, basados en reas del conocimiento.
CAPITULO 2 -Requerimientos del Software
El rea del conocimiento de los requisitos de software (KA), se refiere al
anlisis, especificacin y validacin de los requisitos de software.
Fundamentos de los requisitos SW
Un requisito de software es una caracterstica que se debe exhibir para
solucionar un cierto problema en el mundo real. Es importante tambin que
cada requisito sea comprobable, pensando tambin en las implicaciones que
esto puede conllevar.
Se pueden clasificar de la siguiente manera:
Requisitos de Producto
Se refiere a generar los parmetros del problema a solucionar para ser
traducido a un software.
Requisitos de Proceso
Se refiere ya a la parte tcnica y a lo que voy a utilizar para realizar el software
(lenguaje de programacin, por ejemplo).
Requisitos Funcionales
Son las capacidades o funciones del software.
Requisitos No Funcionales
Son los que actan para obligar a llegar a la solucin pero no son parte integral
del software.
Caractersticas Inesperadas
Son requisitos que se toman pero no pueden comprobarse hasta que est
funcionando el software en condiciones reales.
Requisitos del Sistema y de Software
Se refiere a todo lo que necesita el software para funcionar desde el punto de
vista de hardware, software, recurso humano, informacin, instalaciones,
servicios, etc. Los requisitos de software se derivan de los del sistema.
2. Proceso de los requisitos
Inicia de manera aislada y se va refinando con el modelo de ciclo de vida del
software y necesita ser adaptado a la organizacin y al contexto del proyecto.
Agentes de Proceso
Incluye a todas las personas, usuarias o no, que participan en el desarrollo del
proyecto. Es un grupo interdisciplinario que aporta informacin para la
construccin del software. Pueden ser usuarios, clientes, analistas de mercado,
reguladores, ingenieros de software, etc.
Ayuda y Gerencia de Proceso
Se refiere a toda la parte presupuestal y de gerencia para llevar a cabo el
proyecto.
Calidad y Mejora de Proceso
Ingeniera de Software I

Se refiere al coste generado por control de calidad y a los niveles de
cumplimiento para lograr el objetivo principal y por ende, la satisfaccin del
cliente.
3. Captura de los Requisitos
Se refiere al cmo se van a recolectar los requisitos por parte del ingeniero de
software. Es aqu donde es clave la comunicacin con el cliente y con todas las
personas implicadas en el proceso.
Fuentes de los Requisitos
Deben ser confiables y sometidas a verificacin para confirmar que la persona
que suministra la informacin es idnea para hacerlo y que se tom el tiempo
para analizar su conveniencia.
Tcnicas de Captura de Requisitos
A menudo, el ingeniero de software utiliza tcnicas de captura de requisitos,
tales como: Entrevistas, Prototipos, Reuniones, Observacin
4. Anlisis de Requisitos
Es una auditora a todo lo que se recopil. De aqu salen los requisitos del
sistema y por ende los de software. Permite establecer limitaciones y viabilidad
del proyecto.
Clasificacin de los requisitos
Pueden clasificarse en: Funcionales o no funcionales, De producto o de
proceso, Derivado, Prioritario, Estable o Voltil
Modelo Conceptual
Se debe elegir un modelo conceptual que ayude a entender de una mejor
manera el problema. Es una habilidad con la que debe contar el ingeniero de
software, apoyado en herramientas que le ayuden a contextualizar el software,
como el caso de UML o el uso de la matemtica discreta. La IEEE tiene tres
estndares para el modelado. Estos son:
IEEE Std 1320.1 (conceptual)
IDEF0 (funcional)
IEE Std 1320.2, IDEF1X97 (de informacin)

Asignacin Arquitectnica del Diseo y los Requisitos
Es la fusin de toda la parte de requisitos con la parte de diseo. Es
inseparable esta combinacin; una es parte integral de la otra y es fcil su
comprensin, apoyndose en el modelo conceptual. El estndar IEEE Std
1471-2000 puede servir de apoyo en esta prctica.
Negociacin de los requisitos
5. Especificacin de Requisitos
Se refiere a plasmar en un documento todos los requisitos aprobados.
Someterlos a verificacin por parte de los actores del proyecto. Es usual que se
hagan tres documentos:
Definicin del sistema o documento de exigencias
Requisitos de sistema
Requisitos de software
Es importante esta parte porque sin aprobar alguno o todos los documentos, es
imposible pasar a la etapa de diseo.
El estndar IEEE Std 830 [IEEE830-98], apoya este proceso de especificacin
de requisitos.
Ingeniera de Software I

6. Validacin de los Requisitos
Su objetivo es determinar que los documentos realizados sean comprensibles y
de acuerdo a los estndares determinados. Por esto, deben someterse a una
auditora final realizada por todo el personal implicado en el desarrollo del
software (cliente), para asegurarse de que lo plasmado all es lo que se solicit.
Revisiones de los requisitos
Se nombra un comit revisor, que incluye a un representante del cliente, con el
fin de evaluar los documentos ya mencionados. El estndar IEEE Std 1028
proporciona ayuda valiosa en la tarea de revisin.
Prototipado
Es un medio que utiliza el ingeniero de software para manifestar lo que
entendi y para facilitar la correccin, eliminacin o adicin de requisitos. Como
se evidencia, la ventaja de hacerlo es grande pero el costo puede ser alto.
Pruebas de Aceptacin
Son aquellas que se le aplican a cada requisito para determinar si el producto
final lo satisface o no.
Como conclusin para este captulo puede afirmarse que los requisitos de
software deben tomarse como una prctica seria, asignndole el tiempo y los
recursos necesarios que permitan continuar con un proceso ordenado para
llegar a obtener un software de calidad.

CAPITULO 3 Diseo del Software
Es definido por la IEEE como el proceso para definir la arquitectura, los
componentes, las interfaces y otras caractersticas de un sistema.

1. Fundamentos
Proceso de diseo de software
Se divide en dos etapas:
Diseo Arquitectnico
Descompone el software en componentes y describe sus partes a nivel
general, de estructura.
Diseo Detallado
Describe el comportamiento especfico de estos componentes.
Existen tcnicas permisibles que permiten hacer un acercamiento al
diseo de software. Estas son algunas:
Abstraccin
Es el proceso de olvidarse de la informacin para poder tratar las cosas que
son diferentes como si fueran iguales.
Acoplador y Cohesin
El acoplador es la fuerza de las relaciones entre los mdulos y la cohesin se
refiere a la relacin que existe entre estos mdulos.
Descomposicin y Modularizacin
Esta tcnica se utiliza para poner diversas funcionalidades en componentes ms
pequeos.
Encapsulacin
Permite empaquetar informacin y hacerla invisible. El xito est en darle una
buena funcin a esa informacin.
Separacin de la interfaz y de la puesta en prctica
Define un componente a travs de su interfaz grfica.
Desahogo
Ingeniera de Software I

Asegura que la abstraccin se hizo de manera correcta y que slo se tom lo
relevante del componente.
2. Cuestiones claves del diseo de software
Contribuye a entender cmo dividir, organizar y constituir los paquetes de software.
Se ayuda con las siguientes llaves:
Concurrencia
Se refiere a cmo descomponer el software en procesos, tareas, hilos de reparto y
que conserve la sincronizacin en los procesos.
Distribucin de Componentes
Como integrar cada parte del software con el hardware necesario para su
funcionamiento.
Direccin del Error y de Excepcin y Tolerancia a Fallos
Define las tcnicas para prevenir y tolerar fallos en el momento en que se
presenten.
Interaccin y Presentacin
Se refiere a la forma de mostrar y organizar las interacciones con los usuarios y la
forma de documentarlas.
3. Estructura y Arquitectura de Software
Es una descripcin de los subsistemas y de los componentes de un sistema de
software y de las relaciones entre ellos.
4. Anlisis y Evaluacin de la Calidad del Diseo de Software

Esta parte es importante porque asegura la calidad del proceso de diseo. Se
utilizan mtricas que permiten estimar de manera cuantitativa varios aspectos del
tamao, estructura o de la misma calidad del software. Estas pueden ser
estructuradas u orientadas a objetos.

5. Notaciones del Diseo de Software
Generalmente son grficas y permiten modelar en un diagrama la propuesta de
diseo. Entre ellos estn los diagramas de clases y objetos, de componentes, de
despliegue, de entidad-relacin, de estructura de Jackson, de estructura de cartas
y diferentes lenguajes que permiten describir la arquitectura del software y sus
componentes.
Tambin existe la notacin para las descripciones de comportamiento dinmico del
software, en las cuales tambin se usan diagramas y lenguajes textuales. Entre
ellos estn los diagramas de actividad, de colaboracin, organigrama de datos,
tablas y diagramas de decisin, de secuencia, de transicin de estado y diagramas
de estado de carta, lenguajes de diseo en pseudocdigo, etc.

6. Estrategias y Mtodos del Diseo de Software
Permiten dirigir el proceso de diseo. La estrategia est en trminos generales y
los mtodos deben ser especficos. Aqu se inicia la aplicacin del paradigma
Divide y Vencers y el proceso de refinamiento. Se define tambin si se va a
utilizar el diseo estructurado u orientado a objetos o basado en componentes.

CAPITULO 4 Construccin del Software
Este captulo hace referencia a la creacin detallada de software operativo y
significativo, por medio de una combinacin de codificacin, verificacin, pruebas
unitarias, pruebas de integracin y depuracin.

1. Fundamentos
La construccin del software tiene como objetivos los siguientes:
Ingeniera de Software I

Minimizar la complejidad
Anticiparse a los cambios
Construir para verificar
Aplicacin de estndares en la construccin


2. Gestin de la Construccin
Modelos de Construccin
Los ms conocidos y utilizados son los modelos de ciclo de vida en cascada y de
entrega por etapas. Estos modelos son robustos pero solo son eficientes si se ha
hecho un buen trabajo en la etapa de requisitos y de diseo. Por el contrario, los
modelos prototipado evolucionista, programacin extrema y Scrum, son ms
flexibles en este tema, dado que son iterativos y permiten, de manera cclica,
realizar cambios, al combinar las tres etapas iniciales del desarrollo de un proyecto
de software.
Planificacin de la Construccin
En todo proyecto, la planificacin es vital. Es aqu donde se delimita la aplicacin
de requisitos, en qu orden se irn tomando y que grado de cumplimiento tienen,
con respecto al objetivo principal del proyecto. De ah la importancia de elegir un
modelo de ciclo de vida acorde a los requerimientos.
Medicin de la Construccin
Se refiere a los procedimientos utilizados para medir la eficiencia del cdigo fuente,
en lo que se refiere a extensin, cdigo reutilizado, cdigo destruido, complejidad
de cdigo, estadsticas de inspeccin de cdigo, tasas de rectificacin y correccin
de errores y los horarios. Esto asegura el control de la calidad.
3. Consideraciones Prcticas
Para solucionar un problema de la vida real a travs de un software, es totalmente
necesario utilizar un lenguaje de programacin. Aqu radica el xito del proyecto de
software, dado que es el ingeniero de software el encargado de aprobar el
lenguaje a travs de los argumentos dados por los encargados de la elaboracin
del cdigo fuente.
Lenguajes de Construccin
Son todos los tipos de comunicacin mediante los cuales un ser humano puede
especificar una solucin ejecutable para un problema de un ordenador. Pueden ser
de configuracin, de herramientas y de programacin. Estos ltimos, a su vez,
estn divididos en lingsticos, formales y visuales.
Pruebas de Construccin
Generalmente son realizadas por el profesional que realiz el cdigo. Pueden ser
unitarias o de integracin. Su propsito es reducir el tiempo entre el ingreso de
fallas en el cdigo y el tiempo que se puede demorar su deteccin. Para tal fin, las
normas estndar IEEE Std 829-1998 para documentacin de pruebas y la IEE Std
1008-1987 para pruebas unitarias, pueden ser de gran utilidad.
Reutilizacin
Definir de manera objetiva, que parte del cdigo puede ser eficientemente
reutilizado para minimizar tiempos de entrega, adems debe ser reportado a las
personas que lideran el proyecto, por qu y para que se va a reutilizar, ya que esto
puede modificar el valor del proyecto, por ejemplo.
Calidad de la Construccin
Existen varias tcnicas para evaluar la calidad en la construccin del cdigo fuente
de un proyecto de software. Entre ellas tenemos:
Ingeniera de Software I

Las pruebas unitarias y de integracin
El cdigo paso a paso
Utilizacin de aserciones
Depuracin
Revisiones tcnicas
Anlisis esttico
Integracin
Una parte clave del proceso de construccin es la integracin de las clases,
componentes, rutinas, subsistemas que han sido construidos por separado, sobre
todo si hay implicaciones tcnicas de software o hardware.

CAPITULO 5 Pruebas del Software
Es una actividad que permite evaluar y mejorar la calidad del producto con el fin de
detectar fallas y corregir errores.
Las pruebas del software consisten en verificar el comportamiento de un programa
dinmicamente a travs de un grupo finito de casos de prueba, debidamente
seleccionados del, tpicamente, mbito de ejecuciones infinito, en relacin al
comportamiento esperado.
Divisin de los temas
Fundamentos de las Pruebas del Software: Cubre las definiciones bsicas del rea
de pruebas del software, la terminologa bsica y los trminos clave, as como las
relaciones con otras actividades.
Niveles de Prueba
Objeto de la prueba: enumera los niveles en que tradicionalmente se subdividen las
pruebas para software grande.
Objetivos de las pruebas: considera las pruebas para situaciones o propiedades
especficas y se conoce como objetivos de las pruebas.

CAPITULO 6 Mantenimiento del Software
El mantenimiento de software se ha definido como el nmero total de actividades
requeridas para proveer soporte efectivo al software, esto incluye un planeamiento
efectivo antes. Durante y despus de la implementacin del software.

1. Aspectos Fundamentales en el mantenimiento del software:
Naturaleza del mantenimiento: El mantenimiento de software debe estar dentro
del ciclo de vida operacional, un mantenimiento est definido por la IEEE/EIA
12207 como las actividades de mantenimiento que permiten el desempeo
correcto.
Necesidad de mantenimiento: La necesidad de mantenimiento se da para
garantizar que el software cumple satisfactoriamente con los requerimientos
solicitados, este se aplica a cualquier desarrollo independiente del modelo de ciclo
de vida utilizado, el mantenimiento se da en orden de alcanzar el desempeo
adecuado y en el orden de:
Corregir fallas.
Improvisar el diseo.
Implementar correcciones
Interfaces con otros sistemas.
Ingeniera de Software I

Adaptar programas a diferentes tipos de hardware, software, configuracin
del sistema y facilidad de uso de telecomunicaciones.
Migracin legal de software.
Retiro de software.
Costos Mayoritarios de mantenimiento: Los costos de mantenimiento de
software son los ms costosos en todo el ciclo de vida del software.A continuacin
se presentan algunos aspectos tcnicos y no tcnicos que afectan los costos de
mantenimiento:
Tipo de Aplicacin.
Disponibilidad del mantenimiento de software.
Ciclo de vida del software.
Caractersticas de hardware.
Calidad del diseo de software, construccin, documentacin y pruebas.
Evolucin del software: En 1969 Lehman direcciono el mantenimiento del
software y la evolucin de los sistemas, durante 20 aos se mantuvo su idea de la
formulacin de ocho Leyes de la evolucin donde se mantuvo la idea de la
evolucin en el mantenimiento del software para continuar con el desarrollo. Lientz
y Swanson inicializaron la definicin de tres categoras de mantenimiento:
correctivo, adaptativo y perfectivo.
2. Factores claves en el mantenimiento del software:
E importante comprender que el mantenimiento de software nos proporciona una
tcnica nica en los desafos de administracin para los ingenieros de software, a
continuacin una manera de cmo se nos presentan algunos factores de
administracin y tcnicos para el mantenimiento de software, estos se agrupan
segn los tpicos siguientes:
Factores tcnicos.
Factores administrativos.
Estimacin de costos.
Medidas.

3. Proceso de mantenimiento:

Provee referencias y estndares utilizados para implementar el proceso de
mantenimiento de software.
Cada actividad de mantenimiento primario de software ISO/IEC 14764 es
desglosada en los siguientes trminos:
Proceso de implementacin.
Anlisis del problema y modificaciones.
Implementacin y modificacin.
Mantenimiento Aceptacin/Revisin.
Migracin.
Retiro de Software.
Tcnicas para el mantenimiento:
Esta subrea nos introduce a algunas generalidades aceptadas por las tcnicas
del mantenimiento de software:
Comprensin del programa
Los programadores gastan tiempo considerable leyendo y entendiendo programas
para poder implementar cambios existen distintas herramientas que nos ayudan
con este proceso.
Ingeniera de Software I

Reingeniera
Est definida como el examen de la alteracin del software para reconstituir una
nueva forma, la reingeniera es la ms radical y expansiva forma de la alteracin
otros creen que la reingeniera puede ser usada para cambios menores, siempre
est enfocada en mantener la legalidad del software as como sus tcnicas, casos
de estudio y sus riesgos y beneficios.
Ingeniera inversa
Es el proceso de analizar el software para identificar los componentes y sus
relaciones para crear representaciones del software Produce grficas as como
control de flujo y del cdigo fuente, un tipo de reingeniera puede ser la
redocumentacin, otro tipo es la reparacin del diseo.

CAPITULO 7 Gestin de Configuracin de Software
La configuracin de un software y sus caractersticas funcionales de hardware,
software, firmware o la combinacin de estas son un conjunto de caractersticas
tcnicas que se deben cumplir para garantizar su correcto funcionamiento.
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.


1. Administracin de los procesos SCM

La SCM administra y controla la evolucin e integridad del software as como su
verificacin, control, reportes y configuracin de la informacin. Una
implementacin exitosa del SCM requiere un cuidado especial y planeacin y
administracin.
Contexto Organizacional del SCM
Para desarrollar un plan SCM es necesario conocer detalladamente los procesos
de la organizacin ya que el SCM interacta directamente con todos los elementos
y actividades organizacionales.
Constantes y gua para el proceso SCM
Esto proviene de un gran nmero de fuentes tiene que ver con las polticas de la
organizacin y su influencia en la administracin de los procesos.
Planeacin del SCM
El proceso de planeacin debe ser consistente con el contexto organizacional, y la
naturaleza del proyecto (por ejemplo el tamao y su crtica) las actividades ms
importantes en este contexto son: control de configuracin, control de estado,
Ingeniera de Software I

control de auditora, control de liberaciones y entregas as como las herramientas
de configuracin y control y sus interfaces consideradas.
Plan de la SCM
Los resultados de planeacin del proyecto son guardados en un plan de gestin y
configuracin del software, el documento se mantiene y se actualiza o aprueba
segn sea necesario a lo largo del ciclo de vida del software.
Tambin es muy til hacer mediciones constantes a los procesos para hacer los
cambios y/o actualizaciones correspondientes.
Seguimiento de la gestin de la configuracin del software
Despus del cumplimiento del proceso de la SCM puede ser necesario un cierto
nivel de seguimiento para asegurarse que los procesos SCM se llevan a cabo
adecuadamente, este seguimiento puede hacer parte de un proceso de auditora
para garantizar la calidad del software.
El uso de herramientas integradas en la SCM facilita el proceso de seguimiento.
Medidas y mediciones de la SCM
Proporcionan un buen medio para monitorizar la efectividad de las actividades
SCM de una manera continuada, son tiles para caracterizar el estado actual del
proceso y para proporcionar una base para hacer comparaciones con el tiempo.

2. Identificacin de la configuracin del software
Identifica los elementos a ser controlados, establece e identifica esquemas y sus
versiones, establece herramientas y tcnicas utilizadas para administrar y controlar
dichos elementos.
Identificar elementos a ser controlados

Un primer paso sera identificar cambios en los elementos de software que sern
controlados para entender la configuracin del software en el contexto del sistema.
Biblioteca de software
Coleccin controlada de software as como de sus documentos relacionados y est
relacionada para ayudar en el desarrollo de software, ah diferentes tipos y nos
pueden ayudar en diferentes etapas, son tambin una fuente importante de
informacin para mediciones del trabajo realizado y del progreso.

3. Control de la configuracin del software
Le concierne la gestin de cambios durante el ciclo de vida, cubre los procesos
que determinan los cambios a realizar, la autoridad para hacerlos y el soporte para
la implementacin de dichos cambios.
Peticin, evaluacin y aprobacin de cambios del software
El primer paso es determinar los cambios a realizar, se evala el coste e impacto
del cambio propuesto se acepta o rechaza dicho cambio, este se origina en
cualquier momento del ciclo de vida y puede incluir una solucin propuesta y una
prioridad.
Implementando cambios en el software
Se implementan utilizando los procesos de software definidos de acuerdo con los
requerimientos de planificacin aplicables.
Podran sufrir auditoras de configuracin y verificacin de la calidad del software.
Esta soportada por las herramientas de la biblioteca que proporcionan gestin de
versiones y soporte para el almacenamiento de cdigo.
Desviaciones y Remisiones
Las limitaciones que se imponen al esfuerzo de la ingeniera del software podran
contener necesidades que no pueden ser satisfechas en el punto designado del
Ingeniera de Software I

ciclo de vida. Una remisin es una autorizacin para abandonar una necesidad
antes del desarrollo del elemento.

4. Registro del estado de la configuracin del Software
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.
Informacin del estado de la configuracin del software
Genera un conjunto de informes durante el ciclo de vida, se encarga de recoger y
mantener la informacin del estado de la configuracin que se ha de gestionar
segn las configuraciones evolucionan.
Reportes del estado de la configuracin del software
Los reportes pueden ser usados para los elementos del proyecto de la
organizacin, incluyendo el equipo de desarrollo, administracin de proyectos y
actividades de calidad del software.
Tambin sirve para responder algunas preguntas especficas de la etapa de
produccin.

5. Auditora de la configuracin de software
Es una actividad desarrollada independientemente para evaluar la conformidad de
los productos de software, se encarga de aplicar regulaciones, estndares, planes
de gua y procedimientos.
Deben ser cuidadosamente planeadas, existen herramientas que apoyan la
planeacin y conduccin de las auditoras para facilitar su proceso.
Auditoria funcional de la configuracin del software

El propsito es asegurar la consistencia en los elementos de software auditados.
La salida de la verificacin y validacin del software es la clave de entrada de este
tipo de auditora.
Auditora de la configuracin fsica del software
El propsito es asegurar que el diseo y la documentacin de referencia es
consistente con la construccin del producto de software.

Auditora durante el proceso de una lnea base de software
Como lo mencionado puede ser llevado durante el proceso de desarrollo para
investigar el estado actual de los elementos especficos de la configuracin. La
auditora es aplicada a los elementos de la lnea base para asegurar el desempeo
que sea consistente con las especificaciones.
6. Administracin de las entregas y liberaciones de software

El trmino liberacin es usado en este contexto para referirnos a las
distribuciones de software y los elementos en las actividades de desarrollo. Eso
incluye liberaciones internas y correcciones a las variantes de estos elementos.
La informacin y documentacin entregada en las liberaciones es conocida como
el documento descriptivo, este incluye los contenidos de instalacin y instrucciones
de actualizacin.

CAPITULO 8 Gestin de la Ingeniera de Software
Puede ser definida como las actividades de gestin de la aplicacin, planeacin,
coordinacin, medicin, monitorizacin, control y reportes para asegurar el
desarrollo y mantenimiento del software como sistemtico, disciplinado y
cuantificable.
Ingeniera de Software I

La gestin en la ingeniera del software se descompone en seis subreas
principales:

1. Iniciacin y Alcance
Se centra en la determinacin eficaz de los requisitos del software por medio de
varios mtodos de induccin y la valoracin de la viabilidad del proyecto desde
distintos puntos de vista, una vez establecida la viabilidad, la tarea pendiente es la
especificacin de la validacin de requisitos y del cambio de procedimientos.
2. Planificacin de un Proyecto de Software

Est regulado por los alcances y los requisitos y por la viabilidad del proyecto, se
evalan los procesos de ciclo de vida y se selecciona el ms apropiado.
Se debe realizar una descomposicin jerrquica de tareas, y la realizacin de un
calendario y una estimacin de costos.
Ms adelante se le da un presupuesto a las tareas y la imposicin de horarios y
uso de materiales, se debe llegar a la determinacin de procesos y
responsabilidades para asegurar la calidad del software, verificacin, validacin y
revisiones de auditoras.
Planificacin de un Proceso
La seleccin de un modelo de ciclo de vida o la adaptacin de un despliegue de
ciclos se emprenden a la luz del alcance particular y de los requisitos del proyecto.
Tambin se seleccionan mtodos y herramientas pertinentes.
Determinar los entregables

Se especifica y caracteriza los productos de cada tarea, se evala la posibilidad de
reutilizar componentes de desarrollos anteriores y se planifica la utilizacin de
terceras personas y del software obtenido y se seleccionan los proveedores.
Esfuerzo, calendario y clculo del coste
Se determina el rango de esfuerzo esperado, utilizando un modelo de estimacin
calibrado, basado en datos histricos sobre el esfuerzo empleado.
Los requisitos de recursos (personas, herramientas) se traducen en estimaciones
de costo.
Reparto de recursos
Los equipos, medios y personas se asocian a las tareas programadas, esta
actividad est regulada y limitada por la disponibilidad de los recursos y su uso
ptimo bajo estas circunstancias.
Gestin de Riesgos
Se completa el anlisis de riesgos, la valoracin crtica de riesgos, la mitigacin de
riesgos y la planificacin de contingencias.
Gestin de calidad
Se define en trminos de atributos pertinentes del proyecto y en los de cualquier
producto asociado a l, tanto en trminos cualitativos como cuantitativos.
Los lmites de adhesin de calidad se colocan de acuerdo a las expectativas que
tenga el contratista sobre el software en cuestin as como los procedimientos de
verificacin y validacin del producto entregable.
Gestin de planes
Los informes, la supervisin y el control del proyecto deben encajar en el proyecto
de ingeniera del software seleccionado y en las realidades del proyecto y deben
reflejarse los artefactos que lo gestionarn.
Los cambios a otros procesos de soporte ejemplo: gestin documental, resolucin
de problemas tambin deben gestionarse de la misma manera.

Ingeniera de Software I

3. Promulgacin del proyecto de Software
Se ejecutan los planes y se divulgan los procesos incluidos en los planes, en este
proceso hay total expectativa de la adhesin plena de los requisitos del contratista
y el logro de los objetivos del proyecto, son actividades fundamentales para la
promulgacin la gestin, medicin, supervisin, control e informacin del proyecto.
4. Revisin y Evaluacin
Se evala el proceso global hacia el logro de los objetivos y satisfaccin de los
requisitos del contratista y se llevan a cabo valoraciones sobre la efectividad del
proceso global hasta la fecha, del personal involucrado y de las herramientas y
mtodos utilizados.

Determinar la satisfaccin de los requisitos
Determinar que el objetivo principal se est cumpliendo es primordial ya que lo que
nos interesa es la satisfaccin del usuario o contratista esto se debe hacer
peridicamente.
Se deben identificar las variaciones a las expectativas para llevar a cabo las
acciones adecuadas.
Tambin se debe gestionar el control de cambios a los procedimientos y a la
configuracin del software.
Revisar y Evaluar la Ejecucin

Las revisiones peridicas a lo realizado nos proporcionan detalles sobre la
probabilidad de ser fiel a los planes, as como las posibles reas de dificultad, aqu
se evalan los diferentes mtodos, herramientas y tcnicas empleadas para ver su
eficacia y adecuacin y se evala constantemente la eficacia de los procesos para
ver su utilidad en el contexto del proyecto, cuando sea necesario se gestionan y se
llevan a cabo los cambios.
5. Cierre
El proyecto llega a su fin cuando todos los planes y procesos implicados se han
promulgado y completado, en esta fase se repasan ciertos criterios para el xito
del proyecto.
Se han entregado los procesos tal como se haban especificado y todos los
productos planificados han sido entregados con caractersticas aceptables.
Determinar el cierre
Se logran los objetivos del proyecto y estos procesos por lo general involucran a
los contratistas y acaban con la documentacin y de los informes de cualquier otro
problema pendiente conocido.
Actividades de cierre
Se archivan los materiales del proyecto y la base de datos de medicin de la
organizacin se pone al da con los datos finales del proyecto y se emprende el
anlisis post-proyecto.
Se hace con el fin de identificar temas. Problemas y oportunidades encontrados
durante el proceso, se sacan las lecciones del proceso y luego se alimentan los
conocimientos de la organizacin y los intentos de mejora.
6. Medidas de la ingeniera del software

Aqu abordamos el tema de la medicin en la ingeniera del software y su
importancia para esto se sigue unas mtricas y normas establecidas por entidades
como la ISO y la IEEE.
Establecer y sostener el compromiso de medir
Ingeniera de Software I

Se deben tener ciertos compromisos de medicin establecidos, adems de
requisitos que midan los factores que contribuyen a un objetivo en particular para
as gestionar los proyectos y hacerle frente a este objetivo.
Planificar el proceso de medicin
Para esto es necesario identificar la unidad funcional a la cul se le est aplicando
para que sea caracterizada y as identificar las necesidades de informacin para
proceder con los objetivos primordiales y sus respectivas prioridades.
Evaluar las mediciones
Este proceso se debe llevar a cabo con un criterio de evaluacin especfico para
determinar las fuerzas y debilidades de los productos, se puede hacer por medio
de un proceso de auditora interna o externa y debe incluir una retroalimentacin a
los usuarios.
CAPITULO 9 Proceso de Ingeniera de Software
Se refiere al conjunto actual de actividades realizadas dentro de una organizacin
que se puede ver como un solo proceso.

1. Proceso de implementacin y cambios
Se centra en los cambios organizacionales, describe la infraestructura, actividades,
modelos y consideraciones prcticas de un proceso de implementacin y cambios:
Infraestructura del proceso

Es necesario que la infraestructura este en su lugar, es decir que los recursos
estn al alcance de la mano y que se hayan asignado responsabilidades, es
posible que se tengan que establecer comits para supervisar el esfuerzo del
proceso de ingeniera del software.

2. Definicin de procesos
Pueden ser unos lineamientos, polticas o estndares se definen para facilitar el
entendimiento en la comunicacin humana, apoyar y mejorar procesos , se deben
considerar algunas variaciones como la naturaleza del trabajo, el dominio de la
aplicacin, el modelo de ciclo de vida y la madurez de la organizacin.

3. Valoracin del proceso
Se lleva a cabo utilizando un mtodo y un modelo de valoracin que en algunos
casos es visto como un modelo de apreciacin y muchas veces una evaluacin de
capabilidad cuando es para la adjudicacin de algn contrato.
Modelos de valoracin del proceso
Recoge lo que se conoce como las buenas prcticas en el proceso de gestin de
la ingeniera del software, la ISO define un modelo ejemplo de valoracin y de
requisitos, se han desarrollado tambin un modelo de madurez para sistemas de
ingeniera que resulta til cuando un proceso est implicado en el desarrollo y
mantenimiento de un sistema incluyendo el software.
Existen dos arquitecturas generales para un modelo de valoracin: continua y
escalonadamente, son muy diferentes entre ellas y se deben evaluar para conocer
cul es la que mejor se adapta a mis necesidades y objetivos.
Mtodos de valoracin del proceso

Es garantizar un mtodo cuantitativo que evaluara los procesos, existen de varios
tipos dnde se valoran distintos tpicos todos pensados en las mejoras de los
procesos y la eficacia en la organizacin.

4. Medicin de los procesos y los productos
Ingeniera de Software I

Aunque puede resultar compleja la medicin a la ingeniera del software existen
varios aspectos que son fundamentales para la medicin y anlisis, estas
mediciones se pueden realizar para apoyar los procesos de implementacin y
cambio o evaluar consecuencias de estos.
Medicin del proceso
Se recoge, analiza e interpreta informacin cuantitativa sobre el proceso, se utiliza
para identificar la fuerza y debilidad en ellos y as mismo evaluarlos despus de
haber sido implementados o cambiados.




La medicin de un producto software incluye principalmente, la medicin del
tamao del producto, la estructura del producto y la calidad del producto.
CAPITULO 10 Instrumentos y Mtodos de la Ingeniera de Software
Son los instrumentos asistidos por ordenador que son requeridos para ayudar a
los procesos de ciclo de vida del software, nos ayuda a reducir la carga
cognoscitiva enfocndonos ms en los aspectos creativos del proceso.
Los mtodos imponen la estructura a la actividad de la ingeniera del software con
el objetivo de hacerla sistemtica, por lo general proporcionan notacin y
vocabulario para comprobar tanto el proceso como el producto.
1. Las herramientas de ingeniera de Software
Ests corresponden a las cinco primeras reas de conocimiento de la gua,
Exigencias de software, diseo de software, construccin de software, pruebas de
software y mantenimiento de software.
Los cuatro siguientes asuntos corresponden a las reas de conocimiento
restantes: La direccin de configuracin de software, la direccin de ingeniera de
software, el proceso de ingeniera de software, y la calidad del software.
Las Herramientas de exigencias de Software
Han sido clasificados en dos categoras: modelado e instrumentos de capacidad
de rastreo.
Exigencias de los instrumentos de modelado: Son usados para la obtencin,
anlisis, especificacin y validez de las exigencias de software.
Exigencias de los instrumentos de capacidad de Rastreo: Se hacen cada vez ms
importantes debido a que la complejidad del software crece, son presentados
separadamente de los instrumentos de modelado.
Las Herramientas de Diseo de Software
Cubre los instrumentos para crear y comprobar diseos de software, existe gran
variedad de estos gracias a la diversidad en las notaciones de diseo de software
y mtodos, a pesar de esta variedad no se ha encontrado una divisin
convincente.
Las Herramientas de Construccin de Software
Son instrumentos usados para producir y traducir la representacin de programa
mquina, se utilizan los redactores de programa, compiladores y generadores de
cdigo, intrpretes y depuradores.
Herramientas de Pruebas de Software
Ingeniera de Software I

Se incluyen: Generadores de Pruebas, marcos de ejecucin de pruebas,
herramientas de evaluacin de pruebas, herramientas de direccin de pruebas y
de anlisis y de funcionamiento, todas estas estn enfocadas a la prueba del
software construido as como de su funcionalidad, versatilidad y calidad.
Herramientas de Mantenimiento de Software
Abarca los instrumentos utilizados para el mantenimiento de software, dos
categoras son identificadas: instrumentos de comprensin e instrumentos de
reingeniera.
Herramientas de comprensin: Ayudan a la comprensin humana de programas,
se incluyen instrumentos como animadores o rebanadores.
Herramientas de reingeniera: Es definido como el examen y la alteracin del
software sustancial para reconstruirlo de una nueva forma.

Las herramientas de direccin de configuracin de Software
Han sido dividas en tres categoras: rastreo, direccin de versin e instrumentos de
liberacin.
Rastreo: Son elementos utilizados en la conexin con las cuestiones que rastrean
problemas asociados con un producto de software particular.
Herramientas de direccin de versin: Estn implicados en la direccin de
mltiples versiones de un producto.
Herramientas de liberacin y construccin: Son usados para las tareas de
liberacin y construccin de un software incluye instrumentos de instalacin que
son extensamente utilizados para configurar la instalacin de un producto software.

Herramientas de direccin en la Ingeniera de Software

Esta subdivido en tres categoras: planificacin de proyecto y rastreo, manejo
arriesgado, y medida.
En la primera se busca una medida de esfuerzo en el proyecto y cuenta la
valoracin as como la planificacin del proyecto, en la segunda se identifican la
estimacin y riesgos de supervisin, finalmente en la medida se asiste la
realizacin de actividades relacionadas con el programa de medida de software.

Las Herramientas de proceso de ingeniera de Software
Est divida en instrumentos que modelan, instrumentos de direccin y ambientes
de desarrollo de software.
Las herramientas de Calidad de Software
Dividas en dos categoras: inspeccin e instrumentos de anlisis.
En las herramientas de revisin de auditoria se apoyan en revisin y revisiones de
cuenta y en las de anlisis estticos se analizan artefactos de software como
analizadores sintcticos y semnticos as como datos, el flujo de control y
analizadores de dependencia.

Cuestiones de Instrumento Compuestas
Cubre el tema aplicable a todas las clases de instrumentos, tres categoras
identificadas: tcnicas de integracin de instrumentos, meta-instrumentos, y
evaluacin de instrumento.
2. Los Mtodos de la Ingeniera del Software

Est divido en tres temas: Mtodos heursticos que tratan con accesos
matemticamente basados, y mtodos de prototipazo que tratan con software que
Ingeniera de Software I

trama accesos basados en varias formas de prototipazo, cada tema trata sus
preocupaciones distintas no quiere decir que no tengan que ver el uno con el otro.

Mtodos Heursticos
Este tema contiene cuatro categoras: estructurado, orientado a datos, orientado a
objetos, y especfico de dominio.
La ltima incluye mtodos especializados para desarrollar los sistemas que
implican en tiempo real aspectos relacionados con la seguridad.
En el mtodo estructurado se ve desde un punto de vista funcional para refinarlo y
hacerlo cada vez ms detallado.
En el orientado a datos se estructura el programa y se manipula.
En el orientado a objetos el sistema es visto como una coleccin de objetos ms
que de funciones.

Mtodos Formales
Aqu se describe como el software se basa en mtodos de ingeniera basado
matemticamente y se subdivide segn varios aspectos de mtodos formales entre
ellos:
Especificacin del lenguaje y notaciones: Aqu se especifica la lengua usada y
se clasifica segn la orientacin del modelo las caractersticas o el
comportamiento.
Refinamiento: Aqu se trata como de refinar o transformar las especificaciones en
una forma ms cercana a la deseable en un programa finalmente ejecutable.
Propiedades de Verificacin/Confirmacin: Aqu se incluyen confirmaciones de
teorema y la comprobacin del modelo.
Mtodos de Prototipado

Cubre mtodos que implican el prototipazo de software y es subdivida en estilos de
prototipazo, objetivos y tcnicas de evaluacin.
Se deben incluir aspectos como: Estilos de prototipazo, objetivos del prototipazo, y
las tcnicas para la evaluacin del prototipo propuesto.
CAPITULO 11- Calidad del Software
Se abordan los aspectos relativos a la calidad del software los cuales trascienden
en cualquier ciclo de vida, en esta gua se describen un conjunto de mtodos para
alcanzar la calidad, en este caso se trataran las tcnicas estticas es decir
aquellas que no requieren la ejecucin del software para su evaluacin mientras
las dinmicas cubren los aspectos de calidad en las pruebas del software.

1. Fundamentos de Calidad del Software
Aqu se definen formalmente los aspectos a tratar y la manera como un ingeniero
de software debera entender y adoptar los conceptos y caractersticas de calidad
y su relevancia en el desarrollo o mantenimiento de software.
Los aspectos de calidad deben estar inherentes desde el momento mismo de los
requerimientos as como la medicin y criterios de aceptacin que evalan estas
caractersticas.
Modelos y Caractersticas de Calidad
La terminologa usada en las caractersticas difiere de una taxonoma a otra ya que
cada una posee niveles jerrquicos diferentes, la ISO ha definido tres modelos
relacionados con la calidad en un producto de software (la calidad interna, la
calidad externa y la calidad en el empleo).
Ingeniera de Software I

Mejora de Calidad
La tarea de la calidad puede ser mejorada cada vez ms gracias a un proceso
iterativo de mejora continua que requiere control de direccin, control y
retroalimentacin de muchos procesos simultneos: (1) los procesos de ciclo de
vida del software, (2) el proceso de deteccin de error/defecto, retirada de los
mismos y prevencin y (3) el proceso de mejora de calidad, estos procesos han
sido probados y certificados por expertos en calidad que afirman que la calidad de
un producto est directamente relacionada con la calidad del proceso empleado
para crearlo.
Existen varios instrumentos que nos permiten conocer los objetivos de la calidad
como por ejemplo el Total Quality Management (TQM), process of plan, Do, Check
and Act (PDCA) con estos podemos identificar fallas, desarrollar acciones
detalladas y gestionar el apoyo a la gerencia y a los recursos asignados para el
proyecto para trabajar la calidad en la ingeniera del software.

2. Procesos de Gestin de Calidad del Software
La gestin de calidad del software (SQM) es de gran importancia y aplicacin a
todas las perspectivas de procesos de software, productos y recursos, estos
consisten en numerosas actividades, algunos de ellos pueden encontrar errores
diariamente mientras que otros pueden resultar mas bien en valiosas revisiones.
El SQM puede ser utilizado para evaluar productos intermedios as como el
producto final.
Algunos de los procesos especficos estn definidos por la IEEE:
Procesos de aseguramiento de calidad
Procesos de Verificacin
Procesos de Validacin
Procesos de Revisin
Procesos de Auditora
Revisiones de Gestin: El objetivo es supervisar el progreso, determinando el
estado de los planes y programas, requerimientos confirmados y su sistema de
localizacin o evaluar la efectividad de los enfoques de gestin empleados. Con
esto se determina la idoneidad de los proyectos, programas y requerimientos y
supervisan su progreso o inconsistencias.
Revisiones Tcnicas: El propsito es evaluar el producto software para
determinar si es idneo para su correspondiente uso, deben establecerse los roles
especficos, una revisin tcnica requiere que las entradas obligatorias estn en su
lugar con el objeto de proceder a: exposicin de objetivos, un producto software
especfico, el plan especfico de gestin del proyecto, la lista de cuestiones claves
asociadas al producto y el procedimiento de revisin tcnica.
Inspecciones: Detecta e identifica anomalas en los productos de software,
existen dos importantes elementos diferenciadores entre inspeccin y revisin y
son los siguientes: un individuo que mantiene una posicin de direccin sobre
cualquier miembro del equipo de inspeccin; la inspeccin ha de ser llevada por un
inspector con formacin en inspecciones tcnicas.
Las inspecciones por lo general requieren el autor de un producto intermedio y
tambin a un lder de inspeccin, generalmente son hechas sobre una pequea
seccin del producto a la vez, las anomalas encontradas deben ser documentadas
y enviadas al responsable de la inspeccin, tambin es recomendable manejar
Ingeniera de Software I

listas de chequeo durante la inspeccin de esta manera se clasifican las anomalas
y se determinan su exactitud e integridad.
Walk-throughs: El objetivo es evaluar el producto software, los objetivos
principales son: Encontrar anomalas, mejorar el producto software, considerar
implementaciones alternativas, evaluar la conformidad con estndares y
especificaciones.
Es similar a una inspeccin pero su desarrollo por lo general es menos formal,
generalmente es desarrollado por el ingeniero de software para darle una
oportunidad a su equipo de repasar el trabajo como una tcnica de aseguramiento.
Auditoras: El objetivo es realizar una evaluacin independiente de la conformidad
de productos de software y procesos a regulaciones aplicables, estndares,
directrices, planes y procedimientos, est formalmente organizada con
participantes que cumplen roles especficos contando con un representante de la
organizacin auditada.
Puede realizarse sobre casi cualquier proceso o producto en cualquier etapa de
mantenimiento o desarrollo.

3. Consideraciones Prcticas:

Requerimientos de calidad del software:
Aqu influyen varios factores como la planificacin la gestin y seleccin de
actividades SQM y tcnicas incluyendo: Donde residir el software , requerimientos
del sistema y del software, los componentes comerciales, estndares , mtodos y
herramientas de software, el presupuesto y los usuarios implicados como tambin
el nivel de integridad del sistema.
Las tcnicas dinmicas son ejecutadas durante todo el desarrollo y el
mantenimiento de software, generalmente son tcnicas de testeo o simulacin.
Las pruebas examinan todos los output de la especificacin de requerimientos de
software con el objeto de asegurar su trazabilidad, consistencia, completitud,
correccin y ejecucin.
Existen muchos tipos de pruebas entre ellos la de terceros ya que es la de un
facilitador independiente por lo general acreditado por alguna autoridad su objetivo
es probar el producto respecto a su conformidad con un conjunto de exigencias.

CAPITULO 12 Disciplinas Relacionadas a la Ingeniera de Software
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. Usado como fuente reconocida y consensuada, este captulo
identifica para cada Disciplina Relacionada:
Una definicin informativa (cuando sea factible).
Un listado de reas de conocimiento.
Listados de disciplinas relacionadas y sus reas de conocimiento
Ingeniera de la Computacin
Algoritmos y Complejidad Arquitectura de ordenadores y
Organizacin
Ingeniera de Software I

Ingeniera de Sistemas Informticos
Circuitos y Sistemas
Lgica Digital
Estructuras discretas
Procesamiento de seales digitales
Sistemas distribuidos
Electrnica
Sistemas embebidos

Ciencia de la Computacin
Estructuras discretas
Fundamentos de la programacin
Algoritmos y Complejidad
Arquitectura y Organizacin
Sistemas operativos
Sistemas centralizados
Lenguajes de programacin


Gestin
Finanzas
Marketing y ventas
Gestin de operaciones
Gestin de Sistemas de Informacin


Matemticas
Algebra lineal
Clculo Integral y Diferencial
Ecuaciones diferenciales
Probabilidad

Gestin de Proyectos
Gestin de Integracin del proyecto
Gestin de Alcance del proyecto
Gestin del tiempo del proyecto
Gestin del coste del proyecto
Gestin de la calidad del proyecto

Gestin de Calidad
ISO 9000:2000 Sistemas de gestin de
calidad Fundamentos y vocabulario

Interaccin Hombre-Mquina
Gestin de la informacin
Sistemas inteligentes
Redes
Sistemas operativos
Fundamentos de la programacin
Probabilidad y Estadstica
Problemas sociales y profesionales
Ingeniera del Software
Verificacin y Prueba
Diseo VLSI/ASIC



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


Derecho
Gestin de Recursos Humanos
Economa
Analisis cuantitativo
Poltica y estrategia de negocio

Estadstica
Anlisis numrico
Matemtica discreta

Gestin de los recursos humanos del
proyecto
Gestin de comunicaciones del proyecto
Gestin de riesgos del proyecto
Gestin de consecucin del proyecto

También podría gustarte