Desarrollo de software y software empaquetado Edith Vera Sereno Desarrollo de software El proceso de desarrollo de software es un conjunto de herramientas, métodos y prácticas que se emplean para producir software. Las organizaciones dedicadas al desarrollo de software mantienen entre sus principales fines, la producción de software de acuerdo con la planificación inicial realizada, además de una constante mejora con el fin de lograr tres objetivos: alta calidad y bajo costo en el mínimo tiempo. Desarrollo de software • • • • El desarrollo comprende cuatro grandes fases: La concepción define el alcance del proyecto. La elaboración define un plan del proyecto, especifica las características y fundamenta la arquitectura. La construcción crea el producto. La transición transfiere el producto a los usuarios. Desarrollo de software Durante más de 40 años las técnicas de desarrollo de software han ido evolucionando, en pro de mejorar la calidad de los productos y de disminuir el esfuerzo de los proyectos que las utilizan. Así han surgido y puesto en práctica diversas metodologías de forma rápida en las ultimas 2 décadas, yendo desde el clásico método de Cascada hasta los más recientes, como es el Proceso Unificado desarrollado por Rational Software Corporation. Desarrollo de software Algunos de los modelos de desarrollo para la realización de software son los siguientes por ser los más utilizados y los más completos: • • • • • Modelo en cascada (ciclo de vida clásico) Modelo en espiral Modelo de prototipos Modelo incremental Proceso unificado Desarrollo de software Modelo en cascada • Análisis de requisitos • Diseño del sistema • Diseño del programa • Codificación • Pruebas • Implantación • Mantenimiento Desarrollo de software Modelo en cascada Desarrollo de software Desarrollo en espiral • Determinación de objetivos alternativas o restricciones • Análisis del riesgo • Desarrollar, verificar y validar • Planificar Desarrollo de software Desarrollo en espiral Desarrollo de software Modelo prototipo • Recolección de requisitos. • Construcción y revisión prototipo. • Prueba Desarrollo de software Modelo prototipo Desarrollo de software • • • • Modelo incremental Análisis Diseño Código Prueba Desarrollo de software Modelo incremental Desarrollo de software Proceso unificado • Esta dirigido por casos de uso • Es un proceso centrado en la arquitectura • Es iterativo e incremental Desarrollo de software Proceso unificado Software empaquetado Aplicaciones de software listo para ser usado. Al principio, los fabricantes no proporcionaban cualquier software como parte de la computadora, tenía que ser hecho a la medida o por encargo para ser ordenado. En los años 80, una nueva clase de vendedores independientes de software empezaron a construir el software integrado diseñado para satisfacer una gama entera de funciones del negocio, y estos productos ofrecidos se conocían como software empaquetado. Software empaquetado Software empaquetado el cual comprende: • PC business software: programas preinstalados que gobiernan el funcionamiento de la computadora, como los sistemas operativos, y los programas de aplicaciones específicas que corren en él, los cuales incluyen procesadores de palabras, hojas de cálculo, base de datos, graficadores, CAD, comunicaciones (email) y productos de interconexión (internet, intranet, servidores). Software empaquetado • Otros software empaquetados: programas educativos, juegos, y aplicativos de negocios. Software empaquetado Hay dos rutas principales por las cuales el software empaquetado es distribuido. • La distribución directa ocurre cuando los fabricantes de software venden las licencias de sus productos directamente al usuario final bajo términos estándar o de negociación individual. Esta modalidad puede tomar la forma de venta corporativa, orden email, o venta a través de Internet. Software empaquetado La distribución indirecta se realiza a través de diversos canales: • OEMs (fabricantes de equipos originales) tienen licencias para reproducir o empacar el software junto con su propio hardware. Un ejemplo típico lo constituyen los fabricantes de PC que incluyen los sistemas operativos o software de aplicación en las computadoras que venden. Software empaquetado • Distribuidores autorizados de las empresas de software que compran, almacenan y venden software empaquetado a minoristas o a usuarios finales. Software empaquetado • VARs (revendedores con valor agregado), quienes compran directamente a los fabricantes, añadiéndoles un servicio adicional a los usuarios finales, tal como instalación e integración con el hardware, entrenamiento, mantenimiento, desarrollo de aplicaciones personalizadas basadas en el estándar del producto empaquetado. Software empaquetado Los consumidores también se benefician del software empaquetado, tanto el usuario directo como la sociedad en su conjunto. La venta de programas educativos y de entretenimiento son los de mayor demanda de este grupo. Igualmente, los consumidores requieren sistemas operativos amigables y aplicaciones para escribir cartas, manejar sus finanzas hogareñas y comunicarse con sus amistades a través de los servicios en línea.