INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Documento de Diseño Arquitectónico y Detallado
Red Social: “Un millón de Amigos”.
Plan de Implantación Sistemas de Información III
Fundamentos de Diseño de Software INFT.1
MI PROGRAMA DE FORMACION
Unidad I: Transición del Análisis hacia el Diseño
Fundamentos de Ingeniería de Software
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Profesor: Miguel Angel Vidal
Ingeniería del software de la usabilidad (I)
INTELIGENCIA DE NEGOCIOS
Modelado Arquitectónico
Diseño del Software Diseño de datos Diseño arquitectónico
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
Análisis y Diseño de un Software
Arquitectura de una aplicación
Ingeniería de Software Orientado a Objetos
DISEÑO DE SOFTWARE 1ª. Parte
Fundamentos de programación
Diseño e Implementación
Unidad 4 Diseño Arquitectónico Basado en la Funcionalidad
Desarrollo de aplicaciones para ambientes distribuidos
Comunicación y Multimedia
Proyecto de Ingeniería de Software Grupo 9 Septiembre 2009
CONCEPTOS BÁSICOS Diseño de Sistemas.
METODOLOGÍA OMT Diseño de sistemas.
Organización y Estructuración de Datos
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS
Visión Panorámica Diccionario de Datos Paso al diseño
Importancia en la efectividad del:
¿Qué es? Ambiente de desarrollo rápido montado sobre PHP Cubre distintos aspectos del desarrollo de una aplicación empresarial, desde la administración.
Diseño de Software y su Proceso
ARQUITECTURA DE HARDWARE Y SOFTWARE
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Desarrollo de Software Orientado a Objetos (deficiencias)
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
 La arquitectura se desarrolla en iteraciones de la fase de elaboración La arquitectura se desarrolla en iteraciones de la fase de elaboración  Ejemplo.
Proyecto de Ingeniería de Software Grupo Nº 9 - GXPost (Desarrollo con GeneXus 8.0) Evaluación de la Fase Construcción (Jueves 4 de Noviembre de.
Modelo de 3 capas.
Diseño de Sistemas.
Conceptos Fundamentales
Ingeniería de Requisitos
DIAGRAMA DE SECUENCIA Y ACTIVIDADES.
DISEÑO CURRICULAR Presentado por: Cesar Augusto Sáenz María Alejandra Hernández 1.contenidos curriculares de competencia.
UML.
Relación con otras asignaturas del plan de estudio
Unidad 3 MODELO DE ANALISIS.
INTRODUCCION AL ANALISIS Y DESARROLLO DE SISTEMAS DE SOFTWARE EQUIPO NUMERO CUATRO INTEGRADO POR: XAVIER REFUGIO GARY NERY HERNANDEZ OSCAR JUAREZ.
Prof. Joel Moreno Molina
Unified Modeling Language (Lenguaje de Modelamiento unificado)
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
Organización y Métodos. ©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva * Ingeniería de Requerimientos ● Estableciendo.
Arquitectura de una aplicación Arquitectur a: desarrolla un plan general del sistema, asegurando que las necesidades de los usuarios sean atendidas. Ingeniería.
Capas de ingeniería del Software. Rosendo Antonio Manuel Ingeniería en Sistemas Computacionales.
MODELAMIENTO VISUAL Y UML
Integrantes: Castro José República Bolivariana De Venezuela Ministerio Del Poder Popular Para La Educación Superior Instituto Universitario Tecnológico.
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Introducción a la abstracción de datos MC Beatriz Beltrán Martínez Primavera 2015.
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
Presentación De UML Lenguaje estándar para escribir planos de software Se usa para visualizar, especificar, construir y documentar los artefactos de un.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Entregables del Proyecto
Universidad Nacional de Ingeniería Comprendiendo los Fundamentos de
Profesor: Jesús Chaparro Bachilleres: Perez, emibeliz Prada, Rainer Villahermosa, José Abril 2014.
Transcripción de la presentación:

INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software

Agenda Introducción Etapas del Diseño El proceso de Diseño del Software ¿Qué es arquitectura? Tipos de Arquitectura Arquitectura de Aplicaciones Descripción de una Arquitectura Productos resultantes de la Arquitectura de Software Arquitectura de aplicaciones de .NET Diseño de Capa de Presentación Diseño de Capa de Negocio Diseño de Capa de Datos

Introducción Diseño: Proceso de aplicar varias técnicas y principios con el propósito de definir un dispositivo proceso o sistema con suficiente detalle que permita su realización física. Diseño es mas que programar o escribir código.

Etapas del Diseño Diseño Arquitectónico Arquitectura física Arquitectura lógica Módelo de datos Diseño detallado Diseño de módulos detallados Modelo de navegación del sistema Interfaces de usuario Diccionario de datos Documentos DDA-DDD (ESA)

El Proceso de Diseño

El Proceso de Diseño SALIDAS DEL DISEÑO: Diseño de datos: Transforma el dominio de la información creado durante el análisis en estructuras de datos. Diseño de Arquitectura: Define las relaciones entre los principales componentes estructurales del software. Diseño de procedimientos: Transforma los componentes estructurales en descripción de procedimientos de software. Diseño de Interfaces: Establece las bases y mecanismos de interacción entre persona y máquina.

El Proceso de Diseño En el diseño es donde se genera la calidad del software. Sin el diseño se corre el riesgo de construir un sistema inestable que “fallará” ó “se caerá” si se hacen cambios.   Desde un punto de vista "administrativo" podemos dividir al diseño en 2 partes: Diseño Preliminar, que genera la arquitectura y el diseño de datos. Diseño detallado, que genera una representación detallada de la estructura de datos y algoritmos, así como el diseño de las interfaces persona-máquina.

¿Qué es Arquitectura? “Estructura fundamental de los componentes de un sistema, las relaciones entre ellos y el entorno, y los principios y guías que gobiernan su diseño y evolución”. IEEE STD 610.12

Tipos de Arquitectura Arquitectura de Aplicaciones. Arquitectura de Datos. Arquitectura Corporativa. Arquitectura Operacional. Arquitectura Física. Arquitectura de Seguridad. Arquitectura Técnica.

Arquitectura de Aplicaciones ¿Qué contiene? Descripción de los componentes que forman la aplicación y cómo están relacionados Diagramas que permiten visualizar distintos aspectos de la solución Perspectivas Funcional Funcionalidad y escenarios que son los comportamientos, clases y riesgos arquitectónicamente significativos. Lógica Las clases más importantes agrupadas en módulos y subsistemas y estos en capas. Implementación Agrupación de componentes en módulos y subsistemas (físicos). Distribución Equipamiento físico de procesamiento incluyendo hardware y software de base. Datos Estrategia de almacenamiento.

Descripción de una Arquitectura Representación o “plano” de una configuración real de recursos, reglas, y relaciones actuales o sugeridas. Colección de productos para documentar una arquitectura. Vista Representación de un sistema completo desde la perspectiva de un interesado (stakeholder). Muestra los aspectos que le preocupan al interesado.

Descripción de una Arquitectura

Productos resultantes de la Arquitectura de Software El objetivo principal de la Arquitectura del Software es aportar elementos que ayuden a la toma de decisiones y, al mismo tiempo, proporcionar conceptos y un lenguaje común que permitan la comunicación entre los equipos que participen en un proyecto. Para conseguirlo, la Arquitectura del Software construye abstracciones, materializándolas en forma de diagramas. Vista lógica: describe el modelo de objetos. Vista de proceso: muestra la concurrencia y sincronía de los procesos. Vista física: muestra la ubicación del software en el hardware. Vista de desarrollo: describe la organización del entorno de desarrollo. Existe una quinta vista que consiste en una selección de casos de uso o de escenarios que los arquitectos pueden elaborar a partir de las cuatro vistas anteriores.

Productos resultantes de la Arquitectura de Software Modelo 4+1 (1995) Philippe Kruchten

Patrón de Arquitectura en Capas Solución Componer la solución como un conjunto de capas. Cada capa debería ser cohesiva y aproximadamente al mismo nivel de abstracción. Cada capa debería estar bajamente acoplado con las capas inferiores.

Arquitectura de App en .NET Capas de componentes de servicios y aplicaciones distribuidas creadas con .NET

Arquitectura de App en .NET Diseño de Capa de Presentación Diseño de componentes de interfaz de usuario Los componentes de la interfaz de usuario deben mostrar datos al usuario, obtener y validar datos procedentes del mismo e interpretar las acciones de los éste que indican que desea realizar una operación con los datos. Asimismo, la interfaz debe filtrar las acciones disponibles con el fin de permitir al usuario realizar sólo aquellas operaciones que le sean necesarias en un momento determinado. http://www.microsoft.com/spanish/msdn/arquitectura/das/guias/AppArchCh2.asp

Arquitectura de App en .NET Diseño de Capas Empresariales Componente empresarial típico que interactúa con los componentes lógicos de acceso a datos, las interfaces y los agentes de servicios y otros componentes empresariales. http://www.microsoft.com/spanish/msdn/arquitectura/das/guias/AppArchCh2.asp

Arquitectura de App en .NET Diseño de Capas de Datos Componentes lógicos de acceso a datos 1.Los componentes lógicos de acceso a datos exponen métodos para insertar, eliminar, actualizar y recuperar datos, incluyendo la provisión de funcionalidad de paginación al recuperar grandes cantidades de datos. 2. Puede utilizar un componente de ayuda de acceso a datos para centralizar la administración de la conexión y todo el código relacionado con un origen de datos específico. 3. Se recomienda implementar las consultas y operaciones de datos como procedimientos almacenados (si es compatible con el origen de datos) para mejorar el rendimiento y la facilidad de mantenimiento. http://www.microsoft.com/spanish/msdn/arquitectura/das/guias/AppArchCh2.asp

Ejemplos de Distribución

Conclusiones El DD es el término a la etapa de diseño. Regularmente es acompañado por un prototipo. No “debe” faltar NADA que se pueda necesitar durante la construcción.

FIN