Lineamientos de arquitectura de soluciones
Enviado por Sergio_a_1 • 28 de Septiembre de 2019 • Apuntes • 1.014 Palabras (5 Páginas) • 130 Visitas
DOCUMENTOS PARA DEFINIR LA ARQUITECTURA DE LA SOLUCIÓN.
Identificación del documento | |
Código | MTRB-SCRUM-ARQUIT-SOFT-001 |
Título | Lineamientos de arquitectura de soluciones |
Fecha creación | 24/09/2012 |
Elaborado por |
Lista de distribución | |
Propiedad | Equipo de desarrollo |
Revisión del documento | |
Revisado por | |
En fecha |
Aprobación del documento | |
Aprobado por | |
En fecha |
Control de versiones | |||
Versión | Causa del Cambio | Responsable | Fecha |
01 | Versión Inicial. | 24/09/2012 | |
Arquitectura base de la solución.
La arquitectura base para las soluciones desarrolladas en la empresa está reflejada en el siguiente gráfico.
[pic 1]
Arquitectura y distribución de componentes de software
Fuente: Elaboración propia
La arquitectura base para el desarrollo de aplicaciones en la empresa está basada en el modelo clásico de capas lógicas: capa de interfaz de usuario, capa de reglas de negocio y capa de acceso a datos (la cual esta subdivida a su vez en: El origen de datos, capa de entidades, acceso a datos y la capa de servicios web).
Interfaz de usuario.
Contiene las interfaces de usuario, con el código manejador de eventos, realizando así nuestro propósito de tener el proyecto en capas.
Regla de Negocio.
Contiene la lógica del negocio en sí (reglas de negocio, validaciones, algoritmos, etc.), que es llamada desde la interfaz de usuario (directamente o a través de una interfaz de servicio) o de otro componente de negocio.
La idea es que los componentes de negocio encapsulen las reglas de negocio del sistema, de modo que puedan ser utilizados no solamente por el sistema del que forman parte sino también por otros sistemas, sin que haya redundancia de código fuente.
Servicio Web.
Los servicios web en realidad son interfaces de servicios perteneciente a otro proyecto, que abstraen la lógica de negocio implementada en dichos lugares remotos y pueden ser utilizados como una forma de “acceder” a datos almacenados en lugares remotos mediante la WEB,
Acceso a Datos.
Son los encargados de comunicarse con los repositorios de datos (normalmente bases de datos relacionales). Incluyen código específico de acceso a datos, como ser consultas, sintaxis o nomenclatura específica relacionada al repositorio de datos que se desea acceder.
Modelo de datos.
Representan las entidades del sistema (normalmente existe una relación uno a uno con las tablas físicas en la base de datos). Una instancia de una clase entidad representa un registro en la tabla correspondiente en la base de datos.
Las entidades se utilizan para mantener información de un objeto en memoria (un registro en una tabla de la base de datos) y para transportar la información entre la interfaz de usuario y los componentes de negocio (y también a través de las interfaces de servicios en caso de existir).
Orígenes de datos.
Representan los repositorios de datos donde se encuentra toda la información del sistema. Normalmente son bases de datos relacionales.
Implementación de la arquitectura base
Soluciones
Este punto se refiere al concepto de Solución como la integración de los diferentes proyectos.
Reglas de nomenclatura
Dependiendo del tamaño naturaleza de un proyecto de software, pueden darse dos escenarios: Una solución para todo el proyecto de software:
- La solución debe tener el nombre del proyecto o producto, que a su vez debe coincidir con el de la base de datos y el repositorio de código fuente.
- El nombre debe ser corto (hasta 5 caracteres) y contener sólo letras mayúsculas.
La nomenclatura varía según el tipo de proyecto:
COMPONENTE DE SOFTWARE | NOMBRE |
Interfaz de Usuario | |
Regla de Negocio (librería de clases): | |
Proy. Enlace a Datos con servicios web (sitio web): | |
Acceso a Datos (librería de clases): | |
Entidades de Negocio (librería de clases): | |
Proyecto de pruebas unitarias (DDL): | |
Proyecto de despliegue (web): | |
Proyecto de instalación: |
Tabla 22: Nomenclatura para los componentes de software
...