Fund Amen To de Ingeneria de Software

download Fund Amen To de Ingeneria de Software

of 852

Transcript of Fund Amen To de Ingeneria de Software

05BM - Fundamentos de Ingeniera del Software.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

1

ndice de la Asignaturan

Bloque 1.- Introduccin. Tema 1.- Introduccin a la Ingeniera del Software Bloque 2.- Desarrollo de Software. Tema 2.- Anlisis Estructurado. Tema 3.- Prototipado. Tema 4.- Diseo Estructurado. Tema 5.- Pruebas del Software. Bloque 3.- Modelos del proceso SW. Tema 6.- El Proceso Software. Paradigmas del Ciclo de Vida. Tema 7.- Mtodos de Desarrollo de Software. Bloque 4.- Planificacin y Gestin de Proyectos Informticos. Tema 8.- Elementos bsicos de la planificacin y gestin de proyectos. Bloque 5.- Otros conceptos de Ingeniera del Software. Tema 9.- Mantenimiento del Software. Tema 10.- Reutilizacin del Software. Bloque 6. MTRICA. Versin 3. Metodologa de Planificacin, Desarrollo y Mantenimiento de Sistemas de Informacin. Tema 11.- METRICA. Versin 3.2

n

n

n

n

n

05BM - Fundamentos de Ingeniera del Software.Bloque 1.- Introduccin. Tema 1. Introduccin a la Ingeniera del Software.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

3

ndicen n n n n

n n

El software. Factores de calidad del software. Problemas en el desarrollo de software. La Ingeniera del Software. Visin general del proceso de Ingeniera del Software. Sistemas de Informacin. Herramientas CASE.

4

Bibliografan n n n n El software. Factores de calidad del software. Problemas en el desarrollo de software. La Ingeniera del Software. Visin general del proceso de Ingeniera del Software.

n

(Pressman 2001) o (Pressman 1998) Cap.1 y Cap. 2 (aptdo. 2.1).

5

Motivacin(Interfaces + Integracin) UN PROGRAMA (Algoritmos y estructuras de datos) UN SISTEMA SOFTWARE

Integracin de varios programas

UN PRODUCTO SOFTWARE

UN PROYECTO SOFTWARE (Ingeniera del Software)La conjuncin de PRODUCTO y SISTEMA SOFTWARE

Programas usados en diferentes aplicaciones/entornos

6

MotivacinInformacin = Ppal. activo de las empresas

desarrollo de SI fuertes presiones(calidad, productividad)

Slo el software construido con principios de ingeniera puede tener sistemticamente calidad, fiable, econmico y eficiente. El proceso software debe realizarse de acuerdo con una serie de normas y estndares.

Artesanal Disciplina de Ingeniera

Calidad Herramientas Gestin de proyectos

7

El Softwaren

El Software:Instrucciones que, cuando se ejecutan, proporcionan la funcionalidad deseada. Estructuras de datos que facilitan a las instrucciones manipular adecuadamente la informacin. Documentos que describen el desarrollo, uso, instalacin y mantenimiento de los programas. Software: "programas, procedimientos, y, posiblemente, la documentacin asociada y los datos pertenecientes a las operaciones de un sistema".

n

n

Incluye: entrenamiento, soporte al consumidor e instalacin.

8

Caractersticas del softwaren n n

Elemento lgico, no fsico. Desarrollado, no fabricado. No se estropea, se deteriora!(deterioro por cambios)

Metodologa de Planificacin, Desarrollo y Mantenimiento de sistemas de informacin MTRICA. Versin 3 Introduccin Planificacin de Sistemas de Informacin (Proceso PSI) Estudio de Viabilidad del Sistema (Proceso EVS) Anlisis del Sistema de Informacin (Proceso ASI) Diseo del Sistema de Informacin (Proceso DSI) Construccin del Sistema de Informacin (Proceso CSI) Implantacin y Aceptacin del Sistema (Proceso IAS) Mantenimiento del Sistema de Informacin (Proceso MSI)

n

Mayoritariamente cerrado:(poco ensamblaje de componentes: Herramienta de reutilizacin)

9

Atributos de Calidad del Softwaren

Fiable

n

Portable

n n

Capacidad de ofrecer los mismos resultados bajo las mismas condiciones.n

Capaz de integrarse en entornos distintos con el mismo esfuerzo.

n

Eficiente

Utilizacin ptima de los recursos de la mquina. No poseer un comportamiento catastrfico ante situaciones excepcionales (Tolerante a fallos). Se ajusta a las especificaciones dadas por el usuario.n

Adaptable (extensibilidad)

n

Robusto

Modificar alguna funcin sin que afecte a sus actividades. Diseo claro, bien estructurado y documentado. No exista diferencia entre los valores reales y los calculados

n

Inteligible

n n

Mantenibilidad Confiabilidad fiabilidad seguridad proteccin Eficiencia Usabilidad(Sommerville 2002)

n

Correcto

n

No Errneo

(Bell 2000)

Reutilizable (reusabilidad)(Bell 2000)10

Perspectiva histrica del desarrollo de softwaren

Dcada 50-60:

n

Dcada 80-90:

Software como un aadido. Desarrollo artesanal, a medida. Lenguajes de bajo nivel. Software como producto. Dcada lenguajes y compilacin. Crisis del software. Programacin estructurada. Ingeniera del Software. Primeros mtodos estructurados.Incremento del coste del software. Falta de calidad del software

n

Dcada 60-70:

Tecnologa de SGBDs, SOs... Nuevos paradigmas de programacin y de produccin de programas: n OO n C/S Anlisis/Diseo OO. Mtrica v3 Tecnologa CASE Componentes y reutilizacin Internet n ISw. distribuida n Repositorios de componentes reutilizables n e-business; e-commerce n Comercio Web B2C-B2B-C2C

n

90s - actualidad:

n

Dcada 70-80:

.

11

La problemtica actual del softwaren

Incapacidad para estimar tiempo, coste y esfuerzo para el desarrollo de un producto software.

Metodologa de Planificacin,Desarrollo y Mantenimiento de sistemas de informacin MTRICA. Versin 3Solucin?

Planificacin de Sistemas de Informacin (Proceso PSI) Estudio de Viabilidad del Sistema (Proceso EVS) Aspectos de gestin mediante sus INTERFACES.

n

Falta de calidad del producto Solucin? software.Avance del hardware y necesidad de aplicaciones ms complejas. Coste hardware/software.

Metodologa de Planificacin, Desarrollo y Mantenimiento de sistemas de informacinPorcentaje del coste total del sistema

n

100 80 60 40 20 060 70 80aos

Hardware Software

12

Problemas del software (II)n

Porqu lleva tanto tiempo terminar los programas?Bloque 4.- Planificacin y Gestin de Proyectos Informticos.

n n

Porqu es tan elevado su coste? Mantenimiento del Sistema deInformacin. Auditorias. Standares de Calidad.

Porqu no podemos encontrar todos los errores antes de entregar el software a nuestros clientes?Metodologa de Planificacin, Desarrollo y Mantenimiento de sistemas de informacin.

n

Porqu nos resulta difcil constatar el progreso conforme se desarrolla el sw.? Bloque 4.- Planificacin y Gestin de ProyectosInformticos.

n

Las respuestas confluyen en un mismo lugar, la necesidad de trabajar en un marco de CALIDAD.

13

Algunas soluciones ????mtodos de anlisis, diseo, prueba... Prototipado Modelado del negocio reutilizacin ingeniera de requisitos POO

INGENIERA DEL SOFTWAREmtodos formales herramientas CASE:editores dirigidos por la sintaxis, entornos integrados de desarrollo, herramientas para la gestin de proyectos, herramientas de prototipado, etc.

herramientas 4 gen.lenguajes no procedimentales para consulta a BDs generadores de pantallas, generadores de cdigo, generadores de informes

14

Objetivos de la Ingeniera del Softwaren n n

Trmino que aparece en 1968 La produccin de programas debe abordarse como una ingeniera ms. (Boehm) La Ingeniera del Software es la aplicacin prctica y sistemtica del conocimiento cientfico a:

la produccin de programas correctos, que se desarrollan a tiempo y dentro de las estimaciones de presupuesto, y a la correspondiente documentacin para desarrollarlos, usarlos y mantenerlos. ciencia de la computacin, programacin, ingeniera, administracin, matemticas, economa,...Es el conjunto de recursos humanos y materiales a travs de los cuales se recolectan, almacenan, recuperan, procesan y comunican datos e informacin con el objetivo de lograr una gestin eficiente de las operaciones de una organizacin.

n

La Ingeniera del Software se fundamenta en tcnicas relacionadas con:

n

Forma parte de la Ingeniera de Sistemas

15

Ms definiciones de ISw...n

La ISw es el establecimiento y uso de principios slidos de ingeniera, orientados a obtener software econmico que sea fiable y trabaje de manera eficiente en mquinas reales (Fritz Bauer). Una disciplina que comprende todos los aspectos de la produccin de software desde las etapas iniciales de la especificacin del sistema, hasta el mantenimiento de ste despus de que se utiliza (Sommerville 2002).

n

16

Principios de la Ingeniera del Softwaren

Abstraccin

n

Localizacin

Permite parcelar la complejidad. Por ello se olvidan aspectos irrelevantes del sistema y se potencian los fundamentales.

Deben estar agrupados todos aquellos elementos que estn afectados por un mismo hecho. Todos los mdulos deben tener una notacin similar. Deben estar desarrollados todos los aspectos del sistema. El producto final debe ser fcilmente validable y verificable:n n

n

Encapsulamiento u Ocultacin de la informacin

n

Uniformidad

Esconder todos los detalles que no afecten a otros mdulos, definiendo interfaces estrictos que sirvan de interaccin entre los distintos modelos. Sirve para parcelar la solucin en mdulos independientes con fuerte cohesin interna.

n

Completitud

n

Validacin y Verificabilidad

n

Modularidad

Estamos desarrollando el programa correcto? Estamos desarrollando correctamente el programa?

17

Visin general del proceso/etapas de ISw (I)Con independencia del rea de aplicacin, tamao o complejidad del proyecto, cualquier sistema se encontrar al menos en una de las siguientes fases genricas:

Definicin ~ Anlisis (del sistema, del sw.) desarrollo ~ Diseo, codificacin, prueba mantenimiento.

Metodologa de Planificacin, Desarrollo y Mantenimiento de sistemas de informacin MTRICA. Versin 3 Introduccin Planificacin de Sistemas de Informacin (Proceso PSI) Estudio de Viabilidad del Sistema (Proceso EVS) Anlisis del Sistema de Informacin (Proceso ASI) Diseo del Sistema de Informacin (Proceso DSI) Construccin del Sistema de Informacin (Proceso CSI) Implantacin y Aceptacin del Sistema (Proceso IAS) Mantenimiento del Sistema de Informacin (Proceso MSI)

18

Fase de definicin/Anlisisn

Qu debe hacer el sistema?n n n n n

informacin que ha de manejar el sistema necesidades de rendimiento restricciones de diseo interfaces del sistema con los usuarios y con otros sistemas criterios de validacin

n

Se elaboran los documentos de requisitos del sistema (SyRS) y del software (SRS). Actividad ASI Mtrica 3

19

Fase de desarrolloProceso de Desarrollo Mtrica v3n n

Cmo construir el sistema? Se disean las estructuras de los datos y los programas

cmo se caracterizan las interfaces, cmo realizar el paso del diseo al lenguaje de programacin, cmo ha de realizarse la prueba,

n n

se escriben y documentan los programas, y se prueba el software construido.

20

Fase de mantenimientoProceso de Mantenimiento Mtrica v3n

Comienza una vez construido el sistema, cuando se empieza a utilizar. Se centra en el cambio. El software es sometido a reparaciones y modificaciones cada vez que se detecta un fallo o se necesita cubrir una nueva necesidad de los usuarios. Tema 9.- Mantenimiento del Software. En esta fase recae el mayor porcentaje del coste de un sistema.

n n

n

21

Visin general del proceso de ISw (II)DEFINICIN

DESARROLLOFallos de definicin

MANTENIMIENTOErrores

Modificaciones y adaptaciones

Bloque 3.- Modelos del proceso SW.Tema 6.- El Proceso Software. Paradigmas del Ciclo de Vida.

22

Sistemas de informacin ndice

Concepto de sistema Informacin y datos Sistemas de informacin (SI) Sistemas de informacin automatizado y empresarial Elementos de un SI Estructura de un SI Otros conceptos tiles en SI:

MIS DSS OIS

23

Sistemas de informacin Bibliografa. El software. Factores de calidad del software. Problemas en el desarrollo de software. La Ingeniera del Software. Visin general del proceso de Ingeniera del Software.

Sistemas de Informacin Herramientas CASE

(Piattini et al. 96) cap.1 En el cap. 2 hay ejemplos de sistemas de informacin en la empresa24

Concepto de sistema

Sistema es un conjunto de elementos que ordenadamente relacionadas entre s contribuyen a un determinado objetivo. (Real Academia Espaola) Un modelo formado por una serie de elementos interrelacionados entre s, que opera en un entorno cambiante y con unos determinados objetivos.

Elementos de un sistema:Los componentes del sistema. Las relaciones entre ellos, que determinan la estructura del sistema. El objetivo del sistema. El entorno del sistema: aquello que lo rodea, dentro del cual est ubicado. Los lmites del sistema: la frontera entre lo que es el sistema y lo que constituye el entorno.

25

Informacin y datos

Los datos estn constituidos por los registros de los hechos, acontecimientos, transacciones, etc. La informacin implica que los datos estn procesados de tal manera que resulten tiles o significativos para el receptor de los mismos. Los datos se pueden considerar la materia prima para obtener la informacin.

26

Sistema de Informacin (SI)

Una definicin de Sistema de Informacin:

Un conjunto formal de procesos que, operando sobre una coleccin de datos estructurada segn las necesidades de la empresa, recopilan, elaboran y distribuyen la informacin (o parte de ella) necesaria para las operaciones de dicha empresa y para las actividades de direccin y control correspondientes (decisiones) para desempear su actividad de acuerdo a su estrategia de negocio. (Andreu et al. 91)

27

Sistema de informacin (II)

Otras definiciones de SI enfatizan que el objetivo es proporcionar informacin de calidad:

El objetivo del SI es ayudar al desempeo de las actividades en todos los niveles de la organizacin, mediante el suministro de la informacin adecuada, con la calidad suficiente, a la persona apropiada, en el momento y lugar oportunos, y con el formato ms til para el receptor.

28

SI y valor de un SI

SI: un conjunto integrado de personas y equipos que tiene por objetivo proveer a una organizacin de la informacin necesaria para apoyar las operaciones, la administracin y la toma de decisiones. El valor de un SI depende de su eficacia, su extensin, su aceptacin por parte de los que lo utilizan, su coste, la calidad de la informacin que trata y produce, etc.

29

Sistema de informacin automatizado

(SIA)

Un SI no necesita, para existir, estar obligatoriamente basado en el uso de ordenadores. El SI existe siempre, est mecanizado o no. La aplicacin del ordenador a los SI produce los sistemas de informacin basados en computadora o Sistemas de Informacin Automatizados (SIA).

30

Organizacin, SI y SIA(Piattini et al. 96)

Negocio/empresa SI SIASistema informtico de soporte31

SI empresarial

El SI empresarial es el sistema encargado de coordinar los flujos y registros de informacin necesarios para llevar a cabo las funciones de una empresa de acuerdo con su planteamiento o estrategia de negocio(Andreu 96)

La estrategia de negocio es fundamental.

32

SI empresarial (II)Adaptado de (Pechun 96)ESTRATEGIA DE NEGOCIO (Factores Crticos de xito)

(Necesidades de Informacin) SISTEMA DE INFORMACIN

TECNOLOGAS DE LA INFORMACIN Y LAS COMUNICACIONES

33

Elementos de un SI

Los procedimientos y las prcticas habituales de trabajo que se siguen al ejecutar toda clase de actividades necesarias para el buen funcionamiento de la empresa. La informacin. Las personas o usuarios. El equipo de soporte para la comunicacin, el procesamiento y el almacenamiento de informacin. Papel, lpiz,...,ordenadores

34

Estructura de un SIINF. RESUMIDA Y ABSTRACTA, DE MBITO MS GENERALPL AN ES ,E TC .

Alta direccin

Estratgica Direccin tctica Direccin operativa

LARGO PLAZO >3-5 AOS MEDIO PLAZO 1 AO CORTO PLAZO

COMPRIMIR Y RESUMIR

OR DE NE S,

IN HI FOR ST M R ES IC OS

zas an Fin to. Dp

INFORMACIN DETALLADA Y ESPECFICA

Dp to. Co me rci al

Sistema de transacciones

35

Sistema de transacciones

Este nivel incluye el procesamiento de las actividades diarias o transacciones, los acontecimientos rutinarios que afectan a la organizacin: facturacin, pagos, entrega de productos, etc. Los procedimientos de tratamiento se comprenden bien y se pueden describir en detalle. Aparecen pocas excepciones a los procedimientos normales. Hay un gran volumen de transacciones. Existe una gran similitud entre transacciones.

36

Nivel operativo de direccin

Se preocupa del anlisis de los resultados, esencialmente respecto de los recursos consumidos en las transacciones, para tomar decisiones a corto plazo y de consecuencias limitadas (reaprovisionamiento de materiales, ordenacin de la produccin) Se trabaja con informacin del tipo:n n n n n

Repetitiva (informes peridicos de ventas, pagos, etc.) Centrada en el pasado (resultados histricos). Con datos originados internamente. Los datos cuentan con un formato bien estructurado. Los datos son detallados y precisos.

37

Nivel tctico de direccin

Se ocupa de la asignacin efectiva de los recursos a medio plazo para mejorar el rendimiento de la empresa. Se basa en anlisis de informes:

Resmenes con medidas estadsticas. De excepciones. Especficos, que no se han pedido antes, y que los directivos necesitan con rapidez para resolver un problema muy concreto.

38

Nivel estratgico de direccin

Trabaja con plazos largos para acometer la difcil tarea de decidir las lneas maestras que debe seguir la empresa en el futuro. La informacin debe aparecer en formato muy resumido. La informacin se encuentra en formatos muy variables. Las decisiones estn poco formalizadas y tienen un fuerte componente subjetivo.39

Flujos de informacin formales

Flujos de informacin vertical (Jerarqua)

Flujos verticales ascendentes, de subordinado a superior. Flujos verticales descendentes, de jefe a subordinado.

Flujos de informacin horizontal (Coordinacin)

Flujos horizontales, entre personas del mismo nivel de autoridad (p.ej. Vendedor y dpto. de produccin).40

Otros conceptos tiles en SI MIS (Management Information System)

MIS, SI para la direccin. Pertenece a los niveles operativo, tctico y estratgico de direccin. Ms ligado con el nivel tctico. Debe proporcionar a los directivos la informacin y ayuda necesaria para tomar decisiones, normalmente de control administrativo. Proporciona soporte a los directivos en las tareas estructuradas, realizadas regularmente, con procesos bien definidos y sabiendo a priori qu informacin se necesita.

41

Otros conceptos tiles en SI DSS (Decision Support System)

DSS, Sistema de Apoyo a la Decisin. DSS: sistema informtico interactivo, que ayuda al usuario en la toma de decisiones, utilizando modelos para resolver problemas no estructurados. La parte del SI que ofrece soporte a las decisiones poco estructuradas, en las que no existen mtodos claros para cmo tomarlas, ni se conocen los factores que hay que considerar. Orientado generalmente a la alta direccin y a facilitar las decisiones estratgicas. Planificacin, anlisis de alternativas, ensayo y error para la bsqueda de soluciones.

42

Otros conceptos tiles en SI OIS (Operating Information Systems)

OIS, Sistema de Procesamiento de Transacciones. Es la parte del SI dedicada al procesamiento de las operaciones rutinarias diarias (transacciones)

Grandes volmenes de actividades repetitivas Datos muy estructurados Tratamientos simples y claros

43

Herramientas CASE ndice

Introduccin. Taxonoma de herramientas CASE

44

Introduccin

Objetivos de la tecnologa CASE

INCREMENTAR

Productividad del equipo. Calidad del Software. Reusabilidad del software. Costes de desarrollo y mantenimiento. Gestin del proyecto. Desarrollo del software. mantenimiento del software

REDUCIR

AUTOMATIZAR

(Incluyendo la automatizacin y estandarizacin de la documentacin y de su mantenimiento)

45

Objetivos de la tecnologa CASE

AUTOMATIZACIN DEL DESARROLLO DE SW.:

Productividad del equipo Calidad del Software

INCREMENTARn

Reusabilidad del software. Costes de desarrollo y mantenimiento. Gestin del proyecto. Desarrollo del sw. (permitir aplicacin met. estructuradas; prototipos; desarrollo visual) Mantenimiento del software (Incluyendo laautomatizacin y estandarizacin de la documentacin y de su mantenimiento)46

REDUCIRn

AUTOMATIZAR/SIMPLIFICARn n

n

Caractersticas bsicas que debe soportar (Yourdon 89)

Soporte grfico para varias tcnicas (DFD, E/R, STD, modelos OO, etc.) Control de errores Consistencia: Unicidad identificadores, reglas metodologa, etc. Validacin entre diferentes modelos:

En una fase (p.e. entre DFD y E/R) En varias fases (DFD anlisis y diseo; DFD diseo y Diagrama de estructuras).

47

Otras caractersticas deseables

Soporte multiusuario. Personalizacin. Control de documentos y versiones. Gestin de proyectos Estadsticas de productividad y mtricas del software. Pruebas. Simulacin y prototipado. Demostracin correcciones especificaciones y/o software. Uso de tcnicas Generacin de cdigo. formales (Z, VDM,

Especificaciones algebraicas)48

CASE. Componentes(Piattini et al. 96)

INTERFAZ DE USUARIO

RepositorioGENERADOR DE INFORMES

MetamodeloHERRAMIENTAS DE CARGA Y DESCARGA DE DATOS

FACILIDADES DE COMPROBACI N49

Algunas definiciones

Mtodo

Procedimiento aplicado rutinariamente para alcanzar un objetivo. El procedimiento define los resultados a alcanzar y el camino que conduce a ellos. Producto software que libera al ingeniero software de acciones que generan los resultados definidos por los mtodos.

Herramienta

50

CASE (Computed Aided Software Engineering)

Conjunto de herramientas y mtodos asociados que proporcionan asistencia automatizada en el proceso de desarrollo del software a lo largo de su ciclo de vida.

Gestin del proyecto(planificacin, estimacin y control)

Desarrollo del software(anlisis, diseo, implementacin, validacin)

Mantenimiento del software.

51

Elementos bsicos

Interfaz grfica. Editor de textos y grficos. BD de soporte(BD del proyecto, depsito o repositorio CASE)

Mecanismos de control para:

acceso a componentes.(datos, cdigo, documentos, dispositivos)

Compatibilidad de las herramientas. Consistencia de los productos. Deteccin de olvidos. Trazado de modificaciones.

52

BD de soporte:

Rene las funciones de: Catlogo central de ficheros y BDs. Diccionario de datos y procesos. Biblioteca de programas y documentacin. y es la base para: La integracin de herramientas. El mantenimiento de la integridad del sistema. La coordinacin y comparticin de informacin entre usuarios, con controles de seguridad y privilegios de acceso. El control de cambios y versiones. La estandarizacin de la documentacin. La reutilizacin del software. La gestin del proyecto (incluyendo auditoras). La incorporacin a otro sistema informtico.53

Taxonoma de herramientas CASE

Clasificacin por cobertura

Toolkitsn

Conjunto de herramientas software (integradas) que automatizan alguna fase del ciclo de vida (anlisis, diseo, gestin, ...). Comparten la BD de soporte y la interfaz de usuario.Conjunto de herramientas software integradas que automatizan el ciclo de vida en ms de una fase, tpicamente en todas las fases de desarrollo: anlisis + diseo + implementacin (incluyendo la documentacin asociada). Es decir, asisten en todo el proceso y proporcionan un producto documentado y operativo. Adems de compartir la BD de soporte y la interfaz de usuario, estn basadas en una misma metodologa.

Workbenchsn

54

Segn grado de integracin:

Toolkits (Juego de herramientas) n Conjunto de herramientas software que automatizan alguna fase del ciclo de vida (anlisis, diseo, gestin, ...). Comparten la BD de soporte y la interfaz de usuario. Integracin baja. Workbenchs (Banco de trabajo) n Conjunto de herramientas software que automatizan el ciclo de vida en ms de una fase, tpicamente en anlisis + diseo + implementacin (incluyendo documentacin asociada). Asisten en todo el proceso y proporcionan un producto documentado y operativo. Adems de compartir la BD de soporte y la interfaz de usuario, estn basadas en una misma metodologa. Integracin media. IPSE (Integrated Project Support Environment) n Integracin alta. Cubren todo el ciclo de vida, la gestin de proyectos y de la configuracin.

55

Segn las fases del ciclo de vida que abordan:

CASE frontales (fornt-end) o Upper CASE: Herramientas de apoyo a las primeras fases:

Anlisis, diseo.

CASE dorsales (back-end) o Lower CASE: Herramientas de apoyo a las ltimas fases:

Implementacin (generacin de cdigo). Pruebas (caja blanca y caja negra). Mantenimiento. Contienen elementos de Upper y Lower CASE: comtemplan todo el ciclo de desarrollo.

ICASE (Integrated-CASE)

Reverse Engineering (Ingeniera inversa) - Tema 9.- Mantenimiento del Software. CARE (Computer Aided Requirements Engineering)

56

Herramientas de anlisis y diseo

Permiten crear y verificar DFDs, diagramas E/R, de clase, de estructura... Herramientas de prototipado:

Ejemplos:

Diseadores de pantallas Generadores de mens Generadores de informes Lenguajes de especificacin ejecutables

DESIGNER/2000 de ORACLE EASY CASE de Evergreen Rational ROSE EXCELERATOR de Intersolv OBJECT MAKER de Mark IV. OMTool de GTE. PARADIGM Plus de Platinum SILVERRUN de CSA Research SYSTEM Architect de Popkin Sofware & Systems

57

Clasificacin por funcionalidad

Herramientas de gestin de proyectos ayudan a la planificacin y seguimiento del proyecto. Por Ejemplo SuperProject

Planificacin: agenda de desarrollo. Estimacin: costes, duracin, esfuerzo. Control: productividad, calidad.

Herramientas de anlisis y diseo. System Architect Herramientas de prototipado y simulacin. Herramientas de programacin.

Editores dirigidos por la sintaxis (cabeceras de subrutinas, palabras clave, identacin, nomenclatura de variables, ...) Generadores de estructuras de programas. Entornos integrados de desarrollo para soporte de un lenguaje (editor, compilador, depurador). Analizadores estticos. Depuradores. Generadores de datos. Comparadores (e.g. de ficheros).

Herramientas de integracin y pruebas.

Herramientas de soporte. Herramientas de mantenimiento.

Ingeniera inversa. Reingeniera.

58

Clasificacin por posicin

Upper CASE: Herramientas de apoyo a las primeras fases

Mtricas del software. Estimacin de costes. Planificacin temporal. Anlisis. Diseo. Implementacin (generacin de cdigo). Pruebas (caja blanca y caja negra). Mantenimiento. Documentacin de la implementacin y documentacin para el usuario final.

Medium CASE: Herramientas de apoyo a las fases centrales.

Lower CASE: Herramientas de apoyo a las ltimas fases.

59

Criterios de seleccin

Tipo de computador (MainFrame, Ws, PC, ...) Lenguaje al que va orientada. Metodologa soportada. Posibilidades de integracin con otras plataformas (presentes y futuras). Criterios habituales en la seleccin de software:formacin, precio, asistencia tcnica, mantenimiento, ...

60

05BM - Fundamentos de Ingeniera del Software.Bloque 2.- Desarrollo de Sw. Tema 2. Anlisis Estructurado.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

61

05BM - Fundamentos de Ingeniera del Software.Bloque 2.- Desarrollo de Sw. Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

62

Bibliografa Piattini, M., et al., Anlisis y diseo detellado de aplicaciones Informticas de Gestin.n n

Captulo 6. Captulo 7 (aptdos. 7.1 y 7.2, este ltimo no con tanto nivel de detalle).

Documentos de Mtrica 3: Anlisis del Sistema de Informacin (Proceso ASI)http://www.csi.map.es/csi/metrica3/asiproc.pdf

63

ndice de Contenidos

0.- Introduccin a Mtrica 3. 1.- Actividades iniciales. Anlisis de necesidades Estudio de viabilidad

2.- Tcnicas de recogida de la informacin. 3.- Actividades generales de anlisis. 4.- Documentos de especificacin de requisitos. IEEE 830. 5.- Mtrica 3: Anlisis del Sistema de Informacin (Proceso ASI) 6.- Ejemplo de Herramientas CASE en la gestin de requisitos.64

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3

Metodologa de Planificacin y Desarrollo de Sistemas de Informacin de las Administraciones Pblicas

Definir SI que sirvan a la consecucin de los fines de la organizacin Dotar a la organizacin de productos sw. Mejorar la productividad de los dptos. de SI/TIC Facilitar la comunicacin entre los participantes en la produccin de sw. Facilitar la operacin y mantenimiento de los productos sw. obtenidos65

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Objetivosn

n

Establecer un conjunto de tareas a realizar, tcnicas y productos a obtener para desarrollar sistemas de informacin con una mayor calidad, productividad y satisfaccin de los usuarios y para facilitar su mantenimiento posterior mbito inicial: Administracin General del Estado. http://www.csi.map.es

El Consejo Superior de Administracin Electrnica es el rgano colegiado adscrito al Ministerio de Administraciones Pblicas, encargado de la preparacin, la elaboracin, el desarrollo y la aplicacin de la poltica y estrategia del Gobierno en materia de tecnologas de la informacin, as como del impulso e implantacin de la Administracin electrnica en la Administracin General del Estado.66

REAL DECRETO LEGISLATIVO 1/1996, de 12 de abril, (BOE de 22 de abril) por el que se aprueba el texto refundido de la Ley de Propiedad Intelectual regularizando, aclarando y armonizando las disposiciones legales vigentes sobre la materia. (Incluye la modificacin producida por la Ley 5/1998, de 6 de marzo, de incorporacin al Derecho espaol de la Directiva 96/9/CE, del Parlamente Europeo y del Consejo, de 11 de marzo de 1996, sobre la proteccin jurdica de las bases de datos que afectan a la materia de propiedad intelectual, as como la modificacin realizada por la Ley 1/2000, de 7 de enero de Enjuiciamiento Civil. REAL DECRETO 114/2000, de 28 de enero, por el que se crea y regula la Comisin Interministerial para actuar contra las actividades vulneradoras de los derechos de propiedad intelectual e industrial. DIRECTIVA 2001/29/CE del Parlamento Europeo y del Consejo de 22 de mayo de 2001, relativa a la armonizacin de determinados aspectos de los derechos de autor y derechos afines a los derechos de autor de la sociedad de la informacin.

67

AS 2000 ATRIO BADARAL Criterios de seguridad, normalizacin y conservacin de las aplicaciones utilizadas para el ejercicio de potestades MAGERIT - Versin 2 (julio de 2005) MTRICA v.3 PGGC .

MAGERIT versin 2.Metodologa de Anlisis y Gestin de Riesgos de los Sistemas de Informacin. Interface Seguridad Mtrica 3.

PGGC. Plan General de Garanta Mtrica 3.

de Calidad aplicable al desarrollo de equipos lgicos. Interface Calidad

68

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. mbiton

n n n

Administracin Central del Estado (1 Etapa) Administracin Autonmica. Administracin Local. Resto de empresas e instituciones.

Fundamental: Adaptar el marco general de referenciaa cada mbito

69

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. AlcanceDescribe: n Pasos a seguir en el desarrollo. n Conjunto de productos finales a desarrollar. n Conjunto de tcnicas para obtenerlos. n Papeles (roles) de los participantes. n Modo de implantacin. n Proyectos de distintos tamaos.

70

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Versionesn n n n

Versin 1 Versin 2 Versin 2.1 Versin 3

1989 (ERITEL) 1993 (Coopers & Lybrand) 1995 (Univ. Carlos III) 2000 (IECISA; CSI)

71

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Objetivosn n

n

n

Mantener la sencillez, flexibilidad y adaptabilidad de la versin 2.1 Incorporar nuevas tcnicas, tecnologas y mtodos presentes en los desarrollos actuales: q C/S q OO Incorporar aspectos de gestin (INTERFACES): q gestin de proyectos q calidad PGGC (Plan Gen. de Garanta de Calidad) q gestin de la configuracin del sw. q seguridad MAGERIT nfasis en el uso de estndares de calidad e Ingeniera del Software.72

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Influenciasn

Mtodos:q q q

SSADM V.4. Merise. Ingeniera de la Informacin. ISO 12207 Information technology -Software life cycle processes. ISO/IEC TR 15.504 (SPICE) Software Process Improvement and assurance standards Capability Determination. ISO 9000-3 Quality management and quality. Part 3: Guidelines for the application of ISO 9001 Model for Quality Assurance in Design/Development , Production, Installation and Servicing. IEEE Standard Glossary of Software Engineering Terminology. Std. 610.12-1998. IEEE Std. 1074-1998: Software life-cycle processes. OMG standard UML. PGGC, Plan General de Garanta de Calidad para las Administraciones Pblicas. MAGERIT, Metodologa de Anlisis y Gestin de Riesgos de los Si stemas de Informacin para las Administraciones Pblicas. EUROMTODO V.1.

n

Estndares:q q

q

q q q

n

Referencias especficas:q q

q

73

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Aportaciones.n n n

MIXTA: Cubre desarrollo estructurado y OO C/S y GUI (Graphical User Interface) Estructura basada en procesos (ISO 12207)q q

Evolucin de la v. 2.1 Procesos ppales.:n n n

Planificacin Desarrollo Mantenimiento

No dentro de ISO 12207

q

Interfaces para aspectos de gestinLos procesos de interfaz tratan de contemplar aquellos aspectos que -sin ser esenciales- pueden afectar a los procesos principales, y no proporcionar una metodologa para dichos procesos.74

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. Estructura

75

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3.n n

n

PLANIFICACIN DE SISTEMAS DE INFORMACIN (PSI) DESARROLLO DE SISTEMAS DE INFORMACIN q ESTUDIO DE VIABILIDAD DEL SISTEMA (EVS) q ANLISIS DEL SISTEMA DE INFORMACIN (ASI) q DISEO DEL SISTEMA DE INFORMACIN (DSI) q CONSTRUCCIN DEL SISTEMA DE INFORMACIN (CSI) q IMPLANTACIN Y ACEPTACIN DEL SISTEMA (IAS) MANTENIMIENTO DE SISTEMAS DE INFORMACIN (MSI)

No cubre todas las actividades de ISO 12207

76

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. PSI.

n

Objetivo: obtener un marco de referencia para el desarrollo de SI que responda a los objetivos estratgicos de la organizacinq q q q

Descripcin de la situacin actual. Arquitectura de la informacin de alto nivel. Propuesta de proyectos (con prioridades). Propuesta de calendario y estimacin de recursos.

77

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. EVS.

n

Objetivo: analizar las necesidades y proponer una solucin a corto plazo,basada en criterios econmicos, tcnicos, legales y operativos.

n

n

La solucin consiste en definir uno o varios proyectos que afectan a uno o varios SI ya existentes o nuevos. Se identifican los requisitos que se han de satisfacer.

78

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. EVS.

79

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 1.- Actividades Iniciales.

Anlisis de necesidades y Estudio de viabilidad:Decisin de emprender el proyecto Recoger informacin sobre el proyecto (Directivos nivel alto/medio) Tcnicas recogida informacin

Informe de NecesidadesEstudio de la viabilidad del proyecto (Anlisis de factibilidad)80

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 1.- Actividades Iniciales. Estudio de viabilidad. EVS.n n

Alternativas. Evaluacin de las alternativas:q q q q

Econmico. Tcnico. Legal (p.e. LOPD Ley Orgnica de Proteccin de Datos) Operativo.

n

n

Especificacin detallada de la alternativa seleccionada. Definicin del plan inicial del proyecto.

81

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 1.- Actividades Iniciales. Estudio de viabilidad. EVS 4.n

Comprar un producto software comercial, ya construido, que cumpla los requisitos marcados(COTS, Commercial Off-The-Shelf)

n n

n

Desarrollar el producto internamente. Desarrollarlo de forma externa mediante un contrato (outsourcing). Automatizar slo parcialmente el sistema, para no tener que afrontar demasiados gastos.

82

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 1.- Actividades Iniciales. Estudio de viabilidad. EVS 5.

n

n

n

n

Econmico: Determinar si el beneficio compensa los costes. Tcnico: Estudiar si la funcionalidad, el rendimiento.. Son realizables. Legal: determinar si los requisitos violan o atenta contra alguna ley o reglamento. Operativa: Determinar si se puede implantar de manera efectiva en la empresa.83

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 2.- Tcnicas de Recogida de Informacin.n

En general, el proceso de anlisis debera seguir los siguientes cinco pasos:

Identificar las fuentes de informacin. Realizar las preguntas apropiadas. Analizar la informacin. Confirmar con los usuarios lo que parece haberse comprendido de los requisitos. Sintetizar los requisitos en un documento.

84

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 2.- Tcnicas de Recogida de Informacinn n

n n n n n n n

Entrevistas. JAD (Joint Application Design): Basada en la creacin de equipos de usuarios y analistas que se renen para trabajar conjuntamente en el establecimiento de las necesidades del sw a desarrollar. Prototipado: Construccin de una maqueta o modelo Observacin: Anlisis in situ del entorno a informatizar. Estudio de documentacin. Cuestionarios. Tormenta de ideas (brainstorming) ... Posible proceso de Reingeniera.

85

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 2.- Tcnicas de Recogida de Informacin: JAD vs Entrevistas.

Entrevistas:n

JAD:n

n

Requieren mucho tiempo (prepararlas, hacerlas, y elaborar conjunto coherente de requisitos a partir de diferentes entrevistados). Ms difcil detectar errores.

n

n n

Participacin ms profunda usuarios (se identifican con el sistema) Ms difcil llevar a la prctica. Requiere ms organizacin. Empricamente: ahorro tiempo , satisfaccin usuarios

86

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 2.- Tcnicas de Recogida de Informacin:n

Prototipado: El prototipado consiste en la elaboracin de un modelo o maqueta del sistema que se construye para evaluar mejor los requisitos que se desea que se cumpla. Su empleo me permite..n

n n

Asegurar de que est bien diseada, que satisface las necesidades del usuario. Indicar que en este sentido no encontramos con lenguajes de 4 generacin que aportan capacidad de prototipado. Evaluar el posible rendimiento de un diseo, especialmente en aplicaciones crticas. Prototipado Funcional: Basado en el ciclo de vida iterativo, el prototipo supondr una primera versin del sistema con funcionalidad limitada.87

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS. ASI.Anlisis de Requisitos-Requisitos

AR:

El proceso de estudio de las necesidades de los usuarios para llegar a una definicin de los requisitos del sistema, de hw. o de sw. El proceso de estudio y refinamiento de dichos requisitos [IEEE Std. 610, Glosario estndar de trminos en ingeniera del software]

REQUISITO:

Condiciones que debe cumplir un sistema para satisfacer un contrato, una norma o una especificacin. Condicin o capacidad que necesita el usuario para poder resolver un problema o conseguir un beneficio determinado.88

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS. ASI.Requisitos Funcionales y No Funcionalesn

Requisitos Funcionales: describen la funcionalidad o los servicios que se espera que el sistema proveer, sus entradas y salidas, excepciones, etc.Ejemplos:1.- El usuario deber tener la posibilidad de buscar en el conjunto inicial de la base de datos o seleccionar un subconjunto de ella. 2.- El sistema deber tener visores adecuados para que el usuario lea documentos en el almacn de documentos.

89

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS.Requisitos Funcionales y No Funcionalesn

Requisitos no Funcionales: se refieren a las propiedades emergentes del sistema como la fiabilidad, el tiempo de respuesta, la capacidad de almacenamiento, la capacidad de los dispositivos de entrada/salida, y la representacin de datos que se utiliza en las interfaces del sistema.Ejemplos: 1.- Ser necesario que la comunicacin requerida entre el APSE y el usuario se pueda expresar utilizando el conjunto de caracteres estndar de ADA. 2.- El proceso de desarrollo del sistema y los documentos a entregar estarn sujetos al proceso y a los productos a entregar definidos en XYZCo-SP-STAN95. 3.- El sistema no deber revelar a sus operadores alguna informacin personal de los clientes excepto su nombre y nmero de referencia.

90

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS.n n n n

Extraccin requisitos(tcnicas de recogida de informacin)

Anlisis de requisitos Especificacin de requisitos Validacin de los requisitosq q

Lenguaje natural Mtodos formales DFDs Anlisis Estructurado...

por parte de los usuarios se comprueba que son vlidos, consistentes y completos

91

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS.n

n

n

n

Extraccin: El proceso mediante el cual los clientes o futuros usuarios del software descubren, revelen, articulan y comprenden los requisitos que desean. Anlisis: el proceso de razonamiento sobre los requisitos obtenidos, detectando y resolviendo posibles inconsistencias o conflictos. Especificacin de requisitos: el proceso de redaccin o registro de los requisitos. Para este proceso puede recurrirse al lenguaje natural, lenguajes formales. Validacin de los requisitos: el proceso de confirmacin, por parte de los usuarios o clientes, de que los requisitos especificados son vlidos, consistentes, completos.

92

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. 3.- Actividades Generales de ANLISIS.n

Las caractersticas deseables para una buena ERS son las siguientes [IEEE 1984b]:

No ambigua. Completa. Fcil de verificar. Consistente. Fcil de modificar. Fcil para identificar el origen u las consecuencias de cada requisito: Posibilita la referencia de los requisitos con desarrollo futuros en incrementos de documentacin en el proceso de ciclo de vida. Fcil de utilizar durante la fase de explotacin y mantenimiento.

93

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.4.- Documentos de Especificacin de Requisitos.1

Despus de realizar el informe de necesidades y de dar luz verde al proyecto, se crea el SyRS (System Requirements Specification) y el SRS (Software Requirements Specification).SyRS Especificacin de Requisitos del Sistema (IEEE Std. 1233; IEEE Std. 12207.1) SyTS Especificacin de pruebas del Sistema

IRS Especificacin de Requisitos de Interfaz (IEEE Std. 830)

SRS Especificacin de Requisitos del Software (IEEE Std. 830)

STS Especificacin de pruebas del Software

94

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.4.- Documentos de Especificacin de Requisitos.IEEE Std. 830 - IEEE Std. 830-1993 (Aneos)1.- Introduccin 2.- Descripcin General. 3.- Requisitos Especficos. Apndices. ndice .

3.- Requisitos Especficos.3.1 Requisitos Funcionales. 3.2 Requisitos de Interfaz Externa. 3.3 Requisitos de Ejecucin. 3.4 Restricciones de diseo. 3.5 Atributos de calidad Mantenimiento, reutilizacin 3.6 Otros Requisitos.

95

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.4.- Documentos de Especificacin de Requisitos.IEEE Std. 830-1998

96

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.4.- Documentos de Especificacin de Requisitos.IEEE Std. 830-1998

97

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI)n

n

n

Objetivo: Obtener una especificacin detallada del SI, y de sus interfaces con otros sistemas, que satisfaga las necesidades de informacin de los usuarios y sirva de base para el diseo. Integra las actividades de anlisis estructurado y OO. Se refinan los productos obtenidos en el proceso EVS.98

99

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 1.- Definicin del Sistema.

Productos que se generan: n Catlogo de requisitos generales n Glosario n En AE, q Contexto del sistema q Modelo conceptual de datos n En AOO, q Modelo del negocio / Modelo del dominio n Catlogo de estndares y de normas n Catlogo de usuarios (participantes y finales) n Entorno tecnolgico del sistema n Plan de trabajo100

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 2.- Establecimiento de los Requisitos.

n

n n

n

Objetivo: definicin, anlisis y validacin de los requisitos. Se completa el catlogo de requisitos. Modelos grficos de requisitos: casos de uso (obligatorios en AOO, opcionales en AE) Las tareas se realizan de forma iterativa y con continuas realimentaciones y solapamientos.

101

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 2.1.- Obtencin de Requisitos.

Sesiones de trabajo con los usuarios para extraer los requisitos (con prioridades): Catlogo de requisitos Modelo de casos de uso n Requisitos funcionales q Con casos de uso (obligatoriamente) en AOO:n n n

Actores Casos de uso Breve descripcin de cada caso de uso

n

Requisitos no funcionales: q Restricciones del entorno q Niveles de servicio del sistema:n

Rendimiento, seguridad, implantacin, disponibilidad...102

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 2.2.- Especificacin de Casos de Uso.

n

Especificar cada caso de uso:q q q q

Descripcin del escenario principal Pre y post-condiciones Interfaces de usuario Escenarios secundarios

n

Es posible que se dividan casos de uso complejos en otros ms simples103

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3 (II). ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 2.3.- Anlisis de los Requisitos.

n

Objetivosq

q q q

Detectar inconsistencias, ambigedades, duplicidad o escasez de informacin. Se revisan las prioridades. Se relacionan requisitos. Identificar relaciones entre casos de uso.

104

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos. Mtrica 3. ASI.5.- Anlisis del Sistema de Informacin (Proceso ASI) ASI 2.4.- Validacin de los Requisitos.

n

Objetivo: los usuarios validan el catlogo de requisitos y los casos de uso.

105

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.6.- Ejemplo de Herramienta CASE en la gestin de requisitos. http://www-306.ibm.com/software/sw-bycategory/

106

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.6.- Ejemplo de Herramienta CASE en la gestin de requisitos: Estructura de REQUESITE.Gestin de requisitos en equipo. Integra: gestin de requisitos, trazabilidad, y puede conectarse con el control de versiones INTERSOLs PVCS, Version Manager. RequisitePro permite la construccin y pruebas de software para entender, manejar y comunicar los cambios en los requisitos de las aplicaciones, mediante la construccin de una base de datos de requisitos integrada con Microsoft Word. Tres espacios de trabajo: Paleta de herramientas Vistas Word Acceso desde Access a la base de datos de requisitos resultante. Adquisicin de los requisitos desde Word, ficheros separados con comas y otros proyectos dentro de la misma herramienta.

107

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.6.- Ejemplo de Herramienta CASE en la gestin de requisitos: Facilidades de REQUESITE. Gestin centralizada de los requisitos y de la documentacin resultante Seleccin de los requisitos en los documentos Base de datos integrada con modificacin automtica de los requisitos Entrada y actualizacin de requisitos desde Microsoft Word Los requisitos pueden contener todo tipo de objetos OLE (texto, grficos,ejecutables, sonidos) Definicin de diversos elementos segn necesidades Posibilidad de definirse tipos de requisitos y darles distintas apariencias en el texto para su fcil localizacin Utilizacin de distintos tipos de documentos (requisitos software, de productos, test...) A cada requisito se le pueden aadir los atributos que se consideren oportunos, adems se generan automticamente diversos atributos como autor, versin, fecha y hora de edicin ...108

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.6.- Ejemplo de Herramienta CASE en la gestin de requisitos: Caractersticas de REQUESITE. Centrada en documento Cmodo de usar (Entorno Windows, Ayuda disponible, Asistentes) Multi-usuario Seguridad (Control de accesos) Realizacin consultas e informes sobre los mismos Filtros, ordenaciones sobre cualquier atributo Generacin de informes a medida del usuario y con el nivel de abstraccin especificado Exportacin en ficheros ASCII delimitados Presentacin preliminar del documento a imprimir.

109

Tema 2. Anlisis Estructurado. Actividades Iniciales y Anlisis de Requisitos.6.- Ejemplo de Herramienta CASE en la gestin de requisitos: Otras Estructura de REQUESITE.

Plantillas Definidas por el usuario. Pueden incluir notas y listas para guiar a los escritores a rellenarlas adecuadamente. Disponibles las ANSI IEEE y otras.

TrazabilidadExistencia de relaciones entre requisitos. Es posible seguir los cambios en los requisitos a travs del diseo implementacin y test. Sealizacin automtica y manual de requisitos sospechosos por haber variado alguno de los relacionados con ellos. Vista de la trazabilidad a travs de la matriz de trazabilidad y del rbol de trazabilidad.110

05BM - Fundamentos de Ingeniera del Software.Bloque 2.- Desarrollo de Sw. Tema 2. Anlisis Estructurado. Visin Panormica del AE y DFD: Visin panormica del Anlisis Estructurado y Diagrama de Flujo de Datos.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

111

Tema 2. Visin Panormica del AE y DFD.Bibliografaq

Documentos de Mtrica 3: Anlisis del Sistema de Informacin (Proceso ASI)q

http://www.csi.map.es/csi/metrica3/asiproc.pdf

q

Documentos de Mtrica 3: Diseo del Sistema de Informacin (Proceso DSI)q

http://www.csi.map.es/csi/metrica3/dsiproc.pdf

q

Texto principalq

Yourdon, E., Anlisis estructurado moderno. 1993: Prentice-Hall Hispanoamericanan

Introduccinq q

Captulo 4. Herramientas del anlisis estructurado Captulo 7. Cambios en el anlisis de sistemas Captulo 9. Diagramas de flujo de datos. Captulo 10. El diccionario de datos. Captulo 11. Especificaciones de proceso. Captulo 14. Balanceo de modelos. Captulo 17. El modelo esencial. Captulo 18. El modelo ambiental. Captulo 19. Construccin de un primer modelo de comportamiento. Captulo 20. Completando el modelo de comportamiento.

n

Tcnicasq q q q

n

El proceso de anlisisq q q q

112

Tema 2. Visin Panormica del AE y DFD.Bibliografan

Entre la bibliografa bsica...q q

Piattini, M., et al., Anlisis y diseo detallado de Aplicaciones Informticas de Gestin. 1996: Ra-ma. MAP, MTRICA versin 2.1. Gua de Tcnicas. 1995, Madrid: Ministerio de Administraciones Pblicas. Secretara de Estado para la Administracin Pblica. Consejo Superior de Informtica.

n

En castellano y en la biblioteca...q q

Barranco de Aruba, J., Metodologa del Anlisis Estructurado de Sistemas (2 edicin). 2001, Madrid: Publicaciones de la Universidad Pontificia de Comillas. Hawryszkiewycz, I. T. Introduccin al anlisis y diseo de sistemas con ejemplos prcticos. 1 ed., Madrid : Anaya Multimedia, 1990.

n

Referencias clsicas...q q

DeMarco, T., Structured analysis and system specification. 1979, Englewood Cliffs, New Jersey: Yourdon Press. Gane, C. and T. Sarson, Anlisis estructurado de sistemas. 1990, Buenos Aires: El Ateneo (traduccin de Gane, C. and T. Sarson, Structured systems analysis, tools and techniques. Software series. 1979, New Jersey: Prentice-Hall.)113

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. Introduccin.n

Anlisis Estructuradoq

q q

Mtodo clave en el desarrollo estructurado o convencional Aparece a finales de los 70 Facilita la comunicacin en el proceso de desarrollo de un sistema de informacinn n

anlisis y diseo usuarios y analistas

q

Sencillo, fcil de entender y fcil de aprender

114

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. Caractersticas.n n

Amplia difusin. Descomposicin funcional:q q

(Originariamente) Orientada a procesos. (Originariamente) Top/down. p.ej. Mtrica, SSADM, information engineering, Merise

n

Presente en numerosas metodologasq

n

Herramientas CASE disponibles.

115

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. Componentes.n

n

DFD (Diagrama de Flujo de Dato Dataflow diagram). ASI 1-3-7. Diagrama E-R (Entidad-Relacin), o alternativamente, DED (Diagrama de Estructura de Datos) ASI 1-6.Diagramas HVE (Historia de Vida de las Entidades) Diagramas de Transicin de Estados (STD, State Transition Diagram)

n n

116

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. Componentes.

n

Lgica de procesos:q q q q

Lenguaje estructurado Pre y post-condiciones Tablas de decisin rboles de decisin

n

Diccionario de Datos . (DD) (ASI 3-7) ME/R(ASI 6) (Consistencia)

117

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. ASI.

118

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. ASI. ASI 1.- Definicin del Sistema. Productos que se generan: n Catlogo de requisitos generales. n Glosario n En AE, q Contexto del sistema. DFD Contexto. q Modelo conceptual de datos n En AOO, q Modelo del negocio / Modelo del dominio n Catlogo de estndares y de normas n Catlogo de usuarios (participantes y finales) n Entorno tecnolgico del sistema n Plan de trabajo

119

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. ASI. ASI 3.- Identificacin de Subsistemas.

n

n

n n

Objetivo: Descomposicin del sistema en subsistemas. En paralelo con el resto de actividades de generacin de modelos de anlisis. En AE, se corresponde con el DFD 0. (DFD deSistema)

Se asignarn los requisitos y casos de uso a cada uno de los subsistemas identificados.

120

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. ASI. ASI 7.- Elaboracin del Modelo de Proceso. Tcnicas: DFDs y matriciales. (Descomposicin Jerrquica) n ASI 7 en paralelo y con continuas realimentaciones con ASI 2, ASI 6 (Elaboracin del modelo de datos ME/R) y ASI 8 (Definicin de interfaces de usuario). n Para cada subsistema (ASI 3): q establecer el conjunto de procesos que satisfacen las necesidades del usuario. q se utilizar un enfoque top-down. n Se especifican con detalle las interfaces con otros SI q formatos de datos, en lotes o interactiva, frecuencia, etc.

121

Tema 2. Visin Panormica del AE y DFD.1.- Visin panormica del AE. ASI. ASI 7.- Elaboracin del Modelo de Proceso.n

Procesos primitivos Diccionario de Datos (Lgica de Procesos):q q q q q q

q

Tipo de tratamiento (interactivo o por lotes) operativa asociada restricciones impuestas al proceso caractersticas de rendimiento frecuencia de ejecucin limitaciones en su ejecucin: tiempos mximos de respuesta, franja horaria/periodos crticos, n mx. de usuarios concurrentes, etc. localizacin geogrfica

disear la arquitectura fsica del sistema.122

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE: DFD ASI 1/ ASI 3/ ASI 7n

n n

Visin general de las funciones y transformaciones de datos en una Organizacin. Modelo lgico y grfico del sistema. Identifica entradas, salidas, procesos y relaciones con el exteriorq q

...a nivel general. ...por refinamiento, a nivel detallado.P1ENTIDAD EXTERNA Proceso

flujo de datos

D ALMACN DE DATOS

123

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. DFD.Tipos de smbolos en los DFDs:(notacin de Yourdon/De Marco)P1ENTIDAD EXTERNA Proceso

flujo de datos

D ALMACN DE DATOS

124

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Ejemplo Prctico

Sistema de distribucin sin inventarioSe trata de un sistema que sirve pedidos de libros a unos clientes, con la particularidad de que no mantiene un stock. El sistema puede agrupar los pedidos que clientes distintos hacen a un mismo editor, de manera que se puedan conseguir descuentos.Adaptado del captulo 2 de Gane, C. and T. Sarson, Anlisis estructurado de sistemas. 1990, Buenos Aires: El Ateneo.

125

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Ejemplo Prctico: ASI 1

Anlisis de los procesos del sistemaDiagrama de contextoCLIENTE pedidos rdenes de compra libros entregados 0. Sistema de Pedidos libros pedidos

Los flujos podrn descomponerse y sern lgicos o fsicos

EDITOR

126

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. DFD 0. Sistema de pedidos Ejemplo Prctico: ASI 3-7pedidos D LIBROS rdenes de compra pedidos vlidos estado del crdito D CLIENTES direccin 5. Armar entrega a clientes libros por clientes 4. Asignar libros a pedidos libros recibidos 3. Verificar envo de editores libros pedidos 1. Verificar validez de pedido D PEDIDOS PENDIENTES 2. Armar pedidos a editores

D RDENES DE COMPRA

pedidos por ttulo

pedidos en lote

libros entregadoslibros entregados = albarn + lista-novedades

libros recibidos = {ttulo + cantidad}

DD

DD127

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Diccionario de Datos: ASI 3-7n

n

n

Es un conjunto de metadatos, es decir, de informacin (datos) sobre datos Contiene las definiciones de todos los elementos de los diagramas: Procesos-Flujos-Almacenes-Entidades Externas. Implementacin:q q q q

Manual. Procesador de textos. Base de datos. Automtico e integrado: Herramienta CASE.

128

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Diccionario de Datos: Ejemplo.Almacen: Facturas Descripcin: Informacin, por nmero de factura, sobre facturas en el sistema actual. Sinnimos: *** none *** Composicin:@Nmero-factura + Fecha-factura + Direccin-cliente + { Nmero-producto + Cantidad-producto + Costo-unidad-producto } + Costo-envo + Tasa-de-descuento + Neto-factura + Estado-factura

Procesos asociados:Proc_cancelacin Proc_consultas

Segn DFD generalProc_pago Adjuntar_albarn129

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Diccionario de Datos: Ejemplo.Proceso: Verificar estado del socio Nmero: 1.1.1 Descripcin: Se examina si el socio no est sancionado Miniespecificacin: Recibir Socio ID del socio Leer SOCIOS para Leer Flag-de-precaucin Si OK, enviar Socio ID vlido Complejidad: Ratio de transacciones: Prioridad: Memoria requerida (Kb): Tiempo de proceso:

130

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Modelo Entidad-Relacin (Modelo de Datos): ASI 1- ASI 6n

n

Diagramas E-R y DED (Diagrama de Estructura de Datos). DED es, bsicamente, un E-R limitado:q q q

no relaciones ternarias slo cardinalidades 1:N no atributos multivaluados ni compuestos

n

Por defecto, usaremos diagramas E-R.

131

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE.Modelo Entidad-Relacin (Modelo de Datos)Departamento (1,n) pertenece

Diagrama E-R[EN2002] (Chen)

(1,1) Empleado (0,n)

asignado (1,m)

Proyecto

Departamento

Proyecto

DED

pertenece

requiere

Empleado

tiene

Asignacin

132

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Procesos: Lgica de los Procesos. Miniespecificacin

n

Tcnicas para describir la lgica de los procesos primitivos:q q q q

Lenguaje estructurado Pre y post-condiciones Tablas de decisin rboles de decisin

133

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Procesos: Lgica de los Procesos. Miniespecificacin ASI 7n

Lenguaje estructuradoq

SI la factura excede de 300n

n

SI la cuenta del cliente tiene alguna factura sin pagar ms de 60 das, dejar la confirmacin pendiente de este pago. SI NO (la cuenta est en buen estado) hacer confirmacin y factura SI la cuenta del cliente tiene alguna factura sin pagar ms de 60 das hacer la confirmacin, la factura y escribir un mensaje sobre informe de crdito SI NO (la cuenta est en buen estado) hacer confirmacin y factura

q

SI NO (la factura es de 300 o menos)n

n

q

FIN-SI.

134

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Procesos: Lgica de los Procesos. Miniespecificacin ASI 7n

Pre y post-condiciones

Pre1 (la factura excede de 300) Y (la cuenta del cliente tiene alguna factura sin pagar ms de 60 das) Pos1 (confirmacin pendiente de este pago) Pre2 (la factura excede de 300) o (la cuenta del cliente no tiene ninguna factura sin pagar ms de 60 das) Pos2 (confirmacin y factura realizadas) Pre3 (la factura no excede de 300) Y (la cuenta del cliente tiene alguna factura sin pagar ms de 60 das) Pos3 (confirmacin y factura realizadas) Y (mensaje impreso sobre informe de crdito) Pre4 (la factura no excede de 300) Y (la cuenta del cliente no tiene ninguna factura sin pagar ms de 60 das) Pos4 (confirmacin y factura realizadas)135

Tema 2. Visin Panormica del AE y DFD. 1.- Visin panormica del AE. Procesos: Lgica de los Procesos. Miniespecificacin ASI 7

Tablas de decisinESTADO DE LA CUENTA NETO-FACTURA CONFIRMACIN PENDIENTE HACER CONFIRMACIN HACER FACTURA ESCRIBIR MENSAJE CORRECTO >300 IMPAGADO >300 CORRECTO ASI 3 Utilizar la descomposicin funcional jerrquica hasta alcanzar las funciones primitivas - > ASI 7174

Tema 2. Visin Panormica del AE y DFD. Anlisis del Sistema de Informacin (Proceso ASI)

175

05BM - Fundamentos de Ingeniera del Software.Bloque 2.- Desarrollo de Sw.Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE.

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

176

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE.Anlisis del Sistema de Informacin (Proceso ASI)

177

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. Mtrica 3. ASI.Anlisis del Sistema de Informacin (Proceso ASI) ASI 7.- Elaboracin del Modelo de Procesos.

Tcnicas: DFDs y matriciales. Descomposicin Jerrquican

n

ASI 7 en paralelo y con continuas realimentaciones con ASI 2, ASI 6 (Elaboracin del modelo de datos ME/R) y ASI 8 (Definicin de interfaces de usuario). Para cada subsistema (ASI 3): DFD 0 o Sistemasn n

establecer el conjunto de procesos que satisfacen las necesidades del usuario. se utilizar un enfoque top-down: Descomposicin Jerarquica. formatos de datos, en lotes o interactiva, frecuencia, etc.178

n

Se especifican con detalle las interfaces con otros SIn

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. Mtrica 3. ASI.Anlisis del Sistema de Informacin (Proceso ASI) ASI 7.- Elaboracin del Modelo de Procesos.

n

Procesos primitivos:n n n n n n

n

Tipo de tratamiento (interactivo o por lotes). operativa asociada. restricciones impuestas al proceso. caractersticas de rendimiento. frecuencia de ejecucin. limitaciones en su ejecucin: tiempos mximos de respuesta, franja horaria/periodos crticos, n mx. de usuarios concurrentes, etc. localizacin geogrfica.179

disear la arquitectura fsica del sistema

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Definicin.

n

Es un conjunto de informacin (datos) sobre datos Metadatos.

180

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Elementos a Definir.

n n n n n n n

Flujos de datos Procesos Mnimo necesario Almacenes Entidades externas Estructuras de datos Datos elementales Cualquier otra cosa que el analista considere conveniente181

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Estructura e Informacin Describir.Nombre Mnimo necesario Tipo de elemento n Frecuencias y fechas Breve descripcin n Volmenes (Ks estimadas, n lneas impresas, etc.) Sinnimos n Referencia o cdigo de impreso Observacionesn n n n n

n n n n n

Rango de valores permitido y clase (numrico, alfanumrico, etc.) Miniespecificaciones (slo procesos) Referencias cruzadas Usuarios afectados Cualquier otra informacin que se considere de inters182

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Descomposicin.A=B+C B = B1 + B2 + B3 C = C1 + C2 A, B, C, B1, B2, B3, C1, C2 todos estn definidos en el DDn

Ejemplos de descomposicin:n n n n

Ficheros en subficheros o registros. Procesos en subprocesos. Flujos en subflujos. Estructuras de datos en datos elementales.183

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Operadores Relacionales.

n n n n n

n

= es equivalente a + y o (inclusivo: al menos una de las opciones) [ ], | o (exclusivo: slo una de las opciones) 1{ }N iteraciones entre 1 y N veces del trmino entre llaves ( ) opcional184

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Operadores Relacionales.Actualmente (Yourdon 89) no se usa (en System Architect tampoco) Se utiliza [ ] , | con combinaciones de ( ) y + Ejemplos:direccion-cliente = * se puede expresar como * direccin-cliente = [direccion-envio | direccion-facturacion | direccion-envio + direccion-facturacion] * si se admite que direccion-cliente est vacio * direccion-cliente = (direccion-envio) + (direccion-facturacion)

n

n n

185

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Operadores Relacionales.n n

*...* comentario @ identificador de campo clave en un almacn (tambin, alternativamente, se puede subrayar la clave)Ejemplos:Solicitud-destino = @nascensor + (nplanta) = nascensor + (nplanta) * ambas definiciones son equivalentes *186

n

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Ejemplo.

pedido = cupn-correos + (pago-previo) etiqueta = 1{carcter}8 n-de-telefono = *cualquier secuencia correcta de dgitos que provoca una llamada * [extension-local | 9 + numero-exterior] extension-local = * slo dentro del edificio * primer-digito + 3{ cualquier-digito}3 primer-digito = [1|2|3|4|5|6|7] cualquier-digito = [0|1|2|3|4|5|6|7|8|9]187

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Grado de Especificacin.

n

n

El proceso de descomposicin finaliza en los trminos autocontenidos. Ejemplon

n

persona = apellidos + nombre + nss + edad edad es autocontenido?n

edad = 1{digito}2

188

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.1.- Diccionario de Datos. Ejemplo.Nombre: peticion Sinnimos: solicitud, hoja-verde Tipo: flujo de datos Composicin: [peticion-estado-cliente | peticion-stock | peticion-estadode-un-pedido | peticin-de-materia-prima] Pertenece a: * ninguno * Observaciones: ---------------------------------Nombre: Contabilidad de proyectos Sinnimos: Cuentas Tipo: fichero Composicin: { n-de-proyecto + descripcin-proyecto + cuenta-del-gabinete + { nombre-del-empleado + fecha-ingreso } } Organizacin: * secuencial, por nmero de proyecto * Observaciones: -------------------------------------------------------189

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin.Proceso primitivo miniespecificacin. La ME describe las reglas sobre cmo realizar el proceso para transformar las entradas en salidas. La ME indica el proceso a realizar, la transformacin de datos, no el algoritmo (que se selecciona en la etapa de diseo).

n n

n

Herramientas

Lenguaje estructurado n Tablas de decisin n rboles de decisin n Pre y post-condiciones (son alternativas no excluyentes)n190

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje EstructuradoVocabulario (restringido) de una lengua (espaol, ingls, etc.). n Verbos imperativos. n Trminos definidos en el DD. n Palabras reservadas para formulacin lgica (maysculas). Sintaxis de la programacin estructurada. Los objetos de una ME (sujetos de las sentencias) sern trminos del DD o bien trminos locales. Los trminos locales se definen explcitamente dentro de una ME, y son conocidos, relevantes y significativos slo dentro de esa ME (por tanto, no es imprescindible su inclusin en el DD). Ejemplo:variables utilizadas para clculos intermedios, como sumas parciales, dentro de un proceso.191

n

n n

n

n

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado

n n n n

Sentencia declarativa simple (secuencia). Estructura de decisin. Estructura de repeticin. Combinaciones de las estructuras anteriores.

192

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado Sentencias.n n n n n

Concisin Evitar verbos ambiguos (manejar, realizar, procesar, etc.). Utilizar verbos precisos que describan acciones concretas (imprimir, enviar, acumular...). Mencionar expresamente el objeto de la sentencia, preferiblemente utilizando los trminos del DD. Ejemplos:n n n n

Recoger INF- CLIENTE Separar PETICION Archivar PETICION en F-PETICION *fichero* Enviar DATOS-CLIENTE a DPTO- CLIENTES

193

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado Decisin.SI CondicinAccin(es)

CASO Condicin:Accin(es)

SINOn

Ejemplos:SINO

Accin(es)

a) SI Valor-capital-actual es menor que 600Asignar Cantidad-depreciada = Valor-capital-actual = 0 Asignar Cantidad-depreciada = 10% de Valor-capital-actual

b) Seleccionar la poltica que se aplica:Caso 1: (Costo-de-pedido > 1000) : enviar por avin Caso 2: (Costo-de-pedido entre 100 y 1000) : enviar por correo urgente Caso 1: (Costo-de-pedido < 100) : enviar por correo normal194

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado Iteracin.REPETIR (condicin de seleccin)Accin(es)

HASTA (condicin de terminacin) MIENTRAS (condicin)Accin(es)

FIN MIENTRASn

Ejemplo:REPETIR para cada registro-de-pasajero en fichero-de-reservasAcumular Cantidad-debida en Total Construir registro Nuevo-dbito Escribir Nuevo-dbito en el diario

HASTA final de fichero-de-reservas195

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado Iteracin.a) PARA CADA cliente en fichero-cuentas Acceder al registro de cuenta del fichero-cuentas Si estado-cuenta es moroso y balance < 10 Poner estado-cuenta en pendiente Acumular balance-cuenta en total-pendiente Asignar a fecha-ltima-transaccin la fecha de hoy

b)REPETIR para cada cliente en fichero-cuentas Acceder al registro de cuenta del fichero-cuentas Si estado-cuenta es moroso y balance < 10 Poner estado-cuenta en pendiente Acumular balance-cuenta en total-pendiente Asignar a fecha-ltima-transaccin la fecha de hoy HASTA que no haya ms clientes196

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado Observaciones.

n

Utilizar funciones o subrutinas. Modularidad. Subrayar los trminos del DD. Evitar sentencias largas e imprecisas Usar indentacin o notacin de bloque Usar parntesis para las combinaciones de condiciones lgicas (and, or, not). Describir en el Pseudolenguaje a utilizar. 197

n

n

n

n

n

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.

reporte-diario-ventas

reporte-mensual-ventas

P2 PRODUCIR REPORTE DIARIO VENTAS P1 PRODUCIR REPORTE MENSUAL VENTAS D CREDITOS

D

PEDIDOS D DEVOLUCIONES

198

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.PROCESO 3.2: PRODUCIR REPORTE DIARIO VENTAS COMIENZA total-diario = 0 MIENTRAS haya ms pedido en PEDIDOS con fecha-pedido= fecha actualLEER siguiente pedido con fecha-pedido = fecha actual SUMAR numero-factura, nombre-cliente, nombre-compaa, pedidototal como nuevo rengln en informe-ventas-diario SUMAR total-pedidos a total-diario

FIN_MIENTRAS SUMAR total-diario como nuevo rengln en reporte-diario-ventas ENVIAR reporte-diario-ventas Tabla de Ocurrencias TERMINA199

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.PROCESO 3.3: PRODUCIR REPORTE MENSUAL VENTAS COMIENZA total-ventas = 0 total-devoluciones = 0 total-crditos = 0 MIENTRAS haya ms pedido en PEDIDOS con fecha-pedido de este mesSUMAR total-pedidos a total-ventas

FIN_MIENTRAS MIENTRAS haya ms devolucin en DEVOLUCIONES con fecha-devolucin de este mesSUMAR valor-devolucin a total-devoluciones

FIN_MIENTRAS MIENTRAS haya ms crdito en CREDITOS con fecha-crdito de este mesSUMAR monto-de-crdito a total-crditos

FIN_MIENTRAS reporte-mensual-ventas = total-ventas, total-devoluciones, total-crditos ENVIAR reporte-mensual-ventas TERMINA200

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.

D

LIBROS

P4 id-imprenta + fact-imprenta PROCESAR FACTURAS IMPRENTA factura-imprenta-aprobada

factura-imprenta

autorizacion-fact-imprenta

respuesta-fact-imprenta

201

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.PROCESO 4.4: PROCESAR FACTURA IMPRENTA COMIENZA ENCONTRAR libro en LIBROS con clave-libro que corresponda con clave-libro en factimprenta SI no se encuentra registro OTROrespuesta-fact-imprenta = No existen pedidos pendientes para este libro ENVIAR respuesta-fact-imprenta ENVIAR factura-imprenta (a administracin para su aprobacin) ACEPTAR autorizacin-factura-imprenta SI autorizacin-factura-imprenta = NO OTROrespuesta-fact-imprenta = Factura rechazada; comunquese con la administracin para discutirlo ENVIAR respuesta-fact-imprenta respuesta-factura-imprenta = Factura aceptada ENVIAR respuesta-factura-imprenta factura-imprenta-aprobada = fact-imprenta ENVIAR factura-imprenta-aprobada

FIN_SI TERMINA

FIN_SI

202

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.

etiquetas-envo

P6 solicitud-etiquetas PRODUCIR ETIQUETAS ENVIO

D

CLIENTES

203

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Lenguaje Estructurado. Ejemplos (Yourdon 93) Apndice F.

PROCESO 6.1: PRODUCIR ETIQUETAS ENVIO COMIENZA ORDENAR CLIENTES por cdigo-postal en etiquetas-envo ENVIAR etiquetas-envo TERMINA

204

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Precondicin (Yourdon 93).x z

n

Entradas disponiblesn

llega el dato X * en (Yourdon 93) pone ocurre *

y

n

Relaciones entre las entradasn n

llegan detalles de pedido y detalles de envo con el mismo nmero de cuenta llega un pedido con fecha de entrega de ms de 60 das hay un pedido-de-cliente con nmero-de-cta-de-cliente que corresponde con un nmero-de-cta-de-cliente del almacn de clientes hay un pedido en el almacn de pedidos cuyo nmero-de-cta-del-cliente corresponde con un nmero-de-cta-del-cliente en el almacn de clientes existe un pedido en el almacn de pedidos con fecha-de-envo igual a la fecha actual205

n

Relaciones entre entradas y almacenesn

n

Relaciones entre almacenes distintos (o dentro del mismo almacn)n

n

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Postcondicin (Yourdon 93).n

Salidas producidasn

se producir una factura la factura-total se calcula como suma de preciosunitarios-de-artculos ms costos-de-envo el balance-actual en el almacn INVENTARIO se incrementar con cantidad-recibida, y el nuevo balanceactual se producir como salida de este proceso el pedido se anexar al almacn de PEDIDOS el registro de clientes se eliminar del almacn de clientes206

n

Relaciones entre entradas y salidasn

n

Relaciones entre salidas y almacenesn

n

Cambios en los almacenesn n

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.2.- Especificacin de Procesos. Proceso: Miniespecificacin Otras Tcnicas.n n

Grafos y diagramas propios del usuario Diagramas Nassi-Shneiderman

n n

Flowcharts Lenguaje narrativo

No recomendadas

Sirve para descripcin breve207

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Bibliografa.

n

n

Gua de tcnicas de Mtrica v.2.1. Ministerio de Administraciones Pblicas. 1996. http://www.csi.map.es/csi/pg5m41.htm - Las tcnicas de MTRICA 2.1

208

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades.

n

n

Describe la posible evolucin de las entidades de datos del sistema. VISIN DEL COMPORTAMIENTOque complementa: n Visin esttica (E/R o DED) n Visin de procesos y flujos (funcional) (DFDs)

n

n

HVE se basa en entidades de datos (identificadas en DED), y transacciones o eventos (de los DFDs) Deben ser coherentes HVE, DED, DFD209

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Objetivos.

n

Registrar la secuencia de los cambios de las entidades en el tiempo: n Determinar los estados posibles. n Determinar los cambios de estado. n Identificar interacciones producidas por eventos.

210

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades.

n

n

(En principio) existe una HVE por cada entidad del sistema. HVE describe la sucesin de eventos que afectan a dicha entidad, cuyos efectos pueden ser:n n

Crear/dar de baja a la entidad. Modificar sus atributos.211

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Elementos.n

Entidades de datosn

n

Cualquier objeto sobre el que el sistema guarda informacin (tienen atributos). Sucesos que activan un proceso que afecta los datos del sistema. Resultado de la accin de un evento sobre una entidad.

Nodon

Agrupacin de eventos en una caja. Representan el caso en que ningn evento afecta a la entidad.

n

Cajas vacasn

n

Eventosn

n

Efectosn

212

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Eventos.

n

EXTERNOS. Por activacin externa .n

ej. solicitudes de alta, baja, modificacin, etc.

n

PERIDICOS. Activacin dependiente del tiempo (automticos) sin estmulo externo.n

ej. back up peridico

n

TRIGGERING. Activados internamente por cumplimiento de determinadas condiciones.n

ej. alarma activada

213

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Efectos.Un evento puede tener distintos efectos sobre entidades diferentes.n n n

n

Ej.: SOLICITAR APERTURA CTA. BANCARIA Crea (o actualiza) entidad CLIENTE Crea entidad CUENTA

n

Un evento puede tener efectos distintos sobre ocurrencias de una misma entidad.n n n

Ej.: entidad CUENTA; ev. REALIZAR TRANSFERENCIA Efectos: para una ocurrencia: HACER APUNTE EN EL DEBE Para la otra ocurrencia: HACER APUNTE EN EL HABERn

Tipos de efectos:n n n

I : insertar M : modificar B : borrar214

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Nodos.

n

Es una abstraccin grfica que mejora la legibilidad.ENTIDAD

CREAR

MODIFICAR

BORRAR

n

Entidad es un nodo que agrupa todos los eventos que le afectan.215

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Notacin.

CUENTA

ABRIR cta. ab.

VIDA

CERRAR cierre

BORRAR cta.borr.

SECUENCIA

TRANSACCIN

ITERACIN

TRANS. PAGO

TRANS. DEPSITO

TRANS. ABONO

SELECCIN

216

Tema 2. Anlisis Estructurado. DD, miniespecificaciones, HVE. 2.3.3.- Historia de la Vida de las Entidades. Construccin.

n n n n n

1. Identificar las Entidades. 2. Identificar los eventos. 3. Construir la matriz entidad/evento. 4. Construir un HVE para cada entidad. 5. Refinamiento de las HVE.n n

Vase Pdf: Anexo VI: Historia de la Vida de las Entidades. http://www.csi.map.es/csi/pg5m41.htm - Las tcnicas de MTRICA 2.1217

05BM - Fundamentos de Ingeniera del Software.Bloque 2.- Desarrollo de Sw. Tema 2. Modelo de Datos. Modelo E/R

Departamento de Informtica y Sistemas Facultad de InformticaCampus Universitario de Espinardo - Murcia

Asignatura: Fundamentos de Ingeniera del Software Titulacin: Ingeniera Tcnica de Informtica de Gestin Curso Acadmico: 2005-2006 Curso: 3 Cuatrimetres: Primero Crditos: 6(3+3) Pgina Web: dis.um.es/~lopezquesada Profesor: Juan Antonio Lpez Quesada Departamento: Informtica y Sistemas

218

Indiceq

Documentos de Mtrica 3: Anlisis del Sistema de Informacin (Proceso ASI)n

http://www.csi.map.es/csi/metrica3/asiproc.pdf

q

Documentos de Mtrica 3: Diseo del Sistema de Informacin (Proceso DSI) Prctica de Diseo de Bases de Datos.n

http://www.csi.map.es/csi/metrica3/dsiproc.pdf

o o o o

Introduccin. Conceptos y Definiciones. Diseo de Bases de Datos. Transformacin de un esquema en el modelo E/R a un esquema relacional.219

Tema 2. Modelado de Datos. Mtrica 3. Estructura

220

Anlisis del Sistema de Informacin (Proceso ASI)

221

Tema 2. Modelado de Datos. Mtrica 3. ASI. Anlisis del Sistema de Informacin (Proceso ASI) ASI 1.- Definicin del Sistema.

Productos que se generan: o Catlogo de requisitos generales o Glosario o En AE,n

Contexto del sistema. DFD Contexto.

no o o o on

Modelo conceptual de datos (No Detallado).Modelo del negocio / Modelo del dominio

En AOO, Catlogo de estndares y de normas Catlogo de usuarios (participantes y finales) Entorno tecnolgico del sistema Plan de trabajo222

Tema 2. Modelado de Datos. Mtrica 3. ASI. Anlisis del Sistema de Informacin (Proceso ASI) ASI 6.- Elaboracin del Modelo de Datos.

Tcnica: Modelo E-R extendido. o Se completa el modelo conceptual de datos (versin inicial en ASI 1). o Se elabora el modelo lgico. o Se normaliza el modelo lgico (al menos hasta 3FN) o Si es necesaria una migracin de datos de otros sistemas o una carga inicial de informacin, determinar las necesidades de migracin o carga inicial de datos plan de migracin y carga inicial de datos.223

Diseo del Sistema de Informacin (Proceso DSI)