ingeniería de softwarerossainz/ingsw_cuatrimestral/1_apuntes_… · vista de detalle ingeniería...
TRANSCRIPT
1
Ingeniería de Software
2
Ingeniería de Sistemas
Enfoque en variedad de elementosn Análisis, diseño y organización de los
elementos en un sistema
Todo para generar un producto, servicio o tecnología para transformación o control de información
3
Ingeniería de Sistemas
Proceso de ingeniería de sistemas se conoce comon Ingeniería de información
Cuando se construye un producto, el proceso se conoce comon Ingeniería de producto
4
Sistemas Basados en Computadoras
Un sistema basado en computadora utiliza una variedad de elementosn Softwaren Hardwaren Genten Base de datosn Documentaciónn Procedimientos
5
Sistemas Basados en Computadoras
Los elementos se combinan para transformar la información
n Convertir datos de ventas en perfiles de tipos de gente que compran un producto
n Un robot transforma un conjunto de instrucciones en un archivo en señales de control para realizar acciones
6
Sistemas Basados en Computadoras
Jerarquía de sistemas
n Un sistema puede formar parte de otro sistema en un nivel superior
n Ejemplo: Sistema de Automatización de una Fábrica
n Actividades genéricas en la parte superior de la jerarquía
7
Sistemas Basados en Computadoras
Sistema de Automatizaciónde una Fábrica
Sistema deManufactura
Sistema deInventario
Sistema deInformación
Sistema deMovimientode Material
Fabricaciónde Células
RobotsDispositivode Entradade Datos
Máquina deCrontrol
Numérico
8
Jerarquía de Ingeniería de Sistemas
Colección de métodos utilizados en la jerarquía
Vista global se refina a dominios
Vista de dominios se analiza para identificar elementos de sistema: datos, software, hardware, gente
9
Jerarquía de Ingeniería de Sistemas
Formalmente
n VG = {D1, D2, D3, ..., Dn}
n Dj = {E1, E2, E3, ..., En}
n Ej = {C1, C2, C3, ..., Cn}
10
Jerarquía de Ingeniería de Sistemas
Dominio deProducto o Negocio Vista Global
Dominio deInterés
Vista deDominio
Vista deElemento
Vista deDetalle
11
Modelado de Sistemas
Creación de modelos paran Definir un proceso para cubrir las necesidades de
la vista bajo consideraciónn Representar el comportamiento de los procesos y
cosas a asumir sobre las cuales se basa ese comportamiento
n Definir explícitamente las entradas endógenas y exógenas del modelo
n Representar todas las ligas que permitirán al ingeniero entender mejor la vista
12
Modelado de Sistemas
Consideracionesn Asumirn Simplificacionesn Limitacionesn Restriccionesn Preferencias
13
Ingeniería de Información
Definir arquitecturas que permitirán al negocio utilizar su información efectivamente.
Creación de un plan para implementar esas arquitecturasn Arquitectura de datosn Arquitectura de aplicacionesn Infraestructura de tecnología
14
Ingeniería de Información
Arquitectura de Datosn Provee estructura para las necesidades de
información del negociowObjetos de datosw Reusabilidadw Flujo de datos (funciones)
15
Ingeniería de Información
Arquitectura de Aplicaciónn Elementos del sistema que transforman
objetos de la arquitectura de datos para algún propósito del negociow Programas (SW)
16
Ingeniería de Información
Infraestructura de Tecnologían Provee las bases para las arquitecturas de
datos y aplicaciónwHW
n Computadoras, redes, ligas comunicación, tecnologías de almacenamiento, arquitectura (cliente-servidor)
w SW
17
Ingeniería de InformaciónOrganizaciónde Negocio Planeación Estratégica
de InformaciónVista Global
Área de Negocio Ánálisis de Áreade Negocio
Vista de Dominio
Área deNegocio
Requerimiento de Proceso
Diseño deSistema de NegocioVista de Elemento
Construcción eIntegración
Vista de Detalle
Ingenieríade
Software
Sistema deInformación
18
Ingeniería de Producto
Traducir los deseos de los clientes para un conjunto de capacidades en un producto trabajandoNecesita una arquitectura e infraestructuran Componentesw SWw HWw Datosw Gente
19
Ingeniería de Producto
Análisis de Sistemasn RequerimientoswNecesidades de información y controlw Funcionalidad y comportamiento del productowDesempeñowDiseñow Restricciones de interfazwNecesidades especiales
20
Ingeniería de Producto
Ingeniería de Componentesn Actividades concurrentes para cada
componente del sistemaw Ingeniería de Softwarew Ingeniería de Hardwarew Ingeniería de Recursos Humanosw Ingeniería de Bases de Datos
21
Ingeniería de Producto
Ingeniería (de software en nuestro caso)n Actividades de diseño y modeladon Actividades de construcción y diseño
22
Ingeniería de ProductoProductoCompleto Análisis del Sistema
Vista Global
Capacidades Ingeniería deComponentes
Vista de Dominio
Software
Requerimiento de Proceso
Modelado deAnálisis y DiseñoVista de Elemento
Construcción eIntegración
Vista de Detalle
Ingenieríade
Software
Función
Hardware
Datos Comportamiento
Componente deprograma
23
Ingeniería de Requisitos
¿Cómo podemos asegurar que hemos especificado un sistema que recoge las necesidades del cliente y satisface sus expectativas?
Ingeniería de requisitos ayuda a entender lo que el cliente quiere
24
Ingeniería de Requisitos
Pasos de la Ingeniería de Requisitosn Identificación de requisitosn Análisis de requisitos y negociaciónn Especificación de requisitosn Modelado del sisteman Validación de requisitos y Gestión de
requisitos
25
Ingeniería de Requisitos
Identificación de requisitosn Más difícil de lo que parecen Mediante entrevistasn Problemas (porqué la obtención de
requisitos es tan costosa)w Problemas de alcancew Problemas de comprensiónw Problemas de volatilidad
26
Ingeniería de Requisitos
Para obtener requisitos:n Valorar el impacto en el negocio y la
viabilidad técnica del sistema propueston Identificar personas que ayudan a
especificar requisitos y contrastar su papel en la organización
n Definir entorno técnico (arquitectura computadora, sistema operativo, comunicaciones) en el sistema o producto
27
Ingeniería de Requisitos
Para obtener requisitos:n Identificar restricciones de dominio
(características específicas del entorno del negocio en el dominio de la aplicación) que limiten la funcionalidad y rendimientos del sistema o producto a construir
n Definir métodos para obtención de requisitos (entrevistas, grupos de trabajo, equipos de discusión)
28
Ingeniería de Requisitos
Para obtener requisitos:n Solicitar participación de muchas personas para
que los requisitos se definan desde diferentes puntos de vista, asegurar identificar lo fundamental de cada requisito
n Identificar requisitos ambiguos como candidatos para el prototipado
n Crear escenarios de uso para ayudar a los clientes / usuarios a identificar mejor los requisitos fundamentales
29
Ingeniería de Requisitos
Análisis y negociación de requisitosn Agrupamos requisitos en categoríasn Estudiamos cada requisito en relación con
el restow consistenciaw completudw ambigüedad
n Clasificamos requisitos en base a necesidades del cliente/usuario
30
Ingeniería de Requisitos
Análisis de requisitos– Preguntasn ¿Cada requisito es consistente con los objetivos
generales del sistema/producto?n Requisitos especificados a nivel adecuado ¿nivel
de detalle técnico apropiado?n ¿Es requisito necesario?, ¿es esencial?n ¿Requisitos bien delimitados?, ¿ambigüedad?n ¿Cada requisito tiene procedencia?n ¿Existen requisitos incompatibles?n ¿Técnicamente es posible lograr los requisitos?n ¿Se pueden probar los requisitos implementados?
31
Ingeniería de Requisitos
Cosas comunes de los clientesn Piden más de lo que necesitann Proponen requisitos contradictorios
El ingeniero en sistemas resuelve estos problemas mediante negociaciónSe estima el impacto en costo de cada requisito y en plazo de entregaIterativamente se eliminan requisitos o se ajustan para lograr el objetivo planteado
32
Ingeniería de Requisitos
Especificación de requisitosn Documento escrito, combinado con descripciones
en lenguaje natural y modelos gráficosn Describe la función y características de un sistema
de computación y las restricciones que gobiernan su desarrollo
n Delimita cada elemento del sisteman Describe la información (datos y control) que
entra y sale del sistema
33
Ingeniería de Requisitos
Modelado del sistemaEl modelo debe mostrar y evaluar los componentes del sistema y sus relaciones entre siDeterminar si se reflejan los requisitosValorar la forma en que se ha concebido el sistema
34
Ingeniería de Requisitos
Validación de requisitosn Examina las especificaciones para asegurarwNo ambigüedadwNo inconsistenciaswNo omisionesw Errores hayan sido corregidosw Ajuste a estándares establecidos
n proceso, proyecto y producto
35
Ingeniería de Requisitos
Gestión de requisitosn Conjunto de actividades para identificar, controlar
y seguir los requisitos y los cambios en cualquier momento
n Los requisitos se identifican y se generan matrices para darles seguimientow Matriz de seguimiento de característicasw Matriz de seguimiento de orígenesw Matriz de seguimiento de dependenciasw Matriz de seguimiento de subsistemasw Matriz de seguimiento de interfaces
36
Ingeniería de Requisitos
Gestión de requisitosn Identificación de requisitosw F = requisito funcionalwD = requisito de datosw C = requisito de comportamientow I = requisito de interfazw S = requisito de salida
n F09 es el noveno requisito funcional
37
Ingeniería de Requisitos
TAREAEstudiar y resumir la sección 10.6 (Pressman) 5a edición: Modelado del Sistema. Lo van a utilizar en su proyecto ó la sección 10.7 (Pressman) 4a ediciónPoner su resumen en la página web