Metodologías para el diseño de sistemas Ing. Rolando Zapata Maraví Taller de modelamiento de software Versión 1.2 Agenda 1) Introducción 2) Metodologías de desarrollo de software Introducción ¿Qué es Software? Ejemplos Ejemplos Ejemplos Ejemplos Video sugerido La industria del videojuego peruano: https://www.youtube.com/watch?v=zcpRhUQUBXM Ejemplos Ejemplos Ejemplos Categorías de Software a) b) c) d) e) f) g) Software de sistema Software de aplicación Software de ingeniería/científicos Software embebido Software de productos en línea Aplicaciones Web Software de inteligencia artificial Categorías de Software Software de ingeniería/científicos Categorías de Software Software de ingeniería/científicos Categorías de Software Software embebido Categorías de Software Software de productos en línea Categorías de Software Aplicaciones Web Categorías de Software Software de inteligencia artificial ¿El SW es importante ? El Software es importante porque estamos ligados directamente a ellos en muchos aspectos de la vida cotidiana. Word Power Point Facebook Android Gmail Google Maps SIAF Contasis Autocad Photoshop Etc. ¿Quiénes son los que crean Software? Equipo de desarrollo de Software (base) Jefe de proyecto Arquitecto de Software Analista de sistemas Desarrollador (Programador) Documentador Terceros ¿Cuáles son los pasos para crear SW? Puedes construir un SW de igual forma que se construye cualquier producto exitoso, es decir, aplicando procedimientos ágiles y adaptables que conduce a un resultado de alta calidad que cubren las necesidades de las personas que usarán el producto. ¿Cuáles son los pasos para crear SW? Puedes construir un SW de igual forma que se construye cualquier producto exitoso, es decir, aplicando procedimientos ágiles y adaptables que conduce a un resultado de alta calidad que cubren las necesidades de las personas que usarán el producto. El Proceso de creación de Software Un proceso genérico para la construcción de software engloba 5 actividades: Cronograma de actividades que tienen que incluir fechas y duracion. Costo + Recursos Elaborar los requisitos del SW a detalles Se conversa con el cliente para determinar que es lo que hara SW de forma GENERAL Comunicación Planeamiento Modelamiento Construcción Despliegue Instalacion y configuracion Capatacion + del SW Codificacion del SW Preguntas de repaso 1) 2) 3) 4) 5) Defina SW utilizando sus propias palabras. ¿De qué forma SW está presente en nuestra vida diaria? ¿El SW es importante? ¿Si? ¿No? ¿Por qué? Mencione 2 ejemplos de SW por cada categoría. ¿Cuáles son los integrantes principales del equipo de desarrollo de software? Describa brevemente cada uno de ellos. 6) ¿Cuándo se puede decir que un SW es de calidad? 7) ¿Cuáles son los pasos GENÉRICOS para crear un SW? Describa brevemente cada paso. Metodologías de desarrollo de software Definición Cuando se construye un producto de SW es importante aplicar una serie de pasos, una hoja de ruta que nos ayude a crear un resultado oportuno y de alta calidad. Ésta hoja de ruta se denomina Metodología de desarrollo de SW. ¿Por qué aplicar una Metodología de desarrollo de SW? Metodologías de desarrollo de SW Algunas de las metodologías de desarrollo de Software más conocidas son: 1) RUP 2) XP (Extreme Programming) 3) Scrum Metodología RUP Metodologías de desarrollo de SW Metodología RUP: RUP = Rational Unified Process El RUP indica que es lo que debe hacer cada miembro del equipo de desarrollo SW Es un proceso que guía las actividades de los diferentes equipos de trabajo. Metodologías de desarrollo de SW Metodología RUP: RUP = Rational Unified Process Incorpora las mejores prácticas para el desarrollo de software de manera adaptable a un amplio rango de proyectos. Metodologías de desarrollo de SW Metodología RUP: Características: Usa UML (Unified Modeling Language) Produce artefactos Configurable, adecuado para proyectos medianos y grandes Administración de requerimientos Proceso complejo Metodología RUP Artefactos de RUP Diagrama de clases de UML Metodología RUP Metodología RUP Diagrama de casos de uso de sistemas UML Metodología XP Metodologías de desarrollo de SW Metodología XP (Extreme Programming) programacion extrema No es un producto de Microsoft Ágil Programación en par (Pair Programming) Se requieren buenos desarrolladores (Programadores) Historias de usuario (User Stories) como requerimientos Pequeños releases Metodología XP Metodología XP Metodología XP Definicion, caracteristicas, ventajas y desventajas Entrega el 29 de marzo del 2016 Metodología Scrum ¿Se puede elaborar un SW sin aplicar una metodología? Preguntas de repaso 1) ¿Por qué es recomendable utilizar una metodología de desarrollo de software? 2) Describa con sus propias palabras el concepto de metodología de desarrollo de SW. 3) Mencione con sus propias palabras algunas características de la metodología RUP. 4) Con respecto a RUP, ¿Qué es un artefacto? 5) ¿Qué es UML? 6) ¿Qué es una metodología ágil? 7) ¿Describa brevemente y con sus propias palabras la metodología XP? 8) ¿Qué es la programación por pares? 9) ¿Por qué se requieren buenos programadores para la metodología XP? 10)¿Qué es una historia de usuario? Gracias Compilado por: Ing. Rolando Zapata Maraví