Vous êtes sur la page 1sur 12

1

INGENIERA DEL SOFTWARE I


Tema 1
Introduccin a la Ingeniera del Software
Univ. Cantabria Fac. de Ciencias
Francisco Ruiz
1.2 Francisco Ruiz - IS1
Objetivos
Comprender qu es la Ingeniera del Software y su
necesidad.
Situarla en el contexto ms amplio de la Informtica.
Conocer el significado e implicaciones de la palabra
ingeniera.
Conocer las principales reas que la forman.
Conocer el cuerpo de conocimientos SWEBOK.
2
1.3 Francisco Ruiz - IS1
Contenido
El Problema del Desarrollo de
Software
Evolucin Histrica
Nuevos Paradigmas
Naturaleza del Problema
Contexto de la Ingeniera del
Software
Perspectiva de Ingeniera
Por qu Ingeniera del Software?
Definicin
Cuerpo de Conocimientos - SWEBOK
Ingeniera del Software vs
Informtica
Currculos Internacionales
Mercado Profesional
Academia
Es Hacer Software una Profesin?
Conclusiones
reas de Conocimiento
Requisitos
Diseo
Construccin
Pruebas
Mantenimiento
Gestin de la Configuracin
Gestin de la Ingeniera Soft.
Procesos
Herramientas y Mtodos
Calidad
Disciplinas relacionadas
CHARLA
1.4 Francisco Ruiz - IS1
Bibliografa
Bsica
IEEE Computer Society (2004)
SWEBOK - Guide to the Software Engineering Body of Knowledge,
2004 Version.
Captulo 1.
http://www.swebok.org/
Complementaria
Caps. 1, 2 y 4 del libro de Sommerville (2005).
Transparencias en
http://www.comp.lancs.ac.uk/computing/resources/IanS/SE7/Present
ations/index.html
Cap. 1 del libro de Pressman (2005).
3
1.5 Francisco Ruiz - IS1
Software Engineering Body of Knowledge
http://www.swebok.org/
Cuerpo de Conocimientos - SWEBOK
1.6 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Software EngineeringBody of Knowledge
Proyecto conjunto de IEEE-CS y ACM.
Versin actual de 2004.
Aprobada oficialmente como ISO/IEC TR 19759:2005.
Los objetivos principales de SWEBOK son cinco:
Promover una visin consistente del mundo de la IS.
Clarificar el papel y delimitar las fronteras- de la IS con respecto a otras
disciplinas asociadas: ciencia de la computacin, gestin de proyectos,
ingeniera de computadores, y matemticas.
Caracterizar los contenidos de la disciplina.
Proveer acceso a los contenidos del cuerpo de conocimientos.
Proveer las bases para desarrollar planes de estudios o materiales para
certificaciones individuales.
4
1.7 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Gua para el Cuerpo de Conocimientos de Ingeniera del Software (IS)
SWEBOK (versin 2004)
Mantenimiento
Gestin de la
IS
Proceso de IS
Herramientas y
Mtodos
* Fundamentos
* Aspectos
clave
* Proceso
*Tcnicas
* Iniciacin y
definicin del
alcance
* Planificacin
del proyecto
* Realizacin
del proyecto
* Revisin y
evaluacin
* Cierre
* Medicin en IS
* Implementacin
y cambio del
proceso
* Definicin del
proceso
* Evaluacin del
proceso
* Medicin del
proceso
y el producto
* Herramientas
software para:
- requi si tos
- di seo
- construcci n
- pruebas
- manteni mi ento
- gesti n de l a
confi guraci n
- gesti n de l a IS
- el proceso de IS
- cal i dad
- probl emas
vari os
* Mtodos de
desarrollo de
software:
- heursti cos
- formal es
- prototipado
Gestin de la
Configuracin
* Gestin del
proceso
* Identificacin
de la
configuracin
* Control de la
configuracin
* Contabilidad
del estado de l a
configuracin
* Auditora de la
configuracin
* Gestin y
entrega de
versiones
Calidad
* Fundamentos
* Procesos de
gestin de la
calidad
* Consideracio-
nes prcticas
Pruebas
* Fundamentos
* Niveles de
prueba
* Tcnicas
* Mediciones
relacionadas
* Proceso
Construccin
* Fundamentos
* Gestin de la
construccin
* Consideracio-
nes prcticas
Diseo
* Fundamentos
* Aspectos
clave
* Estructura y
arquitectura
software
* Anlisis y
evaluacin de
la calidad de un
diseo
* Notaciones
Requisitos
* Fundamentos
* Proceso
* Elicitacin
* Anlisis
* Especificacin
* Val idacin
* Consideracio-
nes prcticas
1.8 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Gua para el Cuerpo de Conocimientos de Ingeniera del Software (IS)
SWEBOK (versin 2004)
Mantenimiento
* Fundamentos
* Aspectos
clave
* Proceso
*Tcnicas
Pruebas
* Fundamentos
* Niveles de
prueba
* Tcnicas
* Mediciones
relacionadas
* Proceso
Construccin
* Fundamentos
* Gestin de la
construccin
* Consideracio-
nes prcticas
Diseo
* Fundamentos
* Aspectos
clave
* Estructura y
arquitectura
software
* Anlisis y
evaluacin de
la calidad de un
diseo
* Notaciones
Requisitos
* Fundamentos
* Proceso
* Elicitacin
* Anlisis
* Especificacin
* Validacin
* Consideracio-
nes prcticas
Fases en el proceso de
desarrollo de software
5
1.9 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Gua para el Cuerpo de Conocimientos de Ingeniera del Software (IS)
SWEBOK (versin 2004)
Gestin de la
IS
Proceso de IS
Herramientas y
Mtodos
* Iniciacin y
definicin del
alcance
* Planificacin
del proyecto
* Realizacin
del proyecto
* Revisin y
evaluacin

* Cierre
* Medicin en IS
* Implementacin
y cambio del
proceso
* Definicin del
proceso
* Evaluacin del
proceso
* Medicin del
proceso
y el producto
* Herramientas
software para:
- requisi tos
- diseo
- construccin
- pruebas
- mantenimi ento
- gesti n de l a
confi guraci n
- gesti n de la IS
- el proceso de IS
- cal i dad
- probl emas
vari os
* Mtodos de
desarrollo de
software:
- heursticos
- formales
- prototi pado
Gestin de la
Configuracin
* Gestin del
proceso
* Identificacin
de la
configuracin
* Control de la
configuracin
* Contabilidad
del estado de la
configuracin
* Auditora de la
configuracin
* Gestin y
entrega de
versiones
Calidad
* Fundamentos
* Procesos de
gestin de la
calidad
* Consideracio-
nes prcticas
Incorporacin de la
perspectiva de
ingeniera
1.10 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Descripcin de un rea de Conocimiento
Clasificacin
Taxonoma de
Vincenti
Clasificacin de
Tpicos
Matriz de Tpicos y
Referencias
Referencias
Descripciones
de Tpicos
Clasificacin
Taxonoma de
Bloom
Referencias a
Disciplinas
Relacionadas
6
1.11 Francisco Ruiz - IS1
Cuerpo de Conocimientos - SWEBOK
Diseo del Software
Notaciones
* Descripciones
estructurales
(vista esttica)
* Descripciones
del
comportamiento
(vista dinmica)
Anlisis
Cualitativo y
Evaluacin
* Atributos de
calidad
* Tcnicas de
anlisis y
evaluacin de
la Calidad
* Mediciones
Estructura y
Arquitectura
* Estructuras y
puntos de vista
arquitecturales
* Estilos
arquitecturales
(patrones
macro-
arquitecturales)
* Patrones de
diseo
(patrones micro-
arquitecturales)
* Familias de
programas y
marcos
(frameworks)
Aspectos
Clave
* Concurrencia
* Control y
manejo de
eventos
* Distribucin de
Componentes
* Manejo de
errores y
excepciones, y
tolerancia a fallos
* Interaccin y
presentacin
* Persistencia de
datos
Fundamentos
* Conceptos
generales
* Contexto
* Proceso
* Tcnicas
facilitadoras
Estrategias y
Mtodos
* Estrategias
generales
* D. orientado a
funciones
(estructurado)

* D. orientado a
objetos
* D. centrado en
las estructuras
de datos
* D. basado en
componentes)
* Otros mtodos
1.12 Francisco Ruiz - IS1
reas de Conocimiento
Fases del Proceso de Desarrollo
Requisitos
Diseo
Construccin
Pruebas
Mantenimiento
Perspectiva de Ingeniera
Gestin de la Configuracin (gestin de productos)
Gestin de la Ingeniera (gestin de proyectos)
Proceso de Ingeniera (orientacin a procesos)
Herramientas y Mtodos (tecnologa de soporte)
Calidad
7
1.13 Francisco Ruiz - IS1
reas de Conocimiento
Requisitos
Se refiere a la elicitacin, anlisis, especificacin y
validacin de los requisitos software.
En la industria del software existe el consenso en que los
proyectos de I.S. son muy vulnerables cuando estas
actividades se realizan de forma pobre.
Los requisitos software expresan las necesidades y
restricciones que debe satisfacer un producto software
para contribuir a la solucin de un problema real.
1.14 Francisco Ruiz - IS1
reas de Conocimiento
Diseo
El proceso de diseo de software consiste en analizar los
requisitos con el fin de producir una descripcin de la
estructura interna del software que sirva como base para
su construccin.
Un diseo software (resultado) debe describir:
La arquitectura (cmo est descompuesto y organizado en
componentes) y las interfaces entre dichos componentes; y
Los componentes con el nivel de detalle adecuado para poder
construirlos.
8
1.15 Francisco Ruiz - IS1
reas de Conocimiento
Construccin
Se refiere a la creacin detallada de software mediante la
combinacin de codificacin, verificacin, pruebas
unitarias, pruebas de integracin y depuracin.
1.16 Francisco Ruiz - IS1
reas de Conocimiento
Pruebas
Sirve para evaluar la calidad de un producto software o
para mejorarlo, mediante la identificacin de sus defectos
y problemas.
Consiste en la verificacin dinmica del comportamiento
real de un programa frente al comportamiento esperado,
para un conjunto finito de casos de prueba
(convenientemente seleccionados entre las usualmente
infinitas posibilidades de ejecucin) .
9
1.17 Francisco Ruiz - IS1
reas de Conocimiento
Mantenimiento
Todo producto software, despus de su despliegue o
entrega, est destinado a cambiar o evolucionar.
Algunas causas de ello son:
Defectos descubiertos durante su uso,
Cambios en el entorno operativo,
Nuevos requisitos del usuario, ..
En SWEBOK este rea se refiere a las actividades
requeridas para proveer un adecuado soporte al
software, sea antes o despus del despliegue o
entrega.
1.18 Francisco Ruiz - IS1
reas de Conocimiento
Gestin de la Configuracin
Es la disciplina de identificar la configuracin de un
sistema en distintos momentos en el tiempo con el fin de
controlar sistemticamente los cambios y mantener la
integridad y trazabilidad.
Una configuracin de un sistema es una coleccin de
versiones especficas de sus elementos (items de
configuracin) combinados de acuerdo a procedimientos
de construccin adecuados a los propsitos buscados.
10
1.19 Francisco Ruiz - IS1
reas de Conocimiento
Gestin de la Ingeniera
Consiste en aplicar actividades de gestin (planificar,
coordinar, medir, supervisar, controlar e informar) para
asegurar que el desarrollo y mantenimiento de software se
realizan de forma sistemtica, disciplinada y cuantificable.
Bsicamente, engloba dos clases de esfuerzos:
Gestin de Proyectos (Project Management)
Medicin (futura nueva rea en SWEBOK)
1.20 Francisco Ruiz - IS1
reas de Conocimiento
Proceso de Ingeniera
Se refiere a la definicin, implementacin, evaluacin,
medicin, gestin, cambio y mejora de los propios
procesos del ciclo de vida del software.
Engloba aspectos con fuerte impacto en la industria:
Madurez de las organizaciones (CMMI, SPICE)
Mejora de Procesos
Por ello, ha surgida la llamada Ingeniera de Procesos
Software
11
1.21 Francisco Ruiz - IS1
reas de Conocimiento
Herramientos y Mtodos
Las herramientas (basadas en computador) ayudan a
realizar los procesos del ciclo de vida del software.
Los mtodos imponen una manera o estructura para
realizar las actividades de ingeniera del software, de
forma que el trabajo sea ms sistemtico y mas exitoso.
1.22 Francisco Ruiz - IS1
reas de Conocimiento
Calidad
En este rea se abordan las tcnicas estticas para
alcanzar la calidad del software.
Las tcnicas dinmicas (ejecutar el software) son parte de las
Pruebas.
Este campo tambin ha tenido un fuerte desarrollo en la
industria:
Aseguramiento de la Calidad
Verificacin y validacin
Auditora
12
1.23 Francisco Ruiz - IS1
Disciplinas Relacionadas
Ingeniera de Computadores
Ciencia de la Computacin
Gestin
Matemticas
Gestin de Proyectos
Gestin de la Calidad
Ergonoma del Software
Ingeniera de Sistemas
incluye Sistemas de Informacin

Vous aimerez peut-être aussi