Dra. Marcela Capobianco Licenciatura en Ciencias de la Computación UNS
|
|
- María Antonia Camacho Castillo
- hace 8 años
- Vistas:
Transcripción
1 Modulo 4: Conceptos básicos Diseño y Desarrollo de Software Dra. Marcela Capobianco Licenciatura en Ciencias de la Computación UNS
2 Licencia Copyright 2015 Marcela Capobianco Se asegura la libertad para copiar, distribuir y modificar este documento de acuerdo a los términos de la GNU Free Documentation License, Version 1.2 o cualquiera posterior publicada por la Free Software Foundation, sin secciones invariantes ni textos de cubierta delantera o trasera. Una copia de esta licencia está siempre disponible en la página
3 Qué es una arquitectura de SW Definición: Es el conjunto de todas las principales decisiones de diseño sobre el sistema La arquitectura es el plano para la construcción y evolución del sistema Las decisiones de diseño abarcan: Estructura Comportamiento Interacción Propiedades no-funcionales 3
4 Qué significa principal? Principal implica un grado de importancia que le da a la decisión de diseño un estado arquitectónico No todas lo son Esto es, no todas impactan en la arquitectura del sistema Esto depende de lo que los participantes definan como objetivos del sistema 4
5 Otras definiciones Shaw and Garlan: Software architecture [is a level of design that] involves the description of elements from which systems are built, interactions among those elements, patterns that guide their composition, and constraints on these patterns. Kruchten: Software architecture deals with the design and implementation of the high-level structure of software. Architecture deals with abstraction, decomposition, composition, style, and aesthetics.
6 En conclusión La arquitectura de software es un modelo Simplificación de la realidad Abstracción Cerrada: tiene cierta independencia Modelado puede ser: Informal, semi formal, formal En academia suele ser formal y en la industria semi formal o informal
7 Componentes y conectores Garlan 1993 intenta definir la arquitectura como una tupla: SA={componentes, connectors, constrains} Componentes y conectores son elementos en un nivel arquitectónico Los componentes no son clases de sistemas OO Los componentes y conectores reflejan estado en tiempo de ejecución no son estáticos como una clase
8 Vistas Componentes definen protocolos de comunicación y estrategias Las restricciones definen las reglas a las que el sistema debe respetar Es esto suficiente? Qué falta? Se necesitan varias vistas diferentes: estática, dinámica, etc
9 Word Counter Programa que toma un archivo de texto y devuelve pares de (palabra, frecuencia) para cada palabra en orden de frecuencia
10 Word Counter
11 Word Counter
12 Aspectos temporales Las decisiones de diseño pueden hacerse y deshacerse durante la vida del sistema La arquitectura tiene un aspecto temporal En un punto en el tiempo el sistema tiene una sola arquitectura Pero si cambia en el tiempo se puede pensar que ha tenido una familia de arquitecturas 12
13 Prescriptive vs. Descriptive Architecture La arquitectura prescriptiva del sistema captura las decisiones de diseño hechas previamente a la construcción del sistema Es como fue concebido el sistema La arquitectura descriptiva describe como el sistema ha sido construido Es la arquitectura de acuerdo a como fue implementado 13
14 Evolución arquitectonica Cuando un sistema evoluciona idealmente se modifica primero su arquitectura prescriptiva En la práctica el sistema y entonces su aruitectura descriptiva es frecuentemente modificado directamente por: Pereza de los desarrolladores Deadlines demasiado estrictos Falta de documentación prescriptiva Técnicas o herramientas inadecuadas 14
15 Degradación Arquitectónica Architectural drift es la introducción de las principales decisiones de diseño en la arquitectura descriptiva del sistema Que no están incluidas en o implicadas por la arquitectura prescriptiva Pero no violan las decisiones de diseño de la arqutiectura prescriptiva Architectural erosion es la introducción de las decisiones de diseño arquitectónicas en la arquitectura descriptiva que violan su 15
16 Recuperación arquitectónica Si se permite la degradación, tarde o temprano tendrá que hacerse una recuperación Es el proceso de determinar la arquitectura de un sistema desde sus artefactos a nivel de implementación Los artefactos pueden ser: Código fuente Archivos ejecutables Java.class 16
17 IEEE 1471 (año 2000) Esfuerzo por crear un estándar en el campo de la arquitectura de software Se resaltan varios aspectos clave
18 IEEE 1471 (año 2000) Every system has its own architecture, but they are not identical El sistema es un producto concreto mientras que la arquitectura es una abstracción dependiente del sistema Software architecture and its description are different La arquitectura existe cuando existe el software. Qué es lo que hacemos antes?
19 IEEE 1471 (año 2000) SA: la organización del sistema personificada en sus componentes, las relaciones entre estos, la relación con el ambiente y los principios que guiaron su diseño y evolución Descripción: una colección de productos para documentar la arquitectura Técnicas para documentar: varios diagramas en UML, usar un ADL, diagramas simples de cajas y líneas. Importante: convención No todos los sistemas cuentas con una descripción, ej: sistemas legacy
20 IEEE 1471 (año 2000) Software architecture, architectural description and development process are separated, both in research and in application El uso de un modelo de proceso no implica que deba usarse un tipo particular de descripción Space should be leaven facilitating the customization of detailed architectural models for researches and practices Sólo se definen principios rectores
21 ISO/IEC/IEEE Evolución de la anterior norma Especifica la manera en que se organizan y expresan las descripciones arquitectónicas de un sistema Especifica los conceptos de architecture viewpoints, architecture frameworks y define nuevamente SA También define el concepto de description languages para usar en las descripciones
22 Conceptos Architecting: es el proceso de concebir, definir, comunicar, certificar la implementación adecuada y mejorar una arquitectura a través de su ciclo de vida System Architecture: conceptos fundamentales o propiedades de un sistema corporizado en sus elementos, relaciones y los principios de su diseño y evolución. Importante
23 Conceptos Architecture description (AD): producto usado para expresar una arquitectura Architecture framework: convenciones, principios y prácticas para la descripción de arquitecturas que están establecidas en un dominio específico. Architecture view: producto que expresa la arquitectura de un sistema desde la perspectiva de un concern específico del mismo
24 Conceptos Architecture viewpoint: wproducto que establece las convenciones para la construcción, interpretación y uso de las vistas arquitectónicas para enmarcar un concern específico Concern: interés en un sistema que es relevante a uno o mas de los particpantes (stakeholders) Environment: contexto que determina las circunstancias de todas las influencias sobre un sistema A view is what you see. A viewpoint is where you are looking from the vantage point or perspective that determines what you see.
25 Concerns The following are concerns in the terms of this International Standard: functionality, feasibility, usage, system purposes, system features, system properties, known limitations, structure, behavior, performance, resource,...
26 Contexto de la DA
27 Descripciones SA contiene lo que es esencial para el sistema considerando su entorno Esto puede contener alguno o todos de los siguientes elementos: Constituyentes del sistema o elementos Como se relacionan estos elementos y/u organizan Principios de organización y diseño del sistema
28 Descripción arquitectónica
29 Importante No se especifica: Formatos o medios para almacenar las descripciones Procesos o métodos usados para producirlas. Modelos notaciones o técnicas
30 Views y Viewpoints Un architecture view (vista) expresa la arquitectura del sistema de acuerdo con un architecture viewpoint (punto de vista). Aspectos de un viewpoint: los concerns que enmarca para los participantes (stakeholders) y las convenciones sobre las cuales establece las vistas. Un architecture viewpoint enmarca uno o mas concerns y un concern puede ser enmarcado por mas de un viewpoint.
31 Views y Viewpoints Una vista es governada por su viewpoint asociado el cual establece las convenciones para construir, interpretar y analizar la vista para asi abordar los concerns enmarcados Las convenciones de un Viewpoint pueden incluir lenguajes, notaciones, clases de modelos, etc.
32 Ejemplo views y viewpoints Deployment view of a 3-tier application Deployment view of a Lunar Lander system Both instances of the deployment viewpoint
33 Observación importante This International Standard does not use phrases such as business architecture, physical architecture, and technical architecture. The arquitecture of a system is a holistic conception of that system s fundamental properties, best understood via multiple views of that architecture. Equivalents of the above phrases are business view, physical view, and technical view, respectively.
34 Modelos arquitectónicos Un architecture view se compone de uno o mas modelos arquitectónicos (architecture models). Un modelo usa convenciones de modelado apropiadas a los concerns que se quieren abordar Esas conveciones se especifican por el tipo de modelo que lo gobierna
35 AD Elements y Correspondencias Correspondencias: capturan las relaciones entre elementos de AD Las correspondencias y las reglas de correspondencias se usan para expresar y forzar relaciones arquitectónicas como: composición, refinamiento, consistencia, trazabilidad
36 AD Elements and Correspondences AD Element: cada item en una DA (descripción arquitectónica o en inglés AD) se considera un elemento (Stakeholder, Concern, Viewpoint, View, Model Kind) Correspondencia: expresa una relación entre elementos de DA Son usadas para expresar relaciones arquitectónicas de interés dentro de una DA o entre DAs
37 AD Elements and Correspondences Las correspondences pueden ser governadas por reglas de correspondencia. Regla de correspondencia: fuerza relaciones dentro de una DA o entre DAs
38 Ejemplo de correspondencia Hardware view, HW(S), software component view, SC(S). SC(S) includes software elements, e1,... e6, and HW(S) includes hardware platforms, p1,... p4
39 Decisiones arquitectónicas
40 Decisiones arquitectónicas Una Decisión Arquitectónica afecta los elmentos de DA y se relaciona con uno o mas Concerns. Al realizar una decisión pueden aparecer nuevos concerns. Architecture Rationale: registra la explicación o justificación sobre decisiones arquitectónicas que se realizaron y las alternativas que no se eligieron
41 Arquitecture Framework
42 Arquitecture Framework Un architecture framework establece una práctica común para crear, interpretar analizar y usar una DA dentro de un dominio particular o comunidad de stakeholders Nos ayuda a elegir que viewpoints y vistas usar en un dado caso
43 Qué hace un framework Describir una metodología para la definición de un sistema de información en términos de un conjunto de bloques constituitivos Contener un conjunto de herramientas. Proveer un vocabulario común. Incluir una lista de estándares recomendados.
44 Algunos ejemplos de frameworks Zachman s information systems architecture framework [44] UK Ministry of Defence Architecture Framework [27], The Open Group s Architecture Framework (TOGAF) [41], Kruchten s 4+1 view model [23], Siemens 4 views method [10], Las referencias están en la definición de la norma Reference Model for Open Distributed Processing (RMODP), [ISO/IEC 10746] and Generalized Enterprise Reference Architecture (GERA)[ISO 15704].
45 TOGAF (ejemplo de framework) Proporciona un enfoque para el diseño, planificación, implementación y gobierno de una arquitectura empresarial de información. Está modelada en cuatro niveles o dimensiones: Negocios, Tecnología, Datos y Aplicaciones.
46 TOGAF Arquitectura de Negocios: define la estrategia de negocios, la gobernabilidad, la estructura y los procesos clave de la organización. Arquitectura de Aplicaciones: provee un plano para cada uno de los sistemas de aplicación que se requiere implantar, las interacciones entre estos sistemas y sus relaciones con los procesos de negocio centrales de la organización. Arquitectura de Datos, la cual describe la estructura de los datos físicos y lógicos de la organización, y los recursos de gestión de estos datos. Arquitectura Tecnológica, la cual describe la estructura de hardware, software y redes requerida
47 Architecture Description Language (ADL)
48 ADLs Un ADL es una forma de expresión para ser usada en DA. Un ADL puede incluir un tipo de modelo, un viewpoint o varios Ejemplos: Rapide, SysML, ArchiMate, ACME, xadl.
49 Elementos de la arquitectura de Software La arquitectura de un sistema debería ser una composición de diferentes elementos: Procesamiento Datos, también llamados información o estados Interacción 49
50 Resumiendo
51 Resumiendo A viewpoint is a way of looking at a system, a view is what you can see Un viewpoint define las convenciones (notaciones, lenguajes y tipos de modelos) que van a ser usados en una vista Una vista es el resultado de aplicar un viewpoint a un sistema de interés particular ISO/IEC/IEEE 42010
52 Resumiendo Architecture viewpoints: definen los contenidos de cada vista Architecture frameworks: conjunto coordinado de viewpoints para usar en un dominio en particular ALDs: cualquier modo de expresión usado en una descripción arquitectónica
53 Componentes y conectores Es la vista más importante y usual Muchos autores (en el pasado sobre todo) sólo usan este tipo de vista para sus descripciones arquitectónicas Es fácil deducir atributos de calidad en esta vista en fases tempranas del desarrollo Esto disminuye los riesgos de desarrollo
54 Ejemplo de sistema de gestión de versiones
55 Vista de componentes y conectores Abstrae la esencia de la ejecución del sistema Cada elemento tiene un significado en tiempo de ejecución Por ejemplo el code repository server puede ser implementado por varias clases OO Cada elemento debe tener un significado claro y bien definido (notación) Es historicamente importante, se la pensó como la arquitectura inicialmente.
56 Componentes Elementos que encapsulan procesamiento y datos en la arquitectura del sistema Un componente de software es una entidad que: Encapsula un subconjunto de funcionalidad y/o datos del sistema Restringe acceso a ese conjunto via una interfaces definida en forma explícita Posee dependencias explicitamente definidas en su contexto requerido de ejecución Típicamiento proveen servicios específicos de la aplicación 56
57 Connectors En sistemas complejos la interacción puede ser más importante que la funcionalidad de los componentes Un conector es un bloque de construcción arquitectónico al que se le asigna la tarea de realizar y regular la interacción entre componentes En muchos casos son procedure calls o accesos de datos compartidos, otras veces son más complejos 57
58 Ejemplos de Conectores Procedure call connectors Shared memory connectors Message passing connectors Streaming connectors Distribution connectors Wrapper/adaptor connectors 58
59 Viewpoints comunes
60 Vista de descomposición Brinda información más estática Se puede usar en primer lugar para definir el vocabulario del sistema y construir su modelo lógico Descomponemos el sistema completo en varios conceptos lógicos con un estilo topdown
61 Vista de descomposición El proceso puede continuar hasta cumplir con el objetivo de los desarrolladores Los conceptos y sus asociaciones construyen el modelo lógico del sistema El modelo lógico sirve en domain software development porque se pueden reusar bloques del sistema Permite dividir el trabajo entre los desarrolladores
62 Vista de implementación Implementation view, o artifact view, se concentra en que archivos fuente se usan para implementar las unidades lógicas. También refleja la relación entre los archivos de código fuente Se debe agregar información de versiones Sirve para los desarrolladores y lideres de proyecto
63 Vista de Implementación
64 Vista de Deployment Llena el gap entre SW y HW Los elmentos de SW incluyen modules, objects, procesos. Los de HW se llaman nodos y pueden ser un workstation, un mainframe, un server, un router u otro dispositivo móvil Se expresan en varios grados de formalidad.
65 Vista de deployment
66 Vista de deployment Through analyzing information brought by nodes' properties, such as CPU features, memory capability, network' s bandwidth and so on, many of the problems with current design in architectural level will be exposed. For example, we can calculate and track which part of the whole system slow down the overall performance due to the hardware reason, and then simplify the algorithm implemented there.
67
68
69
70
71
72
73 Vista de comportamiento Especificar el comportamiento dinámico Centrada en mensajes De actividad general De un sólo elemento
74 Estilos arquitectónicos Algunas decisiones de diseño resultan regularmente en soluciones con propiedades superiores Comparado con otras alternativas posibles, estas soluciones son más elegantes, eficientes, efectivas, escalables, etc
75 Estilos arquitectónicos Un estilo arquitectónico es una colección de decisiones de diseño con un nombre determinado que Son aplicables en un contexto determinado Restringen las decisiones de diseño arquitectónicas que son específicas a un sistema particular dentro de ese contexto Elicitan cualidades beneficiosas en el sistema resultante
76 Patrones arquitectónicos Un patrón arquitectónico es un conjunto de decisiones de diseño arquitectónicas que son aplicables a un problema reurrente de diseño y parametrizados para ser usados en distintos contextos Un patrón muy usando es los sistemas distribuidos es el three-tiered system pattern Science Banking E-commerce Reservation systems 76
77 Three-Tiered Pattern Front Tier Middle Tier Contains the user interface functionality to access the system s services Contains the application s major functionality Back Tier Contains the application s data access and storage functionality 77 Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.
78 Modelos, Vistas y Visualizaciones Architecture Model Un artefacto documentando algunas de las decisiones de diseño del sistema Architecture Visualization Una forma de describir algunas de las decisiones de diseño sobre un sistema a un participante Architecture View Un subconjunto de decisiones de diseño 78 relacionadas
79 Procesos arquitectónicos Architectural design Architecture modeling and visualization Architecture-driven system analysis Architecture-driven system implementation Architecture-driven system deployment, runtime redeployment, and mobility Architecture-based design for non-functional properties, including security and trust architectural adaptation 79
80 Participantes en la arquitectura del sistema Arquitectos Desarrolladores Testers Managers Clientes Usuarios Vendedores 80
81 Arquitecturas comunes Cloud Computing Architectures Dataflow architecture Layered architecture Middleware architecture n-tier architecture Rich client architecture Service Oriented Architectures Thin client architecture
82 Bibliografía Taylor, Medividovic, Dashofy. Software Architecture: foundations, theory, and practice ISO/IEC/IEEE 42010:2011. Systems and software engineering Architecture description Qin, Xing, Zheng. Software Architecture
Diseño y Desarrollo de Software (1er. Cuat. 2018)
Módulo 5: Diseño arquitectónico Diseño y Desarrollo de Software (1er. Cuat. 2018) Profesora titular de la cátedra: Marcela Capobianco Profesor interino: Gerardo I. Simari Licenciatura en Ciencias de la
Más detallesArquitecturas de Software
Arquitecturas de Software Diseño y Arquitectura de Software Grado en Ingeniería de Software Carlos E. Cuesta carlos.cuesta@urjc.es Arquitectura de Software Introducción Motivación Incremento en el tamaño
Más detallesPROGRAMACIÓ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 detallesElementos 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 detalles1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).
1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada
Más detallesLa Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática
La Necesidad de Modelar Analogía Arquitectónica Tiene sentido poner ladrillos sin hacer antes los planos? El modelo, los planos, ayuda a afrontar la complejidad del proyecto. Cuál es el lenguaje adecuado
Más detallesTaller de Sistemas de Información 1. Clase 2 Sistemas de información Arquitectura
Taller de Sistemas de Información 1 Clase 2 Sistemas de información Arquitectura Sistemas Empresariales Es una descripción de las metas de una organización, como estas metas son realizadas a través de
Más detallesPatrones de software y refactorización de código
Patrones de software y refactorización de código Introducción y antecedentes de los patrones de software Los patrones permiten construir sobre la experiencia colectiva de ingenieros de software habilidosos.
Más detalles3.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 detallesMetodologí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 detallesEl 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 detallesSIGPRE Sistema de Gestión Presupuestaria
SIGPRE Sistema de Gestión Presupuestaria Documento de Arquitectura UTN Histórico de Revisiones Fecha Versión Descripción Autor 11/17/2009 1.0 Borrador de la arquitectura Roberto López Hinojosa 12/14/2009
Más detallesGerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta
Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta (Business Process Management, BPM). La Gerencia de los Procesos del Negocio: Se define como: "integración
Más detallesIWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1
IWG-101: Introducción a la Ingeniería Departamento de Informática, UTFSM 1 Introducción a UML Historia Potencialidades Diagramas soportados UML en el proceso de desarrollo de SW. Introducción a UML Necesidad
Más detallesProceso 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 detallesSERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO
SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3
Más detallesIngeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML
Diseño Diseño en el PUD Diseño de software Patrones arquitectónicos Diseño Orientado a Objetos en UML 1 Iteración en PUD Planificación de la Iteración Captura de requisitos: Modelo de casos de uso, Modelo
Más detallesModelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre
Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Cenditel, Mayo 2011 Licencia de Uso Copyright (c) 2010, Alvarez J., Solé S., Briceño R., Fundación CENDITEL. La Fundación CENDITEL
Más detallesService Oriented Architecture: Con Biztalk?
Service Oriented Architecture: Con Biztalk? Pablo Abbate Servicios Profesionales Danysoft SOA supone una nueva forma de pensar acerca de la arquitectura IT para las empresas. De hecho, es una asociación
Más detallesCARRERA TITULO DEL TRABAJO CURSO
CARRERA Ingeniería Informática TITULO DEL TRABAJO TOGAF CURSO Tópicos de Ingeniería del Software CÉSAR ESTRADA CONDORI MAYRA GOMEZ QUEVEDO LUIS MUǸOS ESCAPA ALAN A. ROJAS MARROQUIN SEMESTRE IX 2010 Los
Más detallesEntidad Formadora: Plan Local De Formación Convocatoria 2010
Entidad Formadora: Enterprise Architect Comenzando Puede iniciar Enterprise Architect desde el ícono que se creó en su escritorio de Windows durante la instalación, o alternativamente: 1. Abrir el menú
Más detallesCapitulo III. Diseño del Sistema.
Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje
Más detallesIngeniería de Software II Segundo Cuatrimestre 2007
Ingeniería de Software II Segundo Cuatrimestre 2007 Clase 4 Parte 1: Introducción a las Arquitecturas de Software Buenos Aires, 3 de Septiembre de 2007 Diagramas de ejemplo Analizando dibujitos Banco 3
Más detallesTópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN
Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Proceso de Negocio (Business Process) Conjunto estructurado, medible de actividades para producir un producto.
Más detallesPatrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms
Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura
Más detallesArquitectura de Proyectos de IT
Arquitectura de Proyectos de IT Apunte: Comunicación de Arquitectura de Software Autores: Ing. Gustavo A. Brey (gbrey@sistemas.frba.utn.edu.ar) Santiago Blanco (santiago.blanco@gmail.com) Versión: 0.8.20081106
Más detallesServidores Donantonio
Especificación de requisitos software Tabla de contenidos Juan José Amor David Escorial Ismael Olea 1. Introducción...3 1.1. Propósito...3 1.2. Ámbito del sistema...3 1.3. Definiciones, acrónimos y abreviaturas...3
Más detallesUNIDAD 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 detallesADMINISTRACIÓN DE PROYECTOS
QUITO INGENIERIA MECANICA ADMINISTRACIÓN DE PROYECTOS JUAN MARCELO IBUJES VILLACÍS ADMINISTRACIÓN DE PROYECTOS Contenido tomado de referencia de la Guía de los Fundamentos para la Dirección de Proyectos
Más detallesArchitectural Driven Design - ADD
Architectural Driven Design - ADD Francisco Amadeo 2005 Agenda # 1 2 3 4 5 6 7 8 9 10 Tema ADD Overview Claves del Diseño Arquitectonico Desarrollo Evolutivo, RUP Nocion de Arquitectura Conceptual Objetivos
Más detallesUna Introducción al UML. El Modelo Físico
Una Introducción al UML Autor: Geoffrey Sparks, Sparx Systems, Australia Traducción: Fernando Pinciroli (Solus S.A., Argentina) y Aleksandar Orlic (Craftware Consultores Ltda., Chile) www.sparxsystems.com.ar
Más detallesPROGRAMACIÓ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 detallesEstilos y Patrones Arquitectónicos
Lic. Ariel Trellini Estilos y Patrones Arquitectónicos Llamando a las cosas por su nombre Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Arquitectura y Diseño de Sistemas
Más detalles2 EL DOCUMENTO DE ESPECIFICACIONES
Ingeniería Informática Tecnología de la Programación TEMA 1 Documentación de programas. 1 LA DOCUMENTACIÓN DE PROGRAMAS En la ejecución de un proyecto informático o un programa software se deben de seguir
Más detallesGestión de Configuración del Software
Gestión de Configuración del Software Facultad de Informática, ciencias de la Comunicación y Técnicas Especiales Herramientas y Procesos de Software Gestión de Configuración de SW Cuando se construye software
Más detallesObjetivo Las personas que realicen el curso aprenderán a:
Objetivo Las personas que realicen el curso aprenderán a: Describir el proceso de desarrollo de software orientado a objetos, lo que incluye las metodologías y los flujos de trabajo de la programación
Más detallesLiLa Portal Guía para profesores
Library of Labs Lecturer s Guide LiLa Portal Guía para profesores Se espera que los profesores se encarguen de gestionar el aprendizaje de los alumnos, por lo que su objetivo es seleccionar de la lista
Más detallesDISEÑO DE COMPONENTES DE SOFTWARE *
DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.
Más detallesSolución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar
Gobierno Municipal del Cantón Bolívar Versión: Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Plan de Desarrollo de Software Universidad
Más detallesANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN
ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN Clase 6: Ingeniería de Requerimientos Metododología y Ejemplo Primer Cuatrimestre 2015 Mg. María Mercedes Vitturini
Más detallesWorkflows? Sí, cuántos quiere?
Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención
Más detallesARC 101 Architecture Overview Diagram
ARC 101 Architecture Overview Diagram Estudio de Arquitectura para la evolución tecnológica de los aplicativos de ATyR Banco de Previsión Social ATYR Evolución Tecnológica Pág 1 of 10 Tabla de Contenidos
Más detallesIngeniería de Software en SOA
Ingeniería de Software en SOA ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de Software en SOA Curso 2014/2015 1 / 51 Índice 1 Directrices para la IS en SOA 2 Modelo de referencia
Más detallesDiseño de Componentes
Diseño de Componentes 1 Objetivos Estudiar los principales patrones para diseño de interfaces Estudiar los principales patrones para diseño de componentes Estudiar los principales estilos arquitectónicos
Más detalles4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Más detallesEnginyeria del Software III
Enginyeria del Software III Sessió 3. L estàndard ISO/IEC 15504 Antònia Mas Pichaco 1 Introducción El proyecto SPICE representa el mayor marco de colaboración internacional establecido con la finalidad
Más detallesAlgunas Herramientas de Apoyo al Análisis y Diseño de Software. Agustín J. González ELO329: Diseño y programación orientados a objetos
Algunas Herramientas de Apoyo al Análisis y Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos Resumen Para desarrollar software hay varias herramientas de gran utilidad
Más detalles1 EL SISTEMA R/3 DE SAP AG
1 EL SISTEMA R/3 DE SAP AG SAP AG es una corporación en el ámbito mundial. Fundada en 1972 y con sede en Walldorf, Alemania, SAP es la cuarta compañía mundial en ventas de software en el mundo. La compañía
Más detallesDesarrollo de Líneas de Productos de Software
Centro Experimental de Ingeniería de Software Departamento de Ciencias de la Computación Facultad de Ciencias Físicas y Matemáticas Universidad de Chile Desarrollo de Líneas de Productos de Software María
Más detallesCurso: 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 detallesService Oriented Architecture
Programación Concurrente y Distribuida Ingeniería en Informática Service Oriented Architecture José Carlos Cortizo Pérez josecarlos.cortizo@uem.es http://www.esp.uem.es/jccortizo D. Sistemas Informáticos
Más detallesCurso: El Proceso de Desarrollo de Software
Curso: El Proceso de Desarrollo de Software EL PROCESO DE DESARROLLO DE SOFTWARE... 1 OBJETIVO...1 CONTENIDO...1 BIBLIOGRAFÍA...4 DOCENTE...4 MODALIDAD DEL DESARROLLO...4 El proceso de Desarrollo de Software
Más detallesCAPÍTULO 5. DESARROLLO Y PRUEBAS
CAPÍTULO 5. DESARROLLO Y PRUEBAS 5.1 Introducción a las Tecnologías 5.1.1 Herramientas 5.1.1.1 SQL Server Es un sistema que sirve para la gestión de base de datos basado en un modelo relacional. Así mismo
Más detallesCiclo de vida y Metodologías para el desarrollo de SW Definición de la metodología
Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto
Más detalles7.1 Arquitectura de clases
7.1 Arquitectura de clases El modelo de analisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diserio del sistema. Como se discutio en el capitulo 3, dependiendo
Más detallesIntroducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com
Introducción a los Servicios Web Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com Servicios Web y Soa En un contexto SOA y los servicios web son una oportunidad de negocios en la actualidad.
Más detallesSISTEMAS DE INFORMACIÓN I TEORÍA
CONTENIDO: CICLO DE VIDA DE DESARROLLO DE SI FASES GENÉRICAS DEL CICLO DE VIDA DE DESARROLLO DE SI VISIÓN TRADICIONAL DEL CICLO DE VIDA DE DESARROLLO DE SI DE DESARROLLO DE SI: ANÁLISIS Material diseñado
Más detallesUnidad 1. Fundamentos en Gestión de Riesgos
1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.
Más detallesMetodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web
Metodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web J.Corral-García, D.Cortés-Polo, C.Gómez-Martín, J.L.González-Sánchez
Más detallesIntroducción. Componentes de un SI. Sistema de Información:
Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para
Más detallesBPMN Business Process Modeling Notation
BPMN (BPMN) es una notación gráfica que describe la lógica de los pasos de un proceso de Negocio. Esta notación ha sido especialmente diseñada para coordinar la secuencia de los procesos y los mensajes
Más detallesFigure 9-1: Phase C: Information Systems Architectures
FASE C Figure 9-1: Phase C: Information Systems Architectures Objetivos Los objetivos de la Fase C son: Desarrollar la arquitectura de sistemas de información objetivo (datos y aplicaciones), que describe
Más detallesApp para realizar consultas al Sistema de Información Estadística de Castilla y León
App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda
Más detallesMetodologías de diseño de hardware
Capítulo 2 Metodologías de diseño de hardware Las metodologías de diseño de hardware denominadas Top-Down, basadas en la utilización de lenguajes de descripción de hardware, han posibilitado la reducción
Más detallesConsultoría Santa Cruz. Buscador Web de Restaurants Software Architecture Document. Version 1.0
Consultoría Santa Cruz Buscador Web de Restaurants Version 1.0 Revision History Date Version Description Author 29/enero/2015 1.0 Primera versión : Buscador Web de Restaurants Rodríguez Vázquez Cristhian
Más detallesCapítulos 2 y 5: Modelación con UML y Modelo Objeto
Capítulos 2 y 5: Modelación con UML y Modelo Objeto Asignando Responsabilidades 2 Responsabilidades son obligaciones de un objeto, o comportamiento relacionado a su rol en el sistema Qué hace un objeto?
Más detallesUniversidad Autónoma del Perú Ingeniería de Sistemas. Ing. Heyner Ninaquispe Castro Sesión 1
Universidad Autónoma del Perú Ingeniería de Sistemas Ingeniería de la Información Apuntes Generales Ing. Heyner Ninaquispe Castro Sesión 1 Agenda 1.- Objetivo 2.- Introducción 3.- Características 4.- Niveles
Más detallesBPMN básico. Clase Modelos de Procesos. Javier Bermudez (jbermude@uc.cl)
BPMN básico Clase Modelos de Procesos Javier Bermudez (jbermude@uc.cl) Para qué modelar? Para sacar el mejor provecho a los artefactos creados por el hombre 2 BPMN Historia Mayo 2004: BPMI Lanza propuesta
Más detallesFigure 7-1: Phase A: Architecture Vision
Fase A Figure 7-1: Phase A: Architecture Vision Objetivos: Los objetivos de la fase A son: Enfoque: Desarrollar una visión de alto nivel de las capacidades y el valor del negocio para ser entregado como
Más detallesIngeniería de Software: Parte 2
Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes.
Más detallesVentajas del software del SIGOB para las instituciones
Ventajas del software del SIGOB para las instituciones Podemos afirmar que además de la metodología y los enfoques de trabajo que provee el proyecto, el software, eenn ssi i mi issmoo, resulta un gran
Más detallesLa interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la
Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
Más detallesOferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo
Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes
Más detallesMACROPROCESO GESTIÓN TECNOLÓGICA
Versión 1.0 Página 1 de 5 1. OBJETIVO Suministrar las fases para la puesta en producción de aplicaciones y sistemas de información desarrollados o adquiridos por el Instituto Colombiano de Bienestar Familiar
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallesimplantación Fig. 1. Ciclo de vida tradicional
1. Ciclo de vida tradicional de los sistemas de software En ingeniería de software, la descripción tradicional del ciclo de vida del software está basada en un modelo conocido como el modelo de cascada
Más detallesINGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones
INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones Univ. Cantabria Fac. de Ciencias Patricia López Modelo de Casos de Uso vs Modelo de Análisis Modelo de Casos de Uso Modelo de Análisis Descrito con el
Más detallesBASES DE DATOS, MODELOS DE DATOS Y DBMS
BASES DE DATOS, MODELOS DE DATOS Y DBMS Maestría en Bioinformática Marzo 2010 Bases de Datos Algunas definiciones: Bases de Datos y DBMS Procesos y Actores Involucrados Por qué usar DBMSs? Cuándo no usar
Más detallesInteroperabilidad de Fieldbus
2002 Emerson Process Management. Todos los derechos reservados. Vea este y otros cursos en línea en www.plantwebuniversity.com. Fieldbus 201 Interoperabilidad de Fieldbus Generalidades Qué es interoperabilidad?
Más detallesDISEÑO DE SOFTWARE INTEGRADO Unidad I: Introducción al Diseño de Software Integrado. Profesor: Cristián Chávez T
DISEÑO DE SOFTWARE INTEGRADO Unidad I: Introducción al Diseño de Software Integrado Profesor: Cristián Chávez T 1. Definición y objetivos de ERP Diseño de Software Integrado es diseñar un ERP ERP: Del
Más detallesLINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN
LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN Tabla de Contenidos LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN... 1 Tabla de Contenidos... 1 General... 2 Uso de los Lineamientos Estándares...
Más detallesPRUEBAS 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 detallesPROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN
PROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN Paola Britos 1,2, Enrique Fernandez 1,2, Ramón García-Martinez 1,2 Centro de Ingeniería del Software e Ingeniería
Más detallesBPMN vs UML. Los Requerimientos y el Modelo del Negocio. Autor: Norberto Figuerola
BPMN vs UML Autor: Norberto Figuerola Los Requerimientos y el Modelo del Negocio Normalmente, siempre que iniciamos un esfuerzo de desarrollo de software éste tiene como objetivo automatizar procesos del
Más detalleshttp://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 detallesCSIR2121. Administración de Redes I
CSIR2121 Administración de Redes I Objetivos: Al finalizar la clase el estudiante podrá: Mencionar el propósito del desarrollo del modelo TCP/IP. Explicar cada una de las capas del modelo TCP/IP. Comparar
Más detallesUniversidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática
Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática Metodología Evolutiva Incremental Mediante Prototipo y Técnicas Orientada a Objeto (MEI/P-OO)
Más detallesBASES DE DATOS. Ivon Tarazona Oriana Gomez
BASES DE DATOS Ivon Tarazona Oriana Gomez Introducción Introducción Ventajas e (Unified Modeling Language) Es un lenguaje usado para especificar, visualizar y documentar los diferentes aspectos relativos
Más detallesEn un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuando y Como hacerlo. 6
2. MÉTODO, METODOLOGÍA Y MÉTRICA 2.1 MÉTODO Un método de ingeniería del software es un enfoque estructurado para el desarrollo de software cuyo propósito es facilitar la producción de software de alta
Más detallesClientes Donantonio. Especificación de requisitos software. Juan José Amor David Escorial Ismael Olea
Especificación de requisitos software Tabla de contenidos Juan José Amor David Escorial Ismael Olea 1. Introducción...3 1.1. Propósito...3 1.2. Ámbito del sistema...3 1.3. Definiciones, acrónimos y abreviaturas...3
Más detallesINGENIERÍA DEL SOFTWARE
INGENIERÍA DEL SOFTWARE Sesión No. 2 Nombre: Procesos de ingeniería del software INGENIERÍA DEL SOFTWARE 1 Contextualización La ingeniería de software actualmente es muy importante, pues con los avances
Más detallesDiseño orientado al flujo de datos
Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos
Más detallesFundamentos de Desarrollo de Software
Instituto Tecnológico de Parral «por un espíritu creador y humano» Fundamentos de Desarrollo de Software M.C. Edgar Omar Bañuelos Lozoya 21/09/2010 Zayra Martínez Germán Villalobos Heber Borjas Software
Más detallesGLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.
GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.
Más detallesOMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento
OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen A través de este artículo se ofrece un panorama amplio y de alto nivel sobre la especificación y los diferentes diagramas del Lenguaje
Más detalles14. Ingeniería de software. Ing. Alejandro Adorjan
14. Ing. Alejandro Adorjan : un enfoque en ingeniería de requerimientos Introducción La ingeniería de software es una disciplina que estudia la aplicación de la teoría, el conocimiento y la práctica de
Más detallesMetodología centrada en la Experiencia del Usuario
Metodología centrada en la Experiencia del Usuario Esta metodología fue creada por Jesse James Garrett, se describe a detalle en su libro The Elements of User Experience, consiste en asegurarse que ningún
Más detallesResumen General del Manual de Organización y Funciones
Gerencia de Tecnologías de Información Resumen General del Manual de Organización y Funciones (El Manual de Organización y Funciones fue aprobado por Resolución Administrativa SBS N 354-2011, del 17 de
Más detallesIngeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado
Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros:
Más detalles