Professional Documents
Culture Documents
Alumnos:
Directores:
Mayo 2009
ndice
Memoria del Trabajo Profesional.................................................................... 1
1.
2.
Resumen ........................................................................................................................... 2
Introduccin ..................................................................................................................... 2
2.1.
2.2.
2.3.
2.4.
3.
Estudio de viabilidad....................................................................................................... 9
3.1.
El mtodo ........................................................................................................................................ 9
3.2.
Viabilidad en P3TQ ....................................................................................................................... 11
Modelo para predecir:............................................................................................................................... 17
4.
5.
6.
Conclusiones .................................................................................................................. 22
Futuras mejoras.............................................................................................................. 23
Bibliografa ..................................................................................................................... 23
Objetivo .......................................................................................................................... 25
Funcionalidad del Sistema ............................................................................................ 26
2.1.
2.2.
3.
4.
Diseo de la aplicacin.................................................................................................. 60
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.
8.
7.
Formato ......................................................................................................................................... 27
Requerimientos funcionales ......................................................................................................... 28
Requerimientos no funcionales .................................................................................................... 36
Restricciones ................................................................................................................................. 43
6.
Versin 4 ....................................................................................................................................... 27
Versin 3 ....................................................................................................................................... 27
Versin 2 ....................................................................................................................................... 27
Versin 1 ....................................................................................................................................... 27
5.
Evaluacin de proyectos............................................................................................................... 26
Gestin de usuarios ...................................................................................................................... 26
Validar Usuario............................................................................................................................. 84
Asignar evaluador ........................................................................................................................ 85
8.3.
8.4.
8.5.
8.6.
8.7.
8.8.
8.9.
8.10.
9.
10.
Conclusin.................................................................................................................... 108
Posibles mejoras........................................................................................................... 109
6.
7.
8.
10.
9.
Pg. 1
1.
Resumen
Los actuales proyectos de explotacin requieren el anlisis y
ejecucin de etapas para ser llevados a cabo con xito. Cada una de
estas etapas insume tiempo y recursos, lo que hace sumamente
importante estudiar la viabilidad del proyecto para evaluar si
resulta posible y conveniente llevarlo a cabo y, adems, controlar
cada etapa de ejecucin para detectar y corregir desvos y, de esta
manera, asegurar su xito.
El proyecto en cuestin se enfoca en una metodologa para la
realizacin de proyectos de explotacin de la informacin (Data
mining)
metodologa.
2.
Introduccin
CRISP-DM
Pg. 2
P3TQ
Pg. 3
Pg. 4
MII
Modelado del Negocio
Metodologa de
Modelado (MII)
MIII
Preparacin de los Datos
(Boxes 9.x)
MIII
Minera sobre el modelo
(Boxes 11.x)
Metodologa de
Minera (MIII)
MIII
Refinamiento
(Boxes 12.x)
MIII
Despliegue
(Boxes 13.x)
Fin
Para comenzar la primera etapa Pyle propone cinco posibles puntos de partida en
funcin del propsito del proyecto de explotacin de la informacin que se quiere
evaluar. De esta manera Pyle considera:
1.
Explorar los datos en bsqueda de relaciones tiles.
2.
3.
Pg. 5
4.
5.
Dada una situacin estratgica, analizar si la minera de datos puede ser til
para explicar la situacin y cules son las opciones de la organizacin para
resolverla.
Pg. 6
Minera
Refinamiento
Despliegue
Los boxes explican detalladamente los conceptos y/o acciones que se realizan. El
grfico mostrado anteriormente permite identificar cules son los Boxes que
corresponden a cada etapa de la metodologa. Por ejemplo puede verse en la
figura 2.3.1 que los Boxes 9.x corresponden a la etapa de preparacin de los datos
en la metodologa de minera MIII.
Pg. 7
SEMMA
CRISPDM
NO
5
NO
NO
NO
NO
SI
6
SI
NO
NO
SI
NO
NO
NO
NO
PYLE
SI
5 (1 MII y 4 MIII)
SI
SI
SI
SI
SI (Product, Place, Price,
Time, Quantity)
SI
Pg. 8
3. Estudio de viabilidad
Todo proyecto en el mbito de cualquier rama de la ingeniera debe satisfacer la
ecuacin fundamental de costo y beneficio.
Antes de comenzar con un proyecto, por lo tanto, tres puntos deben tenerse en
cuenta:
3.1. El mtodo
Booleanos
Pg. 9
Nada
1,2 2,2
Poco
Todo
7,8 8,8 10
10
10
10
10
10
Pg. 10
Pg. 11
Segn el punto de partida inicial, D. Pyle establece cules son los siguientes pasos
a seguir.
Por ejemplo el caso ms general, con escasa informacin sobre el negocio, slo
llega el conjunto de datos sobre el cual se debe aplicar minera para descubrir
relaciones que puedan llegar a ser de inters. En este punto, Pyle, establece
Pg. 12
Estas relaciones deben ser reveladas en los datos con las herramientas usadas para
la minera de datos.
Memoria del Trabajo Profesional
Pg. 13
El siguiente paso tiene que ver con los interesados, es notar quin o qu
departamento origin el proyecto original y qu esperan a cambio.
Hasta aqu, se ha analizado slo un punto de partida de modelado de negocio
identificado por D. Pyle, notemos cules son las situaciones que se tienen luego de
analizar esta pequea fraccin de la metodologa:
Pg. 14
Por esta razn debe ser posible realizar tests de viabilidad no slo antes de
comenzar la minera, sino tambin a lo largo del desarrollo del proyecto.
La metodologa P3TQ, comienza el proceso de minera con la preparacin de los
datos.
Se debe tener en cuenta que el esfuerzo del experto es enfocado en mayor medida
a esta tarea. Es de esperar que la relacin sea entre el 60 y 90% del esfuerzo total
avocado a la minera.
Esto, apunta a que el test de viabilidad para la minera de datos est enfocado en
gran parte hacia el estado de los conjuntos de variables y, por ejemplo, si no
existen errores, si dichas variables y sus valores son congruentes con el modelo de
negocio o si son suficientes, adems si poseen muchos valores indefinidos, etc.
Las cuestiones mencionadas se reflejan en las preguntas que el sistema de clculo
de viabilidad muestra al usuario (tabla 3.2.2.1).
Pyle establece los pasos a seguir para la preparacin de los datos en los boxes 9.x.
El siguiente punto ms relevante, luego de la preparacin de los datos, es la
minera en s, refirindonos a los algoritmos utilizados, los conjuntos de variables
de entrada y salida, etc. Estos casos son apuntados por los boxes 11.x.
El test de viabilidad en la minera propuesto en este trabajo tiene una bifurcacin
segn los tres tipos de proyectos de explotacin que Pyle identifica:
Minera para entender.
Minera para clasificar.
Minera para predecir.
Minera para entender:
Cuando la cuestin que motiva el proyecto es entender el por qu de una
situacin del negocio en particular, el set de datos limita la respuesta que el
encargado de la explotacin de la informacin puede otorgar.
Si es posible, la transformacin de variables es normalmente de gran ayuda para
la comprensin de los resultados y puede hacer ms rico un modelo. Tomemos
como ejemplo de transformacin, establecimientos de una empresa dedicada a la
logstica georeferenciados, o sea, puntos en particular con latitud y longitud
establecida. Es probable que dada la situacin a entender, no sea de relevancia
conocer estos parmetros, pero s la distancia a un punto en particular de cada
establecimiento. Naturalmente el minero debera encargarse de transformar las
variables de latitud y longitud a una variable con el valor de la distancia.
Con este sencillo ejemplo, se intenta demostrar algunos de los puntos que
determinan el riesgo previamente a comenzar a realizar la tarea de minera. Ya
Memoria del Trabajo Profesional
Pg. 15
Pg. 16
Pg. 17
Descripcin
Las partes interesadas estn identificadas? Las partes interesadas son aquellas personas o grupos de
1 personas que afectan o pueden ser afectadas por el proyecto.Boxes de referencia de la metodologa P3TQ:
DB1, AB2, AB3
Todas las partes interesadas cuentan con la disponibilidad de tiempo para avocarse al proyecto? Boxes de
2
referencia de la metodologa P3TQ: DB1, AB2, AB3
Peso Dimensin
8 P
8 P
Existen partes interesadas con autoridad suficiente dentro de la organizacin para liderar el proyecto de
explotacin? Boxes de referencia de la metodologa P3TQ: DB1, AB2, AB3
6 E
Existen partes interesadas con recursos econmicos suficientes para encarar el proyecto? Boxes de
referencia de la metodologa P3TQ: DB1, AB2, AB3
6 P
0 M
10 E
8 P
6 P
8 P
0 M
5 P
5 A
Pg. 18
Id
pregunta
11
12
52
13
14
15
Descripcin
Peso Dimensin
La situacin del negocio est enmarcada o puede enmarcarse en un modelo a partir de los datos
conocidos? Boxes de referencia de la metodologa P3TQ: AB6
Los Objetivos y Metas del negocio estn definidos o pueden definirse? Boxes de referencia de la
metodologa P3TQ: AB6, TB5
El proyecto de explotacin tiene como propsito descubrir en que partes de la organizacin se puede
agregar valor?
Estn identificadas por las partes interesadas las relaciones entre las cinco temticas clave del
negocio(producto, lugar, precio, tiempo y cantidad)? Boxes de referencia de la metodologa P3TQ: AB11,
TB3
Es conocida la relacin entre las cinco temticas claves del negocio (producto, lugar, precio, tiempo y
cantidad) y el proceso principal de la organizacin? Boxes de referencia de la metodologa P3TQ: AB11
Esta determinado o puede determinarse cuales de los 26 recursos de gestin (Consultar la tabla 7.2 de MII
de P3TQ) son adecuados a cada potencial parte interesada? Boxes de referencia de la metodologa P3TQ:
AB11, MII Tabla 7.1
16 Existen datos disponibles para explotacin? Boxes de referencia de la metodologa P3TQ: AB11
17
Esta desarrollado, o es posible desarrollar un esquema de caso de negocio para cada oportunidad
significativa? Boxes de referencia de la metodologa P3TQ: AB11
6 J
8 J
0 M
10 E
5 A
5 A
10 E
10 P
0 M
Los requerimientos fueron consensuados con las partes interesadas? Boxes de referencia de la
metodologa P3TQ: AB9
La situacin del negocio est enmarcada o puede enmarcarse en un modelo a partir de los datos
19
conocidos? Boxes de referencia de la metodologa P3TQ: AB9
18
20 Existe informacin disponible para la explotacin? Boxes de referencia de la metodologa P3TQ: AB9
54 Se requiere inicialmente un anlisis estratgico para planificar escenarios corporativos?
10 E
6 J
10 E
0 M
21
La situacin del negocio est enmarcada o puede enmarcarse en un modelo a partir de los datos
conocidos? Boxes de referencia de la metodologa P3TQ: AB9
2 A
22
Existe un mapa del escenario estratgico, consensuado con las partes interesadas. .Boxes de referencia de
la metodologa P3TQ: AB12
6 A
23
24
25
26
27
Estn identificadas por las partes interesadas las relaciones entre las cinco temticas clave del
negocio(producto, lugar, precio, tiempo y cantidad)? Boxes de referencia de la metodologa P3TQ: AB12
Puede establecerse correspondencia entre el mapa y las relaciones P3TQ? Boxes de referencia de la
metodologa P3TQ: AB12
Existen o pueden realizarse simulaciones que permitan identificar ambigedades, incertezas,
discordancias? Boxes de referencia de la metodologa P3TQ: AB12
Estn caracterizadas o pueden caracterizarse las relaciones clave del sistema? Boxes de referencia de la
metodologa P3TQ: AB12
Esta determinado o puede determinarse cuales de los 26 recursos de gestin (Consultar la tabla 7.2 de MII
de P3TQ) son adecuados a cada potencial parte interesada? Boxes de referencia de la metodologa P3TQ:
AB12, MII Tabla 7.1
28 Existe o puede obtenerse un set de datos sin errores? Boxes de referencia de la metodologa P3TQ: DB9.1
El set de datos obtenidos esta referenciado al caso de negocio a estudiar? Boxes de referencia de la
29
metodologa P3TQ: DB9.1
Existen variables con nico valor, o valores vacios en sus instancias? Boxes de referencia de la metodologa
30 3
P TQ: DB9.2
3
31 Las variables categricas estn documentadas? Boxes de referencia de la metodologa P TQ: DB9.2
32
33
34
35
Los nombres de los atributos son acorde a los conceptos del negocio? Boxes de referencia de la
metodologa P3TQ: DB9.3
Son reconocidas y es posible adecuar variables anacrnicas? Boxes de referencia de la metodologa P3TQ:
DB9.4
Existen datos suficientes como para crear diez modelos predictivos con once atributos cada uno (siempre
distintos) y generar un set de entrenamiento y otro de testeo? Boxes de referencia de la metodologa
P3TQ: DB9.5, TB9.4
Se dispone de un experto para analizar y asegurar que el set de datos representa los escenarios ms
importantes que pueden ocurrir en el negocio? Boxes de referencia de la metodologa P3TQ: DB9.6
Es necesario realizar recodificacin de variables para mejor comprensin del modelo? Boxes de referencia
de la metodologa P3TQ: DB9.7
Los conjuntos de variables de entrada y salida estn caracterizadas? Boxes de referencia de la metodologa
37 3
P TQ: AB11.1
36
8 A
8 A
8 A
8 E
4 A
8 P
8 P
-4 P
3 A
4 A
4 A
8 E
10 E
-4 A
6 A
Pg. 19
Id
pregunta
38
39
40
41
42
Descripcin
Los datos estn estructurados o pueden estructurarse para aplicarlos en la herramienta de minera
elegida? Boxes de referencia de la metodologa P3TQ: AB11.1
Estn seleccionados los algoritmos de minera adecuados al modelo? Boxes de referencia de la
metodologa P3TQ: AB11.3
Existe una herramienta de minera adecuada al modelo y esta disponible? Boxes de referencia de la
metodologa P3TQ: AB11.6
De necesitarse comprar herramientas, existen proveedores disponibles. .Boxes de referencia de la
metodologa P3TQ: AB11.5
Esta construido o puede construirse el MVCM (Missing Value Check Model)? Boxes de referencia de la
metodologa P3TQ: AB11.1
Peso Dimensin
6 A
8 A
8 A
8 P
5 P
0 M
Las variables utilizadas en el modelo estn relacionadas con conceptos que son conocidos por las partes
43
interesadas? Boxes de referencia de la metodologa P3TQ: AB11.1, DB11.5
8 E
Los objetos del negocio que representan las variables pueden ser utilizados por las partes interesadas, o
gerentes para realizar mejoras en el negocio. .Boxes de referencia de la metodologa P3TQ: AB11.1, DB11,5
Los datos son suficientes para definir las relaciones explicativas? Boxes de referencia de la metodologa
45 3
P TQ: AB11.1 DB11.5
44
8 E
6 E
0 M
Esta determinado o puede determinarse en la herramienta el tipo de modelo de clasificacin inicial (B:
46
Binario; M : Clases Mltiples o C : Continuo)? Boxes de referencia de la metodologa P3TQ: DB11.6
6 E
La herramienta elegida soporta el tipo de entrada y el tipo de salida del modelo inicial de clasificacin?
Boxes de referencia de la metodologa P3TQ: DB11.6
8 E
47
0 M
5 E
6 E
Pg. 20
La figura 3.2.3.1 muestra un grafo que muestra los posibles caminos a seguir en el
cuestionario.
Pg. 21
4.
Conclusiones
La metodologa P3TQ es muy rica y tiene como principal ventaja detallar cada
paso en funcin de los objetivos del proyecto y el estado de cada atributo que lo
define.
Esto nos ha permitido, reconocer en cada paso aquellas cuestiones que hace
riesgoso o fcilmente viable a un proyecto de explotacin de la informacin.
Al mismo tiempo reconocemos los distintos tipos dificultades que pueden
acarrear un proyecto de explotacin de la informacin. Estas dificultades pueden
ser de distinta naturaleza. Se pueden mencionar dificultades de origen tcnico,
como la disponibilidad de datos suficientes, la existencia de herramientas
adecuadas para el tipo de proyecto que se quiere llevar a cabo, etc. Pero tambin
hay dificultades de otra naturaleza, que no son tan triviales e influyen con gran
impacto en el xito de un proyecto; identificar los interesados, sus expectativas,
detectar si conocen con precisin las variables del negocio y la relacin entre ellas,
su impacto en los resultados.
Todas estas cuestiones deben ser convenientemente analizadas antes de comenzar
a utilizar recursos en explotacin de informacin; para conocer la situacin de
partida del proyecto y qu se pretende como resultado, la importancia de las
personas en la organizacin que quieren ese resultado, cmo se va a presentar
dicha informacin, etc.
Como agregado, no existe hasta el momento un metodologa para calcular la
viabilidad de proyectos de este tipo, creamos en este trabajo una metodologa con
dicho propsito basndonos en el clculo de viabilidad propuesto por [Liebowitz
1986; Laufman et al, 1990; Adelman, 1989; 1992; De Antonio y Samper, 1990;
Beckam, 1991; Lpez et al 1991].
Adems se desarrollamos una herramienta de arquitectura web que permite
estudiar la viabilidad de proyectos de explotacin de informacin desarrollados
bajo la metodologa P3TQ a lo largo de todo su ciclo.
Dicha herramienta est desarrollada con Goolgle App Engine, un nuevo concepto
de programacin web basado en el lenguaje python, y funcionando enteramente
(cdigo y persistencia) en los servidores de Google.
Se adjunta el manual de usuario y documentacin de desarrollo de la herramienta
junto a este documento.
Pg. 22
5.
Futuras mejoras
6. Bibliografa
Pg. 23
Anexo 1. Documento de
Desarrollo de la Herramienta
DAMVE
Pg. 24
1. Objetivo
El presente documento tiene como objetivo documentar la herramienta software
DAMVE, que permite ingresar las caractersticas de un proyecto que utiliza la
metodologa P3TQ, con el objetivo de analizar y evaluar su viabilidad.
El documento presenta informacin detallada de cada una de las etapas en el
desarrollo de la herramienta, utilizando siempre que sea posible, el estndar UML
de modelado de software:
Requerimientos funcionales, requerimientos no funcionales y restricciones
Modelo de anlisis (casos de uso)
Arquitectura
Modelo de diseo
Casos de Prueba
El modelo de negocio que debe implementar la herramienta se encuentra
documentado en la Memoria Del Trabajo Profesional, donde se describe la
tcnica de estudio de viabilidad aplicada a la metodologa P3TQ.
Pg. 25
Pg. 26
3. Cambios en la versin
A continuacin se presentan las modificaciones realizadas en las distintas
versiones del documento, para facilitar la trazabilidad de los cambios.
3.1. Versin 4
3.2. Versin 3
3.3. Versin 2
3.4. Versin 1
Versin inicial
4. Especificacin de Requerimientos
4.1. Formato
La Figura A1.1 contiene el formato con el cual se registran cada uno de los
requerimientos. A partir de la seccin 4.2 se desarrolln todos los requerimientos
utilizando dicho formato.
Los campos a completar en dicho registro son los siguientes:
Cdigo: comienza con el identificador de tipo: RF si se trata de un requisito
funcional o con RNF si se trata de un requisito no funcional. A continuacin se
enumeran correlativamente segn el tipo (funcional o no funcional). Ej) RF-001
(requisito funcional 1)
Relevancia:
Se clasifica en Alta, Media o Baja segn la regla de negocio /
requerimiento no funcional que describa.
Pg. 27
Nombre
Descripcin
Control de Cambios
Fecha
Solicitado
por
Pg. 28
Nombre
CREAR Y ACTUALIZAR PROYECTOS
Descripcin
El sistema debe permitirle a un usuario registrado crear un nuevo proyecto y
convertirse en su lder.
La informacin que debe ingresarse y guardarse cuando se crea un proyecto es:
Descripcin del proyecto
Fecha de creacin
Lder del proyecto (usuario que lo crea)
Deben respetarse las siguientes reglas:
Cualquier usuario registrado en el sistema se convierte en el lder de un
proyecto que crea.
Control de Cambios
Fecha
Solicitado
por
Pg. 29
Nombre
CREACIN DE EVALUACIONES
Descripcin
El sistema debe permitirle al lder del proyecto o a un usuario asignado como
colaborador de del mismo crear una nueva evaluacin a partir de la plantilla
estndar.
La informacin que debe ingresarse y almacenarse cuando se crea una evaluacin
es:
Proyecto al cual pertenece
Descripcin de la evaluacin
Fecha de creacin
Usuario que la crea (colaborador o lder del proyecto)
Una vez que la evaluacin ha sido creada el sistema debe, automticamente,
presentar la interfaz para que el usuario pueda comenzar a completar el estudio
de debilidad.
Una evaluacin puede ser suspendida, quedando en el estado de "en ejecucin".
Control de Cambios
Fecha
Solicitado
por
Pg. 30
Nombre
CONTINUAR
CON
EVALUACIN EN EJECUCIN
UNA
Descripcin
El sistema debe permitirle al usuario creador de una evaluacin que se encuentra
en el estado de "en ejecucin " continuar con la misma, presentndole la interfaz
correspondiente.
Control de Cambios
Fecha
Solicitado
por
Pg. 31
Nombre
MOSTRAR
PROYECTO
RESULTADOS
DEL
Descripcin
El sistema debe presentar una interfaz que le permita a los usuarios que iniciaron
sesin navegar un proyecto cualquiera.
Control de Cambios
Fecha
Solicitado
por
Relevancia
Media
Clasificacin
Funcional
Nombre
ACTUALIZACIN DE LA PLANTILLA
DE EVALUACIN
Descripcin
El sistema debe proporcionar una plantilla estndar pre-cargada que permita de
avisar evaluaciones de proyectos por los usuarios del sistema.
Adems debe proporcionar una interfaz para que el usuario con rol de Evaluador,
Anexo 1. Documento de Desarrollo de la Herramienta DAMVE.
Pg. 32
Control de Cambios
Fecha
Solicitado por
05/03/2009 Alejandro
Rodrguez
El
administrador
debe
poder
inicializar el cuestionario con valores
por defecto al desplegarse el sistema
por primera vez.
El
administrador
debe
poder
restablecer
el
cuestionario
por
defecto.
Pg. 33
Nombre
ASIGNACIN DE COLABORADORES
AL PROYECTO
Descripcin
El sistema debe permitirle al lder de un proyecto designar colaboradores para
que puedan realizar evaluaciones en dicho proyecto. La informacin que debe
ingresarse para poder asignar un colaborador es su nombre de usuario,
coincidente con su direccin de correo electrnico.
Una vez que esta informacin ha sido provista, los usuarios designados pueden
colaborar en un proyecto creando evaluaciones. Deben respetarse las siguientes
reglas:
Un usuario puede ser colaborador de distintos proyectos.
Control de Cambios
Fecha
Solicitado
por
Pg. 34
Nombre
DESIGNACIN DE EVALUADORES
Descripcin
El sistema debe permitirle al administrador de sistema designar a aquellos
usuarios con el rol de evaluadores.
La informacin que debe ingresarse para poder designar a un usuario como
evaluador es su nombre de usuario, coincidente con su direccin de correo
electrnico.
Una vez que esta informacin ha sido provista, los usuarios designados pueden
actualizar la plantilla estndar de evaluacin de proyecto.
Deben respetarse las siguientes reglas:
Todos usuarios evaluadores pueden realizan cambios sobre la nica
plantilla estndar.
Control de Cambios
Fecha
Solicitado
por
Pg. 35
Relevancia Clasificacin
Alta
Rendimiento
Nombre
PROPORCIONAR
TIEMPOS
RESPUESTA ACEPTABLES
DE
Descripcin
El sistema debe poseer la capacidad de prestar el servicio con los siguientes
niveles aceptables de desempeo, teniendo cuenta la concurrencia de usuarios
Tiempo mximo de actualizacin de pantalla durante la ejecucin de una
evaluacin a cada usuario: 5 seg.
Cantidad mxima de usuarios concurrentes: 20 usuarios
Control de Cambios
Fecha
Solicitado por
Pg. 36
Relevancia Clasificacin
Alta
Rendimiento
Nombre
PREVEER
CONTINGENCIAS
CAIDA DEL SISTEMA
POR
Descripcin
El sistema deber prever contingencias que pueden afectar la prestacin estable y
permanente del servicio.
La siguiente es la lista de las contingencias que se deben tener en cuenta y se
pueden considerar crticas:
Cada del sistema por volumen de datos excedido en la base.
Sobrecarga del sistema por volumen de transferencia de datos a los
usuarios.
Cada del sistema por sobrecarga de recursos (procesos, memoria).
Estas consideraciones implicarn que la infraestructura tcnica sobre la que se
implantar el sistema garantice una alta disponibilidad del mismo.
Control de Cambios
Fecha
Solicitado por
Figura A1.10. Requerimiento no Funcional Preveer Contingencias Por Cada Del Sistema
Pg. 37
Relevancia Clasificacin
Nombre
RNF003
Media
CONSIDERAR
EL
CRECIMIENTO
ESPERADO EN EL VOLUMEN DE
DATOS
Capacidad
Descripcin
El sistema deber garantizar el soporte en el crecimiento del volumen de la
informacin almacenada que se gestionar en la base de datos.
Deben realizarse estimaciones, mediciones y comparaciones para proyectar un
estimado de dicho crecimiento, y se presentarse las caractersticas de tecnologa
requeridas para afrontar el crecimiento proyectado en el volumen.
Control de Cambios
Fecha
Solicitado por
Pg. 38
Relevancia Clasificacin
Media
Portabilidad
Nombre
PARAMETRIZAR LAS VARIABLES DEL
SISTEMA
Descripcin
El sistema debe permitir que sus variables y eventos de conFigura A1.cin sean
parametrizables e independientes del cdigo fuente.
La modificacin de los parmetros configurables ser planteada para que el
sistema tome sus cambios una vez reiniciado el servidor de aplicaciones y no en
tiempo de ejecucin de tal manera que se disminuya el riesgo de perdida de
funcionalidad por configuraciones en el vuelo.
Se deber emplear la tecnologa estndar propuesta por Appengine de Google.
Las variables que se configurarn, o se presentarn en el archivo de configuracin,
determinarn fuentes de datos y ubicacin de recursos.
Control de Cambios
Fecha
Solicitado por
Pg. 39
Relevancia Clasificacin
Nombre
RNF005
Media
DISEAR INTERFACES
USUARIO AMIGABLES
Amigabilidad
CON
EL
Descripcin
El sistema debe poseer una interfaz grfica uniforme a travs del mismo
incluyendo pantallas, mens y opciones, tamao de las pantallas, color, tipo de
letra y configuracin de los campos de entrada.
El diseo debe realizarse guiado por las caractersticas generales, en cuanto a
colores institucionales y disposicin de contenidos, encontradas en el sitio web de
la organizacin.
Las interfaces deben realizarse en idioma castellano; sin perjuicio de lo cual debe
evitar traducirse la terminologa tcnica especfica que no posee una traduccin
precisa al castellano.
Control de Cambios
Fecha
Solicitado por
Relevancia Clasificacin
Nombre
RNF006
Alta
DESARROLLAR
USUARIO
Amigabilidad
MANUAL
DE
Descripcin
Debe desarrollarse el Manual de Usuario del Sistema que especifique la totalidad
de la funcionalidad que ste provee.
Los contenidos del Manual deben estar ofrecidos 100% en lnea, en formato
HTML.
Control de Cambios
Fecha
Solicitado por
Pg. 40
Relevancia Clasificacin
Alta
Portabilidad
Nombre
CODIFICAR CON ESTANDARES
Descripcin
El cdigo fuente del sistema debe cumplir con un estndar de codificacin.
El estndar especificado debe considerar puntos como:
Estndares de nombres utilizados en todos sus objetos: programas,
formas, tablas, campos, ndices, procedimientos, paquetes.
Empleo de las caractersticas del IDE Eclipse para el formato del cdigo.
Control de Cambios
Fecha
Solicitado por
Relevancia Clasificacin
Alta
Seguridad
Nombre
PERMITIR NIVELES DE SEGURIDAD
Descripcin
El sistema deber permitir que toda su informacin junto con los procesos
desarrollados por el mismo tenga controles de acceso acordes con el nivel de
privacidad requerido.
Los niveles de seguridad estarn determinados por la distribucin jerrquica de
los usuarios, a saber:
Usuarios Administradores: Acceso total.
Usuarios registrados : Podrn tener acceso al informacin, que
corresponda con su rol (lder de proyecto, colaborador o evaluador)
Control de Cambios
Fecha
Solicitado por
Pg. 41
Pg. 42
4.4. Restricciones
Se presentan a continuacin las restricciones del sistema.
Nombre
ARQUITECTURA DEL SISTEMA
Descripcin
El Sistema debe desarrollarse sobre la Arquitectura Web Appengine de Google
debiendo utilizarse exclusivamente recursos de software compatibles con ella.
Los requerimientos mnimos de la aplicacin, corriendo en un servidor local se
presentan a continuacin. Los requisitos de hardware del servidor pueden variar
segn los requerimientos de rendimiento:
Procesador 1.0 GHz
512 MB de RAM
Los requerimientos mnimos de software y hardware en el equipo cliente son:
Navegador web compatible con Javascript (Recomendado IE7 o
Control de Cambios
Fecha
Solicitado por
Pg. 43
5. Modelo de anlisis
5.1. Diagrama de Casos de Uso
La Figura A1.18 presenta el diagrama de Casos de Uso del sistema, basado en los
requerimientos funcionales desarrollados previamente:
ud Casos de Uso
Inicializar
ev aluacin
Asignar
Colaborador
Administrador
Asignar ev aluador
Lider de Proyecto
include
include
Crear Proyecto
include
Validar usuario
Consultar
Ev aluacin
include
include
include
Visitante
include
include
Consultar Proyecto
include
Ev aluar Viabilidad
Actualizar plantilla
de ev aluacin
include
Ev aluador
Colaborador de
Proyecto
Crear Ev aluacin
Pg. 44
Nombre
Requerimiento
Funcional
Id
CU-001
Validar usuario
--
CU-002
Asignar evaluador
RF007
CU-003
RF005
CU-004
Evaluar viabilidad
RF003
CU-005
Crear evaluacin
RF002
CU-006
Consultar proyecto
RF004
CU-007
Consultar evaluacin
RF004
CU-008
Crear proyecto
RF001
CU-009
Asignar colaborador
RF006
CU-010
Inicializar Evaluacin
RF005
Pg. 45
CU-001
Nombre
VALIDAR USUARIO
Fecha Creacin
16/11/2008
Actores
Descripcin
Trigger
Fecha
ltima 16/11/2008
modificacin
Precondiciones
Postcondiciones El operador se encuentra validado en el sistema.
Flujo principal
CU-001.0
1. El sistema presenta una pantalla que invita al
usuario a ingresar su nombre y contrasea para
autenticarse.
2. El usuario ingresa su nombre y contrasea y
presiona el botn ingresar.
3. El sistema verifica los roles que posee el usuario en
el sistema (visitante, lder de proyecto, colaborador
o evaluador).
4. El sistema notifica al usuario que est autenticado.
Flujos
alternativos
CU-001.1
1. Si el usuario ingresa su nombre y contrasea de
manera incorrecta el sistema lo notifica y le solicita
ingresar los datos nuevamente, volviendo a CU001.0
Excepciones
Extensiones
Incluye
Heredado por
Prioridad
Alta
Pg. 46
Reglas
de Negocio
Requerimientos
especiales
Hiptesis
Notas
Figura A1.20. Caso de uso validar Usuario
CU-002
Nombre
ASIGNAR EVALUADOR
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Administrador
Descripcin
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-002.0
1. El sistema verifica que el usuario sea
administrador. De no cumplirse se ejecuta el flujo
alternativo CU-002.1.
2. El sistema presenta un formulario que solicita el email del usuario a registrar como evaluador.
3. El administrador ingresa el e-mail del usuario.
4. El sistema agrega al usuario como evaluador y
notifica al administrador
Flujos
alternativos
CU-002.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Excepciones
Extensiones
Incluye
Pg. 47
Heredado de
Prioridad
Reglas
de
Negocio
Requerimientos
especiales
Hiptesis
RF-007
Notas
Alta
CU-003
ACTUALIZAR PLANILLA DE EVALUACIN
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Evaluador
Descripcin
Trigger
Precondiciones
Postcondiciones
La planilla
actualizada
Flujo principal
de
evaluacin
estndar
queda
CU-003.0
1. El sistema verifica que el usuario sea evaluador. De
no cumplirse se ejecuta el flujo alternativo CU003.1.
2. El sistema presenta un formulario que muestra la
informacin de todas las preguntas de la plantilla
estndar con la posibilidad de modificar la
descripcin, el peso y la dimensin.
3. El evaluador actualiza todos los parmetros de
todas las preguntas que consideren necesario y
enviar formulario.
4. El sistema actualiza la plantilla estndar y notifica
al evaluador
Pg. 48
Flujos
alternativos
CU-003.1
el sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Excepciones
Extensiones
Incluye
Heredado de
Prioridad
Reglas
de
Negocio
Requerimientos
especiales
Hiptesis
RF-005
Notas
CU-004
EVALUAR VIABILIDAD
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Lder de proyecto
colaborador
Descripcin
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-004.0
1. El sistema verifica que el usuario sea colaborador
Pg. 49
CU-004.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Excepciones
Extensiones
Incluye
Heredado por
Prioridad
Alta
Reglas
Negocio
Notas
de RF-003
Figura A1.23. Caso de uso evaluar viabilidad
CU-005
Nombre
CREAR EVALUACIN
Fecha Creacin
16/11/2008
Actores
Descripcin
Fecha
ltima 16/11/2008
modificacin
Colaborador
Pg. 50
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-005.0
1. El sistema verifica que el usuario sea colaborador
del proyecto al cual pertenece la evaluacin. De no
cumplirse se ejecuta el flujo alternativo CU-005.1.
2. El sistema presenta un formulario para que el
colaborador ingrese la descripcin de la
evaluacin.
3. El colaborador completa de informacin y enva el
formulario.
4. El sistema crea la nueva evaluacin, y ejecuta el
caso de uso CU-004, que inicia la evaluacin de
viabilidad.
Flujos
alternativos
CU-005.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Excepciones
Extensiones
Incluye
Heredado por
Prioridad
Alta
Reglas
de RF-002
Negocio
Requerimientos especiales
Hiptesis
Notas
CU-006
Nombre
CONSULTAR PROYECTO
Pg. 51
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Lder de proyecto
Colaborador
Descripcin
Trigger
Precondiciones
Postcondiciones Ninguna
Flujo principal
CU-006.0
1. El sistema verifica que el usuario sea lder o
colaborador del proyecto. De no cumplirse se
ejecuta el flujo alternativo CU-006.1.
2. El sistema presenta la siguiente informacin del
proyecto al usuario, dando la opcin de que la
informacin pueda ser impresa en papel.
Fecha de creacin
Descripcin
Lder
Colaboradores
Lista de evaluaciones realizadas ordenadas en forma
cronolgica descendente (incluye fecha de creacin,
colaborador de la creo, descripcin, estado: s est finalizada
el resultado de la evaluacin; sino el mensaje en ejecucin).
Flujos
alternativos
CU-006.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Excepciones
Extensiones
Incluye
Heredado de
Prioridad
Alta
Reglas
de RF-004
Negocio
Requerimientos especiales
Anexo 1. Documento de Desarrollo de la Herramienta DAMVE.
Pg. 52
Hiptesis
Notas
CU-007
Nombre
COSULTAR EVALUACIN
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Lder de proyecto
Colaborador
Descripcin
Trigger
Precondiciones
Postcondiciones Ninguna
Flujo principal
CU-007.0
1. El sistema verifica que el usuario sea lder o
colaborador del proyecto. De no cumplirse se
ejecuta el flujo alternativo CU-007.1.
2. El sistema presenta la siguiente informacin de la
evaluacin al usuario proveyendo la opcin de
imprimir en papel.
Fecha de creacin
Proyecto al cual pertenece
Colaborador de la creo
Descripcin
Resultado final expresado numrica y
grficamente.
Todas las preguntas y respuestas de la
evaluacin que fueron respondidas y que
justifican el resultado.
Flujos
alternativos
CU-007.1
El sistema notifica al usuario que no cuenta con los
Pg. 53
Extensiones
Incluye
Heredado de
Prioridad
Alta
Reglas
de RF-004
Negocio
Requerimientos especiales
Hiptesis
Notas
CU-008
CREAR PROYECTO
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Visitante
Descripcin
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-008.0
1. El sistema presenta un formulario para que el
usuario ingrese la descripcin del nuevo proyecto.
2. El usuario completa de informacin y enva el
formulario.
3. El sistema crea el nuevo proyecto.
Flujos
alternativos
Excepciones
Extensiones
Pg. 54
Incluye
Heredado por
Prioridad
Alta
Reglas
de RF-001
Negocio
Requerimientos
especiales
Hiptesis
Notas
Figura A1.27. Caso de uso Crear proyecto
CU-009
Nombre
ASIGNAR COLABORADOR
Fecha Creacin
16/11/2008
Actores
Fecha
ltima 16/11/2008
modificacin
Lder de proyecto
Descripcin
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-009.0
1. El sistema verifica que el usuario sea lder del
proyecto. De no cumplirse se ejecuta el flujo
alternativo CU-009.1.
2. El sistema presenta un formulario que solicita el email del usuario a registrar como colaborador.
3. El lder del proyecto ingresa el e-mail del usuario.
4. El sistema agrega al usuario como colaborador y
notifica al lder del proyecto
Flujos
alternativos
CU-009.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
Pg. 55
Excepciones
Extensiones
Incluye
Heredado por
Prioridad
Reglas
de
Negocio
Requerimientos
especiales
Hiptesis
RF-006
Notas
Figura A1.28. Caso de uso asignar colaborador
5.3.10.
Inicializar cuestionario
CU-010
INICIALIZAR CUESTIONARIO
Fecha Creacin
05/03/2009
Actores
Fecha
ltima 05/03/2009
modificacin
Administrador
Descripcin
Trigger
Precondiciones
Postcondiciones
Flujo principal
CU-009.0
1. El sistema verifica que el usuario sea
administrador. De no cumplirse se ejecuta el flujo
alternativo CU-010.1.
2. El sistema presenta un formulario que solicita al
administrador del sistema su confirmacin para
inicializar la Plantilla de evaluacin con los valores
por defecto.
Pg. 56
CU-009.1
El sistema notifica al usuario que no cuenta con los
permisos suficientes para llevar a cabo la tarea.
CU-009.2
El sistema inicializa la Plantilla de evaluacin con los
valores por defecto y notifica al administrador sobre la
accin.
CU-009.3
El sistema notifica al usuario que no se realiz la
inicializacin del cuestionario.
Excepciones
Extensiones
Incluye
Heredado por
Prioridad
Reglas
de
Negocio
Requerimientos
especiales
Hiptesis
RF-005
Notas
Figura A1.29. Caso de uso inicializar cuestionario
Pg. 57
Pg. 58
Pg. 59
7. Diseo de la aplicacin
En esta seccin se detallar el diseo elegido para implementar el sistema. La
tcnica elegida para llevar a cabo la tarea consiste en presentar los modelos de lo
general a lo particular.
Se comenzara por presentar los paquetes que componen la aplicacin y su
relacin.
Posteriormente se describir cada paquete como un conjunto de clases que
colaboran para resolver alguna parte del sistema, utilizando diagramas de
clase UML.
Finalmente se describirn las responsabilidades de las clases ms relevantes
del paquete.
Una vez presentados en detalle cada uno de los paquetes y las clases del sistema
se utilizarn diagramas de secuencia que permitan comprender la dinmica del
sistema a travs de la interaccin de las clases de distintos paquetes.
El diagrama presentado en la Figura A1.32 muestra los paquetes de las clases del
sistema y sus dependencias, categorizando cada uno de ellos por medio de colores
que permiten identificar a qu categora pertenecen.
Las categoras existentes son las tres definidas en el modelo MVC (modelo, vista y
controlador) ms una cuarta denominada infraestructura. Esta cuarta categora en
provista por el entorno Appengine e implementa los servicios de base que
Anexo 1. Documento de Desarrollo de la Herramienta DAMVE.
Pg. 60
pd Paquetes
dbmodel
+ Answer
ev aluatorform
+ AddMemberPage
+ Evaluation
+ Evaluate
+ EvaluationInstance
+ MainPage
+ Evaluator
+ NextQuestion
+ Project
+ ProjectMember
+ Question
+ Result
v iew
+ CustomView
+ EvaluationDraw
google.appengine.ext
+ db
+ webapp
google.appengine.api
+ users
+ webapp.template
menu
+ menu
Infraestructura
Vista
Modelo
Controlador
Pg. 61
La Figura A1.33 describe brevemente todos los paquetes que se han desarrollado
en el sistema y qu casos de uso implementa cada uno. No se describen los
paquetes de infraestructura ya que han sido muy bien documentados por
Appengine.
Nuevamente la columna tipo permite identificar la categora a travs de su color
asociado.
Nombre
Tipo
CU
que Descripcin
implementa
Todos
Contiene las clases que
implementan el modelo de la
aplicacin, incluyendo su
persistencia.
dbmodel
Modelo
view
Vista
evaluatorform
Controlador CU-004
CU-005
CU-007
choose_project
Controlador CU-008
Seleccin de un proyecto.
view_project
Controlador CU-006
CU-009
Creacin
proyecto.
add_evaluator
Controlador CU-002
Agregar evaluadores.
help
Controlador CU-001
data
Inicializacin de datos.
Implementa
funciones
genricas de representacin
de los datos en formato
HTML.
consulta
en
Pg. 62
Pg. 63
Pg. 64
cd Modelo
User
+
1 +
email: Text
1
nickname: Text
1
+
+
+
all(Evaluator[])
remove(string)
userIsEvaluator(var)
Ev aluation
Proj ectMember
Ev aluator
evaluator: db.UserProperty
db.Model
db.Model
db.Model
+
+
* +
+
+
+
+
+
idproject: db.ReferenceProperty(Project)
member: db.UserProperty
role: db.TextProperty()
1
db.Model
1
evaluations
Proj ect
+
+
+
+
+
createdate: db.DateTimeProperty
description: db.TextProperty
owner: db.UserProperty
releasedate: db.DateTimeProperty
testdate: db.DateT imeProperty
+
+
+
+
+
+
addEvaluation(string, Evaluation)
addMember(string, string)
currentUserIsMember()
getEvaluations() : Evaluation[]
removeMember(string, string)
userIsMember(string)
+
+
* +
+
+
actualresult: db.IntegerProperty
createdate: db.DateTimeProperty
description: db.T extProperty
idproject: db.ReferenceProperty(Project)
owner: db.UserProperty
calculate() : Result
isComplete() : bool
lastQuestion() : Question
nextQuestion() : Question
questions() : Question[]
questions
1
Evaluation Result
*
1
db.Model
Ev aluationInstance
Nivel 2. Estudio de
Viabilidad
Result
+
+
+
+
+
+
+
+
+
+
+
answerText(var)
dimensionT ext(var)
+
+
+
+
+
+
adaptabilidad: array[4]
completo: bool
exito: array[4]
justificacion: array[4]
plausibidad: array[4]
resultado: array[4]
+
+
+
+
+
A() : float
E() : float
J() : float
P() : float
viability(var)
1
1
db.Model
db.Model
+
+
db.Model
NextQuestion
Answ er
description: db.TextProperty
idanswer: db.IntegerProperty
1
+
+
1 +
+
+
+
idanswer: db.IntegerProperty
idnextquestion: db.IntegerProperty
idquestion: db.IntegerProperty
answer() : Answer
nextQuestion() : Question
question() : Question
Question
+
+
+
1
+
+
+
+
+
+
+
Nivel 1. Questionario
Pg. 65
Pg. 66
object
Ev aluationDraw
+
+
+
+
accepted: bool = 60
draw: bool
evaluation: Evaluation
maxsize: int = 100
+
+
+
+
+
+
+
+
+
createArray(Evaluation[]) : EvaluationDraw[]
drawA() : string
drawBar(int) : string
drawE() : string
drawJ() : string
drawP() : string
drawViability() : string
getEvaluation() : Evaluation
setEvaluation(Evaluation)
evaluator: db.UserProperty
+
+
+
all(Evaluator[])
remove(string)
userIsEvaluator(var)
Logical Model::
User
1 +
+
email: Text
nickname: Text
object
CustomMenu
+
getCustomMenu() : string
Pg. 67
7.4.1. evaluatorform
La Figura A1.37 muestra las clases que componen este paquete.
Pg. 68
pd ev aluatorform
Logical Model::
w ebapp.
RequestHandler
+
+
request:
response:
+
+
+
get() : void
put() : void
redirect(string) : void
AddMemberPage
+
+
+
get() : void
put() : void
redirect(string) : void
MainPage
+
+
+
get() : void
put() : void
redirect(string) : void
error.html
ev aluatorform.html
Ev aluate
+
+
+
get() : void
put() : void
redirect(string) : void
ev aluate.html
Pg. 69
cd add_ev aluator
w ebapp.
RequestHandler
+
+
request:
response:
+
+
+
get() : void
put() : void
redirect(string) : void
webapp.RequestHandler
MainPage
+
+
+
get() : void
put() : void
redirect(string) : void
error.html
add_ev aluator.html
7.4.3. Choose_project
La Figura A1.39 muestra las clases que componen este paquete.
Pg. 70
cd choose_proj ect
w ebapp.
RequestHandler
+
+
request:
response:
+
+
+
get() : void
put() : void
redirect(string) : void
webapp.RequestHandler
webapp.RequestHandler
MainPage
+
+
+
get() : void
put() : void
redirect(string) : void
choose_proj ect.html
Pg. 71
7.4.4. Help
La Figura A1.40 muestra las clases que componen este paquete.
cd help
w ebapp.
RequestHandler
+
+
request:
response:
+
+
+
get() : void
put() : void
redirect(string) : void
webapp.RequestHandler
webapp.RequestHandler
webapp.RequestHandler
LogoutPage
AboutPage
LoginPage
+
+
+
get() : void
put() : void
redirect(string) : void
+
+
+
get() : void
put() : void
redirect(string) : void
about.html
logout.html
+
+
+
get() : void
put() : void
redirect(string) : void
login.html
Pg. 72
7.4.5. View_project
La Figura A1.41 muestra las clases que componen este paquete.
cd v iew _proj ect
w ebapp.
RequestHandler
+
+
request:
response:
+
+
+
get() : void
put() : void
redirect(string) : void
webapp.RequestHandler
webapp.RequestHandler
webapp.RequestHandler
MainPage
+
+
+
get() : void
put() : void
redirect(string) : void
Pg. 73
sd Crear Proyecto
users
Usuario
choose_project
view_project::
MainPage
view_project
POST(description)
post(description)
user:= get_current_user
Logical
Model::Project
put()
render(project)
render
Pg. 74
sd Crear Ev aluacion
users
Miembro
view_project
evaluatorform::evaluate
run
POST(create,idproject,description)
post(create,idproject,description)
user:= get_current_user
eval:= <<new>>(idproject,user,description)
Logical
Model::Evaluation
put()
q:= questions()
nq:= nextQuestion()
render(idproject,eval,q,nq)
render
Pg. 75
sd Contestar Pregunta
db
Miembro
run
eval :Evaluation
evaluatorform::
evaluate
POST(idevaluation,idanswer)
post(idevaluation,idanswer)
eval:= get(idevaluation)
nq:= nextQuestion()
ev :EvaluationInstance
ev:= <<new>> (idanswer, eval, nq.weight, nq.dimension)
put()
q:= questions()
Si la evaluacin
est completa.
nq2:= nextQuestion()
idproject:= idproject
[eval.isComplete==false]: render(idproject,eval,nq2,q)
render
sd Calcular Ev aluacin
eval :Evaluation
Miembro
evaluate
evaluatorform::
evaluate
[eval.isComplete]: result:= calculate()
render(eval,q,result)
Si la evaluacin
est completa.
render
Pg. 76
abrir sesin
clear
Logout
login
edit
cerrar sesin
add_ev aluator
seleccin de un proyecto
about
nueva evaluacin
run
ejecucin de evaluacin
evaluacin completa
ev aluate
Figura A1.46. Diagrama de estados para la transicin entre las pantallas del sistema.
7.6.1. Logout
Esta pantalla, mostrada en la Figura A1.47, se presenta cuando el usuario desea
ingresar al sistema y an no sea autenticado, o cuando decide salir, cerrando la
sesin.
Pg. 77
7.6.2. Login
Esta pantalla, mostrada en la Figura A1.48, es provista por el API user del
appengine, para que el usuario pueda autenticar se en el tenga a travs de su email y contrasea.
Pg. 78
han sido finalizadas, el resultado. Tambin provee interfaces para crear una nueva
evaluacin en dicho proyecto, agregar colaboradores al proyecto en caso de que el
usuario sea el lder y opciones para exportar la informacin o imprimir.
7.6.5. Run
Esta pantalla, mostrada en la Figura A1.51, le presenta al usuario una interfaz
para que pueda completar el cuestionario de evaluacin. Muestra el nombre
proyecto, el nombre de la evaluacin, la dimensin, peso y descripcin de la
pregunta y las opciones de respuesta.
Pg. 79
7.6.6. Evaluate
Esta pantalla, presentada en la Figura A1.52, se muestra cuando el usuario
miembro del proyecto selecciona una evaluacin finalizada, o cuando contesta la
ltima pregunta del cuestionario. Presenta el resultado del estudio de viabilidad
mostrando los valores de los vectores justificacin, adaptabilidad, plausibilidad,
xito y viabilidad y tambin el mdulo de cada uno de ellos numrica y
grficamente. Para permitir trazabilidad presenta cada una de las preguntas
respondidas y las respuestas ingresadas. Provee interfaces para que el usuario
pueda exportar o imprimir la informacin.
Pg. 80
7.6.8. edit
Esta pantalla, mostrada en la Figura A1.54, le presenta al usuario evaluador una
interfaz que le permite modificar la plantilla de evaluacin de proyectos. Muestra
la informacin de cada preguntas del cuestionario, que puede ser modificada y
enlaces que dirigen a la prxima pregunta segn el valor de respuesta.
7.6.9. About
Esta pantalla, mostrada la Figura A1.55, le presenta al usuario en manual de
ayuda, y la informacin sobre la versin en ejecucin del sistema.
7.6.10.
Data
Pg. 81
7.6.11.
Barra de Men
Pg. 82
dbmodel
data
v iew _proj ect
choose_proj ect
appengine
Serv er
help
ev aluatorform
v iew
http
menu
cliente
(w ebbrow ser)
Pg. 83
8. Casos de Prueba
En esta seccin se desarrollan los casos de prueba planificados y ejecutados
satisfactoriamente que surgen de los escenarios ms importantes de cada caso de
uso.
Resultado
Esperado
Estado
Pg. 84
Resultado
Esperado
Estado
Resultado
Esperado
Estado
Pg. 85
Entrada
Resultado
Esperado
Estado
Estado
Ejecutado correctamente.
Figura A1.63. Caso de prueba Administrador intenta agregar evaluador con e-mail nulo
de Ninguno
El sistema notifica al usuario que no cuenta con los permisos
suficientes para realizar la accin.
Ejecutado correctamente.
Figura A1.64. Caso de prueba Usuario intenta agregar evaluador
Pg. 86
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.65. Caso de prueba Evaluador actualiza pregunta
Resultado
Esperado
Pg. 87
Estado
Ejecutado correctamente.
Figura A1.66. Caso de prueba Evaluador intenta actualizar pregunta con datos incorrectos
de Ninguno
El sistema notifica al usuario que no cuenta con los permisos
suficientes para realizar la accin.
Estado
Ejecutado correctamente.
Figura A1.67. Caso de prueba Usuario intenta actualizar pregunta
de
Pg. 88
Estado
Resultado adaptabilidad = 10
Vector plausibilidad = (10;10;10;10)
Resultado plausibilidad = 10
Vector Viabilidad = (10;10;10;10)
Resultado viabilidad = 10
Ejecutado correctamente.
Figura A1.68. Caso de prueba Proyecto altamente viable
Pg. 89
Pg. 90
Pg. 91
Resultado
Esperado
Pg. 92
Estado
Ejecutado correctamente.
Figura A1.69. Caso de prueba Proyecto no viable rotundamente
Pg. 93
Pg. 94
Pg. 95
Resultado
Esperado
Pg. 96
Estado
Ejecutado correctamente.
Figura A1.70. Caso de prueba Proyecto no viable
Pg. 97
Pg. 98
Pg. 99
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.71. Caso de prueba Proyecto no viable por incumplimiento de situaciones esenciales
Resultado
Esperado
del
proyecto
intenta
crear
una
nueva
Pg. 100
Estado
Ejecutado correctamente.
Figura A1.72. Caso de prueba Miembro del proyecto crea evaluacin
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.73. Caso de prueba Lder del proyecto crea evaluacin
de Ninguno
El sistema notifica al usuario que no cuenta con los permisos
suficientes para realizar la accin.
Ejecutado correctamente.
Figura A1.74. Caso de prueba Usuario intenta crear evaluacin
Pg. 101
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.75. Caso de prueba Miembro consulta proyecto
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.76. Caso de prueba Usuario intenta consultar proyecto
Pg. 102
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.77. Caso de prueba Miembro consulta evaluacin
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.78. Caso de prueba Usuario intenta consultar evaluacin
Pg. 103
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.79. Caso de prueba Usuario crea proyecto
Estado
Ejecutado correctamente.
Figura A1.80. Caso de prueba lder de proyecto agrega nuevo colaborador
Pg. 104
registrado
Caso de Uso CU-009
que lo origina
Escenario
El lder de proyecto accede a la pantalla para agregar un
colaborador, que ya ha sido registrado previamente en el
sistema, en el mismo proyecto.
Datos
Entrada
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.81. Caso de prueba Lder del proyecto intenta agregar colaborador registrado
Estado
Figura A1.82. Caso de prueba Lder de proyecto intenta agregar colaborador con e-mail nulo
Pg. 105
de Ninguno
El sistema notifica al usuario que no cuenta con los permisos
suficientes para realizar la accin.
Estado
Ejecutado correctamente.
Figura A1.83. Caso de prueba Usuario intenta agregar colaborador al proyecto
8.10.1.
de El administrador contesta Si
El sistema inicializa la plantilla de evaluacin y elimina
todos los registros de la base de datos.
Estado
Ejecutado correctamente.
Figura A1.84. Caso de prueba Administrador inicializa cuestionario
8.10.2.
de El administrador contesta No
Pg. 106
Resultado
Esperado
Estado
Ejecutado correctamente.
Figura A1.85. Caso de prueba Administrador intenta inicializar cuestionario
8.10.3.
de Ninguno
El sistema notifica al usuario que no cuenta con los permisos
suficientes para realizar la accin.
Ejecutado correctamente.
Figura A1.86. Caso de prueba Usuario intenta inicializar cuestionario
Pg. 107
9. Conclusin
A lo largo de este documento se desarrollaron de manera detallada todas las
etapas involucradas en el desarrollo de la herramienta DAMVE, desde los
requerimientos hasta el modelo de diseo para ser implementado en lenguaje
Python sobre la arquitectura Appengine de Google.
A continuacin se resumen los aspectos ms relevantes durante el desarrollo de la
herramienta DAMVE
Si bien el documento presenta las etapas de manera consecutiva, suponiendo
un modelo de desarrollo en cascada, el proceso de desarrollo y por
consiguiente los contenidos del documento se fueron generando de manera
iterativa, siguiendo un proceso conducido por el dominio del problema.
Durante la etapa de diseo se busc siempre que la lgica del dominio del
problema fuese independiente del resto de la lgica de la aplicacin (vista y
controlador). Este aspecto es fundamental en el desarrollo de software ya que
hace posible reutilizar completamente dominio para adaptarlo a otro
escenario. Adems, dado que Appengine est basado en el patrn MVC, que
separa el dominio de la interfaz con el usuario (vista y controlador), se
consigui una concordancia entre la arquitectura del sistema y el proceso de
desarrollo.
Al estar la herramienta basada en un entorno web, se busc optimizar la
interaccin con el usuario. Para ello se implementaron interfaces en
AJAX/JSON, que minimizan la transferencia http entre el servidor y el cliente,
en los casos de uso que requieren mayor interaccin usuario/sistema. Como
ejemplo se pueden citar los casos de uso CU-003 Actualizar planilla de
evaluacin y CU-004 Evaluar viabilidad.
A lo largo del documento se busc registrar la trazabilidad que existe entre las
distintas etapas de desarrollo. La Figura A1.19 relaciona los requierimientos
funcionales con los casos de uso, permitiendo registrar la trazabilidad entre
Requerimientos y Casos de Uso. La Figura A1.33 relaciona los casos de uso,
con los paquetes de clases que los implementan permitiendo registrar la
trazabilidad entre Casos de Uso y Clases. Finalmente en la seccin 8 se
desarrollan los casos de prueba como escenarios posibles para cada caso de
uso, permitiendo registrar la trazabilidad entre Casos de Uso y Casos de
Prueba.
Pg. 108
Pg. 109
Pg. 110
1. Introduccin
El Sistema DAMVE tiene por finalidad, ayudar a los miembros de un proyecto de
explotacin de informacin que utilizan la metodologa P3TQ a evaluar su
viabilidad.
2. Requisitos
Para poder ejecutar el sistema DAMVE se requiere de un navegador web con
soporte para AJAX. Los siguientes navegadores funcionan correctamente con el
sistema DAMVE :
Microsoft Internet Explorer 6.0 o superior
Mozilla Firefox 2.0 o superior
En cualquiera de los dos casos deben habilitarse las opciones de cookies y
ejecucin de comandos javascript.
3. Acceso al sistema
Cuando un usuario ingresa el enlace del sistema DAMVE en el navegador web se
presenta la siguiente pantalla, mostrada en la Figura A2.1.:
Pg. 111
4. Presentacin de la interfaz
Se presenta a continuacin, en la Figura A2.3, la pantalla de seleccin de
proyectos del sistema y se describen las distintas opciones de la barra de mens.
1
2.
No m b re de u su a ri o :
Pg. 112
4.
5.
6.
7.
Pg. 113
Pg. 114
Visitante
Evaluador
Administrador
Un mismo usuario puede tener dentro del sistema uno o varios roles. Por ejemplo,
un usuario puede ser lder del proyecto 1 por haberlo creado, colaborador del
proyecto 2 porque su lder lo ha designado, visitante en el resto de los proyectos y
evaluador porque el administrador lo ha designado.
7. Gestin de un Proyecto
Una vez creado un nuevo proyecto o seleccionado de la pantalla de seleccin de
proyecto, el usuario accede a la pantalla de gestin del proyecto. La Figura A2.6
presenta dicha pantalla:
Pg. 115
Pg. 116
Para crear una nueva evaluacin, el usuario miembro del proyecto debe:
Escribir una descripcin para la evaluacin.
Hacer clic en el botn c re ar n ue va e v a lu a c in .
Una vez realizada esta tarea el sistema DAMVE crea una nueva evaluacin para el
proyecto y le muestra al usuario la pantalla de ejecucin de la evaluacin.
Pg. 117
8. Ejecucin de evaluaciones
Hasta el momento se ha presentado la forma de crear proyectos, agregar
colaboradores al mismo y crear evaluaciones. En este tem se mostrar la forma de
ejecutar las evaluaciones a travs de un cuestionario guiado.
Una vez que un miembro del proyecto cree una nueva evaluacin, el sistema
DAMVE presenta la pantalla de ejecucin de la evaluacin. La Figura A2.8
presenta dicha pantalla:
Pg. 118
3.
4.
Pg. 119
Pg. 120
El sistema preparar una versin adaptada para impresin del resultado que
facilita su lectura en papel y ejecutar automticamente el cuadro de dilogo de
impresin del navegador web.
Pg. 121
Pg. 122
10.3.1.
10.3.2.
Preservacin de la secuencia
Pg. 123
Pg. 124