Aplicando UML en proyectos .NET 050524-MSF-UML-VS-AlexSanchez1.0.ppt
1. Aplicando UML en
Aplicando UML en
proyectos .NET
proyectos .NET
Alex Sánchez
Alex Sánchez
alex.sanchez@logicstudio.net
alex.sanchez@logicstudio.net
MCAD C# – MVP VB.NET
MCAD C# – MVP VB.NET
Logic Studio Panamá
Logic Studio Panamá
2. www.logicstudio.net
Agenda
Agenda
¿Por qué usar una metodología formal?
¿Por qué usar una metodología formal?
¿Qué es UML?
¿Qué es UML?
Del modelo al código
Del modelo al código
Preguntas
Preguntas
4. www.logicstudio.net
Razones de por qué los
Razones de por qué los
proyectos fallan
proyectos fallan
0% 5% 10% 15%
Requerimientos incompletos
Fata de involucramiento del usuario
Falta de recursos
Expectativas no realistas
Falta de soporte ejecutivo
5. www.logicstudio.net
Plan de acción
Plan de acción
Recopilar requerimientos
Recopilar requerimientos
Diseñar la solución
Diseñar la solución
Planificar las iteraciones
Planificar las iteraciones
Preparar la codificación
Preparar la codificación
Preparar el despliegue
Preparar el despliegue
Preparar el plan de pruebas
Preparar el plan de pruebas
6. www.logicstudio.net
Mejores prácticas para…
Mejores prácticas para…
Recopilar requerimientos
Recopilar requerimientos
Usar Modelaje de Casos de Uso
Usar Modelaje de Casos de Uso
Fases de Visionamiento y Planeación de
Fases de Visionamiento y Planeación de
MSF
MSF
7. www.logicstudio.net
Mejores prácticas para…
Mejores prácticas para…
Diseñar la solución
Diseñar la solución
Usar Diagramas UML (Clases, Secuencia,
Usar Diagramas UML (Clases, Secuencia,
Estados…)
Estados…)
Diseño conceptual y lógico
Diseño conceptual y lógico
Fase de Planeación de MSF
Fase de Planeación de MSF
8. www.logicstudio.net
Mejores prácticas para…
Mejores prácticas para…
Planificación de iteraciones
Planificación de iteraciones
Dividir el desarrollo en varias iteraciones
Dividir el desarrollo en varias iteraciones
La primera iteración debe contener la
La primera iteración debe contener la
funcionalidad clave
funcionalidad clave
Las funcionalidades mas riesgosas deben ser
Las funcionalidades mas riesgosas deben ser
parte de la iteración 1 o 2.
parte de la iteración 1 o 2.
Es indispensable tener la “certificación” de
Es indispensable tener la “certificación” de
una iteración antes de iniciar la siguiente
una iteración antes de iniciar la siguiente
9. www.logicstudio.net
Mejores prácticas para…
Mejores prácticas para…
Planear el Despliegue de la Solución
Planear el Despliegue de la Solución
Usar UML (Diagrama de deployment)
Usar UML (Diagrama de deployment)
Configurar un proyecto de Setup and
Configurar un proyecto de Setup and
Deployment con VS.NET
Deployment con VS.NET
Consideraciones de seguridad
Consideraciones de seguridad
Fase de despliegue de MSF
Fase de despliegue de MSF
10. www.logicstudio.net
Mejores prácticas para…
Mejores prácticas para…
Planear Pruebas
Planear Pruebas
La etapa de Pruebas es crucial para el éxito
La etapa de Pruebas es crucial para el éxito
del proyecto
del proyecto
Para Pruebas de Sistema, usar escenarios de
Para Pruebas de Sistema, usar escenarios de
casos de uso para definir datos y secuencias
casos de uso para definir datos y secuencias
de funcionalidad que se desea probar
de funcionalidad que se desea probar
Para pruebas de unidad, definir entradas y
Para pruebas de unidad, definir entradas y
salidas por clase. Evaluar Nunit (unit testing
salidas por clase. Evaluar Nunit (unit testing
framework para .NET)
framework para .NET)
12. www.logicstudio.net
Modelo de Proceso MSF
Modelo de Proceso MSF
Visión/Alcance
Aprobados
Planes del
Proyecto
Aprobados
Alcance
Completo
Release
Aprobado
Implementación
Completa
13. www.logicstudio.net
Que es UML?
Que es UML?
El Lenguaje de Modelamiento Unificado
El Lenguaje de Modelamiento Unificado
(
(Unified Modeling Language
Unified Modeling Language UML) es el
UML) es el
lenguaje que puede ser usado para modelar
lenguaje que puede ser usado para modelar
sistemas y hacerlos legibles.
sistemas y hacerlos legibles.
Esto implica que UML provee la habilidad de
Esto implica que UML provee la habilidad de
capturar las características de un sistema
capturar las características de un sistema
usando notaciones
usando notaciones
14. www.logicstudio.net
Los diagramas UML
Los diagramas UML
UML
UML provee un conjunto de notaciones
provee un conjunto de notaciones
para documentar sistemas basados en los
para documentar sistemas basados en los
principios de diseño orientados a objetos.
principios de diseño orientados a objetos.
Casos de Uso
Casos de Uso
Clases Objetos
Clases Objetos
Estados Actividades
Estados Actividades
Secuencia Colaboración
Secuencia Colaboración
Componentes
Componentes
Despliegue
Despliegue
15. www.logicstudio.net
Casos de Uso
Casos de Uso
El diagrama de casos de uso sirve para identificar
El diagrama de casos de uso sirve para identificar
los elementos primarios y procesos que
los elementos primarios y procesos que
conforman el sistema
conforman el sistema
Actor
Caso de Uso
Un actor puede representa un usuario,
rol, otros sistemas
Un caso de uso es una secuencia de acciones
que brinda el sistema a un actor particular
Actores y casos de uso se relacionan
mediante asociaciones o dependencias
16. www.logicstudio.net
Especificaciones
Especificaciones
Los casos de uso se especifican apoyandose en una
Los casos de uso se especifican apoyandose en una
redacción y usualmente con un diagrama de
redacción y usualmente con un diagrama de
secuencia
secuencia
Movimiento de
Inventario
El propósito principal del modelo de caso de uso es comunicar
la funcionalidad del sistema y la interacción con el usuario
Caso de Uso :
Movimiento de Inventario
Actores:
Bodega
Precondiciones:
Selección de Articulo
Descripcion
Excepciones:
Post Condiciones
17. www.logicstudio.net
Diagrama de Clases
Diagrama de Clases
El diagrama de clases es usado para refinar el
El diagrama de clases es usado para refinar el
diagrama de casos de uso y definir un diseño
diagrama de casos de uso y definir un diseño
detallado del sistema.
detallado del sistema.
Cada clase en el diagrama de clases puede
Cada clase en el diagrama de clases puede
almacenar valores y tiene capacidad de proveer
almacenar valores y tiene capacidad de proveer
ciertas funcionalidades, conocido como “atributos”
ciertas funcionalidades, conocido como “atributos”
y “métodos”
y “métodos”
18. www.logicstudio.net
Diagrama de Secuencia
Diagrama de Secuencia
Un diagrama de secuencia representa la
Un diagrama de secuencia representa la
interacción entre diferentes objetos en el sistema
interacción entre diferentes objetos en el sistema
El aspecto importante de un diagrama de
El aspecto importante de un diagrama de
secuencia es que es ordenado en el tiempo
secuencia es que es ordenado en el tiempo
Los diferentes objetos del diagrama de secuencia
Los diferentes objetos del diagrama de secuencia
interactúan entre ellos a través del paso de
interactúan entre ellos a través del paso de
“mensajes”
“mensajes”
19. www.logicstudio.net
Siguiente paso
Siguiente paso
Adoptar una Metodología (MSF)
Adoptar una Metodología (MSF)
Seleccionar una herramienta
Seleccionar una herramienta
Entrenarse
Entrenarse
Disciplina
Disciplina
20. www.logicstudio.net
Otros Recursos
Otros Recursos
Microsoft Solution Framework
Microsoft Solution Framework
www.microsoft.com
www.microsoft.com/
/msf
msf
Object Management Group (OMG)
Object Management Group (OMG)
www.omg.org
www.omg.org
Hansen
Hansen J/Thomsen C,
J/Thomsen C, Enterprise
Enterprise
Development with Visual Studio .NET, UML,
Development with Visual Studio .NET, UML,
and MSF
and MSF
#11:El Modelo de Proceso MSF sigue la trayectoria de una solución desde su concepción hasta el punto en que empieza a entregar valor,
#12:Installing, setting up, testing and running. This military term, which means the placement of troops and equipment in the field, is widely used with computers as an alternate to the word "implementation." For example, "XYZ software deployment" is the same as saying "XYZ software implementation." To "deploy" something is to "get it installed and running."
#13:UML provee un conjunto de notaciones para documentar sistemas basados en los principios de diseño orientados a objetos. Estas notaciones conforman los diagramas que propone UML
Surege como un estándar de la comunidad
UML puede ser usado como la notación para el desarrollo de una Solución dentro del marco de trabajo MSF
#14:UML abarca aspectos de requerimientos, análisis, diseño e incluso implementación.
La practicidad de UML radica en que los diagramas pueden ser usados conforme se los necesita
UML no tiene dependencia de ninguna tecnología o lenguaje
UML es un lenguaje de modelamiento conciso que no está atado a ninguna tecnología particular
#15:UML puede ser usado como la notación para el desarrollo de una Solución dentro del marco de trabajo MSF
#16:El diagrama de casos de uso muestra que actores interactúan con que caso de uso
#20:ESTE SLIDE DEBEN ESTAR PRESENTE SIEMPRE AL FINAL DEL TEMA QUE CORRESPONDA.
Es a modo informativo para que la audiencia conozca cómo acceder a las herramientas de desarrollo y los beneficios.