Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Analisis y Diseno de Sistemas
Analisis y Diseno de Sistemas
Virginia Montilla
Objetivo General
Entender los procedimientos que preceden a la fase de codificacin en el proceso de desarrollo de software. Se busca que el alumno tenga la capacidad de levantar informacin de manera adecuada sobre la necesidad de software que presenta una empresa, para posterior a un anlisis proceder a disear los planos del software que posteriormente ser codificado y probado bajo rigurosos estndares.
Objetivos Especficos
Fomentar el razonamiento crtico en los estudiantes. Fortalecer la capacidad de manejar entidades abstractas. Comprender las tcnicas ms utilizadas en la industria para levantar informacin y ser capaz de escoger la tcnica ms apropiada en cada caso. Crear la capacidad de crear diseos de sistema posterior a la fase de anlisis Comprender el modelo unificado
Sistemas de Informacin
Tecnologas de Informacin
Informacin
Recursos Humanos
Sistemas
Recursos de Hardware
Sistemas de computador: Unidad de Procesamiento Central (CPU), quien contienen los microprocesadores, entre otros dispositivos. Perifricos del computador: Dispositivos como el teclado, mouse, pantalla, impresora
las
operaciones de un sistema computacional, como el sistema operativo Software de aplicacin: por parte son dirigen de el procesamiento para un uso particular de computadores usuarios
finales.
Procedimientos: informacin instrucciones operacionales para utilizar un sistema de
Bases de conocimiento: incluyen conocimiento sobre una variedad de formas como hechos, reglas y ejemplos de casos sobre prcticas empresariales exitosas
Recursos de Redes:
Medios de Redes: El medio en que se transmite la informacin de un lugar a otro Soporte de redes: Los recursos que respaldan las operaciones y el uso de una red de comunicacin
Sistemas de control de procesos: Supervisan y Sistemas de Apoyo controlan procesos industriales Dolencias: a las Operaciones
Dificultad para medir y controlar la produccin
Necesidad de mucho personal en supervisin de procesos Mucho tiempo invertido en recolectar datos para analizar calidad y rendimiento de la produccin o del proceso
Modelo de ciclo de en V
Contiene las mismas etapas que el ciclo de vida cascada, con la diferencia de que posee dos subetapas de retroalimentacin entre las etapas de anlisis y mantenimiento y entre las de diseo y debugging
Proceso Unificado
Anlisis y Diseo de Sistemas
Proceso Unificado
Anlisis y Diseo de Sistemas
Modelo
Es una serie de diagramas UML que representan uno o mas aspectos del producto software que se va a desarrollar
Proceso Unificado
Proceso Unificado
Flujo de trabajo de los requerimientos:
Flujo de trabajo Su objetivo es que la empresa de desarrollo determine las centrales del necesidades del cliente proceso unificado
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas
La primera tarea es adquirir buena comprensin del dominio de la aplicacin, es decir, el entorno en el que operara. En una reunin inicial entre el cliente y desarrolladores, el cliente delinea el producto como lo conceptualiza. Debe determinarse con exactitud lo que el cliente necesita, y cuales son las restricciones que existen.
Proceso Unificado
Flujo de trabajo de los requerimientos:
Flujo de trabajo A la investigacin preliminar del cliente muchas veces se centrales del le conoce como exploracin del concepto. proceso unificado
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas
En reuniones ulteriores entre los miembros del equipo de desarrollo y el del cliente se afina y analiza, en sucesin, la funcionalidad del producto propuesto en cuanto a la posibilidad tcnica y la justificacin financiera Un aspecto fundamental en el desarrollo de software es el modelo de negocio, un documento que demuestra la relacin costo-eficacia del producto solicitado.
Proceso Unificado
Flujo de trabajo del anlisis:
Flujo de trabajo Es analizar y afinar los requerimientos, con el fin de centrales del conseguir la comprensin detallada de los requerimientos proceso unificado primordiales para desarrollar un producto de software Flujo de trabajo: correcto y de fcil mantenimiento. De los
requerimientos Del anlisis Del diseo De la implementacin De las pruebas
Los artefactos del flujo de trabajo de los requerimientos deben estar expresados en el lenguaje del cliente. El flujo de trabajo de anlisis, en un lenguaje mas preciso que garantice que se efecten correctamente los flujos de trabajo de diseo e implementacin.
Se aaden detalles durante el flujo de trabajo del anlisis, no importante para la comprensin del cliente del producto software objetivo, pero esenciales para los profesionales de la programacin que desarrollaran el producto software
Proceso Unificado
Flujo de trabajo del anlisis:
Flujo de trabajo Las especificaciones del producto constituyen un contrato centrales del proceso unificado Una vez el cliente ha aprobado las especificaciones, comienza la planeacin y estimacin detalladas. Es Flujo de trabajo: requerido por el cliente conocer el tiempo y el costo del De los proyecto antes de aprobarlo
requerimientos Del anlisis Del diseo De la implementacin De las pruebas
Los desarrolladores necesitan que se asigne el personal adecuado para los diferentes flujos de trabajo del proceso
Proceso Unificado
Flujo de trabajo del anlisis:
Flujo de trabajo Es necesario redactar un plan de administracin de proyecto de software (SPMP, Software Project centrales del Management Plan) que muestre los flujos de trabajo proceso unificado independientes del proceso de desarrollo y muestre que Flujo de trabajo: miembros de la organizacin estn involucrados en cada De los tarea, as como los limites de tiempo para determinar cada requerimientos una Del anlisis
Del diseo De la implementacin De las pruebas
Una vez el cliente haya aprobado las especificaciones, iniciara la preparacin del plan de administracin de proyecto de software
Los principales componentes son: Los disponibles (que va a conseguir el cliente), los hitos (cuando los consigue el cliente) y el presupuesto (cuanto va a costar)
Proceso Unificado
Flujo de trabajo del anlisis:
Flujo de trabajo El plan describe el proceso del software con todo detalle. Incluye aspectos como el modelo del ciclo de vida que se centrales del va a utilizar, la estructura organizacional de la empresa de proceso unificado desarrollo, las responsabilidades del proyecto, los Flujo de trabajo: objetivos y prioridades gerenciales, las tcnicas y De los herramientas CASE que se van a utilizar y los calendarios, requerimientos presupuestos y asignaciones de recursos detallados. Del anlisis Sustentando todo el plan estn los estimados de duracin Del diseo De la y costo.
Proceso Unificado
Flujo de trabajo de Diseo:
Flujo de trabajo Las especificaciones muestran qu va a hacer el producto; el diseo muestra cmo lo har centrales del proceso unificado El objetivo del flujo de trabajo de diseo es afinar los Flujo de trabajo: artefactos del flujo de trabajo del anlisis hasta que el De los material se encuentre en tal forma que pueda ser requerimientos implementado por los programadores Del anlisis
Del diseo De la implementacin De las pruebas
Durante la fase de diseo clsica, el equipo de diseo determina la estructura interna del producto. Los diseadores descomponen en mdulos, piezas de cdigo independientes, con interfaces bien definidas para el resto del producto. Debe especificarse con detalle la interface de cada modulo (argumentos que pasan al mdulo y los que regresa al mdulo)
Proceso Unificado
Flujo de trabajo de Diseo:
Flujo de trabajo Una vez el equipo haya terminado la descomposicin del mdulo (diseo arquitectnico), se lleva a cabo el centrales del diseo detallado; se seleccionan los algoritmos y se proceso unificado eligen las estructuras de datos de cada mdulo
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas
En el Paradigma Orientado a Objetos la base de ese paradigma es la clase, un tipo de mdulo especfico. Las clases se extraen durante el flujo de trabajo del anlisis y se disean durante el flujo de trabajo del diseo Razones por la que el equipo de diseo debe tener un registro meticuloso de las decisiones de diseo que se tomen:
Proceso Unificado
Flujo de trabajo de Diseo:
Flujo de trabajo Cuando se est diseando el producto, en ocasiones se llega a un punto muerto, y el equipo de diseo deber centrales del regresar sobre sus pasos y redisear algunas piezas proceso unificado
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas
En teora, el diseo del producto debe ser abierto, lo que significa que se podrn hacer mejoramientos futuros (mantenimiento postentrega) aadiendo nuevas clases y sustituyendo las existentes sin afectar todo el diseo
Proceso Unificado
Flujo de trabajo de Implementacin
Flujo de trabajo Su objetivo es implementar el producto software objetivo en l o los lenguajes de programacin elegido centrales del proceso unificado Un producto de software pequeo puede ser Flujo de trabajo: implementado por el diseador
Un producto de software grande se reparte en subsistemas pequeos (componentes o artefactos de cdigo implementados por un solo programador), los cuales son implementados en paralelo por equipos de codificacin
Proceso Unificado
Flujo de trabajo de las pruebas
Flujo de trabajo Toda persona de desarrollo es responsable de garantizar que si trabajo sea correcto centrales del proceso unificado Una vez el profesional de software esta convencido de Flujo de trabajo: que un artefacto esta correcto, ser manejado por el grupo De los de garanta de calidad de software para pruebas requerimientos independientes Del anlisis Artefactos de los requerimientos Del diseo
De la implementacin De las pruebas Si se tienen que probar durante el ciclo de vida del producto de software, entonces una propiedad que deben tener es la posibilidad de seguimiento Si los requerimientos han sido presentados en forma metdica, se han numerado adecuadamente, tienen las referencias y los ndices adecuados, entonces los desarrolladores tendrn poca dificultad en rastrear a travs de los artefactos ulteriores y garantizar que estos en realidad son un reflejo real de los requerimientos del cliente
Proceso Unificado
Flujo de trabajo de las pruebas
Flujo de trabajo Artefactos del anlisis centrales del Para comprobarlo se realiza una revisin por los proceso unificado representantes del equipo de anlisis y del cliente, dirigido
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas por un representante del grupo SQA (Garanta de Calidad de Software, Software Quality Assurance) Cuando inicia la planificacin detallada puede revisarse las estimaciones de costo y duracin
Proceso Unificado
Flujo de trabajo de las pruebas
Artefactos de la implementacin Flujo de trabajo centrales del proceso unificado
Flujo de trabajo: De los requerimientos Del anlisis Del diseo De la implementacin De las pruebas
Cada componente debe ser probado durante su implementacin (comprobacin de escritorio) y despus que se ha implementado, se corre contra pasos de prueba. Estas son realizadas por el programador Pruebas Unitarias: El grupo de garanta de calidad prueba el componente de forma metdica Pruebas de integracin: comprueban que los componentes se combinan correctamente para obtener un producto que satisfaga sus especificaciones Pruebas al producto: se verifica la funcionalidad de todo el producto contra las especificaciones, en particular deben probarse las restricciones listadas en las especificaciones Pruebas de aceptacin: se entrega al cliente, quien lo prueba en el hardware real y con datos reales Versin alfa: luego de realizado las pruebas se entrega los posibles clientes futuros seleccionados Versin beta: es la versin alfa corregida
Proceso Unificado
Mantenimiento Posentrega
Es una parte integral del proceso de programacin que debe ser planificada desde el principio Todo el esfuerzo de desarrollo del software ha de llevarse a cabo en tal forma para llevar al mnimo el efecto del mantenimiento posentrega futuro Probar cambios realizados el producto:
Verificar que los cambios requeridos hayan sido implementados correctamente Garantizar que no se hizo ningn otro cambio inadvertido. Esto se realiza haciendo pruebas al producto contra casos anteriores para cerciorarse que no se haya comprometido la funcionalidad del resto del producto (pruebas de regresin)
Debe crearse un registro de todos los cambios hechos, junto con el motivo para cada cambio.
Proceso Unificado
Retiro
Es la etapa final del ciclo de vida del software Etapa en que ya no se consigue una buena relacin de costo eficacia para mantenimiento posentrega:
Cuando los cambio sugeridos son tan exhaustivos que tendra que cambiarse todo el diseo Tal vez se hicieron tantos cambios al diseo original que se construyeron interdependencias inadvertidas del producto Tal vez se realizo un mantenimiento inadecuado de la documentacin, aumentando as el riesgo de una falla de regresin a hasta le grado que seria mas seguro recodificar que mantener El hardware (y el sistema operativo) en el que corre el producto va a ser sustituido; puede ser mas econmico volver a escribir desde cero que modificar
Proceso Unificado
Proceso Unificado
Fase de Comienzo
Su objetivo es determinar si vale la pena desarrollar el Las fases del producto objetivo proceso unificado Debemos comprender el propio dominio Fase de Como opera la organizacin cliente de este dominio comienzo Delimitar el alcance del proyecto Fase de elaboracin Identificar riesgos:
El objetivo del flujo de trabajo de prueba en esta fase es garantizar que se determinen con exactitud los requerimientos La planificacin es una parte esencial en cada fase. Los desarrolladores en esta fase tienen suficiente informacin al principio de la fase para planificar todo el desarrollo
Proceso Unificado
Fase de Comienzo
Entregables: Las fases del proceso unificado
Fase de comienzo Fase de elaboracin Fase de construccin Fase de transicin
Versin inicial del modelo del dominio Versin inicial del modelo de negocio Versin inicial de los artefactos para los requerimientos Una versin preliminar de los artefactos para el anlisis Una versin preliminar de la arquitectura La lista inicial de los riesgos Los casos de uso iniciales El plan para la fase de elaboracin La versin inicial del caso de negocios (incluye descripcin del alcance del producto y los detalles financieros)
Proceso Unificado
Fase de Comienzo
Las fases del proceso unificado
Fase de comienzo Fase de elaboracin Fase de construccin Fase de transicin
Proceso Unificado
Fase de Elaboracin
Su objetivo es afinar los requerimientos iniciales, afinar la Las fases del arquitectura, vigilar los riesgos y afinar sus prioridades, proceso unificado afinar el caso de negocio y producir el plan de Fase de administracin de proyecto. comienzo Las principales actividades son las depuraciones y Fase de elaboraciones de la fase anterior elaboracin Entregables: Fase de
construccin Fase de transicin El modelo del dominio terminado El modelo de negocio terminado Artefactos de requerimientos terminado Los artefactos del anlisis terminado Una versin actualizada de la arquitectura La lista actualizada de los riesgos El plan de administracin de proyecto de software (para el resto del proyecto) Caso de negocios terminado
Proceso Unificado
Fase de Elaboracin
Proceso Unificado
Fase de Construccin
Su objetivo es producir la primera versin con calidad Las fases del operativa del producto de software, denominada versin proceso unificado beta Fase de Se codifican los diversos componentes y se prueba la comienzo unidad Fase de Se compilan y vinculan (integran) para formar elaboracin subsistemas, los cuales se prueban para su integracin Fase de construccin Se combinan los subsistemas en el sistema general, el Fase de cual se prueba como producto
transicin
Proceso Unificado
Fase de Construccin
Entregables: Las fases del proceso unificado
Fase de comienzo Fase de elaboracin Fase de construccin Fase de transicin
Manual de usuario inicial y otros manuales, segn sea adecuado Todos los artefactos (las versiones de emisin beta) Arquitectura completa La lista de riesgos actualizada El plan de administracin de proyecto de software (para el resto del proyecto) Si es necesario, Caso de negocios actualizado
Proceso Unificado
Fase de Construccin
Proceso Unificado
Fase de Transicin
Su objetivo es garantizar que en realidad se hayan Las fases del cumplido los requerimientos del cliente proceso unificado Es accionada por la retroalimentacin desde los lugares Fase de donde se ha instalado la versin beta comienzo Se corrigen las fallas del producto software Fase de Se terminan todos los manuales elaboracin Fase de Se intenta descubrir todos los riesgos que no se haban construccin identificado antes Fase de Entregables: transicin
Todos los artefactos (versiones finales) Los manuales terminados
Tarea
Es el mas bajo Todo se hace sobre la marcha y para un propsito Patrn comn exceso de tiempo y costo causado por una falta de gestin en general y participacin en particular La mayor parte de las actividades reaccionan a las crisis y no a las tareas preplanificadas
El proceso para la produccin de software se documenta por completo Los aspectos gerenciales y tcnicos del proceso estn muy bien definidos y se hacen esfuerzos continuos para mejorar el proceso cuando es posible Se utilizan revisiones para conseguir objetivos de calidad de software Tiene sentido introducir nuevas tecnologas, como los ambientes CASE, para aumentar la calidad y productividad
Esta normativa es la que mas puede aplicarse al desarrollo de software Exige que se documente el proceso tanto con dibujos como con palabras, para garantizar conformidad y detalle Indica que la adhesin a las normas no garantiza un producto de buena calidad, pero reduce el riesgo de un producto de baja calidad Es necesaria la gestin del compromiso de calidad, capacitacin intensa de los trabajadores, y el establecimiento y consecucin de metas para el mejoramiento de la calidad
Diagramas
DFD
Diagrama de Flujo de procesos Entidad Responsable
Proceso
Flujo
Almacen
UML
Use Case (Casos de Uso)
Un caso de uso es un modelo de la iteracin entre los usuarios externos de un producto de software y el producto de software en si Un diagrama de casos de uso es un conjunto de casos de uso Notacin
Estereotipos: es una forma de extender el UML, es decir, si necesitamos definir una construccin que no este en el UML.
UML
Diagrama de Clases
Definicin:
Agregacin:
Multiplicidad Composicin
Generalizacin
Asociacin: se refiere a una relacin de algn tipo entre dos clases aparentemente no relacionadas. Nota: Para incluir un comentario en un diagrama UML, lo colocamos dentro de una nota (un rectngulo con la esquina superior derecha doblada)