No es un bug, es una característica no documentada

2/6/15

Entornos de desarrollo. Apuntes para examen. Tercera evaluación

21:47 Posted by Inazio No comments

DIAGRAMAS DE CASOS DE USO


Especifica la funcionalidad que el sistema va a ofrecer desde la perspectiva del usuario y lo que el sistema ha de realizar para satisfacer las peticiones de éstos.

Visualiza el comportamiento de un sistema tal y como se muestra en un usuario.

Elementos:
è Actor. Modela los diferentes papeles que usuarios del sistema pueden representar.
Conjunto de actores. Representación de todo aquello que necesita intercambiar información con el sistema que se está desarrollando.
è Casos de uso. Representa todo aquello que el usuario puede realizar en el sistema.
Es una secuencia de transacciones relacionadas, ejecutadas por uno o más actores y el sistema en un diálogo determinado.
Especifica todas las maneras en que se puede utilizar el sistema.
·         Descripción del comportamiento normal del caso de uso (secuencia básica)
·         Variantes de la secuencia básica, posibles errores que se describen en secuencias alternativas.
Se realiza la identificación detallada de todas las funcionalidades que ha de tener el sistema.
è Relaciones. Asocian los anteriores elementos. Tipos:
·         Generalización entre actores. Organiza los distintos actores, indicando que una descripción abstracta del actor es compartida y aumentada por uno o más descripciones específicas del actor.
·         Generalización entre casos de uso. Identifica que un caso de uso específico hereda y añade propiedades a un caso de uso general
·         Relación de extensión (extend). Se usa para factorizar las variables sobre la secuencia básica de un caso de uso en nuevos casos de uso que extienden flujos principales


A puede ejecutar B, opcionalmente

·         Relación de inclusión (include). Indica que un caso incorpora el comportamiento de otro como parte de su propio comportamiento




A siempre debe ejecutar B

·         Asociación entre actor y caso. Señala la relación existente entre ambos

DIAGRAMAS DE CLASES


Modela la vista estática del sistema. Recoge los conceptos de dominio de aplicación y los que forman parte de la implementación de la aplicación.

Antes de ver los elementos, hay que saber que es un objeto:

Objeto. Representación de entidad discreta. Puede ser una abstracción, concepto o cosa con límites definidos y significado en el sistema. Características:
è Estado. Definido por valores de las propiedades (atributos) y relaciones con otros objetos. Indica las condiciones en que puede existir.
è Comportamiento. Indica todo lo que el objeto puede hacer. Son las operaciones del objeto.
è Identidad. Significa que cada objeto es único.

Elementos principales:
è Clases. Modelan el concepto de aplicación o de solución. Es una descripción de un conjunto de objetos con las mismas propiedades, mismo comportamiento, mismas relaciones y misma semántica. Tiene distintos modelos:
·         Modelo análisis. Concepto del mundo real
·         Modelo de diseño. Concepto de implementación
Podría considerarse una plantilla para crear objetos.
Sus atributos y operaciones pueden ser:
·         Públicos. Todos los elementos que pueden ver la clase pueden verlos. Se representa con un más (+)
·         Protegidos. Sólo los ven los elementos pertenecientes a su clase o descendientes. Se representa con una almohadilla (#)
·         Privados. Sólo los elementos pertenecientes a la misma clase pueden verlos. Se representa con un menos (-)
è Relaciones. Sirven para asociar clases. Es la abstracción de unas interrelaciones semánticas puntuales que se dan sistemáticamente entre diferentes tipos de objetos.
Tipos de relaciones:
·         Asociación. Relación entre objetos. Conexión bidireccional entre clases
·         Agregación. Un objeto está compuesto por otros del mismo o distinto tipo. Relación todo – parte
·         Herencia. Relación entre superclase y una o varias subclases, en las que recogen el mismo concepto pero la subclase con un nivel de detalle mayor. Tiene varios métodos:
§  Generalización. Proporciona el mecanismo para que las superclases encapsulen atributos y comportamientos comunes de varias clases. Se produce de abajo hacia arriba.
§  Especificación. Subclases que representan el mismo concepto con mayor nivel de refinamiento y detalle que las superclases. Se produce de arriba hacia abajo.
Las asociaciones se nombran mediante un verbo que la describa bien.
Puede ser binaria, ternario o n-aria según las clases implicadas.

Multiplicidad. Cuantos objetos de una clase pueden asociarse a una clase asociada.
                Rol de asociación (papel). Identifica un extremo de la asociación



DIAGRAMAS DE SECUENCIA



Muestra las interacciones entre objetos ordenados en secuencia temporal.
Documenta el diseño desde el punto de vista de las clases de uso y sirven para validarlas.
Miden grosso modo cuanto tiempo consume el método invocado.
Ayuda a comprender los cuellos de botella potenciales para poder eliminarlos.

SUBVERSIÓN


O SVN. Es un control de versiones. Permite compaginar diferentes programadores, ramas de desarrollo y versiones finales.

Tiene un ciclo de vida conocido como Trunk del que salen distintos branches (ramas).

Los pasos a seguir para un SVN son:
1.       Bajarse el proyecto entero
2.       Genero mi propia rama con las funciones que han sido asignadas. El proyecto principal sigue avanzando.
3.       Cuando se consigue una versión estable se generan TAGS (etiquetas), que son las versiones finales dentro de un mismo proyecto.



Operaciones de descarga:
è Checkout. Descarga el proyecto completo
è Update. Descarga sólo archivos que han sido modificados, o los nuevos.

Operaciones de carga:
è Commit. Sube los ficheros que han sido creados o modificados al servidor.

Ejemplo de servidor SVN: Assembla
Ejemplo de programa SVN: Tortoise

MODELO – VISTA – CONTROLADOR


Patrón de arquitectura de software que separa datos y lógica del negocio de una aplicación de la interfaz de usuario y el modelo encargado de gestionar eventos y comunicaciones.
Está basado en ideas de restructuración del código y separación de conceptos.

Componentes:
è Modelo. Representación de la información con la cual se opera. Gestiona los accesos a dicha información.
è Controlador. Responde a eventos (acciones del usuario generalmente) e invoca peticiones del modelo cuando se hacen solicitudes sobre la información.
è Vista. Representa el modelo en un formato adecuado para interactuar (usualmente interfaz de usuario).


0 comments:

Publicar un comentario