Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Informe 1
Informe 1
INFORME UNIDAD 1
Arquitectura de Software
Presentado a:
Hernández Rengifo German
Presentado por:
Maicol Felipe Quevedo
Juan Manuel Amaya
Juan José Sierra
Ibagué-Tolima
Marzo 25 del 2019
Contenido
INTRODUCCION...........................................................................................................................4
Justificación.................................................................................................................................4
Objetivos Generales....................................................................................................................4
Objetivos Específicos...................................................................................................................4
Comprensión general de arquitecturas de software..................................................................5
Unidad de Competencia 1:.......................................................................................................5
Estudio de un sistema de información en una organización......................................................5
Actividades...............................................................................................................................5
Metodologías y Herramientas..................................................................................................5
Planificación del estudio...........................................................................................................5
Recopilación de información....................................................................................................5
Análisis de la información........................................................................................................6
Elaboración y presentación del informe final...........................................................................6
Implementación y seguimiento................................................................................................6
Metodologías de desarrollo de software....................................................................................6
Extreme Programming (XP)......................................................................................................6
Scrum.......................................................................................................................................7
Características:.........................................................................................................................7
Crystal Methodologies.............................................................................................................7
Características:.........................................................................................................................8
Procesos de Arquitectura de Software........................................................................................8
Análisis de los Requerimientos.................................................................................................9
Diseño y Arquitectura...............................................................................................................9
Modelos Estructurales..............................................................................................................9
Modelos Dinamicos..................................................................................................................9
Alcance de Arquitecturas de Software y Diseño.........................................................................9
Unidad de Competencia 2:.....................................................................................................10
Estilos Arquitectónicos...........................................................................................................10
Tipos de Estilos.......................................................................................................................10
Arquitectura Centrada en Datos.............................................................................................10
Características:.......................................................................................................................10
Arquitectura de Flujo de Datos..............................................................................................10
Características:.......................................................................................................................10
Arquitectura Orientada a Objetos..........................................................................................10
Características:.......................................................................................................................11
Análisis de Necesidades y Requerimientos del Sistema...........................................................11
¿Qué es un requisito?.............................................................................................................11
Validación y Verificación........................................................................................................11
Documentación......................................................................................................................11
¿Qué es un requerimiento?....................................................................................................12
Construir e Implementar la Arquitectura..................................................................................13
Unidad de competencia 3:.....................................................................................................13
Integración de Aplicaciones...................................................................................................13
Frameworks de Software.......................................................................................................14
Framework de Arquitectura Empresarial...............................................................................14
Zachman Enterprise Framework............................................................................................15
Department of Defense Architecture Framework (DoDAF)....................................................15
Conclusiones..............................................................................................................................16
Webgrafía..................................................................................................................................17
Introduccion
El siguiente informe da ha conocer el desarrollo de la unidad 1 del curso de
arquitectura de software del programa gestión de base de datos de la
Universidad del Tolima
El material desarrollado esta dividido en elementos de competencia con los
cuales se busca analizar y resolver a profundidad sus significados y exponerlos
de la manera mas precisas posible a partir de ejemplos cotidianos y gráficos
que se pueden apreciar en este informe.
A partir del material subido a la plataforma de “tu Aula” y demás documentos en
diferentes paginas sobre el tema desarrollado, se realizó la debida
investigación de los conceptos con éxito, cumpliendo de esta manera con los
objetivos propuestos.
Justificación
El informe desarrollado abarca una parte de los temas a ver durante el
transcurso del curso de “Arquitectura de Software”, el cual significa una parte
del material a desarrollar al finalizar la materia, por ende, es importante estudiar
y evaluar los conceptos en cada unidad para de esta manera apropiarse y
entender los procesos y arquitectura del desarrollo de software.
Objetivos Generales
Mostrar el desarrollo de las actividades propuestas en la unidad 1 de la materia
Arquitectura de Software para lograr entender y discutir los diferentes
componentes procesos y arquitecturas que posee el desarrollo de software
Objetivos Específicos
Facilitar la comprensión de la unidad desarrollado tanto para nuestro grupo
para las personas interesadas sobre el tema
Lograr cumplir con los objetivos y metas propuestas planteadas en la guía de
desarrollo.
Desarrollar y resolver las problemáticas respecto al tema proponiendo
soluciones efectivas.
Involucrar a los alumnos de la clase en actividades complementarias que
fomenten el tema desarrollado, para de esta manera complementar el
conocimiento respecto a las temáticas.
Comprensión general de arquitecturas de
software
Unidad de Competencia 1:
El proceso de arquitectura de software toma los requisitos de los clientes, los
analiza y produce un diseño para obtener un software que satisfará sus
necesidades. Los diseños exitosos de software deben sopesar las disyuntivas
inevitables que surgen debido a requisitos conflictivos; cumplir con los
principios de diseño y las buenas técnicas de procedimiento que han
evolucionado con el tiempo; y complementar el hardware moderno, las redes y
los sistemas de administración.
Actividades
En una organización o empresa, el análisis y diseño de sistemas de
información es el proceso de estudiar su situación con la finalidad de observar
cómo trabaja y decir si es necesario realizar una mejora; el encargado de
realizar estas tareas es el analista de sistemas.
Metodologías y Herramientas
Como toda técnica o herramienta profesional los estudios de Organización &
Métodos deben contar con una metodología para su desarrollo, para el efecto
se han determinado cinco fases que de acuerdo a su secuencia ayudan a la
realización del mismo.
Recopilación de información
Reunir y registrar aquellos hechos que permiten conocer y analizar lo que
realmente sucede en el área objeto de estudio, evitará la formulación de
impresiones deformadas de la realidad, incurrir en interpretaciones erróneas,
falsas conclusiones y proponer medidas de mejoramiento que al aplicarlas
resulten inoperantes.
Análisis de la información
Esta fase sirve de base para el desarrollo de alternativas de solución a los
problemas detectados y/o que originalmente generaron la necesidad de realizar
el estudio y para la formulación de recomendaciones de mejoramiento
administrativo en general.
Implementación y seguimiento
Se refiere a la puesta en práctica del nuevo sistema y comprende la integración
de los recursos humanos y materiales necesarios y la ejecución del programa
previsto bajo la supervisión y asesoría del Analista creador del sistema.
Características:
El desarrollo de software se realiza mediante iteraciones, denominadas sprints,
con una duración de 30 días. El resultado de cada sprint es un incremento
ejecutable que se muestra al cliente.
La segunda característica importante son las reuniones a lo largo proyecto.
Éstas son las verdaderas protagonistas, especialmente la reunión diaria de 15
minutos del equipo de desarrollo para coordinación e integración.
Crystal Methodologies
Se trata de un conjunto de metodologías para el desarrollo de software
caracterizadas por estar centradas en las personas que componen el equipo
(de ellas depende el éxito del proyecto) y la reducción al máximo del número de
artefactos producidos.
Características:
El equipo de desarrollo es un factor clave, por lo que se deben invertir
esfuerzos en mejorar sus habilidades y destrezas, así como tener políticas de
trabajo en equipo definidas.
El desarrollo de software se considera un juego cooperativo de invención y
comunicación, limitado por los recursos a utilizar.
Diseño y Arquitectura
El diseño de software tiene varios niveles los cuales están relacionados entre
sí, cada nivel tiene sus propios problemas, técnicas de análisis y componentes
los que pueden ser simples o complejos, reglas de composición las cuales
permiten construir componentes complejos.
Para utilizar la arquitectura de software se sigue un conjunto de patrones
arquitectónicos, entre los cuales podemos encontrar:
-Cliente-Servidor
-Blackboard.
-Modelo entre capas.
-Intérprete.
-Orientado a servicios.
Modelos Estructurales
Son similares a la vista estructural, pero su énfasis primario radica en
usualmente una sola estructura coherente del sistema completo, en vez de
concentrarse en su composición. Los modelos de framework a menudo se
refieren a dominios o clases de problemas específicos.
Modelos Dinamicos
Enfatizan la cualidad conductual de los sistemas, “Dinámico” puede referirse a
los cambios en la configuración del sistema, o a la dinámica involucrada en el
progreso de la computación, tales como valores cambiantes de datos.
Estilos Arquitectónicos
Cada estilo arquitectónico describe una categoría del sistema que contiene: un
conjunto de componentes, que realiza una función requerida por el sistema, un
conjunto de conectores que posibilitan la comunicación, la coordinación y la
cooperación entre los componentes.
Tipos de Estilos
Características:
-Es posible cambiar componentes existentes y agregar nuevos componentes a
la arquitectura sin preocuparse por otros clientes
-Es posible pasar datos entre clientes empleando el mecanismo del pizarrón.
-Los componentes clientes ejecutan los procesos de manera independiente.
Características:
-La disponibilidad de los datos controla la ejecución
-La estructura del diseño está dominada por el movimiento ordenado de los
datos de un componente a otro
-El patrón del flujo de datos es explícito
Características:
-En este estilo los componentes son los objetos, o instancias de tipos de datos
abstractos.
-Estos objetos son de un tipo de componente denominado manager porque es
responsable por preservar la integridad de un recurso.
-Los objetos interactúan a través de invocaciones a procedimientos y
funciones.
¿Qué es un requisito?
Un requisito es una declaración sobre un producto deseado que especifica qué
debería hacer o como debería hacerlo.
-Tiempo de descarga de una página debe ser menor de 5”
-Los usuarios deben encontrar atractiva la aplicación
Validación y Verificación
Validación: nos ayudan a conseguir subsanar las necesidades originales por
medio de los requisitos especificados
Verificación: nos ayudan en la tarea del diseño orientándonos como conseguir
los objetivos traduciéndolos en tareas rutinarias de diseño
Documentación
La documentación producida es importante, Será leída por todos los
integrantes del proyecto;
-Cliente y desarrollador
-Diferentes integrantes del grupo de desarrollo
-Almacenada y reusada
¿Qué es un requerimiento?
Necesario.
Si se tiene alguna duda acerca de la necesidad del requerimiento, se pueden
preguntar “¿Qué sería lo peor de no incluirlo?” Si no se encuentra una
respuesta o cualquier consecuencia, entonces es probable que no sea un
requerimiento necesario.
Completo
Un requerimiento esta completo si no necesita ampliar detalles en su
redacción, es decir, si se proporciona la información suficiente para su
comprensión.
Consistente
Un requerimiento es consistente si no es contradictorio con otro requerimiento
Factible.
El requerimiento deberá de ser totalmente factible y dentro de presupuesto,
calendario y otras restricciones, si se tiene alguna duda de su factibilidad, hay
que investigar, generar pruebas de concepto para saber su complejidad y
factibilidad, si aun así el requerimiento es no factible hay que revisar la visión
del sistema y replantear el requerimiento
Priorizado
Categorizar el requerimiento nos ayuda a saber el grado de necesidad del
mismo Esencial/Critico, Deseado, Opcional Verificable
Verificable
Si un requerimiento no se puede comprobar, entonces ¿Cómo se sabe si se
cumplió con él o no? Debe ser posible verificarlo ya sea por inspección, análisis
de prueba o demostración. Cuando se escriba un requerimiento, se deberá de
determinar los criterios de aceptación.
Rastreable
La especificación se debe organizar de tal forma que cada función del sistema
se pueda rastrear hasta su conjunto de requerimientos correspondiente. Facilita
las pruebas y la validación del diseño
Claro
Un requerimiento es conciso si es fácil de leer y entender, su redacción debe
ser simple y clara para aquellos que vayan a consultarlo en un futuro.
Unidad de competencia 3:
Integración de Aplicaciones
El mundo de los negocios está cambiando drásticamente, así como las
expectativas y exigencias de los clientes. La tecnología es, en estos tiempos,
una parte integral de la vida y en la manera en que este avance, cambiarán los
requerimientos de los negocios actuales; es por ello que, para acelerar la
innovación, obtener más beneficios de rendimiento, seguridad, confiabilidad y
cumplimiento, debe adaptarse a todos los principios de los negocios digitales.
Ventajas
-Comunicaciones seguras, efectivas y rápidas
-Procesamiento instantáneo de datos
-Digitalización de los procesos empresariales y comerciales para mejorar su
negocio
-Rendimiento amplio y fiable para satisfacer los requisitos y solucionar los
problemas al instante
-Procesos de negociación más rápidos y eficientes
Frameworks de Software
un framework es una estructura de soporte definida, en la cual otro proyecto de
software puede ser organizado y desarrollado. Los frameworks suelen incluir:
soporte de programas, bibliotecas, lenguaje de scripting, software para
desarrollar y unir diferentes componentes de un proyecto de desarrollo de
programas.