la importancia del_modelado_en_la_producción_de_sw_vf

32
Dr. Carlos Arias Méndez (UNPA - UMAG) Ing. Silvia Gabriela Rivadeneira (UNPA) Ing. Juan Enrique Fontana (UNPA) Ángel G. Páez (Estudiante Analista de Sistemas) Claudio R. Monserrat (Estudiante Analista de Sistemas) Del 11 al 22 De Junio. Río Turbio. SANTA CRUZ

Upload: universidad-nacional-de-la-patagonia-austral

Post on 10-Jul-2015

490 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: La importancia del_modelado_en_la_producción_de_sw_vf

Dr. Carlos Arias Méndez (UNPA - UMAG)

Ing. Silvia Gabriela Rivadeneira (UNPA)

Ing. Juan Enrique Fontana (UNPA)

Ángel G. Páez (Estudiante Analista de Sistemas)

Claudio R. Monserrat (Estudiante Analista de

Sistemas)

Del 11 al 22 De Junio. Río Turbio. SANTA CRUZ

Page 2: La importancia del_modelado_en_la_producción_de_sw_vf

• 1. m. Arquetipo o punto de referencia para imitarlo o reproducirlo.

• 2. m. En las obras de ingenio y en las acciones morales, ejemplar que por su perfección se debe seguir e imitar.

• 3. m. Representación en pequeño de alguna cosa.

• 4. m. Esquema teórico, generalmente en forma matemática, de un sistema o de una realidad compleja, como la evolución económica de un país, que se elabora para facilitar su comprensión y el estudio de su comportamiento.

• 5. m. Objeto, aparato, construcción, etc., o conjunto de ellos realizados con arreglo a un mismo diseño. Auto modelo 1976. Lavadora último modelo.

• 6. m. Vestido con características únicas, creado por determinado modista, y, en general, cualquier prenda de vestir que esté de moda.

• 7. m. En empresas, u. en aposición para indicar que lo designado por el nombre anterior ha sido creado como ejemplar o se considera que puede serlo. Empresa modelo. Granjas modelo.

• 8. m. Esc. Figura de barro, yeso o cera, que se ha de reproducir en madera, mármol o metal.

• 9. m. Cuba. impreso (‖ hoja con espacios en blanco).

• 10. com. Persona de buena figura que en las tiendas de modas se pone los vestidos, trajes y otras prendas para que las vean los clientes.

• 11. com. Esc. y Pint. Persona u objeto que copia el artista.• Diccionario de la Real Academia Española.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"2

Page 3: La importancia del_modelado_en_la_producción_de_sw_vf

• Booch, Rumbaugh y Jacobson (2006) establecen que un

modelo es una simplificación de la realidad, que

modelamos para comprender mejor el sistema que

estamos desarrollando, y agregan que cuando el

sistema se complejiza, el modelado se vuelve muy

importante ya que si no lo construimos no podemos

comprender el sistema en su totalidad.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"3

Page 4: La importancia del_modelado_en_la_producción_de_sw_vf

• Para comprender el sistema actual.

• Para conceptualizar la solución.

• Para mejorar la comunicación.

• Para evitar ambigüedades e interpretaciones erróneas.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"4

Page 5: La importancia del_modelado_en_la_producción_de_sw_vf

• Atómicos, Matemáticos, Económicos, Educativos,

Pedagógicos, y otros.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"5

Page 6: La importancia del_modelado_en_la_producción_de_sw_vf

• Programas de computadora, procedimientos,

documentación posiblemente asociada y datos en

relación con la operación de un sistema de computadora

(IEEE Std 610.12-1990).

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"6

Page 7: La importancia del_modelado_en_la_producción_de_sw_vf

• Objetivos:

• Dada una necesidad, pretende satisfacerla a través de una

solución software.

• Mantenimiento del software producido hasta el final de su vida útil.

• La solución de un problema mediante ingeniería de

software es una actividad de modelización que comienza

con el desarrollo de modelos conceptuales (no formales)

y los convierte en modelos formales (producto software).

• Modelo conceptual determina la validez ¿es válido para ese

problema?

• Modelo formal determina la corrección ¿funciona correctamente el

modelo?

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"7

Page 8: La importancia del_modelado_en_la_producción_de_sw_vf

• Análisis y Especificación de Requerimientos ¿Qué

hacer?

• Diseño ¿Cómo lo hacemos?

• Codificación hacerlo

• Pruebas probarlo

• Instalación usarlo

• Mantenimiento cuidarlo

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"8

Page 9: La importancia del_modelado_en_la_producción_de_sw_vf

• Necesidad

Obtención de requerimientos

• Especificación de requerimientos

Diseñar el sistema • Diseño

Programar el código

• Código

Probar el sistema • Sistema o

Producto Software

Instalación

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"9

Page 10: La importancia del_modelado_en_la_producción_de_sw_vf

• Un ciclo de vida debe:

• Determinar el orden de las fases del proceso software.

• Establecer los criterios de transición entre fases.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"10

Page 11: La importancia del_modelado_en_la_producción_de_sw_vf

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"11

Page 12: La importancia del_modelado_en_la_producción_de_sw_vf

• No existe un único ciclo de vida. Existen muchas

aplicaciones para las que se construyen productos

software.

• El problema es conocido y pequeño, el grupo tiene experiencia en

esos desarrollos, el usuario puede describir claramente los

requisitos, un ciclo de vida tradicional en cascada es adecuado.

• El problema es complejo o medianamente complejo, los

requerimientos cambiantes, conlleva riesgos, conviene utilizar

combinaciones por ejemplo iterativos e incremental. Donde a cada

iteración o incremento se aplica el ciclo de vida tradicional en

cascada.

• El desarrollo tiene riesgos, el ciclo en espiral es más adecuado.

• Probar el producto al usuario para mostrar su utilidad podemos

usar el prototipado.PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"12

Page 13: La importancia del_modelado_en_la_producción_de_sw_vf

Desde la década del 60 hasta nuestros días

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"13

Page 14: La importancia del_modelado_en_la_producción_de_sw_vf

60 – 70 Artesanía

Código espagueti

Artesanía del software

70 – 80 Cascada

Métodos estructurados

Procesos cascada

80 – 90 Productividad

Métodos orientados a objetos

Medición de productividad y calidad

Nace el concepto de fábrica de software

90 – 00 Procesos

concurrentes

Arquitecturas de software especializadas

por dominio. Reutilización por línea

de producto.

Reutilización basada en flexibilidad de

componentes. Líneas de producto.

Modelos de madurez.

Entornos integrados (CASE)

00 – 10 Agilidad

Arquitecturas orientadas a servicios.

Métodos ágiles de desarrollo.

Afianzamiento en reutilización por línea de producto y modelo

de madurez.

Actualidad Integración

Global

Conectividad global.

Arquitectura empresarial.

Computación en la nube.

Equipos de trabajo distribuidos.

Métodos colaborativos con asistencias de

Groupware.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"14

Page 15: La importancia del_modelado_en_la_producción_de_sw_vf

• Un servicio es una funcionalidad (ofrecida por una entidad y que satisface una necesidad de una entidad solicitante) y no la forma en que dicha funcionalidad es implementada en el sistema. Es una entidad autónoma.

• Se basa en el paradigma de computación orientada a servicios.

• Utiliza un conjunto de servicios para dar soporte a los requisitos de determinados procesos de negocio de una determinada organización.

• No está unida a una plataforma o tecnología concreta, se puede usar por ejemplo Servicios Web.

• Ejemplos

• Sistemas que comparten información médica.

• Sistemas de reservas.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"15

Page 16: La importancia del_modelado_en_la_producción_de_sw_vf

• Promueve iteraciones en el desarrollo a lo largo de todo el

ciclo de vida del proyecto.

• La mayoría minimiza riesgos desarrollando software en cortos

lapsos de tiempo. El software desarrollado en una unidad de

tiempo es llamado una iteración, la cual debe durar de una a

cuatro semanas.

• 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 un demo (sin errores) al final de cada iteración.

• Al final de cada iteración el equipo vuelve a evaluar las

prioridades del proyectoPI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"16

Page 17: La importancia del_modelado_en_la_producción_de_sw_vf

• DSD o desarrollo distribuido de software permite que

stakeholders no estén en un mismo lugar físico. Cuando

la lejanía incluye países distintos se denomina Desarrollo

Global de Software (GSD).

• Si los stakeholders no pertenecen a la misma

organización se denomina tercerización (outsourcing).

• Si se transfieren empleos a otro país se denomina

deslocalización (offshoring).

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"17

Page 18: La importancia del_modelado_en_la_producción_de_sw_vf

• También denominado servicios en la nube.

• Paradigma que permite ofrecer servicios de computación

a través de internet.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"18

Page 19: La importancia del_modelado_en_la_producción_de_sw_vf

Arquitectura versus Complejidad

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"19

Page 20: La importancia del_modelado_en_la_producción_de_sw_vf

Desarrollo

Basado en

la Arquitectura

•Importancia de modelos de alto nivel que luego se refinan

•Desarrollo basado en interfaces antes que clases

•Uso de patrones y tácticas de arquitectura

•Estimar esfuerzo de construcción

•Plan de construcción de los CU según su

impacto en la arquitectura

•Nuevos esquemas de negociación del proyecto

•Nuevos esquemas de interacción cliente/proveedor

•La arquitectura como elemento para evaluar

riesgos

•Medición de la calidad “sobre

planos”

•Adopción de frameworks de

atributos de calidad

En la ingeniería

En la gestión del proyecto En la calidad del producto

Page 21: La importancia del_modelado_en_la_producción_de_sw_vf

PhasesProcess Workflows

Supporting Workflows

ManagementEnvironment

Business Modeling

Implementation

Test

Analysis & Design

Preliminary Iteration(s)

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#n

Iter.#n+1

Deployment

Configuration Mgmt

Requirements

Elaboration TransitionInception Construction

•Especificación precisa de requisitos no funcionales

•Pruebas de concepto de la arquitectura

•Definición de la línea base de la arquitectura

•Procesos formales de análisis y evaluación de la arquitectura

Enfatiza la importancia de:

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"21

Page 22: La importancia del_modelado_en_la_producción_de_sw_vf

Cualidadesde la Arquitectura

Procesos

Representación

de la arquitectura

Qué? Por qué?

Para qué?Quién?

Características

Del Sistema

ArquitecturaRequerimientos

S/W

Atributos de

Calidad del sistema

Satisface

Restringe

Organización

Arquitecto

Habilidades

Stakeholders

Define roles

Produce

Analiza

DefinesTecnología

Fuente: Rational SoftwarePI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"22

Page 23: La importancia del_modelado_en_la_producción_de_sw_vf

arquitecto

gerente del

proyecto

líder de

mercadeo

usuario

final

soporte

aplicativo

cliente

Bajo costo

Rendimiento

del equipo

Corto tiempo en mercado

Bajo costo; ventajas con

productos similares

Funcionalidad

Rendimiento

Seguridad

usabilidad

modificabilidad

Bajo costo y tiempo

de entrega, que no cambie

muy a menudo

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"23

Page 24: La importancia del_modelado_en_la_producción_de_sw_vf

• En la medida que la complejidad de los sistemas

crece, los algoritmos y las estructuras de datos

dejan de convertirse en el mayor problema.

• El diseño y especificación de la estructura general

del sistema emerge como un nuevo tipo de

problema: el diseño a nivel de arquitectura.

• En aplicaciones OO las clases representan

unidades de granularidad muy fina; en sistemas

grandes se requiere hablar de unidades que

represente una funcionalidad mayor (módulos /

subsistemas / componentes de negocio)

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"24

Page 25: La importancia del_modelado_en_la_producción_de_sw_vf

Fuente: Architecture as a Business Competency. Bredemeyer Consulting

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"25

Page 26: La importancia del_modelado_en_la_producción_de_sw_vf

• La complejidad de los sistemas deriva, directamente de lainvención de la computadora y su utilización, y forman tantoparte de ellas que han sido incorporadas en la informática,sirviéndole de impulso.

• Podemos hablar de las ciencias de la complejidad y estas seencuentran en la base de la modelización de los sistemasinformáticos, dentro de estas ciencias encontramos, el caos,la geometría de fractales, la vida artificial, y las lógicas no-clásicas.

Justamente la incorporación de está última a los sistemasinformáticos desde hace un tiempo hacia acá, es la que acontribuido, al desarrollo de los sistemas actuales.

• Un ejemplo de sistemas informáticos que nos permitenenfrentar situaciones complejas, son los sistemas expertos.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"26

Page 27: La importancia del_modelado_en_la_producción_de_sw_vf

Es un software que incorpora conocimiento de un expertohumano sobre un dominio de aplicación dado, de manera quees capaz de resolver problemas de relativa dificultad y apoyarla toma de decisiones inteligentes en base a un proceso derazonamiento simbólico. Se puede entender como una ramade la inteligencia artificial y está compuesta en forma generalpor:

• Base de conocimientos (BC): Contiene conocimiento modelado extraído del diálogo con un experto.

• Base de hechos (Memoria de trabajo): contiene los hechos sobre un problema que se ha descubierto durante el análisis.

• Motor de inferencia: Modela el proceso de razonamiento humano.

• Módulos de justificación: Explica el razonamiento utilizado por el sistema para llegar a una determinada conclusión.

• Interfaz de usuario: es la interacción entre el SE y el usuario, y se realiza mediante el lenguaje naturalPI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"27

Page 28: La importancia del_modelado_en_la_producción_de_sw_vf

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"28

Page 29: La importancia del_modelado_en_la_producción_de_sw_vf

Breve detalle

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"29

Page 30: La importancia del_modelado_en_la_producción_de_sw_vf

• PI 29/B134 Modelado de Requerimientos y Diseño de

Sistemas Complejos

• Radicado en UNPA – Unidad Académica Caleta Olivia

• Inicio: 01.01.2012 Fin: 01.01.2014

• Directora: Lic. Gabriela Vilanova

• Co-Directora: Ing. Silvia G. Rivadeneira Molina

• Integrantes: Dr. Carlos Arias Méndez, Ing. Valeria Varas, Ing.

Juan Fontana, Al. Brenda Ducasse, Al. Ángel Páez, Al. Claudio

Monserrat.

• Se está tramitando el ingreso de dos docentes investigadores

(Ing. Gabriela Miranda y la Lic. Diana Cruz)

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"30

Page 31: La importancia del_modelado_en_la_producción_de_sw_vf

• Modelado BPMN (Business Process Modeling Notation).

• Metodologías ágiles.

• Desarrollo de software para dispositivos móviles.

• Arquitectura de Sistemas Complejos.

• Arquitecturas orientadas a servicios.

• Innovaciones en la enseñanza de modelado de software.

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"31

Page 32: La importancia del_modelado_en_la_producción_de_sw_vf

• ¡Muchas gracias!

PI 29/B134 "Modelado de Requerimientos y

Diseño de Sistemas Complejos"32