UNIVERSIDAD TECNOLÓGICA DE JALISCO

Tamaño: px
Comenzar la demostración a partir de la página:

Download "UNIVERSIDAD TECNOLÓGICA DE JALISCO"

Transcripción

1 UNIVERSIDAD TECNOLÓGICA DE JALISCO Creación Periodo: Mayo - Agosto 2013 Adecuaciones Periodo: Por: M.C. Felipe Belmont Polanco M.C.Felipe Belmont Polanco. Pág. 1

2 Temario I.- Introducción a la ingeniería de software. II.- Ingeniería de requerimientos. III.- Diagramas UML IV.- Modelos de proceso. V.- Pruebas y aseguramiento de calidad. Evaluación Criterios / Cortes I II III Examen teórico % % Tareas / Avances. 50 % 60 % % Proyecto % Cero faltas/cumplir reglamento. 10 % 10 % 10 % M.C.Felipe Belmont Polanco. Pág. 2

3 Introducción a la ingeniería de software La noción de ingeniería del software fue propuesta inicialmente en 1968 en una conferencia para discutir lo que en ese entonces se llamó la crisis del software. Esta crisis del software fuel el resultado de la introducción de las nuevas computadoras de circuitos integrados y la combinación del resultado de software de magnitud más grande y más complejo que los sistemas previos. La construcción de los sistemas mostró que se utilizaba un enfoque informal para el desarrollo de software, por lo que los grandes proyectos a menudo tenían años de retraso y costaban mucho más de lo presupuestado, eran irrealizables, difíciles de mantener y con un desempeño pobre. El desarrollo de software estaba en crisis. Se necesitaban nuevas técnicas y métodos para controlar la complejidad inherente a los sistemas grandes. Estas técnicas han llegado a ser parte de la ingeniería del software y son ampliamente utilizadas. Las nuevas tecnologías resultantes de la convergencia de las computadoras y de los sistemas de comunicación y complejas interfaces gráficas de usuario impusieron nuevas demandas a los ingenieros de software. Se han desarrollado métodos efectivos de especificación, diseño e implementación del software, junto con notaciones y herramientas que reducen el esfuerzo requerido para producir sistemas grandes y complejos. Por lo que se sabe que no hay un enfoque ideal en la ingeniería de software sino que se utilizan diversos enfoques, pero las nociones fundamentales de procesos y la organización del sistema son la base de todas estas técnicas. Software El software es el término utilizado para asignar a los programas de computadora y a su documentación asociada que explica cómo utilizar el sistema. Se pueden clasificar de forma general dos tipos de productos de software. Productos genéricos. Son sistemas producidos para cualquier cliente que le sea posible comprarlos, y los requerimientos son controlados por la organización desarrolladora. Productos personalizados (hechos a la medida). Son sistemas requeridos por un cliente particular, y un contratista de software lo desarrolla, en este caso el cliente controlan sus requerimientos. M.C.Felipe Belmont Polanco. Pág. 3

4 Cada vez más compañías de software empiezan con un sistema genérico y lo adaptan a las necesidades de un cliente en particular. Los sistemas de planificación de recursos empresariales (ERP- Enterprise Resource Planning), como los sistemas denominados Sistemas, Aplicaciones y Productos en Procesamiento de datos (SAP- Systems, Applications, Products in Data Processing), son el mejor ejemplo de este enfoque. Aquí, un sistema complejo se adapta a una compañía. Ingeniería del software La ingeniería del software es una disciplina de la ingeniería, donde se aplican teorías, métodos y herramientas, e involucra procesos inherentes a la producción de software, tales como la gestión de proyectos, en el que se adoptan enfoques sistemáticos y organizados para la producción de software de calidad. Proceso del software Un proceso del software es un conjunto de actividades y resultados asociados a la producción de software, existen cuatro actividades fundamentales de procesos que son comunes para todos los desarrollos de software. 1.- Especificación del software: donde los clientes e ingenieros definen el software a producir y las restricciones de su operación. 2.- Desarrollo del software: donde el software se diseña y programa. 3.- Validación del software: donde el software se asegurar que es lo que el cliente requiere. 4.- Evolución del software: donde el software se modifica para adaptarlo a los cambios requeridos por el cliente y el mercado. M.C.Felipe Belmont Polanco. Pág. 4

5 Atributos de un buen software El software tiene ciertos atributos asociados que reflejan su calidad. Estos atributos no están directamente asociados con los procesos y resultados que se obtienen del software. Más bien, reflejan en su comportamiento e interacción de manera externa en cuanto a su organización del programa y su documentación asociada. Ejemplos de estos atributos (algunas veces llamados atributos no funcionales) son el tiempo de respuesta del software a una pregunta del usuario, en un sistema bancario debe ser seguro, un juego interactivo debe tener capacidad de respuesta rápida, un interruptor de un sistema telefónico debe ser fiable. Mantenibilidad Confiabilidad Eficiencia Usabilidad El software debe escribirse de tal forma que pueda evolucionar para cumplir las necesidades de cambio de los dientes. Éste es un atributo critico debido a que el cambio en el software es una consecuencia inevitable de un cambio en d entorno de negocios. La confiabilidad del software tiene un gran número de características, incluyendo la fiabilidad, protección y seguridad. El software confiable no debe causar daños físicos o económicos en el caso dé una faya del sistema. El software no debe hacer que se malgasten los recursos del sistema, como la memoria y los tiempos de procesamiento. Por lo tanto, la eficiencia incluye tiempos de respuesta. El software debe ser fácil de utilizar, sin esfuerzo adicional, el usuario para quien está diseñado. Esto significa que debe tener una interfaz de usuario apropiada y una documentación adecuada. Modelos del proceso de software Un modelo del proceso del software es una representación abstracta de un proceso que se pueden utilizar para explicar diferentes enfoques para el desarrollo de software, también llamados paradigmas de proceso, y puede pensarse en ellos como marcos de trabajo que pueden ser extendidos y adaptados para crear procesos más específicos de ingeniería del software (Sommerville). M.C.Felipe Belmont Polanco. Pág. 5

6 Modelos clásicos Los modelos de procesos dependen de las opiniones o creencias de las personas involucradas en un proyecto. El modelo en cascada Se origino entre la década de los 60 y 70, se define como una secuencia de actividades, donde la estrategia es seguir el progreso del desarrollo de software hacia puntos de revisión (milestones o checkpoints) mediante entregas calendarizadas (schedule), dicho modelo también se le conoce como ciclo de vida del software, por sus etapas. 1. Análisis y definición de requerimientos. Los servicios, restricciones y metas del sistema se definen a partir de las consultas con los usuarios. Entonces, se definen en detalle y sirven como una especificación del sistema. 2. Diseño del sistema y del software. El proceso de diseño del sistema divide los requerimientos en hardware o software. Establece una arquitectura completa del sistema. 3. Implementación y prueba de unidades. Durante esta etapa, el diseño del software se lleva a cabo como un conjunto o unidades de programas. La prueba de unidades implica verificar que cada una cumpla su especificación. 4. Integración y prueba del sistema. Los programas o las unidades individuales de programas se integran y prueban como un sistema completo para asegurar que se cumplan los requerimientos del software. Después de las pruebas, el sistema software se entrega al cliente. 5. Funcionamiento y mantenimiento. Por lo general (aunque no necesariamente), ésta es la fase más larga del ciclo de vida. El sistema se instala y se pone en funcionamiento, y se corrigen errores no descubiertos en las etapas anteriores del ciclo de vida. El modelo original planteaba que cada actividad debía completarse antes de poder continuar, sin embargo posteriormente el modelo permitió el regreso a actividades anteriores, como se muestra en la figura 1. M.C.Felipe Belmont Polanco. Pág. 6

7 Figura 1. Secuencia de actividades del modelo en cascada. El modelo evolutivo El desarrollo evolutivo se basa en la idea de desarrollar una implementación inicial, exponiéndola a los comentarios del usuario y refinándola a través de las diferentes versiones hasta que se desarrolla un sistema adecuado. Las actividades de especificación, desarrollo y validación se entrelazan en vez de separarse, con una rápida retroalimentación entre éstas. El modelo evolutivo es también conocido como desarrollo rápido de aplicaciones (RAD, Rapid Application Development), que se basa en el uso de prototipos, lo que permite tener dos tipos de desarrollos evolutivos. 1. Desarrollo exploratorio, donde el objetivo del proceso es trabajar con el cliente para explorar sus requerimientos y entregar un sistema final. El desarrollo empieza con las partes del sistema que se comprenden mejor. El sistema evoluciona agregando nuevos atributos propuestos por el cliente. 2. Prototipos desechables, donde el objetivo es comprender los requerimientos del cliente y entonces desarrollar una definición mejorada de los requerimientos para el sistema. El prototipo se centra en experimentar con los requerimientos del cliente que no se comprenden bien. En la producción de sistemas, un enfoque evolutivo para el desarrollo de software suele ser más efectivo que el enfoque en cascada, ya que satisface las necesidades inmediatas de los clientes. La ventaja de un proceso del software que se basa en un enfoque evolutivo es que la especificación se puede desarrollar de forma creciente como se muestra en la figura 2. M.C.Felipe Belmont Polanco. Pág. 7

8 Figura 2. Secuencia de versiones del modelo evolutivo. El modelo incremental En un proceso de desarrollo incremental, los clientes identifican, a grandes rasgos, los servicios que proporcionará el sistema. Identifican qué servicios son más importantes y cuáles menos. Una vez seleccionados los servicios de mayor importancia, se definen varios incrementos que dependen de la prioridad y la funcionalidad del sistema. La asignación de servicios a los incrementos depende de la prioridad, por lo que la más alta será entregada primero. Cuando los incrementos del sistema se han identificado, los requerimientos para los servicios que se van a entregar en el primer incremento se definen en detalle, y éste se desarrolla. Durante el desarrollo no se aceptan cambios en los requerimientos para el incremento actual. Se puede llevar a cabo un análisis adicional de requerimientos para los requerimientos posteriores. Una vez que un incremento se completa y entrega, los clientes pueden ponerlo en servicio. Esto significa que tienen una entrega temprana de parte de la funcionalidad del sistema. Pueden experimentar con el sistema, lo cual les ayuda a clarificar sus requerimientos para los incrementos posteriores y para las últimas versiones del incremento actual, como se muestra en la figura 3. Figura 3. Entrega incremental. M.C.Felipe Belmont Polanco. Pág. 8

9 En el modelo incremental aprovecha las ventajas de los enfoques en cascada y evolutivo, puesto que en el modelo de desarrollo en cascada se requiere que los clientes cumplan un conjunto de requerimientos antes de iniciar el diseño, y en el enfoque evolutivo permite que los requerimientos y el diseño se retrasen, pero también origina un software que puede estar débilmente estructurado y difícil de mantener. El modelo espiral El modelo en espiral es una extensión del modelo en cascada, originalmente propuesto por Boehm (Boehm, 1988). Más que representar el proceso como una secuencia de actividades, se representa como una espiral. Cada ciclo en la espiral representa una fase del proceso del software. El ciclo más interno podría referirse a la viabilidad del sistema, el siguiente ciclo a la definición de requerimientos, el siguiente al diseño del sistema, y así sucesivamente. Cada ciclo de la espiral se divide en cuatro sectores como se muestra en la figura Definición de objetivos. En esta fase del proyecto se definen los objetivos específicos. Se identifican las restricciones del proceso y el producto, y se traza un plan detallado de gestión. Se identifican los riesgos del proyecto. Dependiendo de estos riesgos, se planean estrategias alternativas. 2. Evaluación y reducción de riesgos. Se lleva a cabo un análisis detallado para cada uno de los riesgos del proyecto identificados. Se definen los pasos para reducir dichos riesgo. Por ejemplo, si existe el riesgo de tener requerimientos inapropiados, se puede desarrollar un prototipo del sistema. 3. Desarrollo y validación. Después de la evaluación de riesgos, se elige un modelo para el desarrollo del sistema. Por ejemplo, si los riesgos en la interfaz de usuario son dominantes, un modelo de desarrollo apropiado podría ser la construcción de prototipos evolutivos. Si los riesgos de seguridad son la principal consideración, un desarrollo basado en transformaciones formales podría ser el más apropiado, y así sucesivamente. El modelo en cascada puede ser el más apropiado para el desarrollo si el mayor riesgo identificado es la integración de los subsistemas. 4. Planificación. El proyecto se revisa y se toma la decisión de si se debe continuar con un ciclo posterior de la espiral. Si se decide continuar, se desarrollan los planes para la siguiente fase del proyecto. M.C.Felipe Belmont Polanco. Pág. 9

10 La diferencia principal entre el modelo en espiral y los otros modelos del proceso del software es la consideración explícita del riesgo. Informalmente, el riesgo significa sencillamente algo que puede ir mal. Figura 4. Modelo espiral. Modelos recientes El modelo Ganar-ganar (win-win) Este modelo extiende el modelo espiral, donde se crea una estrecha relación cliente-desarrollador, donde ambos buscan lo más conveniente para todos, y de manera individual el cliente busca la satisfacción, reducción de costos, acortar los tiempos de entrega y mejoras del sistemas. En cada giro de esta espiral hay tres puntos claves. 1. Objetivo del ciclo de Vida (OCV). Se definen los objetivos a alcanzarse en cada segmento de la espiral. 2. Arquitectura del ciclo de Vida (ACV). Una vez definido los objetivos se establece la manera en cómo se actuará para llevarse a cabo cada uno de ellos. 3. La Capacidad operativa Inicial (COI). Una vez establecidos objetivos y la forma de atacar cada uno de ellos, se lleva la fase de aplicación y evaluación de resultados. M.C.Felipe Belmont Polanco. Pág. 10

11 Figura 5. Modelo Ganar-ganar (Win-win). El modelo programación extrema (XP) La programación extrema (XP, extreme Programming), es una variante del enfoque incremental. Ésta se basa en el desarrollo y la entrega de incrementos de funcionalidad muy pequeños, reduciendo el riesgo en el ciclo de vida del software, con la participación del cliente en el proceso, en la mejora constante del código como se muestra en la figura 6. XP considera que la mejor manera de tratar la falta de requisitos estables, es mediante la agilidad de un grupo pequeño de desarrollo, pero privilegia el desarrollo de software en pares (pair programming), se guía por sus valores. Simplicidad. Es la base de la programación extrema. Se simplifica el diseño para agilizar el desarrollo y facilitar el mantenimiento, también se aplica en la documentación, de esta manera el código debe comentarse en su justa medida, para ello se deben elegir adecuadamente los nombres de las variables, métodos y clases. Comunicación. Se realiza de diferentes formas, para los programadores en el código más simple para entender mejor en la programación por parejas, en las pruebas unitarias se describen el diseño de las clases y los métodos al mostrar ejemplos concretos de como utilizar su funcionalidad, y la comunicación fluida con el cliente ya que forma parte del equipo. El cliente decide qué características tienen prioridad. M.C.Felipe Belmont Polanco. Pág. 11

12 Retroalimentación (feedback). Al estar el cliente integrado en el proyecto, su opinión sobre el estado del proyecto se conoce en tiempo real. Al realizarse ciclos muy cortos tras los cuales se muestran resultados, se minimiza el tener que rehacer partes que no cumplen con los requisitos y ayuda a los programadores a centrarse en lo que es más importante. Coraje o valentía. Muchas de las prácticas implican valentía. Una de ellas es siempre diseñar y programar para hoy y no para mañana. Esto es un esfuerzo para evitar empantanarse en el diseño y requerir demasiado tiempo y trabajo para implementar el resto del proyecto, así también es sentirse cómodos con reconstruir su código cuando sea necesario. Respeto. Los miembros respetan su trabajo y el de los demás, porque siempre están luchando por la alta calidad en el producto y buscando el diseño óptimo o más eficiente para la solución a través de la reconstrucción del código. Figura 6. Modelo programación extrema. M.C.Felipe Belmont Polanco. Pág. 12

13 Ingeniería de requerimientos Para crear una aplicación de software hay que describir el problema y las necesidades o requerimientos, en qué consiste el conflicto y qué debe hacerse. Las definiciones de requerimientos del sistema especifican qué es lo que el sistema debe hacer (sus funciones) y sus propiedades esenciales y deseables, desde la perspectiva de los clientes del sistema y de los usuarios finales. Los requerimientos son lo primero a desarrollar y es la base para construir el software, así que cualquier cambio en la funcionalidad del sistema, es más fácil de hacer y con menores consecuencias en este nivel que en posteriores niveles. La especificación del software o ingeniería de requerimientos es el proceso de comprensión y definición de qué servicios se requieren del sistema y de la identificación de las restricciones de funcionamiento y del desarrollo del mismo. Par cumplir con un correcto desarrollo se involucra el proceso del software considerando el análisis y el diseño de forma implícita. Análisis Para crear una aplicación de software hay que describir el problema y las necesidades o requerimientos. El análisis se centra en una investigación del problema, no en la manera de definir una solución. Procesos de negocios El primer paso consiste en analizar lo que debe hacer una empresa, sus procesos de negocios si quiere seguir funcionando esto es realizar ventas, pagar a empleados y acreedores, desarrollar programas de computación. Desde el punto de vista del método del análisis y el diseño, este paso se refiere al análisis de requerimientos, en el cual los procesos y las necesidades de los negocios se descubren y se expresan en forma de descripciones narrativas textuales de los procesos de una empresa o sistema. M.C.Felipe Belmont Polanco. Pág. 13

14 Diseño Para desarrollar una aplicación, también es necesario contar con descripciones detalladas y de alto nivel de la solución lógica y saber cómo satisface los requerimientos y las restricciones. En el diseño se propone una solución lógica, definiendo los objetos lógicos del software que finalmente serán implementados en un lenguaje de programación orientado a objetos. Requerimientos Los requerimientos para un sistema son la descripción de los servicios proporcionados por el sistema y sus restricciones operativas. El proceso de descubrir, analizar, documentar y verificar estos servicios y restricciones se denomina ingeniería de requerimientos (RE). El término requerimiento no se utiliza de una forma constante en la industria de software. En algunos casos, es simplemente una declaración abstracta de alto nivel de un servicio que debe proporcionar el sistema o una restricción de éste. Algunos de los problemas que surgen durante el proceso de ingeniería de requerimientos son resultado de no hacer una clara separación de los diferentes niveles de descripción. Requerimientos funcionales Son declaraciones de los servicios que debe proporcionar el sistema, los requerimientos funcionales del sistema describen con detalle la función de éste, sus entradas y salidas, excepciones, etcétera. Requerimientos no funcionales Son aquellos requerimientos que no se refieren directamente a las funciones que proporciona el sistema, sino a las propiedades emergentes que definen las restricciones del sistema, estas propiedades emergentes pueden variar. Los asociados al producto, delimitan el rendimiento en la rapidez de ejecución del sistema y cuánta memoria se requiere. Los asociados a la organización, que se derivan de políticas y procedimientos de la organización del cliente y en la del desarrollador, como son los lenguajes de programación, y los mecanismos de entrega del producto y su documentación. Los externos, que se derivan de los factores de interoperabilidád con sistemas de otras organizaciones; los legislativos para asegurar que el sistema funcione dentro de la ley, y asegurar que será aceptado por sus usuarios y por el público en general. M.C.Felipe Belmont Polanco. Pág. 14

15 Obtención y análisis de requerimientos La obtención y análisis de requerimientos pueden afectar a varias personas de la organización. El término stakeholder (los interesados) se utiliza para referirse a cualquier persona o grupo que se verá afectado por el sistema, directa o indirectamente. Obtención de los requerimientos La obtención de los requerimientos se da en la relación con los stakeholders a través de entrevistas y de la observación (etnografía). En las entrevistas formales o informales con los stakeholders del sistema se usan, las entrevistas cerradas donde solo se responden a un conjunto predefinido de preguntas, mientras que las entrevistas abiertas, no hay un programa predefinido se examina una serie de cuestiones del sistema y se desarrolla una mejor comprensión de sus necesidades. La etnografía es una técnica de observación, que se utiliza para entender los requerimientos sociales y organizacionales, los sistemas de software no existen de forma aislada, se utilizan en un contexto social y organizacional, y los requerimientos se pueden derivar y restringir según ese contexto, una razón del por qué muchos sistemas nunca se utilizan es que no se tiene en cuenta adecuadamente la importancia social. La función es observar el trabajo diario y anotar las tareas reales en las que los participantes están involucrados. Análisis de los requerimientos En el análisis de requerimientos, los procesos y las necesidades del negocio se descubren y se expresan con descripciones narrativas textuales de las actividades de una empresa o sistema, y se deben revisar y validar. Una revisión de requerimientos es un proceso manual que involucra a personas tanto de la organización del cliente como de la del contratista, las revisiones de requerimientos pueden ser informales que implican que los contratistas revisen los requerimientos con tantos stakeholders como sea posible. En la revisión formal, el equipo de desarrollo explica las implicaciones de cada requerimiento a los clientes. La validación de requerimientos trata encontrar problemas con los requerimientos, y de mostrar que las definiciones del sistema coinciden con lo que el cliente desea. La validación de requerimientos es importante debido a que los errores en el documento de requerimientos pueden conducir a importantes costos al repetir el trabajo cuando son descubiertos durante el desarrollo o después de que el sistema esté en uso. M.C.Felipe Belmont Polanco. Pág. 15

16 El documento de requerimientos El documento de requerimientos del software (algunas veces denominado especificación de requerimientos del software o SRS), es la declaración oficial de qué deben implementar los desarrolladores del sistema. El documento de requerimientos tiene un conjunto diverso de usuarios que va desde los altos funcionarios de la organización que pagan por el sistema, hasta los ingenieros responsables de desarrollar el software. El nivel de detalle que se debe incluir en un documento de requerimientos, depende del tipo de sistema que se desarrolle y del proceso de desarrollo utilizado. IEEE/ANSI 830 Varias organizaciones grandes, como el Departamento de Defensa de los Estados Unidos y el IEEE, han definido estándares para los documentos de requerimientos. El estándar más ampliamente conocido es el IEEE/ANSI (IEEE, 1998). Casos de uso Los casos de uso son una técnica de escenarios para la obtención de requerimientos, es basado en Objectory (Jacobson et al. 1992), actualmente ésta metodología es parte del proceso unificado de racional (RUP, Rational Unified Process). Los casos de uso identifican las interacciones particulares con el sistema. Pueden ser documentadas con texto o vinculadas a modelos UML (Unified Modeling Language, Lenguaje Unificado de Modelado), que desarrollan el escenario en más detalle. M.C.Felipe Belmont Polanco. Pág. 16

17 Diagramas UML El UML (Unified Modeling Language, Lenguaje Unificado de Modelado) es una herramienta que sirven como enlace entre quien tiene la idea y el desarrollador, ya que le ayuda a capturar la idea de un sistema para comunicarla posteriormente a quien esté involucrado en su proceso de desarrollo; esto se lleva a cabo mediante un conjunto de símbolos y diagramas. Cada diagrama tiene fines distintos dentro del proceso de desarrollo. UML es el sucesor de la ola de métodos de análisis y diseño orientado a objetos que aparecieron a finales de los 80 y principios de los 90, UML unifica principalmente los métodos de Booch, Rumbaught (OMT) y Jacobson. UML está en proceso de estandarización por el OMG (Object Management Group), UML es un lenguaje de modelado, no un método. El modelo UML El UML es un estándar para construir modelos orientados a objetos. Nació en 1994 por iniciativa de Grady Booch y Jim Rumbaugh para combinar sus dos famosos métodos: el de Booch y el OMT (Object Modeling Technique, Técnica de Modelado de Objetos). Más tarde se les unió Ivar Jacobson, creador del método OOSE (Object-Oriented Software Engineering, Ingeniería de Software Orientada a Objetos). En respuesta a una petición de OMG (Object Management Group, asociación para fijar los estándares de la industria) para definir un lenguaje y una notación estándar del lenguaje de construcción de modelos, en 1997 propusieron el UML como candidato. En esta sección no se incluye todos los detalles de UML, un conjunto relativamente amplio de notaciones. Se centra en los diagramas de uso frecuente y en las características que más se utilizan dentro de ellos. Existen diversos fabricantes que cuentan con paquetes que le permitirán generar diagramas UML y coordinarlos en un modelo. Los más notables son Rational Rose y SELECT Enterprise, a demás de Visual UML (en Visual Studio Ultimate), y otras herramientas disponibles como son ArgoUML, y BOUML. Un sistema del mundo real como en el mundo del software, suele ser extremadamente complejo; por ello es necesario dividir el sistema en partes o fragmentos si queremos entender y administrar su complejidad. Estas partes podemos representarlas como modelos que describan y abstraigan sus aspectos esenciales [Rumbaugh97]. M.C.Felipe Belmont Polanco. Pág. 17

18 Casos de uso Los procesos de la organización pertenecientes al sistema se pueden expresar en casos de uso, o sea, en una descripción narrativa de los procesos del dominio en un formato estructurado, con el siguiente formato. Caso de uso: Participantes: Descripción: Requerimientos y casos de uso Un proyecto no puede ser exitoso sin una especificación correcta y exhaustiva de los requerimientos. Para ello se presentará un caso de estudio que integra el documento de requerimientos que se integrará posterior mente con los casos de uso. Presentación general: Este proyecto tiene por objeto crear un sistema de terminal para el punto de venta que se utilizará en las ventas al menudeo. Clientes: Juguete Feliz, Inc., detallista multinacional de objetos. Metas: Una mayor automatización del pago en las cajas registradoras, servicios más rápidos, mejorar los procesos de negocios. En concreto: Pago rápido de los clientes, Análisis rápido y exacto de las ventas, y Control automático del inventario. Las funciones del sistema: son lo que éste habrá de hacer, por ejemplo autorizar los pagos a crédito. Hay que identificarlas y listarlas en grupos cohesivos y lógicos. Con el objeto de verificar que alguna acción es de verdad una función del sistema, la siguiente oración deberá tener sentido, El sistema deberá autorizar los pagos a crédito. Los atributos del sistema son cualidades no funcionales: entre ellas la facilidad de uso que a menudo se confunden con las funciones. Nótese que "facilidad de uso" no encaja en la oración de verificación, El sistema deberá la facilidad de uso. Las funciones han de clasificarse por categorías a fin de establecer prioridades entre ellas e identificarlas. M.C.Felipe Belmont Polanco. Pág. 18

19 Categoría de la función. Evidente. Oculta. Significado. Debe realizarse, y el usuario debería saber que se ha realizado. Debe realizarse, aunque no es visible para los usuarios. Esto se aplica a muchos servicios técnicos subyacentes, como guardar información en un mecanismo persistente de almacenamiento. Las funciones ocultas no se deberían omitir en la obtención de los requerimientos. Superflua. Opcionales; su inclusión no repercute significativamente en el costo ni en otras funciones. Para nuestro caso de estudio se muestran las siguientes a manera de ejemplo. Ref # Función. Categoría. R1.1 Registra la venta en proceso (actual): los productos Evidente. comprados. R1.2 Calcula el total de la venta actual; se incluyen el Evidente. impuesto y los cálculos de cupón. R1.3 Captura la información sobre el objeto comprado Evidente. usando su código de barras y un lector o usando una captura manual de un código del producto; por ejemplo, un código universal de producto (UPC). R1.4 Reduce las cantidades del inventario cuando se Oculta. realiza una venta. R1.5 Se registran las ventas efectuadas. Oculta. R1.6 El cajero debe introducir una identificación y una Evidente. contraseña para poder utilizar el sistema. R1.7 Ofrece un mecanismo de almacenamiento Oculta. persistente. R1.8 Muestra la descripción y el precio del producto Evidente. registrado. El caso de uso es un documento narrativo que describe la secuencia de eventos de un actor (agente externo) que utiliza un sistema para completar un proceso, existen de alto nivel que muestra un proceso de forma general o los expandidos que muestran a detalle las actividades de un proceso se representa mediante un ovalo. Comprar productos M.C.Felipe Belmont Polanco. Pág. 19

20 El siguiente caso de uso de alto nivel describe clara y concisamente el proceso de comprar artículos en una tienda cuando se emplea una terminal en el punto de venta. Caso de uso: Comprar productos Actores: Cliente, Cajero. Tipo: Primario. Descripción: Un Cliente llega a la caja registradora con los artículos que comprará. El Cajero registra los artículos y cobra el importe. Al terminar la operación, el Cliente se marcha con los productos. Los encabezados y la estructura de este caso de uso son representativos. Sin embargo, el UML no especifica un formato rígido; puede modificarse para atender las necesidades y ajustarse al espíritu de la documentación: ante todo, una comunicación clara. Conviene comenzar con los casos de uso de alto nivel para lograr rápidamente entender los principales procesos globales. Un caso expandido de uso muestra más detalles que uno de alto nivel; este tipo de casos suelen ser útiles para alcanzar un conocimiento más profundo de los procesos y de los requerimientos. Caso de uso: Comprar productos en efectivo. Actores: Cliente (Iniciador). Cajero. Propósito: Capturar una venta y su pago en efectivo. Resumen: Un Cliente llega a la caja registradora con artículos que desea comprar. El Cajero registra los productos y recibe un pago en efectivo. Al terminar la operación, el Cliente se marcha con los productos comprados. Tipo: Primario y esencial. Referencias cruzadas: Funciones: Rl.l. R1.2. R1.3. R1.7, Rl.9, R2.1. Acción del actor 1. Este caso de uso comienza cuando un Cliente llega a una caja de TPDV (Terminal Punto de Venta) con pro ductos que desea comprar. 2. El Cajero registra el identificador de cada producto. Si hay varios productos de una misma categoría, el Cajero también puede introducir la cantidad. 4. Al terminar de introducir el producto, el Cajero indica a TPDV que se concluyó la captura del producto. 6. El Cajero le indica el total al Cliente. Curso normal de eventos Respuesta del sistema. 3. Determina el precio del producto e incorpora a la transacción actual la información correspondiente. Se presentan la descripción y el precio del producto actual. 5. Calcula y presenta el total de la venta. M.C.Felipe Belmont Polanco. Pág. 20

21 Curso normal de eventos Acción del actor Respuesta del sistema. 7. El Cliente efectúa un pago en efectivo posiblemente mayor que el total de la venta. 8. El Cajero registra la cantidad de efectivo 9. Muestra al cliente la diferencia. Genera recibida. un recibo. 10. El Cajero deposita el efectivo recibido y 11. Registra la venta concluida. extrae el cambio del pago. El Cajero da al Cliente el cambio y el recibo impreso. 12. El Cliente se marcha con los artículos comprados. Cursos alternos Linea 2: introducción de identificador inválido. Indicar error. Línea 7: el cliente no tenía suficiente dinero. Cancelar la transacción de venta. La sección intermedia, curso normal de los eventos, es la parte medular del formato expandido; describe los detalles de la conversión interactiva entre los actores y el sistema. La última sección, curso alterno de los eventos, describe importantes opciones o excepciones que pueden presentarse en relación con el curso normal. El actor es una entidad externa del sistema que de alguna manera participa en la historia del caso de uso. Por lo regular estimula el sistema con eventos de entrada o recibe algo de él. Los actores están representados por el papel que desempeñan en el caso: Cliente, Cajero u otro. Conviene escribir su nombre con mayúscula en la narrativa del caso para facilitar la identificación. Un diagrama de casos de uso explica gráficamente un conjunto de casos de uso de un sistema, los actores y la relación entre éstos y los casos de uso. Estos últimos se muestran en óvalos y los actores son figuras estilizadas. Hay líneas de comunicaciones entre los casos y los actores; las flechas indican el flujo de la información o el estimulo. M.C.Felipe Belmont Polanco. Pág. 21

El Proceso Unificado de Desarrollo de Software

El Proceso Unificado de Desarrollo de Software El Proceso de Desarrollo de Software Ciclos de vida Métodos de desarrollo de software El Proceso Unificado de Desarrollo de Software 1 Fases principales del desarrollo de software Captura de requisitos:

Más detalles

Tema 1 Introducción a la Ingeniería de Software

Tema 1 Introducción a la Ingeniería de Software Tema 1 Introducción a la Ingeniería de Software Curso Ingeniería de Software UMCA Profesor Luis Gmo. Zúñiga Mendoza 1. Software En la actualidad todo país depende de complejos sistemas informáticos. Podemos

Más detalles

El Proceso Unificado Rational para el Desarrollo de Software.

El Proceso Unificado Rational para el Desarrollo de Software. Instituto de Electrónica y Computación El Proceso Unificado Rational para el Desarrollo de Software. Carlos Alberto Fernández y Fernández Huajuapan de León, Oaxaca 26 de octubre de 2000 Objetivo Proporcionar

Más detalles

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos.

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos. Apéndice C. Glosario A Actividades de coordinación entre grupos. Son dinámicas y canales de comunicación cuyo objetivo es facilitar el trabajo entre los distintos equipos del proyecto. Actividades integradas

Más detalles

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.

Más detalles

DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE

DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE UNIVERSIDAD DEL CAUCA FACULTAD DE INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 8. Introducción a los métodos de desarrollo de software

Fundamentos de Ingeniería del Software. Capítulo 8. Introducción a los métodos de desarrollo de software Fundamentos de Ingeniería del Software Capítulo 8. Introducción a los métodos de desarrollo de software Introducción a los métodos de desarrollo de software. Estructura 1. Definición. 2. Beneficios. 3.

Más detalles

MANTENIMIENTO Y SOPORTE

MANTENIMIENTO Y SOPORTE MANTENIMIENTO Y SOPORTE Copyright 2014 Magalink SA Todos los derechos reservados. Este documento no puede ser reproducido de ninguna manera sin el consentimiento explícito de Magalink S.A. La información

Más detalles

UML. Lenguaje de Modelado Unificado

UML. Lenguaje de Modelado Unificado Lenguaje de Modelado Unificado Concepto de Reseña Histórica Características Estándares que conforman Modelo Relacional con Ventajas Críticas Concepto de (Unified( Modeling language) Es un lenguaje usado

Más detalles

Análisis y gestión de riesgo

Análisis y gestión de riesgo Marco Dueñes Intriago María Cabrales Jaquez Resumen capitulo 6 Ingeniería del software Análisis y gestión de riesgo Estrategias de riesgo proactivas vs reactivas Una estrategia considerablemente más inteligente

Más detalles

6. Gestión de proyectos

6. Gestión de proyectos 6. Gestión de proyectos Versión estudiante Introducción 1. El proceso de gestión de proyectos 2. Gestión del riesgo "La gestión de proyectos se basa en establecer objetivos claros, gestionar el tiempo,

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Planificación, Administración n de Bases de Datos. Bases de Datos. Ciclo de Vida de los Sistemas de Información. Crisis del Software.

Planificación, Administración n de Bases de Datos. Bases de Datos. Ciclo de Vida de los Sistemas de Información. Crisis del Software. Planificación, n, Diseño o y Administración n de Crisis del Software Proyectos software de gran envergadura que se retrasaban, consumían todo el presupuesto disponible o generaban productos que eran poco

Más detalles

Unidad VI: Supervisión y Revisión del proyecto

Unidad VI: Supervisión y Revisión del proyecto Unidad VI: Supervisión y Revisión del proyecto 61. Administración de recursos La administración de recursos es el intento por determinar cuánto, dinero, esfuerzo, recursos y tiempo que tomará construir

Más detalles

Curso: Arquitectura Empresarial basado en TOGAF

Curso: Arquitectura Empresarial basado en TOGAF Metodología para desarrollo de Arquitecturas (ADM) El ADM TOGAF es el resultado de las contribuciones continuas de un gran número de practicantes de arquitectura. Este describe un método para el desarrollo

Más detalles

El Rol Estratégico de los Sistemas de Información. Aplicaciones de sistemas clave en la organización (1)

El Rol Estratégico de los Sistemas de Información. Aplicaciones de sistemas clave en la organización (1) El Rol Estratégico de los Sistemas de Información Aplicaciones de sistemas clave en la organización (1) Puesto que en una organización hay diferentes intereses, especialidades y niveles, hay diferentes

Más detalles

LA REVOLUCIÓN DE LOS SISTEMAS DE INFORMACIÓN (S.I.) Introducción PORQUÉ SISTEMAS DE INFORMACIÓN? El Competitivo Entorno de los Negocios

LA REVOLUCIÓN DE LOS SISTEMAS DE INFORMACIÓN (S.I.) Introducción PORQUÉ SISTEMAS DE INFORMACIÓN? El Competitivo Entorno de los Negocios LA REVOLUCIÓN DE LOS SISTEMAS DE INFORMACIÓN (S.I.) Introducción Tanto empresas grandes como pequeñas usan Sistemas de Información y Redes para realizar una mayor proporción de sus actividades electrónicamente,

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Técnica de modelado de objetos (I) El modelado orientado a objetos es una técnica de especificación semiformal para

Más detalles

DIAGRAMA DE CLASES EN UML

DIAGRAMA DE CLASES EN UML DIAGRAMA DE CLASES EN UML Mg. Juan José Flores Cueto jflores@usmp.edu.pe Ing. Carmen Bertolotti Zuñiga cbertolotti@usmp.edu.pe INTRODUCCIÓN UML (Unified Modeling Language) es un lenguaje que permite modelar,

Más detalles

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es

Más detalles

1 FUNDAMENTACION DE LA MATERIA

1 FUNDAMENTACION DE LA MATERIA 1 FUNDAMENTACION DE LA MATERIA Esta es una materia fundamental de la carrera. Se verán en ella las bases de la Ingeniería de Software, Análisis de Sistemas y Diseño de Sistemas. La Ingeniería de Software

Más detalles

www.fundibeq.org Además se recomienda su uso como herramienta de trabajo dentro de las actividades habituales de gestión.

www.fundibeq.org Además se recomienda su uso como herramienta de trabajo dentro de las actividades habituales de gestión. HOJAS DE COMPROBACIOÓN Y HOJAS DE RECOGIDA DE DATOS 1.- INTRODUCCIÓN En este documento se describe el proceso de obtención de información a partir de la recogida y análisis de datos, desde el establecimiento

Más detalles

Ingeniería de Software I

Ingeniería de Software I Ingeniería de Software I Diagramas de Actividad 2 Cuatrimestre 1998 1. INTRODUCCIÓN 1 2. DIAGRAMA DE ACTIVIDAD 1 2.1. SEMÁNTICA 1 2.2. NOTACIÓN 1 2.3. EJEMPLO 2 3. ACCIÓN 3 3.1. SEMÁNTICA 3 3.2. NOTACIÓN

Más detalles

DOCUMENTO VISIÓN SISTEMA DE VENTAS Y PRÉSTAMOS DE LA CINEMATECA BOLIVIANA PAWI. Versión 1.0. Aruquipa Mamani Rolando Willy

DOCUMENTO VISIÓN SISTEMA DE VENTAS Y PRÉSTAMOS DE LA CINEMATECA BOLIVIANA PAWI. Versión 1.0. Aruquipa Mamani Rolando Willy DOCUMENTO VISIÓN SISTEMA DE VENTAS Y PRÉSTAMOS DE LA CINEMATECA BOLIVIANA PAWI Versión 1.0 Integrantes: Aruquipa Mamani Rolando Willy Layme Ordoñez Roxana Paola Módulos Venta de Material y Facturación

Más detalles

Ingeniería de Sistemas. Administración de Proyectos. Objetivos. Tópicos cubiertos. Procesos de software (tema anterior) Administración de proyecto

Ingeniería de Sistemas. Administración de Proyectos. Objetivos. Tópicos cubiertos. Procesos de software (tema anterior) Administración de proyecto Objetivos Ingeniería de Sistemas Administración de s basado en el capítulo 5 ISW Ian Sommerville Profesora Dra. Yulia Ledeneva Introducir administración de s de software y describir sus características

Más detalles

GERENCIA DE INTEGRACIÓN

GERENCIA DE INTEGRACIÓN GERENCIA DE INTEGRACIÓN CONTENIDO Desarrollo del plan Ejecución del plan Control de cambios INTRODUCCIÓN La gerencia de integración del proyecto incluye los procesos requeridos para asegurar que los diversos

Más detalles

RECOMENDACIONES DE INVESTIGACIÓN FUTURA.

RECOMENDACIONES DE INVESTIGACIÓN FUTURA. Capítulo 6 CONCLUSIONES Y RECOMENDACIONES DE INVESTIGACIÓN FUTURA. 212 METODOLOGÍA PARA LA DETECCIÓN DE REQUERIMIENTOS SUBJETIVOS EN EL DISEÑO DE PRODUCTO. CAPÍTULO 6. CONCLUSIONES, APORTACIONES Y RECOMENDACIONES.

Más detalles

CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0. Centro Ideoinformática

CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0. Centro Ideoinformática CONFIGURACIÓN DE LA METODOLOGÍA OPENUP V1.0 Centro Ideoinformática Universidad de las Ciencias Informáticas Carretera a San Antonio Km 2 ½. Torrens. Boyeros. Ciudad de La Habana. Cuba Teléfono: + 53 (7)

Más detalles

CAPÍTULO 2 IMPORTANCIA DE LA ASIGNATURA OUTSOURCING EN TECNOLOGÍAS DE INFORMACIÓN

CAPÍTULO 2 IMPORTANCIA DE LA ASIGNATURA OUTSOURCING EN TECNOLOGÍAS DE INFORMACIÓN CAPÍTULO 2 IMPORTANCIA DE LA ASIGNATURA OUTSOURCING EN TECNOLOGÍAS DE INFORMACIÓN CAPÍTULO 2 IMPORTANCIA DE LA ASIGNATURA OUTSOURCING EN TECNOLOGÍAS DE INFORMACIÓN 2.1 INTRODUCCIÓN. En este capítulo se

Más detalles

Ciclo de Vida del Desarrollo de un Sistema de Información. Departamento de Ingeniería Industrial Universidad de Chile

Ciclo de Vida del Desarrollo de un Sistema de Información. Departamento de Ingeniería Industrial Universidad de Chile Ciclo de Vida del Desarrollo de un Sistema de Información Departamento de Ingeniería Industrial Universidad de Chile Temario Noción de un Ciclo de Vida Ventajas y Desventajas Modelos de Ciclos de Vida

Más detalles

UML, ejemplo sencillo sobre Modelado de un Proyecto

UML, ejemplo sencillo sobre Modelado de un Proyecto UML, ejemplo sencillo sobre Modelado de un Proyecto Normal &DOLILFDU 0L3DQRUDPD 626 (VFULEHSDUD1RVRWURV Por Armando Canchala Contenido Introducción Objetivo Requerimientos Casos de Uso Subcasos de Uso

Más detalles

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

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo

Más detalles

Práctica Obligatoria de Ingeniería del Software

Práctica Obligatoria de Ingeniería del Software Práctica Obligatoria de Ingeniería del Software 3º I.T.I.S Curso 2008-09 15 de octubre de 2008 Dr. Francisco José García Peñalvo Miguel Ángel Conde González Sergio Bravo Martín Tabla de contenidos 1.

Más detalles

El proceso unificado en pocas palabras

El proceso unificado en pocas palabras El Proceso Unificado de Desarrollo de Software Ivar Jacobson Grady Booch James Rumbaugh Addison Wesley Resumen Capítulo 1. El proceso unificado: dirigido por casos de uso, centrado en la arquitectura,

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

Unidad II. ERP s. 2.1. Definición de ERP s.

Unidad II. ERP s. 2.1. Definición de ERP s. Unidad II ERP s 2.1. Definición de ERP s. Planificación de recursos empresariales ( ERP) es la gestión del negocio de software - por lo general un conjunto de aplicaciones integradas - que una empresa

Más detalles

QUÉ ES Y PARA QUÉ SIRVE UML? VERSIONES DEL LENGUAJE UNIFICADO DE MODELADO. TIPOS DE DIAGRAMAS. INGENIERÍA DEL SOFTWARE (DV00205D)

QUÉ ES Y PARA QUÉ SIRVE UML? VERSIONES DEL LENGUAJE UNIFICADO DE MODELADO. TIPOS DE DIAGRAMAS. INGENIERÍA DEL SOFTWARE (DV00205D) APRENDERAPROGRAMAR.COM QUÉ ES Y PARA QUÉ SIRVE UML? VERSIONES DEL LENGUAJE UNIFICADO DE MODELADO. TIPOS DE DIAGRAMAS. INGENIERÍA DEL SOFTWARE (DV00205D) Sección: Divulgación Categoría: Lenguajes y entornos

Más detalles

ENTRENAMIENTO Y DESARROLLO DEL PERSONAL OBJETIVOS Los principales objetivos del entrenamiento son: 1.- Preparar al personal para la ejecución inmediata de las diversas tareas del cargo. 2.- Proporcionar

Más detalles

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Modulo 03 UML: Vista de Casos de Uso Artefacto: Actores Catedrático MSC. Jose Juan Aviña Grimaldo e-mail josejuan_avina@gmail.com

Más detalles

Caso práctico de Cuadro de Mando con Tablas Dinámicas

Caso práctico de Cuadro de Mando con Tablas Dinámicas 1 Caso práctico de Cuadro de Mando con Tablas Dinámicas Luis Muñiz Socio Director de SisConGes & Estrategia Introducción Hay una frase célebre que nos permite decir que: Lo que no se mide no se puede controlar

Más detalles

MODELOS DE SIMULACIÓN

MODELOS DE SIMULACIÓN MODELOS DE SIMULACIÓN En general, se llama modelo a la imagen o representación de un sistema, generalmente simplificada e incompleta. Y se llama simulación a la experimentación con un modelo para extraer

Más detalles

GUÍAS. Módulo de Diseño de software SABER PRO 2013-2

GUÍAS. Módulo de Diseño de software SABER PRO 2013-2 GUÍAS Módulo de Diseño de software SABER PRO 2013-2 GUÍAS Módulo de diseño en ingeniería El diseño de productos tecnológicos (artefactos, procesos, sistemas e infraestructura) está en el centro de la naturaleza

Más detalles

DESARROLLO AGIL ING. MA. MARGARITA LABASTIDA ROLDÁN

DESARROLLO AGIL ING. MA. MARGARITA LABASTIDA ROLDÁN DESARROLLO AGIL ING. MA. MARGARITA LABASTIDA ROLDÁN CONTENIDO Qué es un proceso agil Proceso Ágil Otros modelos ágiles de proceso Programación extrema Desarrollo adaptativo de software Método de desarrollo

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

COBIT o COBIT enfatiza el cumplimiento regulatorio, ayuda a las organizaciones a

COBIT o COBIT enfatiza el cumplimiento regulatorio, ayuda a las organizaciones a 5. METODOLOGIAS COBIT o COBIT enfatiza el cumplimiento regulatorio, ayuda a las organizaciones a incrementar su valor a través de las tecnologías, y permite su alineamiento con los objetivos del negocio

Más detalles

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 Estándares para planes de calidad de software Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 DIFERENCIA ENTRE PRODUCIR UNA FUNCION Y PRODUCIR UNA FUNCION

Más detalles

Organización como función administrativa Resumen para Administración y Gestión Profesor: Gonzalo V.

Organización como función administrativa Resumen para Administración y Gestión Profesor: Gonzalo V. Organización como función administrativa Introducción: Organización rganización como función administrativa En las organizaciones que se caracterizan por estar orientadas al éxito, a la eficiencia y al

Más detalles

GESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN DE APLICACIONES

GESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN DE APLICACIONES Ciclo Formativo: Módulo: Desarrollo de Aplicaciones Informáticas Análisis y Diseño Detallado de Aplicaciones Informáticas de Gestión Unidad de Trabajo 10: GESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN

Más detalles

Seminario MIS - CIMAT

Seminario MIS - CIMAT Seminario MIS - CIMAT Perfil del Ingeniero de Requerimientos Jaime F. Castillo. CIP Agenda Objetivo Definición de Requerimiento Niveles de Requerimientos Disciplina de la Ingeniería de Requerimientos Roles

Más detalles

Servicios Administrados al Cliente

Servicios Administrados al Cliente Dell Administrados al Cliente Los servicios administrados le pueden ayudar. Al aplicar un proceso de administración consistente a través de los imprevistos en la vida de su computadora, usted puede minimizar

Más detalles

LINEAMIENTOS PARA LA ELABORACIÓN DEL PROGRAMA ANUAL DE TRABAJO

LINEAMIENTOS PARA LA ELABORACIÓN DEL PROGRAMA ANUAL DE TRABAJO LINEAMIENTOS PARA LA ELABORACIÓN DEL PROGRAMA ANUAL DE TRABAJO Junio 2012 INDICE 1. INTRODUCCIÓN 2. ANTECEDENTES 3. SITUACIÓN ACTUAL A) Daños a la Salud Principales características sociodemográficas Principales

Más detalles

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases

Diagramas del UML. A continuación se describirán los diagramas más comunes del UML y los conceptos que representan: Diagrama de Clases El UML está compuesto por diversos elementos gráficos que se combinan para conformar diagramas. Debido a que el UML es un lenguaje, cuenta con reglas para combinar tales elementos. La finalidad de los

Más detalles

Licenciatura en Computación

Licenciatura en Computación Res. CFI 21/06/2012 Res. CDC 25/09/2012 Pub. DO 31/10/2012 Plan de Estudios Licenciatura en Computación Facultad de Ingeniería 1 Antecedentes y fundamentos 1.1 Antecedentes En la Facultad de Ingeniería,

Más detalles

DCU Diagramas de casos de uso

DCU Diagramas de casos de uso DCU Diagramas de casos de uso Universidad de Oviedo Departamento de Informática Contenidos Introducción Elementos básicos Más sobre los actores Más sobre los casos de uso Más sobre las asociaciones Otros

Más detalles

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reutilizable Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Objetivos Para explicar los beneficios del software reutilizable y algunos de sus problemas Para discutir

Más detalles

KAIZEN, CONCEPTOS, ALCANCES Y PROCESO KAIZEN

KAIZEN, CONCEPTOS, ALCANCES Y PROCESO KAIZEN KAIZEN, CONCEPTOS, ALCANCES Y PROCESO KAIZEN El significado de la palabra Kaizen es mejoramiento continuo y esta filosofía se compone de varios pasos que nos permiten analizar variables críticas del proceso

Más detalles

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl 1 Colección de Tesis Digitales Universidad de las Américas Puebla Morales Salcedo, Raúl En este último capitulo se hace un recuento de los logros alcanzados durante la elaboración de este proyecto de tesis,

Más detalles

Conceptos Generales. Introducción a la ingeniería de Software. Tomado de: Escuela de Sistemas Universidad Nacional de Colombia Sede Medellín

Conceptos Generales. Introducción a la ingeniería de Software. Tomado de: Escuela de Sistemas Universidad Nacional de Colombia Sede Medellín Conceptos Generales Introducción a la ingeniería de Software Tomado de: Escuela de Sistemas Universidad Nacional de Colombia Sede Medellín Qué es el Software? Objeto de estudio de la Ingeniería de Software

Más detalles

ANÁLISIS DE PROPUESTAS CURRICULARES. El planteamiento curricular presenta varios aspectos interesantes, como por ejemplo:

ANÁLISIS DE PROPUESTAS CURRICULARES. El planteamiento curricular presenta varios aspectos interesantes, como por ejemplo: ANÁLISIS DE PROPUESTAS CURRICULARES Ontario Resumen La propuesta curricular de Canadá presenta la Literatura integrada con el curso de Inglés, articulándola a través de sus cuatro componentes: Comunicación

Más detalles

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,

Más detalles

Proceso Unificado de Rational

Proceso Unificado de Rational RUP: El Proceso Unificado de Rational XP: Programacion Extrema EAP: Computación Científica Ciencia de la Computación V Prof. Oscar Brnito Pacheco Proceso Unificado de Rational Orígenes Modelo original

Más detalles

SELECCIÓN N Y DISEÑO DEL PRODUCTO Y SERVICIO

SELECCIÓN N Y DISEÑO DEL PRODUCTO Y SERVICIO SELECCIÓN N Y DISEÑO DEL PRODUCTO Y SERVICIO Administración n de Operaciones II 1 El desarrollo consistente y la introducción n de nuevos productos que valoren los clientes es muy importante para la prosperidad

Más detalles

Sistemas de Calidad Empresarial

Sistemas de Calidad Empresarial Portal Empresarial Aljaraque Empresarial Sistemas de Calidad Empresarial 1 ÍNDICE 1. INTRODUCCIÓN. 2. CONCEPTO DE CALIDAD Y SU SISTEMA. 3. MÉTODO PARA IMPLANTAR UN SISTEMA DE GESTIÓN DE LA CALIDAD. 4.

Más detalles

El modelo de ciclo de vida cascada, captura algunos principios básicos:

El modelo de ciclo de vida cascada, captura algunos principios básicos: Ciclo de Vida del Software Un modelo de ciclo de vida define el estado de las fases a través de las cuales se mueve un proyecto de desarrollo de software. El primer ciclo de vida del software, "Cascada",

Más detalles

PROCEDIMIENTO OPERATIVO DESARROLLAR SISTEMAS INFORMÁTICOS PDO-COCTI-DTIN-04

PROCEDIMIENTO OPERATIVO DESARROLLAR SISTEMAS INFORMÁTICOS PDO-COCTI-DTIN-04 Autorización Este documento entra en vigor a partir del 2 de agosto del 2005, a través de su autorización por parte del Dr. Francisco Javier Rojas Monroy, Coordinador de Operaciones, Calidad y Teclogía

Más detalles

TEMA 7: DIAGRAMAS EN UML

TEMA 7: DIAGRAMAS EN UML TEMA 7: DIAGRAMAS EN UML Diagramas en UML El bloque de construcción básico de UML es un Diagrama Introducción a UML 2 1 Modelo de Casos de Uso (MCU) Todos los casos de uso constituyen el MCU que describe

Más detalles

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

CAPÍTULO I. Sistemas de Control Distribuido (SCD). 1.1 Sistemas de Control. Un sistema es un ente cuya función es la de recibir acciones externas llamadas variables de entrada que a su vez provocan una o varias reacciones como respuesta llamadas variables

Más detalles

Unidad I: Introducción a la gestión de proyectos

Unidad I: Introducción a la gestión de proyectos Unidad I: Introducción a la gestión de proyectos 1.1. Conceptos básicos para la gestión de proyectos Qué es un proyecto? Un proyecto es una secuencia de tareas con un principio y un final limitados por

Más detalles

http://www.informatizate.net

http://www.informatizate.net http://www.informatizate.net Metodologías De Desarrollo De Software María A. Mendoza Sanchez Ing. Informático - UNT Microsoft Certified Professional - MCP Analísta y Desarrolladora - TeamSoft Perú S.A.C.

Más detalles

LEY QUE NORMA EL USO, ADQUISICIÓN Y ADECUACIÓN DEL SOFTWARE EN LA ADMINISTRACIÓN PUBLICA

LEY QUE NORMA EL USO, ADQUISICIÓN Y ADECUACIÓN DEL SOFTWARE EN LA ADMINISTRACIÓN PUBLICA ADQUISICIÓN DE SOFTWARE DE CORREO 1. Nombre del Área :. Responsable de la Evaluación : Aldo Quispe Santa María. Cargo : Director (e) de Tecnología de la Información y Sistemas 4. Fecha : de Julio de 007

Más detalles

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

El Software. Es lo que se conoce como el ciclo de vida del software. El Software Hace referencia a los programas y toda la información asociada y materiales necesarios para soportar su instalación, operación, reparación, y mejora. Para construir un nuevo elemento software

Más detalles

Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT

Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT Proyecto de Fin de Carrera Universidad Politécnica de Valencia Escuela Técnica Superior de Informática Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT Realizado por: Dirigido

Más detalles

IAP 1003 - ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS

IAP 1003 - ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS IAP 1003 - ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS Introducción 1. El propósito de esta Declaración es prestar apoyo al auditor a la implantación de la NIA 400, "Evaluación del Riesgo y

Más detalles

Operación 8 Claves para la ISO 9001-2015

Operación 8 Claves para la ISO 9001-2015 Operación 8Claves para la ISO 9001-2015 BLOQUE 8: Operación A grandes rasgos, se puede decir que este bloque se corresponde con el capítulo 7 de la antigua norma ISO 9001:2008 de Realización del Producto,

Más detalles

Especificación de Requerimientos Funcionales y No Funcionales. Sistema Reservación Hotelera

Especificación de Requerimientos Funcionales y No Funcionales. Sistema Reservación Hotelera Funcionales y No Funcionales Sistema Reservación Hotelera Grupo N. XX Integrantes del Grupo Wenfri Grijalba Villegas. Kevin Jimenez Baltodano. Luis Mauricio Chavarria Perez. Fecha 19/05/15 Historia de

Más detalles

Diseño y desarrollo de una aplicación informática para la gestión de laboratorios

Diseño y desarrollo de una aplicación informática para la gestión de laboratorios Diseño y desarrollo de una aplicación informática para la gestión de laboratorios M. Francisco, P. Vega, F. J. Blanco Departamento de Informática y Automática. Facultad de Ciencias. Universidad de Salamanca

Más detalles

2.1 Planificación del Alcance

2.1 Planificación del Alcance 2. Gestión del Alcance del Proyecto La Gestión del Alcance del Proyecto incluye los procesos necesarios para asegurarse que el incluya todo el trabajo requerido, y sólo el trabajo requerido, para completar

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS Clase 1. Introducción Profesor: Diego Sánchez Gómez Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases

Más detalles

LA METODOLOGÍA DEL BANCO PROVINCIA

LA METODOLOGÍA DEL BANCO PROVINCIA 20 LA METODOLOGÍA DEL BANCO PROVINCIA Cómo gestionar activos de información? En 2007, el Banco Central de la República Argentina (BCRA) planteó algunas exigencias financieras para el sistema financiero

Más detalles

La importancia de la valuación de puestos, se localiza principalmente en lo siguiente:

La importancia de la valuación de puestos, se localiza principalmente en lo siguiente: 2. EVALUACION DEL DESEMPEÑO OBJETIVO DE LA UNIDAD. Al finalizar la unidad el alumno identificara y establecerá la relación de las técnicas de evaluación de acuerdo a los desempeños laborales del factor

Más detalles

Propiedad Colectiva del Código y Estándares de Codificación.

Propiedad Colectiva del Código y Estándares de Codificación. Propiedad Colectiva del Código y Estándares de Codificación. Carlos R. Becerra Castro. Ing. Civil Informática UTFSM. Introducción. n. En este trabajo se presentan específicamente dos prácticas de XP: Collective

Más detalles

POLÍTICAS PARA EL DESARROLLO DE SISTEMAS INFORMÁTICOS.

POLÍTICAS PARA EL DESARROLLO DE SISTEMAS INFORMÁTICOS. POLÍTICAS PARA EL DESARROLLO DE SISTEMAS INFORMÁTICOS., DIRECCIÓN GENERAL ADJUNTA DE INFORMÁTICA. Mayo. 2 Índice Página I. INTRODUCCIÓN.-. 3 II. GLOSARIO.-... 4 III. OBJETO.-.... 6 IV. MARCO JURÍDICO.-

Más detalles

COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE

COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE Creado en May/14 Objetivo: Contar con una guía de las actividades que se deben realizar en esta fase,

Más detalles

GESTION DE REQUISICIONES VIA WEB MANUAL DEL USUARIO

GESTION DE REQUISICIONES VIA WEB MANUAL DEL USUARIO GESTION DE REQUISICIONES VIA WEB MANUAL DEL USUARIO UNIDAD DE SISTEMAS DE INFORMACION Y COMPUTO DEPARTAMENTO DE ADQUISICIONES INDICE Tema Página Objetivo 2 Portal del Departamento de Adquisiciones 3 Sección

Más detalles

4 Teoría de diseño de Experimentos

4 Teoría de diseño de Experimentos 4 Teoría de diseño de Experimentos 4.1 Introducción En los capítulos anteriores se habló de PLC y de ruido, debido a la inquietud por saber si en una instalación eléctrica casera que cuente con el servicio

Más detalles

Programa Presupuestos de Sevillana de Informática.

Programa Presupuestos de Sevillana de Informática. Programa Presupuestos de Sevillana de Informática. Introducción. En sus inicios, el programa Presupuestos estaba pensado únicamente para escribir e imprimir presupuestos, facilitando el trabajo con un

Más detalles

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se

Más detalles

Sistema de Mensajería Empresarial para generación Masiva de DTE

Sistema de Mensajería Empresarial para generación Masiva de DTE Sistema de Mensajería Empresarial para generación Masiva de DTE TIPO DE DOCUMENTO: OFERTA TÉCNICA Y COMERCIAL VERSIÓN 1.0, 7 de Mayo de 2008 CONTENIDO 1 INTRODUCCIÓN 4 2 DESCRIPCIÓN DE ARQUITECTURA DE

Más detalles

Comente: Los bancos siempre deberían dar crédito a los proyectos rentables. Falso, hay que evaluar la capacidad de pago.

Comente: Los bancos siempre deberían dar crédito a los proyectos rentables. Falso, hay que evaluar la capacidad de pago. Explique Brevemente en que consiste el leasing y nombre los diferentes tipos existentes. Es un mecanismo de financiamiento de Activos el cual permite el uso del activo por un periodo determinado a cambio

Más detalles

POLÍTICAS RELATIVAS A PROYECTOS INFORMÁTICOS

POLÍTICAS RELATIVAS A PROYECTOS INFORMÁTICOS POLÍTICAS RELATIVAS A PROYECTOS INFORMÁTICOS A. Generales 1. En virtud de que en el PETI se ha trazado -a partir de objetivos estratégicos- el rumbo que deberá seguir la institución en un período determinado,

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos: Tutorial de UML Introducción: El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Language) es un lenguaje gráfico para visualizar, especificar y documentar cada una de las partes que comprende

Más detalles

Acciones Correctivas y Preventivas. Universidad Autónoma del Estado de México

Acciones Correctivas y Preventivas. Universidad Autónoma del Estado de México Acciones Correctivas y Preventivas Universidad Autónoma del Estado de México Mejora Continua La mejora continua del desempeño global de la organización debería ser un objetivo permanente de ésta. Mejora

Más detalles

Conceptos básicos de Ingeniería de Software

Conceptos básicos de Ingeniería de Software de Ingeniería de Software Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 5 de septiembre del 2012 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Conceptos básicos 5 de septiembre del 2012 1 / 23 Objetivos Objetivos

Más detalles

Lista de la Verificación de la Gestión de la Seguridad y Salud Ocupacional 1

Lista de la Verificación de la Gestión de la Seguridad y Salud Ocupacional 1 Lista de la Verificación de la Gestión de la Seguridad y Salud Ocupacional 1 Sección Punto de Control Cumplimiento 4. Requisitos del Sistema de gestión de la seguridad y salud ocupacional 4.1 Requisitos

Más detalles

Unidad 9. Implementación. M.C. Martín Olguín

Unidad 9. Implementación. M.C. Martín Olguín Unidad 9 Implementación M.C. Martín Olguín Implementación Es la traducción directa del diseño en un lenguaje de programación. Es decir, en la implementación se construyen los componentes: Archivos de código

Más detalles

Programa en Microsoft Visual Basic 6.0 para el análisis de riesgos eléctricos en oficinas y centros de cómputo. López Rosales, Juan Carlo.

Programa en Microsoft Visual Basic 6.0 para el análisis de riesgos eléctricos en oficinas y centros de cómputo. López Rosales, Juan Carlo. CAPÍTULO IV PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE 4.1 Concepto del Proceso Unificado de Desarrollo de Software Un proceso de desarrollo de software es el conjunto de actividades necesarias para transformar

Más detalles

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech Resumen Todo documento XBRL contiene cierta información semántica que se representa

Más detalles

Índice 1 Instalación de la herramienta 2 Descripción de la herramienta 2 Arranque de la aplicación 3 Proyecto 4 Diagrama de clases 5

Índice 1 Instalación de la herramienta 2 Descripción de la herramienta 2 Arranque de la aplicación 3 Proyecto 4 Diagrama de clases 5 Índice Índice 1 Instalación de la herramienta 2 Descripción de la herramienta 2 Arranque de la aplicación 3 Proyecto 4 Diagrama de clases 5 Crear diagrama de clases 5 Crear elementos 7 Editar elementos

Más detalles