Está en la página 1de 30

INT

Introduccin
Software .................................................................................2
Metodologas y Herramientas...............................................5
Procesos de Software ...........................................................8
Modelos de Proceso Software .............................................9
Visin Genrica de la IS........................................................15
Mtrica Versin 3...................................................................17
Estructura Principal ......................................................20
Interfaces........................................................................22
Tcnicas y Prcticas .....................................................23
Participantes ..................................................................26
Mtrica 3 vs. Mtrica 2 ..........................................................28
Bibliografa.............................................................................29

Introduccin: INT-2

Software
Instrucciones + Estructuras de Datos + Documentacin

Caractersticas
El software se desarrolla, no se fabrica. Los costes se
concentran en la ingeniera, no en la produccin.
El software no se estropea, pero se deteriora.
ndice de Fallos

ndice de Fallos

HARDWARE

SOFTWARE (Ideal)

Tiempo

Tiempo

ndice de Fallos
f

SOFTWARE (Real)

Tiempo

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-3

La mayora del software se construye a medida. No


existen catlogos de componentes software.
Reutilizacin:
Bibliotecas
Tcnicas de programacin estructurada y modular
Tcnicas orientadas a objetos

Problemas
Crisis del Software
La planificacin y estimacin de costes son muy
imprecisos
No existen datos sobre proyectos anteriores
Gestores de proyectos no especializados en el
desarrollo del software
Productos no entregados a tiempo
Falta de comunicacin con los usuarios
Baja productividad
Desarrollo sobre especificaciones ambiguas
Modificar especificaciones sobre la marcha
Falta total de documentacin del desarrollo y
modificaciones

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-4

Mala calidad
Pocas o nulas pruebas exhaustivas Software con
errores
El producto no responde a las necesidades de usuarios
Poco inters y tiempo en anlisis de requisitos
Errores en el producto en su entrega
Los productos se vuelven a disear y/o desarrollar
Gran diversidad (productos, mtodos, documentacin)

Necesidades

Asegurar calidad en el software


Conseguir plazos y costes razonables
Marco homogneo de referencia

Solucin (parcial?): Ingeniera del Software


Aplicacin de un enfoque sistemtico, disciplinado y
cuantificable hacia el desarrollo, operacin y
mantenimiento del software (IEEE 93)
Metodologa de Planificacin y Desarrollo de Sistemas
de Informacin MTRICA Versin 3
Plan General de Calidad Aplicable al Desarrollo de
Equipos Lgicos

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-5

Metodologas y Herramientas
Mtodo
Un determinado enfoque (approach) para solucionar un
determinado problema. Indican como construir
tcnicamente el software.
Consta de:

Notacin (grfica y/o textual)

Tcnicas que han de ser utilizadas para solucionar el


problema

Metodologa

Estudio de los mtodos

Conjunto de mtodos integrados para alcanzar una meta


comn

Definen la secuencia en la que se aplican los mtodos,


productos o documentos requeridos, controles de
calidad,...

(Definiciones parcialmente extradas del SEI: Software


Engineering Institute, Carnegie Mellon University)

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-6

Herramientas
Productos para automatizar un mtodo, parte o varios

CAD/CAM/CAE (Computer Aided Design, Manufacturing


and Engineering)

CASE (Computer Aided Software/System Engineering)

UpperCASE (Principio del ciclo de vida. ej. anlisis)

LowerCASE (Final del ciclo de vida, ej. generador de


cdigo)

Toolset (Varias Herramientas integradas para soportar


una metodologa)

IPSE (Integrated Programming Support Environment)


Soporte de todo el ciclo de vida

I-CASE (Integrated CASE). Para diferenciar de


herramienta no integradas

MetaCASE (Generador de herramientas CASE)

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-7

Es la tecnologa CASE la solucin?


+

Publicidad

CASE
+

Milagros

Ayuda

Perjuicio

Realidad

Por s mismas, las herramientas NO SOLUCIONAN NADA

Hay que CONOCER a fondo los mtodos de desarrollo,


gestin y control

CASE posibilita y fomenta el uso de mtodos. Es una


solucin parcial

Ayuda a rebajar costes?

PRODUCCIN (anlisis, diseo, implementacin):


No decrecen sensiblemente
Incluso crecen algo

MANTENIMIENTO:
Decrece drsticamente

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-8

Procesos de Software
Conjunto de actividades y productos obtenidos durante el
desarrollo de un sistema software, independientemente de
su tamao o complejidad

Actividades de un proceso genrico


Especificacin y Anlisis
Se definen las funcionalidades y restricciones del software
a construir
Desarrollo
Produccin propiamente dicha de forma que cumpla con
las especificaciones
Validacin
Asegurar que el software es lo que el cliente requiere
Evolucin
Adaptacin a posibles cambios

Capas en la Ingeniera del Software


Herramientas
Mtodos
Proceso
Calidad

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-9

Modelos de Proceso Software


Lineal Secuencial o en Cascada
ANLISIS
DISEO
CDIGO
PRUEBA

Problemas:
Difcil ajustar a proyectos reales
Difcil que el usuario exponga los requisitos al principio
No est disponible versin operativa hasta las ltimas
etapas

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-10

Orientado a Prototipos
Mecanismo para la identificacin de requisitos del software

Requisitos

Construir/Revisar
Prototipo

(Entrevistas)

Prueba Prototipo

Problemas:
La gestin del desarrollo de software es muy lenta
Compromisos implementacin/eficiencia (Lenguaje de
programacin, sistema operativo, etc.)

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-11

Modelo Incremental
Basado en el ciclo de vida lineal y en la construccin de
prototipos
En primer lugar, se crea un primer incremento
(producto esencial) utilizando el modelo en cascada que
contempla los requisitos bsicos.
Se elaboran nuevos incrementos, incorporando en cada
uno nuevos requisitos no detectados hasta el momento,
o no incluidos en anteriores incrementos
As, los primeros incrementos son versiones
desmontadas del producto final
Cada incremento genera un producto operacional (o
versin incompleta)

Incremental vs. Prototipos?

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-12

Espiral (Boehm, 1988)


Combina las principales ventajas del ciclo de vida en
cascada y el orientado a prototipos.

Planificacin

Evaluacin

Anlisis de Riesgos

Ingeniera

El primer ciclo de la espiral especifica el producto


Cada uno de los siguientes un nuevo prototipo (refinado)

Problemas:
Poca experimentacin en proyectos

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-13

Basado en Componentes
Reutilizacin del software
Adecuado en tecnologas orientadas a objetos
Especializacin del modelo en espiral, donde las
aplicaciones se desarrollan a partir de componentes
previamente creados
Ingeniera:
- Identificacin de componentes candidatos
- Acceso a los componentes de la librera
- Construccin, en su caso, de componentes y
almacenamiento en la librera
El proceso anterior forma la primera iteracin en la
espiral
En futuras iteraciones, se deben ensamblar los
componentes

Problemas
Excesiva dependencia de la calidad y robustez de la
librera de componentes

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-14

Ciclos de Vida Orientados a Objeto


En sus orgenes la Orientacin a Objeto (OO) enfatizaba
sobre todo en los lenguajes de programacin (Lenguajes
de Programacin Orientados a Objeto)
A medida que el inters aumentaba en la industria, el
estudio se traslada al Diseo, y posteriormente al
Anlisis
Bsicamente, la mayora de metodologas especializan
los paradigmas iterativos (construccin de prototipos) y
evolutivos (incremental y espiral).
En general, en estas metodologas la tupla (AnlisisDiseo-Construccin) es ms compacta que en las
metodologas estructuradas, ya que todo el proceso se
basa en clases y objetos

Ejemplo: Rational Unified Process (RUP)


(http://www.rational.com/products/whitepapers)
Proceso Software basado en el uso efectivo de la
notacin UML (Unified Modeling Language)
Utilizacin a lo largo de todo el ciclo de vida de patrones
(templates) y herramientas
Cuatro fases secuenciales:
1. Incepcin: Definicin inicial del proyecto, plan de
proyecto, costes, personal, riesgos, etc.
2. Elaboracin: Descripcin de arquitectura, riesgos
revisados, plan revisado, manual de usuario inicial, etc.
3. Construccin: Desarrollo, integracin y prueba de los
componentes
4. Transicin: Pruebas beta por los usuarios, conversin
de datos, plan de formacin de usuarios, etc.

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-15

Visin Genrica de la IS
Independientemente del paradigma, se puede ver el
proceso de desarrollo:

Definicin (QU)
Estudio del Sistema
Planificacin
Anlisis de Requisitos

Desarrollo (CMO)
Diseo (arquitectura, estructuras de datos, ...)
Codificacin
Prueba

Mantenimiento (CAMBIO)
Correccin
Adaptacin
Mejora

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-16

Desarrollo de un producto
software
Disciplinas
Gestin

Disciplinas
Desarrollo

Producto
Software

Disciplinas
Control

Normativa del MAP


Disciplinas Metodologas de Mtrica Versin 3
de
desarrollo
desarrollo
Disciplinas Aseguramiento
de Control de la calidad
(SQA: Software
Quality
Assurance)

Plan General de
Garanta de Calidad
aplicable al
desarrollo de
equipos lgicos
Interfaz de Calidad
de Mtrica 3

Gestin de
Configuraciones
(SCM: Software
Configuration
Management)

Plan de Gestin de
Configuraciones (en
proyecto)
Interfaz de Gestin
de la Configuracin
de Mtrica 3

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-17

Mtrica Versin 3
Gnesis de Mtrica

Ministerio para las Administraciones Pblicas


Otros Ministerios

Empresa Consultora (Coopers & Lybrand)

Origen de Mtrica
Mtodos
"de
autor"

Mtodos
"Nacionales"

Mtodos
"Internacionales

MERISE

DeMarco/
Yourdon,
Chen,
Jackson

Euromtodo
SSADM (V4)

METRICA (V2)

METRICA (V3)

Estndares
ISO 12.207, IEEE
Std. 1074, ...

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-18

Objetivos

Abierta: apta para Administracin y empresas privadas

Formal: establece pasos necesarios

Orientada a obtener productos de calidad: nfasis en


revisiones formales

Flexible: adaptable a distintos proyectos, entornos,


complejidades y ciclos de vida

Sencilla: prctica y de fcil uso

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-19

Organizacin de la metodologa
(http://www.map.es/csi)
Estructura Principal
Interfaces
Tcnicas
Participantes

Herramientas de Apoyo
AUTOFORMACIN
SELECTOR (Seleccin de Herramientas: Seleccin
de productos software del mercado)
GESMET (Gestor Metodolgico: Adaptacin de
Mtrica 3 a proyectos concretos)

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-20

Estructura Principal
Objetivo
Definir la estructura del proyecto: Ciclo de vida

Procesos

Actividades

Tareas

Basada en un enfoque orientado a proceso


Distingue entre Procesos Principales (Planificacin,
Desarrollo y Mantenimiento) y Procesos de Interfaz
(Calidad, Seguridad, Gestin y Configuracin)
Basada principalmente en el ciclo de vida secuencial o de
cascada (waterfall)
Como consecuencia de cada fase, se indican los
PRODUCTOS a conseguir:
Documentos
Cdigo

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-21

Procesos Principales
Planificacin de Sistemas de Informacin (PSI)
Desarrollo de Sistemas de Informacin
Estudio de Viabilidad del Sistema (EVS)
Anlisis del Sistema de Informacin (ASI)
Diseo del Sistema de Informacin (DSI)
Construccin del Sistema de Informacin (CSI)
Implantacin y Aceptacin del Sistema (IAS)
Mantenimiento de Sistemas de Informacin (MSI)
Planificacin

Desarrollo
Anlisis

Diseo

EVS

PSI
Planificacin
de Sistemas
de
Informacin

Estudio de
Viabilidad del
Sistema de
Informacin

ASI
Anlisis del
Sistema de
Informacin

Mantenimiento
Construccin
e
Implantacin

CSI

DSI
Diseo del
Sistema de
Informacin

Construccin
del Sistema
de
Informacin

IAS

MSI
Mantenimiento
del Sistema de
Informacin

Implantacin
y Aceptacin
del Sistema
de
Informacin

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-22

Interfaces
Definen un conjunto de actividades de tipo organizativo o
de soporte al proceso de desarrollo y/o productos
Gestin de Proyectos (GP): planificacin, seguimiento y
control de actividades y recursos humanos y materiales
Seguridad (SG): anlisis de riesgos lgicos
Gestin de la Configuracin (GC): definir y controlar los
cambios en la configuracin del sistema, modificaciones
y versiones.
Aseguramiento de la Calidad (CAL): marco de referencia
para la definicin y puesta en marcha de planes de
aseguramiento de la calidad.

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-23

Tcnicas y Prcticas
Tcnicas
Heursticas y procedimientos con notaciones especficas
(sintaxis y semntica), apoyados en estndares (p.e.,
modelo entidad/relacin)

Prcticas
Procedimientos y notaciones con menor rigidez (p.e.,
realizacin de entrevistas)
Diferentes tcnicas, la mayor parte de ellas con el objetivo
de crear un modelo (parcial) del sistema

Qu es un modelo?
Una forma de representar un sistema (norma IEEE)

Ejemplo en Arquitectura
Un mismo objeto puede representarse de acuerdo con tres
vistas diferentes
A l za d o

P e rfil

Pla n ta

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-24

Para Sistemas Informticos

Tpicamente tres modelos (tres vistas diferentes del


mismo sistema)

Al menos dos son necesarios

Modelo

Objetivo

Tcnicas

Modelo
Funcional
(dinmico)

Lo que hace

Diagramas de
Flujo de datos
(DFD)
Casos de Uso
(CU)

Modelo de datos Lo que recuerda


Retenidos
(esttico)

Diagramas
Entidad-Relacin
(ERD)

Modelo de
transicin de
estados
(evolutivo)

Diagramas de
transicin de
estados (STD)

Los diferentes
estados que
caracterizan al
sistema

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-25

Tcnicas ms relevantes utilizadas en


Mtrica 3 (Estructurado)
Objetivo

Tcnica

Modelo
funcional

Diagramas
de Flujo de
Datos

DFD

Data Flow
Diagram

DFD

Diagrama de DCU
Casos de
Uso
Modelo de
datos

Diagrama de DED
Estructura
lgica de
Datos

Logical Data LDS


Structure

Modelo de
Diagramas
transicin de de
estados
Transicin
de Estados

DTE

State
Transition
Diagrams

STD

Diseo

DEC

Structure
Diagrams

SD

Pruebas

Diagramas
de
estructura
de cuadros

Testing

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-26

Participantes
Definicin de perfiles de los participantes en los procesos
principales de la metodologa
Coinciden con los definidos en la herramienta
AUTOFORMACIN
Perfiles establecidos:
Directivo
Jefe de Proyecto
Consultor
Analista
Programador

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-27

Organizacin de la
documentacin

EP

Introduccin

INT

Diagramas de Flujo de
Datos

DFD

Diagramas de Casos de Uso DCU

Diagramas de Estructura
Lgica de Datos

DED

Diagramas de Transicin de DTE


Estados

Historia de la Vida de las


Entidades

HVE

Estudio de Viabilidad del


Sistema

EVS

Anlisis del Sistema de


Informacin

ASI

Diseo

DIS

Diseo del Sistema de


Informacin

DSI

Pruebas

PRU

X
X
X

EP: Mtrica-3: Estructura Principal


T: Mtrica-3: Tcnicas

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-28

Mtrica 3 vs. Mtrica 2

Estructura
Metodologa

MTRICA 3

MTRICA 2

Procesos

Fases
Mdulos

Actividades

Actividades

Tareas

Tareas

Planificacin

PSI

PSI

Desarrollo

EVS

ARS

ASI
EFS
DSI

DTS

CSI

DCS
DPU

IAS

PIA

Mantenimiento MSI

Aportaciones Mtrica 3
Compatibilidad con los ltimos estndares en Calidad e
Ingeniera del Software
Interfaz con Procesos de Gestin y Control
Cubre desarrollos estructurados y orientados a objeto
Ampliacin para tecnologas Cliente/Servidor e
Interfaces de Usuario Grficas
Tcnicas soportadas por varias herramientas CASE

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-29

Bibliografa
"Metodologa de Planificacin, Desarrollo y
Mantenimiento de Sistemas de Informacin, MTRICA 3",
Ministerio para las Administraciones Pblicas (MAP),
2001. (Accesible desde
http://www.map.es/csi/metrica3/index.html)

"Plan General de Calidad Aplicable al Desarrollo de


Equipos Lgicos", Ministerio para las Administraciones
Pblicas (MAP), 1992

Ingeniera del Software: Un enfoque Prctico, Quinta


Edicin, R.S. Pressman. McGraw-Hill, 2002

Ingeniera del Software, Sexta Edicin, I. Sommerville.


Addison-Wesley, 2002

" Anlisis y diseo detallado de aplicaciones


informticas de gestin ", M.G. Piattini y otros, Ra-Ma
1996

"Ingeniera del Software de Gestin: Anlisis y Diseo de


Aplicaciones", A. de Amescua y otros. Paraninfo, 1995

Utilizacin de UML en Ingeniera del Software con


Objetos y Componentes, P. Stevens, R. Pooley.
Addison-Wesley, 2002.

El Lenguaje Unificado de Modelado, G. Booch, J.


Rumbaugh, I. Jacobson, Addison-Wesley, 2002.

"Structured Analysis and System Specification", T.


DeMarco. Yourdon Press, 1979

"Modern Structured Analysis", E. Yourdon. Prentice-Hall,


1989

"IEEE Software Engineering Standards Collection",


Institute of Electrical and Electronic Engineers. IEEE
Computer Society, 1994

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

Introduccin: INT-30

IEEE Transactions on Software Engineering. Revista


de Institute of Electrical and Electronic Enginners, IEEE
Computer Society.

ACM Transactions on Software Engineering and


Methodology. Revista de Association for Computing
Machinery.

"Novtica". Revista de la Asociacin de Tcnicos de


Informtica (ATI)

The NATO Software Engineering Conferences 1968,


1969. (Accesible desde:
http://www.cs.ncl.ac.uk/old/people/brian.randell/home.for
mal/NATO/)

ISOFT, (C) Laboratorio de Comunicaciones e Ingeniera del Software (2002)

También podría gustarte