Es una tecnología que utiliza
un conjunto de protocolos y estándares que sirven para intercambiar datos entre
aplicaciones, permite interoperatibilidad máquina a máquina en
una red.
lunes, 15 de octubre de 2012
Diagrama de colaboración
Es una forma de representar
interacción entre objetos. Este resalta la organización estructural
de los objetos que envían y reciben los mensajes. Este tipo de diagrama muestra
un conjunto de objetos, enlaces entre ellos y los mensajes que intercambian. Un
diagrama de colaboración es un grafo, donde los nodos del grafo son los objetos
y los arcos son los enlaces. Un enlace es una instancia de una asociación o una
dependencia entre clases.
Diagrama de componentes y despliegue
Diagrama de componentes: Es un esquema o diagrama
que muestra las interacciones y relaciones de los componentes de un modelo. Entendiéndose
como componente a una clase de uso específico, que puede ser implementada desde
un entorno de desarrollo, ya sea de código binario, fuente o ejecutable; dichos
componentes poseen tipo, que indican si pueden ser útiles en tiempo de
compilación, enlace y ejecución.
Diagrama de despliegue: muestran las relaciones físicas de los
distintos nodos que componen un sistema y el reparto de los componentes sobre
dichos nodos.
La vista de despliegue
representa la disposición de las instancias de componentes de ejecución en instancias
de nodos conectados por enlaces de comunicación. Un nodo es un recurso de
ejecución tal como un computador, un dispositivo o memoria.
SAAS
Es una
forma de distribuir el software por el cual el proveedor aloja la aplicación en
sus propios servidores, dándole al cliente acceso a ella a través de una
licencia. La empresa provee del servicio de mantenimiento diario,
almacenamiento de la información y seguridad de los datos, liberando así al
cliente del mantenimiento y los gastos asociados. Esto significa que el cliente
puede externalizar los servicios de alojamiento y no tiene que comprar la
aplicación permitiendo un ahorro
de costes considerable y el acceso a mejores aplicaciones, antes
vetadas a la pyme por coste y mantenimiento.
SOA
La Arquitectura Orientada a
Servicios es un concepto de arquitectura de software que define la utilización
de servicios para dar soporte a los requisitos del negocio.
Permite la creación de sistemas
altamente escalables que reflejan el negocio de la organización, a su vez
brinda una forma estándar de exposición e invocación de servicios, lo cual facilita la interacción entre
diferentes sistemas propios o de terceros.
SOA proporciona una metodología y
un marco de trabajo para documentar las capacidades de negocio y puede dar
soporte a las actividades de integración y consolidación.
Patrón MVC
es un patrón de diseño es uno de los patrones de diseño el cual es
utilizado en la Ingeniería de Software y consta de 3 niveles.
- Modelo: Esta es la representación específica de la información con la cual el sistema opera. En resumen, el modelo se limita a lo relativo de la vista y su controlador facilitando las presentaciones visuales complejas. El sistema también puede operar con más datos no relativos a la presentación, haciendo uso integrado de otras lógicas de negocio y de datos afines con el sistema modelado.
- Vista: Este presenta el modelo en un formato adecuado para interactuar, usualmente la interfaz de usuario.
- Controlador: Este responde a eventos, usualmente acciones del usuario, e invoca peticiones al modelo y, probablemente, a la vista.
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; restricciones que definen como se puede
integrar los componentes que forman el sistema; y modelos semánticos que
permiten al diseñador entender las propiedades globales de un sistema para
analizar las propiedades conocidas de sus partes constituyentes.
Arquitectura lógica
La
arquitectura de software de un programa o sistema de computadora, es la
estructura de ese sistema, que incluye componentes de software, las
propiedades visibles externas de esos componentes, y las relaciones entre estos.
miércoles, 12 de septiembre de 2012
GENEXUS
Es
una herramienta de desarrollo de software multiplataforma, basada en
conocimiento orientada principalmente a aplicaciones web empresariales,
plataformas Windows y dispositivos móviles.
herramientas CASE
Las herramientas CASE son diversas aplicaciones informáticas
que se usan para aumentar la productividad en el desarrollo de software,
reduciendo el costo en términos de tiempo y dinero
patrones GOF
Son patrones basados en el
campo orientado a objeto y en la actualidad son los más conocidos y utilizados.
Se
subdividen en tres:
PATRONES
CREACIONALES
Ejemplo
Fábrica Abstracta ( Abstract
Factory ):Este patrón soluciona problemas como crear diferentes familias
de objetos, un ejemplo es la creación de interfaces en distintos tipos de
ventanas, menús ,botones, etc.
PATRONES
ESTRUCTURALES
Ejemplo
Puente (Bridge): Desenlaza
una implementación permitiendo modificarlas independientemente.
PATRONES DE
COMPORTAMIENTO
Ejemplo
Cadena de responsabilidad
(Chain of responsibility): La base es permitir que más de un objeto
tenga la posibilidad de atender una petición.
TDD (test-driven development)
Desarrollo guiado por pruebas es un proceso de desarrollo de software que se
basa en la idea de desarrollar pruebas, codificar y refactorizar el código
construido.
manifiesto agíl
Las metodologías agiles forman parte del
movimiento de desarrollo ágil de software, y se basan en la adaptabilidad de
cualquier cambio como medio para aumentar las posibilidades de éxito de un
proyecto.
prince2
Es un método para la gestión
de proyectos que cubre administración, control y organización de un
proyecto.
ITIL
es un conjunto de conceptos y prácticas usadas para la gestión de servicios de tecnologías de información, desarrollo de tecnologías
de la información y las operaciones relacionadas con la misma en general,
da un extenso de procedimientos de gestión ideados para ayudar a las
organizaciones a lograr calidad y eficiencia en las operaciones de TI.
SCRUM
es un marco de trabajo diseñado para la
gestión y desarrollo de software basada en un proceso iterativo
e incremental que se usa comúnmente en entornos basados en el desarrollo
ágil de software.
PROGRAMACIÓN EXTREMA
XP es una metodología de desarrollo ligera que
se basa en una serie de valores y prácticas que proporcionan un aumento en la
productividad a la hora de crear software.
Patrones GRASP
Patrones generales de software para asignación de
responsabilidades.
Experto en información es el principio básico de asignación de
responsabilidades. La responsabilidad de la creación de un objeto o la
implementación de un método, debe recaer sobre la clase que conoce toda la
información necesaria para crearlo.
Creador nos ayuda a identificar quién debe ser el responsable de la
creación de nuevos objetos o clases.
Controlador es un patrón que sirve como intermediario entre una
determinada interfaz y el algoritmo que la implementa, de tal forma que es la
que recibe los datos del usuario y la que los envía a las distintas clases
según el método llamado.
Alta cohesión y bajo acoplamiento se recomienda tener un mayor
grado de cohesión con un menor grado de acoplamiento.
ejemplo
Este
es un ejemplo muy sencillo del patrón experto este define la clase que conoce
toda la información necesaria para crear un objeto en este ejemplo el experto
seria ventas.
Patrones
los
patrones son soluciones genéricas para problemas comunes en el desarrollo de software,
estos pueden ser de arquitectura que ofrecen soluciones a problemas de arquitectura
de software y de diseño que expresan un esquema para definir una serie de
estructuras de diseño con las que construir software.
Swebok
Es una guía que provee acceso
a través de las temáticas al conjunto de conocimientos de la Ingeniería del
Software, promueve una visión consistente de la Ingeniería del Software en todo
el mundo, Clarifica la posición de la Ingeniería del Software respecto a
otras disciplinas y Proveer una base para su desarrollo curricular y la
creación de materiales de certificación.
Refactorización
se define refactorización como una tecnica para reestructurar el codigo fuente , alterando su extructura interna sin cambiar su comportamiento externo.
Suscribirse a:
Entradas (Atom)