Desarrollo de software



Documentos relacionados
Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar

Ingeniería de Software

Ingeniería de Software: Parte 2


Contenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software

METODOLOGÍA TRADICIONAL.

El Proceso Unificado de Desarrollo de Software

METODOLOGÍA TRADICIONAL.

Interacción Persona - Ordenador

Ingeniería de Software

6 Anexos: 6.1 Definición de Rup:

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Los procesos de software. Un proceso de software se define como un:

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo

Anexo 4 Documento de Arquitectura

Unidades temáticas de Ingeniería del Software. Fases del proceso de desarrollo 4ª edición (2008)

Desarrollo de Aplicaciones con Tecnologías Web

CMM - Capability Maturity Model. Estructura de CMM... Componentes de CMM. Estructura de CMM

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática

SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0

Ciclo de vida y Requerimientos de software. Laboratorio de Programación

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

INGENIERÍA DEL SOFTWARE

INGENIERÍA DE SOFTWARE CICLOS DE VIDA Y METODOLOGIAS

Calidad. Preparado por: Amelia Soriano. Referencias. Rational Unified Process Version Copyright Rational Software Corporation

Calidad de Software - CMM

Ingeniería de Software I

Instituto Educación Superior Tecnológico Privado El Buen Pastor

SUPLEMENTO EUROPASS AL TÍTULO

Ingeniería Web. Pablo Sevilla Jarquín

Syllabus.

Guía metodologíca para la gestión de proyectos de software basada en metodologías agiles, que integre las herramientas de seguimiento de actividades,

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar

3. Horario laboral referencial: Lunes Viernes 8:00 a.m. a 6:00 p.m.

Introducción. Por lo que existe una creciente preocupación por lograr que los productos software cumplan con ciertos criterios de calidad.


Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre

Ingeniería de Software

Internet Servicios WEB (WWW)

ITZOFT, una metodología de desarrollo de sistemas basada en el Proceso Unificado de Rational. Resumen

Proceso de Desarrollo de Software: Herramientas de Configuración de Procesos. Elisa Herrmann Ingeniería del Software de Gestión

Resumen General del Manual de Organización y Funciones

ASI. Análisis del Sistema de Información

MACROPROCESO GESTIÓN TECNOLÓGICA

CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

<Generador de exámenes> Visión preliminar

CICLO DE VIDA DEL SOFTWARE. Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software

DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB

Primer avance de proyecto de software para la gestión de inscripciones en cursos

SUPLEMENTO EUROPASS AL TÍTULO

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL

Fundamentos del diseño 3ª edición (2002)

Programación orientada a

PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM. Mariani, María Florencia Okabe, Evangelina

MARCO DE REFERENCIA SISTEMAS DE INFORMACIÓN PARA LA GESTIÓN DE TI EN EL ESTADO COLOMBIANO

Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo

Calidad de Sistemas de Información

EVALUACIÓN Y MEJORA DE PROCESOS

Anteproyecto Fin de Carrera

Elementos requeridos para crearlos (ejemplo: el compilador)

Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, Introducción al Diseño de Software

Capitulo III. Diseño del Sistema.

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

El Software. Es lo que se conoce como el ciclo de vida del software.

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

Guía Docente: Guía Básica. Datos para la identificación de la asignatura. Escuela de Ingeniería Informática Grado en Ingeniería Informática

Nombre de la asignatura: Programación Web. Créditos: Aportación al perfil

BPM en la práctica Transitando del BPA al BPM con una metodología probada. Diego Karbuski - Diciembre 2012

Gestión del Ciclo de Vida de Productos y Proyectos. Por qué Invertir en tiempo de crisis.?

ARC 101 Architecture Overview Diagram

Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software

DESARROLLO CONCEPTUAL Y METODOLÓGICO DE UN SISTEMA DE INFORMACIÓN GEOGRÁFICA PARA EL ORDENAMIENTO TERRITORIAL NACIONAL

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

CALIDAD DEL SOFTWARE TESTS DE EXAMEN ACTUALIZADO SEP TEMA 4 MODELOS, METODOLOGÍAS Y ESTÁNDARES: ESTRATEGIAS PARA ALCANZAR LA CALIDAD

SW-CMM Capability Maturity Model for Software

Actividad 4. Justificación de la oportunidad y análisis de necesidades. Concreción de la propuesta

CICLO DE VIDA DEL SOFTWARE

El Gerente de Proyecto. 3: El Gerente de Proyecto. Analogía - Responsabilidades. Liderazgo del Proyecto. Responsabilidades Implícitas

INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DE TRABAJO DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA

FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIMEDIA DAM 350 HORAS

1. Instala gestores de contenidos, identificando sus aplicaciones y configurándolos según requerimientos.

Enginyeria del Software III

CONTENIDO. ACERCA DE SWAT IT Quiénes somos y para qué trabajamos

P.S.P. Programa Educativo. Tecnologías de la Información y Comunicación. Alumno. José Alfredo Ramírez Jaguey

n u e v o s p a r a d i g m a s... n u e v a s s o l u c i o n e s.

Diplomado en Aseguramiento de la Calidad De los Procesos y Productos de Software

Trabajo de Grado Análisis comparativo de Lenguajes Notacionales para Modelado de Procesos

Gestión de proyectos siguiendo practicas del PMI.

FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES WEB DAW 350 HORAS

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

Gestión y Desarrollo de Requisitos en Proyectos Software

Transcripción:

Agenda 1. Introducción 2. Aspectos Metodológicos del Desarrollo de Software 3. Aplicación Web (Modelo del Producto) 4. Modelo del proceso 5. Dos enfoques Metodológicos 6. Métodos Seleccionados 7. Evaluación de los Métodos 8. Aspectos Comunes y Diferentes de los Métodos para Desarrolla Aplicaciones Web 9. Conclusiones 10. Presentación de una Experiencia Real de Adaptación de RUP a la Organización.

Desarrollo de software COM NET Watch OOWS RMM RNA DESARROLLO DE SITIOS WEB INSTRUCCIONALES DSDM UML TWIM VBSCRIPT KANBAN MODELO ESPIRAL DE BOEHM SCRUM JSP MEDSI HFPM Marco de Referencia Basado en Componentes para e-commerce OOHDM JAVASCRIPT CGI RUP HTML XP J2EE SERVLETS OPEN SOURCE UWE XML MIDAS SWM HTML WSDM ASP ENFOQUE DE INGENIERÍA DE LOWE-HALL S METODO PARA DESARROLLAR SIW APPLETS DE JAVA BROWSER MODELLING WEB- BASED INSTRUCTIONAL SYSTEMS

Aspectos Metodológicos de Desarrollo de software Los tres elementos esenciales de un proyecto de desarrollo de software: el producto que se desarrolla el proceso utilizado para desarrollar el producto los recursos humanos requeridos para desarrollar el producto determinan los tres componentes fundamentales de un método: El modelo del producto El modelo del proceso Modelo del Producto El modelo del grupo de desarrollo Qué producto elaborar Modelo del Proceso Quién ejecuta Qué propiedades tiene el producto? Modelo del Grupo Qué y Cómo hacer el producto

Características 1. Intensivas de red 2. Controlada por el contenido Aplicación Web (Modelo del Producto) 3. Evolución continua 4. Inmediatez Atributos de Calidad 5. Operatividad en Internet Calidad de una aplicación web Usabilidad Funcionalidad Fiabilidad Eficiencia Capacidad de comprensión del sitio global. Servicios de ayuda y retroalimentación en línea. Capacidades estéticas y de interfaz Servicios especiales Capacidad de recuperación y búsqueda Servicios de búsqueda y navegación Servicios relacionados con el dominio de aplicación Proceso correcto de enlace Recuperación de errores Validación y recuperación de la entrada del usuario Rendimiento del tiempo de respuesta Velocidad de generación de paginas Velocidad de generación de gráficos Capacidad de Mantenimiento Facilidad de corrección Adaptabilidad Extensibilidad

Modelo de Producto Presentación Solicita Despliega Lógica del Negocio Datos Páginas HTML JavaScript Navegador Programas Intérpretes VBScript Objetos del Negocio Repositorio de datos HTTPW ML XML Programas Compilados Applets de JAVA Objetos Web Bases de Datos Servidor Web Servidor de Páginas dinámicas Control Active X COM Datos XML J2EE Servlets CGI JSP ASP Capa de Presentación Capa de Lógica del Negocio.NET Capa de Datos

Modelo de Proceso Representación gráfica de las fases, pasos, actividades o tareas que el método propone para desarrollar software Existe una gran variedad de modelos de procesos que podemos clasificar en función del enfoque o paradigma utilizado por el modelo: Enfoque de ingeniería Enfoque evolutivo Enfoque formal o disciplinado Enfoque orientado a objetos Enfoque ágil Enfoque de reutilización de software

DOS ENFOQUES METODOLOGICOS METODOS AGILES Basados en el Manifiesto Ágil que da mayor valor a: Individuos y su interacción Código que funcione Colaboración con el cliente Respuesta al cambio METODOS DISCIPLINADOS Basados en la Calidad Total que da mayor valor a: El proceso de desarrollo Los productos incluyendo el código Contrato con el cliente Seguimiento de un plan

DOS ENFOQUES METODOLOGICOS METODOS AGILES Centrados en las personas *Énfasis en el código y la cooperación *Procesos mínimos con poca documentación *Formalidad del proceso reducida a un mínimo *Procesos no repetibles *Resultados dependen del equipo de trabajo *Conocimiento tácito METODOS DISCIPLINADOS Centrados en los procesos *Énfasis en los productos y la organización *Procesos bien definidos y documentados *Alta formalidad en el proceso de desarrollo *Procesos repetibles *Resultados predecibles *Conocimiento explícito

Métodos Seleccionados 1. Método Basado en Componentes para el Desarrollo de Aplicaciones Web (Montiva Jonas y Barrios Judith) (Enfoque Balanceado) 2. Marco de Referencia Basado en componentes para e-commerce de Fingar Peter (Enfoque Balanceado) 3. Rational Unified Process (RUP) (Enfoque Disciplinado) 4. Métodos Agiles (SCRUM y XP) (Enfoque Ágil)

Descripción de Método Basado en Componentes para el Desarrollo de Aplicaciones Web (MontilvaJonasy Barrios Judith)

Marco de Referencia Basado en componentes para e- commerce de Fingar Peter Estrategia del Negocio e-commerce Fortalezas, Oportunidades, Debilidades, Amenazas METAS, REQUERIMIENTOS, RESTRUCCIONES Repositorio Negocios Modelo de objetos Casos de Uso Procesos del Negocio Inter-Empresarial Interno y Externo MODELOS DE DATOS, PROCESOS Y ORGANIZACIONALES Repositorio de Componentes Aplicaciones Basadas en Componentes Gestión del Vendedor Cadena de Suministro Extendida I-Market, Atención al Cliente Infraestructura Tecnológica Infraestructura de Objetos Distribuidos Sistemas Legados y Activos

Rational Unified Process(RUP)

Rational Unified Process(RUP) Core RUP Customizar Configurar Personalizar Large J2EE Project Plug-In for J2EE Plug-In for XP Plug-In for.net Small Team Project.NET Project Desarrollo de la organización Ingenieros de Procesos Gerentes de proyecto Miembros del equipo Metodología Común Autoría Configuración Producción

Rational Unified Process(RUP) RUP pretende implementar las mejores prácticas en ingeniería de software: Desarrollo iterativo del software Administración de requerimientos Uso de arquitecturas basadas en componentes Modelamiento visual del software Verificación de la calidad del software Control de cambios

Métodos Agiles (SCRUM y XP)

Evaluación de los métodos El marco de referencia diseñado está basado en los trabajos de Jarke Mathias y Barrios Judith. Este marco considera cuatro aspectos fundamentales para evaluar un método: 1. La vista del dominio 2. La vista de uso 3. La vista del producto 4. La vista del proceso. Dentro de estas vistas se consideran a su vez las facetas y los atributos que las describen. Cada faceta representa un aspecto a evaluar dentro de una vista. La misma está compuesta por un conjunto de atributos y sus valores correspondientes, los cuales fueron adaptados con el fin de caracterizar los métodos para el desarrollo de aplicaciones web.

Vista de Dominio Para qué sirve? Para qué es concebido? Faceta Atributos Valores 1) 2) 3) 4) Alcance Área de aplicación Publicidad Educativo e-commerce e-business Portales Sistemas de Información web e-goverment Aspectos Técnicos Gerenciales Inherentes al área de Aplicación.

Vista de Uso (objetivos del que los Usa) Faceta Atributos Valores 1) 2) 3) 4) Aplicabilidad Ciclo de vida Análisis Diseño Desarrollo Evaluación Mantenimiento Orientación Académico Comercial Publicitario Servicios Uso Visibilidad Siempre muestra qué hacer Siempre muestra cómo hacerlo Estandarización Uso de técnicas estándares Uso de notaciones estándares Eficiencia de uso Adaptable y expandible Simple y fácil de usar Bien documentado Participación del usuario Tipo de usuario Desarrolladores de software Diseñadores de páginas web Publicistas Personal directivo de grandes organizaciones Grado de Participación Total Parcial Ninguno

Vista del producto (Resultado de Aplicar el Método) Faceta Atributos Valores 1) 2) 3) 4) Descripción del producto Modelo del producto Explicito Implícito No existe Notación del modelo Formal (Fórmulas matemática) Semiformal (Gráficos, imágenes) Informal (Textual) Orientación del modelo Orientado a objetos Orientado a procesos Basado en ejemplos Indefinido Perspectiva del producto Perspectiva funcional Perspectiva tecnológica Perspectiva estructural Descripción Conceptual Conceptos usados por el modelo Conceptos Técnicos Conceptos estéticos

Vista del Proceso (Desarrollo del Producto) Faceta Atributos Valores 1) 2) 3) 4) Modelo de Orientación Orientada al producto proceso de Orientada a la actividad desarrollo Orientada a la decisión Enfoque Ad-hoc Predictivo (cascada) Características del proceso Gerencia de proyecto Claridad Evolutivo (adaptativo) Estructura del proceso bien definido Fases/pasos/tareas Estructura del proceso (qué hacer) Modo de ejecución del proceso Iterativo Secuencial estricto Incremental Visibilidad Definición clara del flujo de trabajo Progreso visible externamente Dependencia tecnológica Independiente de las herramientas Adaptabilidad Modularidad Procesos modificables Guía explícita Completa Implícita Planificación y control Definición del plan del proyecto Estimación de recursos Monitoreo y evaluación del progreso Equipo de trabajo Estructura del equipo Tamaño del equipo Individual Equipos pequeños (<= 5 personas) Aseguramiento de calidad Gestión de la configuración Equipos Grandes (> 5 personas) Calidad en la planificación y control Calidad del equipo Revisión de técnicas de validación y verificación Planificación y ejecución de la gestión de configuración del software Documentación Documentación de plantillas Entrenamiento Entrenamiento equipo Entrenamiento de usuario

Vista del Proceso (Desarrollo del Producto) Cobertura del ciclo de desarrollo Proceso de post-desarrollo Análisis Representación del conocimiento del dominio Análisis de objetos del dominio. Definición de requerimientos Definición de requerimientos informal Técnicas de especificación Diseño Diseño de arquitecturas Diseño de interfaces Implementación Producción de multimedia Creación del sitio web Construcción de la Base de Datos Implementación de las reglas del negocio Programación del lado del cliente Programación del lado del servidor Implementación de políticas de seguridad (SSL,etc). Comunicación de objetos distribuidos. Pruebas Prueba de cada uno de los componentes Pruebas de integración Prueba de la aplicación web. Validación y verificación de la aplicación web. Instalación Implantación de la aplicación web Mantenimiento Soporte de mantenimiento

Aspectos Comunes y Diferentes entre los Métodos para Desarrollar Aplicaciones Web Modelado del Negocio Requerimientos Diseño de la Aplicación web Implementación Planificación Validación y Verificación Pruebas Lanzamiento Nuevos Requerimientos Mantenimiento

Concluciones Contemplan la fase de análisis de requerimientos (con diferentes denominaciones). Contemplan un estudio detallado de la organización donde se desarrollará la aplicación web El método para el desarrollo de e-commerce no contempla la construcción de un prototipo. Plantean actividades orientadas a cumplir con los atributos de calidad del producto desarrollado.

Conclusiones Los métodos para el desarrollo de e-commerce no presentan actividades orientadas al mantenimiento de la aplicación web. El método para desarrollo de e-commerce contempla el reuso de componentes y de modelos de objetos de negocio y casos de uso en las fases de diseño e implementación. Son un conjunto de pasos secuenciales que indican explícitamente las actividades a ejecutar, más no indican en qué situaciones particulares se debe hacer. No relacionan las actividades a ejecutar en el ciclo de desarrollo con los modelos de producto asociados a cada una de las aplicaciones web. Todos los métodos deben ser adaptados al contexto, dependiendo experiencia del Grupo de Desarrollo siempre de la

Contacto