View
2.546
Download
0
Category
Preview:
DESCRIPTION
INGENIERIA DE SOFTWARE Y METODOLOGIAS DE DESARROLLO DE SOFTWARE TRADICIONAL, ORIENTADO A OBJETOS Y WEB
Citation preview
MAESTRIA EN TECNOLOGIAS DE INFORMACIÓNTECNOLOGÍAS DE LA INFORMACIÓN EN LAS ORGANIZACIONES
MTI. ROSA IMELDA GARCÍA CHI
UNIDAD 3. TECNOLOGÍA DE SOFTWARE
MTI. ROSY CHI
METODOLOGÍAS DE DESARROLLO DE SOFTWARE
TECNOLOGIA DE SOFTWARE
MTI. ROSY CHI
LOS SISTEMAS DE INFORMACIÓN Y LA INGENIERÍA DE SOFTWARE
REFLEXIÓN SOBRE SU RELACIÓN
MTI. ROSY CHI
¿Cómo se relacionan los Sistemas de Información y la Ingeniería de Software?
PARA CREAR UN SISTEMAS
INFORMACIÓN, QUE ES UN SOFTWARE
SE REQUIERE UN PROCESO DE
DESARROLLO DE SOFTWARE
ESE PROCESO DE DESARROLLO SE BASA
EN UNA METODOLOGIA
LAS METODOLOGIAS INVOLUCRAN TECNICAS
Y HERRAMIENTAS
GENERANDO CON ESTO UN PRODUCTO DE
SOFTWARE DE CALIDAD
QUE PUEDE SER MEDIDO CON MÉTRICAS
DE SOFTWARE
Y PROBADO CON PRUEBAS DE SOFTWARE
EN OTRAS PALABRAS PARA GENERAR
SISTEMAS DE INFORMACION
SE APLICA INGENIERÍA DE SOFTWARE
OBTENIENDO UN PRODUCTO DE
SOFTWARE: EL SISTEMA DE INFORMACIÓN
MTI. ROSY CHI
PROYECTO – PROCESO – PRODUCTO
PROYECTO
• PROCESO
PRODUCTO
• PRUEBAS DE CALIDAD
MTI. ROSY CHI
Entonces…
La ingeniería de software
Sistemas de Información
desarrolla (crea, produce)
MTI. ROSY CHI
ENTONCES, LOS SISTEMAS DE INFORMACIÓN SE DEFINEN DE LA SIGUIENTE MANERA
Sistemas + Información
MTI. ROSY CHI
Concepto de Sistemas
Concepto de
Información
Concepto de SISTEMA DE
INFORMACIÓN
MTI. ROSY CHI
Repasemos lo básico…
• “Un conjunto de cosas que ordenadamente relacionadas entre sí contribuyen a un determinado objetivo”• [DRAE, 1992]
CONCEPTO de Sistema
MTI. ROSY CHI
ELEMENTOS DE UN SISTEMALos componentes del sistema
Las relaciones entre ellos
La estructura del sistema
El objetivo del sistema
El entorno del sistema
Los límites del sistema
MTI. ROSY CHI
Enfoque Sistémico
Desde la perspectiva del Enfoque de sistemas
MTI. ROSY CHI
CONCEPTO DE INFORMACION
QUÉ ES DATO /
QUÉ ES INFORMACIÓN
MTI. ROSY CHI
DATO/INFORMACIÓN
DATO:
• Elemento o Item• Por ejemplo: 33, Lalo, 93.4, #45,
2013, Diciembre, 9AF3, casa, $1244.78, etc.
INFORMACIÓN:
• Conjunto de datos que tienen un significado• Por ejemplo: edad de Juan=18 años, precio de la
blusa=$345.00, promedio de Pedro=9.2, mes del año= Agosto, etc.
• Ejemplo: Información de un estudiante: su nombre, edad, promedio, carrera que cursa, su numero de control, etc.
MTI. ROSY CHI
PROPIEDADES DE LA INFORMACIÓN:
. Relevante
. Precisa
. Completa
. Adecuada
. Oportuna
. Nivel de detalle adecuado
. Comprensible
MTI. ROSY CHI
DEFINICIÓN DE SISTEMAS DE INFORMACIÓN (SI)
“Un conjunto formal de procesos que, operando sobre una colección de datos estructurada según las necesidades de la empresa, recopilan, elaboran y
distribuyen la información (o parte de ella) necesaria para las operaciones de dicha empresa y para las actividades de dirección y control correspondientes
(decisiones) para desempeñar su actividad de acuerdo a su estrategia de negocio”
(Andreu et al., 1999)
MTI. ROSY CHI
ELEMENTOS DE UN SISTEMA DE INFORMACIÓN
− Los procedimientos y las prácticas habituales de trabajo
− La información
− Las personas o usuarios
− El equipo de soporte
MTI. ROSY CHI
EL SISTEMA DE INFORMACIÓN Y SUS RELACIONES
MTI. ROSY CHI
LOS SISTEMAS DE INFORMACIÓN Y LA
ORGANIZACIÓN
MTI. ROSY CHI
ESTRUCTURA DE PIRAMIDE DE LA EMPRESA
R.H. R.F. VENTAS ALMACEN PRODUCCIÓN
MTI. ROSY CHI
El modelo de la Pirámide
EJEMPLO DE LOS DISTINTOS NIVELES DE DECISIÓN
EJEMPLO DE UN ORGANIGRAMA DE UN DEPARTAMENTO DE INFORMÁTICA
MTI. ROSY CHI
LOS CONCEPTOS DE SISTEMA DE INFORMACIÓN (SI), SISTEMA DE INFORMACIÓN AUTOMATIZADO (SIA) Y SISTEMA INFORMÁTICO
UN SISTEMA DE INFORMACIÓN AUTOMATIZADO Y UN SISTEMA INFORMÁTICO SON UN SOFTWARE
LOS CONCEPTOS DE SI, SIA Y SISTEMA INFORMÁTICO
PRINCIPALES SUBSISTEMAS DE UN SISTEMA DE INFORMACIÓN
MTI. ROSY CHI
PRINCIPALES SUBSISTEMAS DE UN SI− Subsistema de Recursos Humanos
• La gestión de la información relacionada con la plantilla• La ejecución de la nómina
− Subsistema de Gestión Comercial
• Las propias ventas• La función de comercialización• Sistema de Factuación
− Subsistema de Gestión Contable y Financiera
• Sistema Contable de la empresa• Sistema de Pago de Impuestos
− Subsistema de Control de Almacén
• Sistema de Control de Inventario• Sistema de Proveedores
− Otros Subsistemas
• Sistemas de automatización de oficinas• Sistemas de producción
MTI. ROSY CHI
CLASIFICACIÓN DE LOS SI
− Sistema de Información para la Gestión (MIS)
− Sistemas de Apoyo a las
Decisiones (DSS)
− Sistema de Información para Ejecutivos (EIS)
− Sistemas de Procesamiento
de Transacciones
MTI. ROSY CHI
Ingeniería de Software
Unidad 2. Metodologías de Desarrollo de Software
Ingeniería de Software: una tecnología estratificada
• La ingeniería de software es el establecimiento y uso de principios robustos de la ingeniería a fin de obtener económicamente software que sea fiable y que funcione eficientemente sobre máquinas reales.
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
MTI. ROSY CHI
El IEEE [IEE93] ha desarrollado una definición más completa:
Ingeniería del software:
La aplicación de un enfoque sistemático, disciplinado y
cuantificable hacia el desarrollo, operación y
mantenimiento del software; es decir, la aplicación de ingeniería al software.
MTI. ROSY CHI
La ingeniería de Software es una tecnología multicapa
cualquier enfoque de ingeniería de software debe descansar sobre un empeño de organización de calidad.
MTI. ROSY CHI
La ingeniería de software sigue una tecnología multicapa y estratificada:
Un enfoque de Calidad
Proceso
Métodos
Técnicas yHerramientas
MTI. ROSY CHI
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Proceso Metodología
TareaProcedimiento
Técnica
Herramienta
Producto o entregable
CONCEPTOS GENERALES
MTI. ROSY CHI
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Resultado de cada etapa.
Producto o entregable:
Para realizar una técnica,
podemos apoyarnos
en las herramienta
s software que
automatizan su
aplicación.
Herramienta:
Herramienta utilizada
para aplicar un
procedimiento. Se
pueden utilizar una o
varias.
Técnica:
Definición de la forma de ejecutar la
tarea.
Procedimiento:
Actividades elementales
en que se dividen los
procesos.
Tarea:
Conjunto de procedimiento
s técnicas, herramientas y
un soporte documental que ayuda a
los desarrolladore
s a realizar nuevo
software.
Metodología:
Colección de tareas de
trabajo interrelacionadas, iniciadas en respuesta a un
evento, que permiten
alcanzar un resultado
específico y entregar un producto al
cliente
Proceso:
CONCEPTOS GENERALES
MTI. ROSY CHI
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Actividades elementales en que se dividen los procesos.
Tarea:
Conjunto de procedimientos técnicas, herramientas y un soporte documental
que ayuda a los desarrolladores a realizar nuevo software.
Metodología:
Colección de tareas de trabajo interrelacionadas, iniciadas en
respuesta a un evento, que permiten alcanzar un resultado específico y
entregar un producto al cliente
Proceso:
CONCEPTOS GENERALES
MTI. ROSY CHI
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Resultado de cada etapa.
Producto o entregable:
Para realizar una técnica, podemos apoyarnos en las
herramientas software que automatizan su
aplicación.
Herramienta:
Herramienta utilizada para aplicar un
procedimiento. Se pueden utilizar una o
varias.
Técnica:
Definición de la forma de ejecutar la tarea.
Procedimiento:
CONCEPTOS GENERALES
MTI. ROSY CHI
Ahora definamos:
•Enfoque de calidad•Proceso•Métodos•Técnicas y Herramientas
Ingeniería de Software
MTI. ROSY CHI
ENFOQUE DE CALIDAD
INGENIERÍA DE SOFTWARE
MTI. ROSY CHI
EXISTEN TRES ENFOQUES DE LA INGENIERÍA DE SOFTWARE
Ingeniería de Software Tradicional
Ingeniería de Software Orientada a Objetos
Ingeniería de Software Web
MTI. ROSY CHI
Estos tres enfoques dan soporte a la Ingeniería de Software
Para obtener un producto de software de calidad, es necesario medirlo.
En la I
nge
niería
de s
oft
ware existe
n las
métricas
para
me
dir el s
oft
ware y
deter
mi
nar si c
umple c
on las características
de cali
da
d.
Las métricas varían según el Modelo de Calidad que se utilice.
Todo lo que se mide
Se controla
Si se controla
Se verifica
Si se verificaSe puede corregir o entregar
Si se entrega un producto con
características de calidad
Hemos cumplido el objetivo
Crear un Producto de Sw con calidad
Calidad de Software
MTI. ROSY CHI
CADA UNO DE LOS ENFOQUES DE LA INGENIERÍA DE SOFTWARE SE
BASA EN LA CALIDAD
Por lo que es necesario adoptar
un modelo de calidad
MTI. ROSY CHI
En cuanto a la calidad del software
Se tienen varios modelos de Calidad de Sw
CMM
ISO 9000
TICKIT
NMX-059/01-NYCE-2005
MTI. ROSY CHI
CMM (Modelo de Capacidad de Madurez)
El SEI (Software Engineering Insitute)
•establece cinco niveles de madurez del proceso en el modelo CMM:
Nivel 1: Inicial
Nivel 2: Repetible
Nivel 3: Definido
Nivel 4: Gestionado
Nivel 5: Optimización
MTI. ROSY CHI
Modelo de Madurez del Software CMM
•El proceso del software se caracteriza según el caso, y ocasionalmente de forma caótica. Se definen pocos procesos y el éxito depende del esfuerzo individual
Nivel 1: Inicial
•Se establecen los procesos de gestión del proyecto para hacer seguimiento al coste, de la planificación y de la funcionalidad.
Nivel 2: Repetible
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
•El proceso del software de las actividades de gestion y de ingeniería se documenta se estandariza y se integra dentro de un proceso de software a toda organización
Nivel 3: Definido
•Se recopilan medidas detalladas del proceso del software y de la calidad del producto mediante la utilización de medidas detalladas, se comprenden y se controlan cuantitativamente tanto los productos como el proceso del software
Nivel 4: Gestionado
•mediante un resultado cuantitativo del proceso y de las ideas tecnologicas innovadoras se posibilita una mejora del proceso
Nivel 5: Optimización
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
MTI. ROSY CHI
CMM Vs MOPROSOFT
El modelo CMM se adapta bien a productos de software de gran escala.
¿pero que pasa con los software de pequeña y mediana escala?
En México el desarrollo de software se orienta a las Pymes
Por tal razón, adoptar el modelo Mexicano de la calidad de Software resulta útil
MOPROSOFTLa Norma Mexicana Moprosoft (NMX-059/01-NYCE-2005) es un modelo de procesos autorizado y promovido por el gobierno mexicano, que divide el proyecto en cuatro fases:
MTI. ROSY CHI
Se recomienda adoptar un modelo de calidad de software que oriente el proceso de desarrollo del sw
Modelo de Calidad del Software
MTI. ROSY CHI
PROCESOS
INGENIERÍA DE SOFTWARE
MTI. ROSY CHI
Un proceso software es:
• Un conjunto coherente de políticas, estructuras organizacionales, tecnologías, procedimientos y artefactos que son necesarios para concebir, desarrollar, instalar y mantener un producto software.
• (Fugetta, 2000)
MTI. ROSY CHI
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
A los Proceso de la Ingeniería de Software
se les conoce como
Ciclo de vida del Software
• Unidad 2. Metodologías de Desarrollo de software
El fundamento de la Ingeniería de Software
es la capa de proceso
porque es la unión que mantiene juntas las capas de tecnología y que permite un desarrollo racional y oportuno de la ingeniería de software
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Proceso:
El Proceso del Software
• Se establece un marco común del proceso definiendo un pequeño numero de actividades del marco de trabajo que son aplicables a todos los proyectos del Software, con independencia de su tamaño y o complejidad
Marco de trabajo del proceso común
Actividades de protección
Actividades del marco de trabajo
Conjunto de tareasTareas
Hitos, estrategias
Puntos SQA
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Modelos de proceso de software
• Para resolver los problemas reales de una industria, un ingeniero en Sistemas Computacionales o un Ingeniero de software o un equipo de ingenieros debe incorporar una estrategia de desarrollo que acompañe al proceso, métodos, capas de herramientas y las faces genéricas.
Esta estrategia a menudo se llama modelo de proceso o paradigma de ingeniería de software o ciclo de vida.
• Todo el desarrollo del software se puede caracterizar como un bucle de resolución de problemas en el que se encuentran cuatro etapas distintas
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHIITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Definición de Problemas
Integración de soluciones
Desarrollo TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHIITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Faces de un bucle de resolución de problemas
•Representa el estado actual de sucesosStatus quo:
•Identifica el problema especifico a resolverse
Definición de problemas:
•Resuelve el problema a través de la aplicación de alguna tecnología.
Desarrollo técnico:
•ofrece los resultados p. Ej.: documentos, programas, datos, nueva función comercial, producto nuevo.
Integración de soluciones:
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHIITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Faces de un bucle de resolución de problemas
Status quo
Definición de Problemas
Integración de soluciones
Desarrollo TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
Definición de Problemas
Integración de soluciones
Desarrollo TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
Status quo
Definición de Problemas
Integración de solucio
nes
Desarrollo
TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
Definición de Problemas
Integración de solucio
nes
Desarrollo
TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
Definición de Problemas
Integración de solucio
nes
Desarrollo
TécnicoStatus quo
Faces de un buclede resolución de
problemas (RAC 95)
Faces dentro de las faces del bucle de resolución de problemas. (RAC95)
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Faces dentro de las faces del bucle de resolución de problemas. (RAC95)
El bucle de resolución
descrito anteriormente
se aplica al trabajo de
ingeniería de software en
muchos niveles diferentes de resolución.
Se puede utilizar en el macro nivel cuando se tiene en
consideración la aplicación entera; en un nivel medio cuando se
están considerando
los componentes del programa.
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
MTI. ROSY CHI
Proceso = Modelo = Ciclo de Vida del Sw
• Los Procesos de Desarrollo de Software
modelo de proceso
paradigma de ingeniería del software
MTI. ROSY CHI
LOS MODELOS SON
DESDE LOS TRES ENFOQUES DE INGENIERÍA DE SOFTWARE
MTI. ROSY CHI
MODELOS
ENFOQUE TRADICIONAL
• Modelo Clásico (Lineal, Tradicional, Cascada, Secuencial)• Modelo Prototipos• Modelo Espiral• Modelo DRA• Modelo Incremental
ENFOQUE ORIENTADO OBJETOS
• Modelo basado en componentes• Modelo de Métodos Formales
ENFOQUE IWEB
• Modelo Iweb
MTI. ROSY CHI
LOS MODELOS SIGUEN UN PROCESO
PLANEAR/ANALIZAR
DISEÑAR
IMPLEMENTAROPERAR
EVALUAR
MTI. ROSY CHI
ENFOQUE TRADICIONAL o ENFOQUE CLÁSICO o ENFOQUE ESTRUCTURADO
MODELOS
MTI. ROSY CHI
TODOS LOS MODELOS DEL ENFOQUE TRADICIONAL SE BASAN:
MODELO DE ANÁLISIS
MODELO DE DISEÑO
MTI. ROSY CHI
MODELO DE ANALISIS Y MODELO DE DISEÑO DE LA INGENIERÍA DE SOFTWARE TRADICIONAL
I. Especificación de procesos • a. Diagrama de flujo de datos
II. Especificación de control • a. Diagrama de transición de datos
III. Descripción de objetos de datos • a. Diagrama entidad-relación • b. Diccionario de datos
1. Análisis del
sistema
I. Diseño de datos
II. Diseño arquitectónico
III. Diseño de interfaz
IV. Diseño a nivel de componentes
2. Diseño de sistemas
MTI. ROSY CHI
MODELO TRADICIONAL
SE CONOCE TAMBIEN
LINEAL
SECUENCIAL
CLASICO
CASCADA
MODELO EN CASCADA
MODELO EN CASCADA
MTI. ROSY CHI
MODELO EN CASCADA
• CRITICAS:No refleja realmente el proceso de desarrollo del softwareSe tarda mucho tiempo en pasar por todo el cicloPerpetua el fracaso de la industria del software en su comunicación con el usuario finalEl mantenimiento se realiza en el código fuenteLas revisiones de proyectos de gran complejidad son muy difícilesImpone una estructura de gestión de proyectos
MTI. ROSY CHI
MODELO PROTOTIPOS
MTI. ROSY CHI
MODELO DE PROTOTIPO
No modifica el flujo del ciclo de vidaReduce el riesgo de construir productos que no satisfagan las necesidades de los usuariosReduce costos y aumenta la probabilidad de éxitoExige disponer de las herramientas adecuadasNo presenta calidad ni robustezUna vez identificados todos los requisitos mediante el prototipo, se construye el producto de ingeniería.
MTI. ROSY CHI
EL PROTOTIPADO PARA QUE SEA EFECTIVO:
Debe ser un sistema con el que se pueda experimentar
Debe ser comparativamente barato (< 10%)Debe desarrollarse rápidamenteEnfasis en la interfaz de usuarioEquipo de desarrollo reducidoHerramientas y lenguajes adecuados“El prototipado es un medio excelente para
recoger el ‘feedback’ (realimentación) del usuario final”
MTI. ROSY CHI
EL PROTOTIPADO EVOLUTIVO
Construcción de una implementación parcial que cubre los requisitos conocidos, para ir aprendiendo el resto y, paulatinamente, incorporarlos al sistema
Reduce el riesgo y aumenta la probabilidad de éxitoNo se conocen niveles apropiados de calidad y
documentaciónProblemas de gestión de configuraciónConstruir software para que pueda ser modificado
fácilmente es un “arte desconocido”
MTI. ROSY CHI
MODELO ESPIRAL
MTI. ROSY CHI
MODELO ESPIRAL
PLANIFICACIÓN ANÁLISIS DE RIESGO
EVALUACIÓN DEL CLIENTE INGENIERÍA
MTI. ROSY CHI
MODELO EN ESPIRAL
Trata de mejorar los ciclos de vida clásicos y prototipos.Permite acomodar otros modelos Incorpora objetivos de calidad y gestión de riesgosElimina errores y alternativas no atractivas al comienzoPermite iteraciones, vuelta atrás y finalizaciones rápidasCada ciclo empieza identificando:
Los objetivos de la porción correspondiente Las alternativas Restricciones
Cada ciclo se completa con una revisión que incluye todo el ciclo anterior y el plan para el siguiente
MTI. ROSY CHI
MODELO EN ESPIRAL
Diferencias entre modelo en espiral y demás modelos tradicionales
• Reconocimiento explícito de las diferentes alternativas.• Identificación de riesgos para cada alternativa desde el comienzo.• Al dividir el proyecto en ciclos, al final de cada uno existe un acuerdo para los
cambios que hay que realizar en el sistema.• El modelo se adapta a cualquier tipo de actividad adicional
MTI. ROSY CHI
Modelo DRA
MTI. ROSY CHI
Modelo Incremental
MTI. ROSY CHI
MODELO INCREMENTAL
Se evitan proyectos largos y se entrega “Algo de valor” a los usuarios con cierta frecuenciaEl usuario se involucra másDifícil de evaluar el coste totalDifícil de aplicar a sistemas transaccionales que tienden a ser integrados y a operar como un todoRequiere gestores experimentadosLos errores en los requisitos se detectan tarde.El resultado puede ser muy positivo
MTI. ROSY CHI
ENFOQUE ORIENTADO A OBJETOS
MODELOS
MTI. ROSY CHI
MODELO DE ANALISIS Y DISEÑO DEL ENFOQUE ORIENTADO A OBJETOS
MTI. ROSY CHI
Modelo basado en componentes
MTI. ROSY CHI
LA REUTILIZACION EN EL CICLO DE VIDA
MTI. ROSY CHI
…LA REUTILIZACION EN EL CICLO DE VIDA
MTI. ROSY CHI
…LA REUTILIZACION EN EL CICLO DE VIDA
MTI. ROSY CHI
Modelo de Métodos Formales
MTI. ROSY CHI
Métodos Formales y Síntesis Automática del Software
• Se define el sistema utilizando un lenguaje formal• La implementación es automática, asistida por elordenador• La documentación se genera de forma automática• El mantenimiento se realiza “por sustitución” no
mediante “parches”• Dificultad en la participación del usuario• Diseños poco optimizados
MTI. ROSY CHI
ENFOQUE INGENIERIA WEB
MODELOS
MTI. ROSY CHI
Modelo Iweb
MTI. ROSY CHI
LOS MÉTODOS SON
DESDE LOS TRES ENFOQUES
Indican como construir técnicamente el software los métodos abarcan una gran gama de tareas que incluyen:
• Análisis de requisitos• Diseño • Construcción de programas • Pruebas • Mantenimiento
Estos dependen de un conjunto de principios básicos que gobiernan cada área de la tecnología.
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
Métodos:
MTI. ROSY CHI
METODOLOGÍA Vs CICLO DE VIDA
MTI. ROSY CHI
CARACTERISTICAS DESEABLES DE UNA METODOLOGIA
☺ Existencia de reglas predefinidas ☺ Cobertura total del ciclo de desarrollo ☺ Verificaciones intermedias ☺ Planificación y control ☺ Comunicación efectiva ☺ Utilización sobre un abanico amplio de proyectos ☺ Fácil formación ☺ Herramientas CASE ☺ Actividades que mejoren el proceso de desarrollo ☺ Soporte al mantenimiento ☺ Soporte de la reutilización de software
MTI. ROSY CHI
GENERACIONES DE METODOLOGÍADesarrollo Convencional (Sin Metodología)
Desarrollo Web
Desarrollo Ágil
Desarrollo en Tiempo Real
MTI. ROSY CHI
CLASIFICACION DE LAS METODOLOGIAS
Metodologías Estructuradas
• Orientadas a Procesos• Orientadas a datos
• Jerárquicas• No Jerárquicas
• Mixtas
Metodologías Orientadas a Objetos
Metodologías de Aplicaciones Web
Metodologías Ágiles
Metodologías para Sistemas de Tiempo Real
MTI. ROSY CHI
DESARROLLO CONVENCIONAL
Los resultados finales son impredeciblesNo hay forma de controlar lo que está sucediendo en el ProyectoLos cambios organizativos afectan negativamente al proceso de desarrollo
MTI. ROSY CHI
En el desarrollo convencional…
• Prácticamente el programador se sienta a resolver el problema sobre la marcha, no existe ninguna “metodología”
MTI. ROSY CHI
DESARROLLO ESTRUCTURADO
Análisis estructurado
Es pecificaciones funcionales:
GráficasParticionadasMínimamente redundantesGráficasParticionadasMínimamente redundantesGráficas
Particionadas
Mínimamente redundantes
RELACION HISTORICA DE LAS PRINCIPALES METODOLOGIAS ESTRUCTURADAS
MTI. ROSY CHI
DESARROLLO ORIENTADO AL OBJETO
La esencia del desarrollo
orientado a objetos es la identificación y organización de
conceptos del dominio de la
aplicación
y no tanto de su
representación final en un lenguaje de
programación.
MTI. ROSY CHI
CONSIDERACIONES SOBRE MODELOS OO
Se eliminan fronteras entre fases debido a la naturaleza iterativa del desarrollo orientado al objeto.
Aparece una nueva forma de concebir los lenguajes de programación y su uso al incorporarse bibliotecas de clases y otros componentes reutilizables.
Hay un alto grado de iteración y solapamiento, lo que lleva a una forma de trabajo muy dinámica.
MTI. ROSY CHI
ASPECTOS POSITIVOS DE LAS METODOLOGÍAS OO
Son interactivas e incrementales.
Fácil de dividir el sistema en varios
subsistemas independientes.
Se fomenta la reutilización de componentes.
MTI. ROSY CHI
DESARROLLO WEB
En esta metodología se destaca el Diseño De Contenido el cual incluye
• Diseño Arquitetónico• Diseño Navegacional• Diseño de Interfaz
Obteniendo un Producto:
• una aplicación web
MTI. ROSY CHI
DESARROLLO ÁGIL
Cada iteración del ciclo de vida incluye: planificación, análisis de requerimientos, diseño, codificación, revisión y documentación.
Una iteración no debe agregar demasiada funcionalidad para justificar el lanzamiento del producto al mercado, pero la meta es tener una «demo» (sin errores) al final de cada iteración.
Al final de cada iteración el equipo vuelve a evaluar las prioridades del proyecto.
MTI. ROSY CHI
Los métodos ágiles enfatizan las comunicaciones cara a cara en vez de la documentación.
La mayoría de los equipos ágiles están localizados en una simple oficina abierta, a veces llamadas "plataformas de lanzamiento" (bullpen en inglés).
La oficina debe incluir revisores, escritores de documentación y ayuda, diseñadores de iteración y directores de proyecto.
MTI. ROSY CHI
Los métodos ágiles también enfatizan que el software funcional es la primera medida del progreso.
Combinado con la preferencia por las comunicaciones cara a cara, generalmente los métodos ágiles son criticados y tratados como "indisciplinados" por la falta de documentación técnica.
MTI. ROSY CHI
Del ENFOQUE que se elija para desarrollar el sistema de información dependerá la metodología a utilizar
Algunas metodologías
MTI. ROSY CHI
ENFOQUE TRADICIONAL
METODOLOGÍAS
MTI. ROSY CHI
METODOLOGÍAS PARA INGENIERIA DE SOFTWARE TRADICIONAL
GANE & SARSON
SSADM/ IDEFO
DeMarco/ Yourdon
Métrica V2 Métrica V3
MoProSoft
MTI. ROSY CHI
ENFOQUE ORIENTADO A OBJETOS
METODOLOGÍAS
MTI. ROSY CHI
METODOLOGÍAS PARA INGENIERIA DE SOFTWARE OO
UML Métrica V2
Métrica V3
MoProSoft
MTI. ROSY CHI
METODOLOGIAS EN LA IOO
Metodologías dirigidas por los datos (data-driven)
• OMT (Rumbaugh et al. 1991)• FUSION (Coleman et al. 1994)
Metodologías dirigidas por las responsabilidades (responsability-driven)
• RDD (Wirfs-Brock et al. 1990)• OBA (Rubin y Goldberg 1992)
Metodologías dirigidas por los casos de uso (use case-driven)
• OOSE (Jacobson et al. 1992)
Metodologías dirigidas por estados (state-driven)
Metodología de Shlaer y Mellor 1992)
MTI. ROSY CHI
ENFOQUE WEB
METODOLOGÍAS
MTI. ROSY CHI
METODOLOGÍAS PARA INGENIERIA DE SOFTWARE WEB
UML Métrica V2
Métrica V3
MoProSoft
MTI. ROSY CHI
METODOS AGILES
METODOLOGÍAS
MTI. ROSY CHI
Algunos métodos ágiles de desarrollo de software:
Adaptive Software Development (ASD).
Agile Unified Process (AUP).
Crystal Clear.
Essential Unified Process (EssUP).
Feature Driven Development (FDD).
Lean Software Development (LSD).
Kanban.
Open Unified Process (OpenUP).
Programación Extrema (XP).
Método de desarrollo de sistemas dinámicos (DSDM).
Scrum.
G300 (o también llamada del 300%).
MTI. ROSY CHI
METODOLOGIAS PARA SISTEMAS DE TIEMPO REAL
METODOLOGÍAS
MTI. ROSY CHI
METODOLOGIAS PARA SISTEMAS DE TIEMPO REAL
Manejo de interrupcionesComunicación y sincronización entre tareasGestión de procesos concurrentesRespuesta oportuna ante eventos externosDatos continuos o discretosSe está produciendo una evolución de las
metodologías orientadas a objetos para desarrollos de sistemas de tiempo real
MTI. ROSY CHI
METODOLOGIA MERISE
METODOLOGIA SSADM
METODOLOGIA METRICA
METODOLOGIAS PARA SISTEMAS DE TIEMPO REAL
MTI. ROSY CHI
METODOLOGIA MERISE
Fases de la Metodología:
• Estudio Preliminar• Estudio Detallado• Implementación• Realización y puesta en marcha
METODOLOGIA SSADM
MTI. ROSY CHI
METODOLOGIA METRICA
FASE 0: Plan de Sistemas de Información
FASE 1: Análisis de Sistemas
FASE 2: Diseño de Sistemas
FASE 3: Construcción de
Sistemas
FASE 4: Implantación de
Sistemas
MTI. ROSY CHI
HERRAMIENTAS
PARA LOS TRES ENFOQUES
Herramientas:
• Estas proporcionan un soporte semi-automático para el proceso y para los métodos. • Cuando se integran herramientas para que la información creada por una herramienta la
pueda utilizar otra, se establece un sistema de soporte para el desarrollo del software llamado ingeniería de software asistida por computadora (CASE) combina software, hardware y una base de datos de ingeniería de software.
ITV-DSyC-INGENIERIA DE SOFTWARE- UNIDAD 2 - ING. ROSA IMELDA GARCIA CHI
MTI. ROSY CHI
Herramientas de Desarrollo de Software
VISIO
CONCEPTDRAW
DIA
EASY CASE
STUDIO CASEFLOW CHARTING
RATIONAL ROSE
PRIMAVERA
EDRAW
MTI. ROSY CHI
Se puede resumir…
ENFOQUEIngeniería de Software
Tradicional
Ingeniería de Software Orientada
a Objetos
Ingeniería de Software Web
PROCESO
Basado en componentes
Métodos Formales Modelo IWeb
METODOS
GANE & SARSON
SSADM/ IDEFO
DeMarco/ Yourdon
Métrica V2
Métrica V3
MoProSoft
UML
Métrica V2
Métrica V3
MoProSoft
OMT (Rumbaugh et al. 1991)
FUSION (Coleman et al. 1994)
RDD (Wirfs-Brock et al. 1990)
OBA (Rubin y Goldberg 1992)
OOSE (Jacobson et al. 1992)
UML
Métrica V2
Métrica V3
MoProSoft
HERRAMIENTAS
VISIO
CONCEPTDRAW
DIA
EASY CASE
STUDIO CASEFLOW CHARTING
RATIONAL ROSE
PRIMAVERA
EDRAW
MTI. ROSY CHI
GRACIAS POR SU ATENCIÓN
Unidad 2. Metodología de desarrollo de software
Recommended