Documente Academic
Documente Profesional
Documente Cultură
HISTORIAL DE CAMBIOS
FECHA
VERSI
N
DESCRIPCIN
RESPONSABLE
12-10-10
1.0
Secciones 1,2
13-10-10
1,1
Secciones 3.1 y
3.2
23-10-10
1.2
25-10-10
1.3
Seccin
2.5
31-10-10
1.4
Seccin 3.6
01-11-10
1.5
Correcciones
varias
16-11-10
1.6
Correcciones
Interfaces
Externas
30-11-10
1.7
09-12-10
1.8
18-12-10
1.9
28-12-10
1.9
Actualizacin de Vanesa
Carolina
Loaiza,
2
tablas
de Laura Catalina Zorro
requerimientos
06-01-11
2.0
11-01-11
2.1
TABLA DE CONTENIDO
HISTORIAL DE CAMBIOS...................................................................................... 2
TABLA DE CONTENIDO........................................................................................ 3
NDICE DE TABLAS.............................................................................................. 5
1. INTRODUCCIN............................................................................................. 6
1.1. Propsito................................................................................................ 6
1.2. Alcance................................................................................................... 6
1.3. Definiciones, acrnimos y abreviaciones................................................7
1.4. Referencias............................................................................................. 7
1.5. Apreciacin global.................................................................................. 9
2. DESCRIPCIN GLOBAL................................................................................ 11
2.1. Perspectiva del producto......................................................................11
2.1.1. Interfaces con el Sistema...............................................................11
2.1.2. Interfaces con el Usuario...............................................................11
2.1.3. Interfaces con el Hardware...........................................................12
2.1.4. Interfaces con el Software.............................................................12
2.1.5. Interfaces de comunicacin...........................................................13
2.1.6. Restricciones de Memoria..............................................................13
2.1.7. Operaciones................................................................................... 14
2.1.8. Requerimientos de Adaptacin del Sitio.........................................14
2.2. Funciones del producto.........................................................................14
2.3. Caractersticas del Usuario...................................................................15
2.4. Restricciones........................................................................................ 17
2.5. Modelo del Dominio.............................................................................. 17
2.6. Suposiciones y Dependencias..............................................................17
2.6.1. Suposiciones.................................................................................. 17
2.6.2. Dependencias................................................................................18
2.7. Distribucin de Requerimientos............................................................18
2.7.1. Distribucin de los requerimientos Funcionales.............................18
2.7.2. Distribucin de los Requerimientos No Funcionales.......................20
2.8. Trazabilidad y Localizacin...................................................................21
2.9. Priorizacin de Requerimientos............................................................22
2.10. Relacin entre Requerimientos..........................................................24
3. REQUERIMIENTOS ESPECFICOS..................................................................25
3.1. Requerimientos de Interfaces Externas................................................26
3.1.1. Interfaces con el Usuario................................................................26
3.1.2. Interfaces con el Hardware............................................................26
3.1.3. Interfaces con el Software..............................................................26
3.1.4. Interfaces de Comunicacin...........................................................26
3.2. Caractersticas del Producto de Software.............................................27
NDICE DE TABLAS
TABLA
TABLA
TABLA
TABLA
TABLA
TABLA
TABLA
TABLA
TABLA
1: HISTORIAL DE CAMBIOS....................................................................................2
2: DEFINICIONES, ACRNIMOS Y ABREVIACIONES..............................................................7
3. INTERFACES CON EL SOFTWARE...........................................................................13
4: RESTRICCIONES DE MEMORIA.............................................................................13
5: CASOS DE USO........................................................................................... 15
6. USUARIOS................................................................................................16
7. TRAZABILIDAD Y LOCALIZACIN..........................................................................21
8: PLANTILLA DE ESPECIFICACIN DE REQUERIMIENTOS. TOMADO DE [13][14]..............................26
30. RESTRICCIONES DE DISEO..............................................................................29
1. INTRODUCCIN
1.1. Propsito
El objetivo de ste documento es proporcionar una gua de desarrollo [1] para el grupo
de trabajo, adems de una descripcin detallada del sistema de administracin de
requerimientos que se quiere implementar. Esta especificacin est conformada por una
definicin y descripcin del software con relacin a las necesidades que se quieren suplir,
es decir los requerimientos funcionales y no funcionales.
Adicional a la especificacin de los requerimientos, este documento delimita el sistema a
los recursos que se poseen, es decir que tiene en cuenta las restricciones que intervienen
en el desarrollo del proyecto y las interfaces con otros sistemas a manejar.
1.2. Alcance
Este documento describe de manera detallada los requerimientos de la herramienta
ERMT, la cual ser desarrollada como Trabajo de Grado de las estudiantes Vanesa
Carolina Loaiza y Laura Catalina Zorro, y est dirigida a los estudiantes y profesores de
las asignaturas de IS y AS de la Pontificia Universidad Javeriana.
La Herramienta tiene como objetivo agilizar el proceso de administracin de
requerimientos en los proyectos de las asignaturas IS y AS, por medio de las
funcionalidades que se describen a continuacin.
Las funcionalidades que estarn disponibles en la herramienta son:
-
Es importante resaltar, que para la administracin del cambio, solo ser almacenado el
porqu del cambio y se actualizara la versin del requerimiento, esta funcionalidad no
7
DESCRIPCIN
AS
Arquitectura de Software
IS
Ingenieras de Software
ERMT
JavaDoc
Stand Alone
generar
la
1.4. Referencias
[1].
Merlin. SOFTWARE
REQUIREMENTS
ENGINEERING.
Segunda Edicin. Los Alamitos, California. Estados Unidos: IEEE COMPUTER SOCIETY,
2000.
[2].
[3].
JVM,
disponible
en:
http://java.sun.com/javase/6/docs/technotes/guides/vm/index.html?intcmp=3170 [ltima
consulta: Septiembre 30 de 2010]
[4].
[6].
http://puj-
portal.javeriana.edu.co/portal/page/portal/Facultad%20de
%20Ingenieria/plt_dpto_sistemas/Laboratorios [ltima consulta: Septiembre 30 de 2010]
[7].
[8].
IEEE
std.
830-1998.
IEEE
recomended
practice
for
software
requirements
[9].
[10].
ISO
9126.
[Documento
en
Internet]
Disponible
en:
[11].
IEEE
std.
specifications,
830-1998.
IEEE,
REQUIREMENTS.
IEEE
recomended
1998Wiegers,
Process
Karl.
practice
FIRST
THING
Impact,
http://www.processimpact.com/articles/prioritizing.html.
for
software
requirements
FIRST;
PRIORITIZING
Disponible
[ltima
Fecha
en:
de
Consulta:
Octubre. 12 de 2010].
[12].
en Internet]. Springer Berlin Heidelberg. 2005. Pg. 69-94. [Fecha de consulta: Octubre 12
de 2010].
[13].
Versin 3.2.
[14].
[15].
JAVADOC
Documentation
Tool.
[Homepage
en
Internet].
Disponible
en:
http://www.oracle.com/technetwork/java/javase/documentation/index-jsp-135444.html.
[ltima Fecha de consulta: Octubre 25 de 2010]
[16].
[17].
[18].
Disponible en:
[19].
clase].
[20].
MySQL:
Informacin
general.
[Homepage].
http://dev.mysql.com/doc/refman/5.0/es/introduction.html
[ltima
Disponible
fecha
de
en:
consulta:
Octubre 31 de 2010].
11
interfaces con
las que
rendimiento ptimo.
12
2. DESCRIPCIN GLOBAL
2.1. Perspectiva del producto
Ver Seccin 4.1 Perspectiva del producto del documento de Visin
2.1.1.
ERMT, como ya fue descrito en la seccin 1.2 Alcance, tiene como objetivo agilizar el
proceso de administracin de requerimientos, para lo cual es necesario que dentro de las
funcionalidades se encuentre la generacin de reportes. Es por esto que la herramienta
debe interactuar con procesadores de texto, los cuales permitirn la generacin de los
reportes.
13
2.1.2.
TECLADO
Se utiliza para la entrada de datos al sistema por parte del usuarios,
relacionados con los requerimientos y su informacin detallada.
MOUSE
Se utiliza para la entrada de instrucciones dentro de un entorno grfico
facilitando al usuario su desenvolvimiento dentro del sistema.
PANTALLA
Se utiliza para mostrar informacin como los resultados por parte del sistema, ya
que a travs de la pantalla el usuario, con ayuda de la GUI, el usuario puede
desarrollar las diferentes tareas y ver los resultados de sus peticiones en resumen,
es el principal medio de comunicacin del sistema con el usuario.
2.1.3.
Debido a que la Herramienta ERMT ser una aplicacin Stand Alone, esta no contar con
ningn tipo de interaccin con elementos de hardware.
2.1.4.
Las interfaces con el software, son las diferentes aplicaciones que interactan con la
herramienta ERMT para poder cumplir con las necesidades del usuario. En la Tabla 3 se
describen cada uno de los productos que debern interactuar con el sistema.
14
Product
o de
Softwar
e
Descripcin
Propsito de Uso
Versin
Fuente
Window
s
Sistema operativo
desarrollado
por
Microsoft,
basado
en Windows NT,
Es
el
sistema
operativo sobre el
cual se desarrollara y
ejecutar el sistema.
Windows XP
Professional
SP
2
o
Superior
Microso
ft
Corpor
ation.
[2]
JVM
Mquina virtual de
Java, se encarga de
traducir lenguaje de
alto nivel a lenguaje
binario
Puesto
que
el Java SE 6
lenguaje
de
programacin que se
usar
para
el
desarrollo
de
la
aplicacin, que es
Java,
no
es
un
lenguaje de bajo nivel
o de mquina es
necesario usar un
intrprete
que
permita la correcta
ejecucin de estas
instrucciones.
Sun
Microsy
stems
[3]
JDBC
Java Database
Connectivity, es
una API que permite
la ejecucin de
operaciones sobre
bases de datos
desde el lenguaje
de programacin
Java, emplea el
lenguaje de query
SQL.
Proporciona
un 4.0
acceso confiable a los
datos de las bases de
datos SQL, debido a
que
la
aplicacin
requiere
realizar
operaciones
de
consulta
y
actualizacin en la
base de datos.
Sun
Microsy
stems,
Inc. [4]
15
Graphvi
z[16]
MySQL
MySQL
[20]
Software
que
proporciona
un
servidor de base de
datos
SQL
(Structured
Query
Language)
muy
rpido,
multithreaded,
multi
usuario y robusto.
[20]
2.1.5.
Interfaces de comunicacin
2.1.6.
Restricciones de Memoria
Disco Duro
Memoria Ram
virtual
java 600 MB
64 MB
750 MB
512 MB
Tortoise SVN
40 MB
512 MB
Windows XP
1.5 GB
128 MB
16
MySQL
4 GB
512 MB
2.1.7.
Operaciones
La herramienta ERMT cuenta un nico tipo de usuario, el cual contar con las siguientes
operaciones:
-
Por otro lado, la herramienta no contar con funciones de recuperacin de datos en caso
de que ocurran fallos en la comunicacin entre la herramienta y la base de datos en la
cual va a ser almacenada la informacin.
2.1.8.
17
Identificador
CU01
CU02
CU03
CU04
CU05
CU06
CU07
CU08
CU09
CU10
CU11
CU12
CU13
CU14
CU15
CU16
CU17
CU18
CU19
CU20
CU21
CU22
CU23
CU24
CU25
CU26
CU27
CU28
CU29
CU30
Nombre
Actualizar control de cambios
Actualizar
relaciones
entre
requerimientos
Actualizar requerimiento
Actualizar valor atributos
Actualizar valores de lista V&V
Actualizar valores de localizacin
Actualizar valores de priorizacin
Actualizar valores de trazabilidad
Calcular grafo
Calcular valor de priorizacin total
Clasificar requerimiento
Consulta atributos plantilla
Consultar Cambios
Consultar estado requerimiento
Consultar estado total
Consultar grafo
Consultar lista de priorizacin
Consultar lista de V&V
Consulta localizacin
Consultar requerimientos
Consultar
requerimientos
clasificados
Consultar
requerimientos
rechazados
Consultar trazabilidad
Consultar valore de atributos
Crear requerimiento
Eliminar requerimiento
Generar reportes en Word
Reanudar
o
rechazar
requerimiento
Seleccionar atributos
Seleccionar
mtodos
de
18
CU31
CU32
CU33
CU34
CU34
priorizacin
Generar reportes en Excel
Crear Proyecto
Eliminar Proyecto
Abrir Proyecto
Modificar Proyecto
Tabla 5: Casos de uso
Descripcin
Hace referencia a los encargados de
impartir las materias de IS y AS en la
pontificia universidad Javeriana. Este
tipo de usuarios se divide en:
-
Profesores de Ingeniera de
Software
Profesores de Arquitectura de
Software
19
Estudiante de Ingeniera de
Software.
Estudiante de Arquitectura de
Software
(Para
mayor
informacin ver Documento
Vision.docx
Seccin
3.3
Resumen de Usuario).
Para poder hacer uso de la herramienta, los usuarios, descritos en la Tabla 6. Usuarios,
deben contar con las siguientes caractersticas y conocimientos bsicos para hacer un
buen uso de esta.
-
computacin
Conocimientos Acadmicos: El usuario debe estar cursando o haber cursado la
asignatura Ingeniera de Software, esto con el fin de que este tenga claros
conceptos como por ejemplo que es un requerimiento, que es localizacin y
2.4. Restricciones
A continuacin se presentan las restricciones de la herramienta de administracin de
requerimientos.
RESTRICCIONES GENERALES
o Restriccin de Idioma: El idioma espaol ha sido seleccionado para toda la
documentacin relacionada con el desarrollo y los manuales de la
Herramienta ERMT.
RESTRICCIONES DE SOFTWARE
20
ser JAVA.
RESTRICCIONES DE HARDWARE
o Teniendo en cuenta las maquinas donde deber correr la aplicacin, las
restricciones de hardware se encuentran descritas
en la seccin 2.1.8
Suposiciones
herramienta.
El cliente, en este caso los profesores Miguel Eduardo Torres y Jamir vila
tienen la disponibilidad de tiempo suficiente para solucionar cualquier duda
referente al proyecto.
El cliente no realizar cambios significativos en los requerimientos.
Para ms suposiciones ver Seccin 4.3.1 Suposiciones en el documento de
Visin.
21
2.6.2.
Dependencias
Interfaces Externas.
Los usuarios finales utilizaran la aplicacin en equipos que cuentan con las
caractersticas de hardware, software mnimas descritas en la seccin 2.3
Restricciones.
Para ms suposiciones ver Seccin 4.3.2 Dependencias en el documento de
Visin.
2.7.1.
22
Atributos y
Clasificacin
Administracin
de Cambios
Priorizacin
Requerimientos
Funcionales
Localizacin y
Trazabilidad
Validacin y
Verificacin
Visualizacin y
Reportes
Proyecto
de los requerimientos.
Localizacin y Trazabilidad: Esta categora hace referencia a los requerimientos
que permitirn que la herramienta soporte los procesos de localizacin y
trazabilidad de los requerimientos.
23
2.7.2.
Confiabilidad
Disponibilidad
Usabilidad
Requerimientos
No Funcionales
Mantenibilidad
Portabilidad
Funcionalidad
La Ilustracin 3 muestra la distribucin que ser utilizada para definir los requerimientos
no funcionales de la herramienta, dentro de los cuales se encuentran:
24
con la administracin de los fallos en los que puede incurrir el sistema [10].
Disponibilidad: Estos requerimientos hacen referencia a la capacidad que debe
tener el sistema, para mantener un nivel de rendimiento bajo las condiciones
bajo las condiciones de uso estipuladas en los requerimientos del sistema [17].
Mantenibilidad: estos requerimientos estn asociados a la capacidad que tendr
el sistema de ser modificado, ya sea para actualizar el sistema, incluir
correcciones [17].
Portabilidad: estos requerimientos reflejan la capacidad del sistema de cambiar
de un ambiente a otro. El ambiente puede ser organizacional, de hardware o
software [17].
Funcionalidad: esta categora hace referencia a los requerimientos que proveen
la capacidad para que el sistema provea las funciones descritas con los
requerimientos funcionales [17].
Fuente
del
Requerim
iento
Razn
de ser
Cas
o
de
uso
SRS
SA
D
Compone
nte
Docume Manu
nto
de al
Pruebas
25
ID
Fuente del
Requerimiento
Razn de Ser
Caso de Uso
SRS
SAD
Componente
Documento de
Pruebas
Manual
26
Beneficio
Costo
Valor
(%CostoPeso Costo)
Ilustracin 5: Relacin costo-beneficio
Estos dos tems son fundamentales dentro del desarrollo de software porque afectan
directamente al desarrollo del sistema.
BENEFICIO: Es el valor que tiene el requerimiento para el cliente, cuanto cree que
le beneficia el requerimiento si ste se encuentra aplicado
[12]. El grupo de trabajo tom por un momento el rol de cliente para poder llevar a
27
2.10.
28
3. REQUERIMIENTOS ESPECFICOS
En esta seccin se detallaran cada uno de los requerimientos, en la Tabla 8 se muestra
como est organizada la plantilla y que significa cada campo. La organizacin en que
sern presentados los requerimientos funcionales se presenta en la seccin 2.7
Distribucin de requerimientos.
La tabla que se va a manejar para presentar los requerimientos es la siguiente:
Identificador:
Prioridad:
Especific
.
diseo
Implem.
pruebas
Estado
Versin:
Fecha
ltima Fecha en que se modific por ltima vez, el
modificacin
requerimiento
responsable de Responsable de
modificacin
requerimiento.
Dueo:
la
ltima
modificacin
del
29
Costo Promedio
Razn de ser:
Descripcin
Criterios
aceptacin:
Requerimientos
asociados
Casos de
asociados:
se
3.1.2.
30
3.1.3.
3.1.4.
Interfaces de Comunicacin
3.2.1.
Atributos y Clasificacin
3.2.2.
3.2.3.
Priorizacin
31
3.2.4.
Localizacin y trazabilidad
3.2.5.
V&V
3.2.6.
Visualizacin y reportes
3.2.7.
Proyecto
32
Nombre
Diseo
Paradigma
Programacin
de Orientado a Objetos
Debido a la experiencia
con la que cuentan las
integrantes del grupo, se
decidi que este ser el
paradigma
de
programacin para la
implementacin.
Lenguaje
programacin
de Java
Este
lenguaje
de
programacin
fue
elegido
ya
que
el
paradigma
de
programacin que se
utilizara
para
implementar
la
herramienta ERMT es el
Orientado a Objetos.
Adems de esto en la
seccin 2.1.4 Interfaces
con el
Software, se
definieron restricciones
que tienen que ver con
el lenguaje.
Herramientas CASE
Netbeans 6.9.1
Enterprise Architect
Confiabilidad
3.5.2.
Disponibilidad
3.5.3.
Usabilidad
3.5.4.
Mantenibilidad
3.5.5.
Portabilidad
3.5.6.
Funcionalidad
Robustez.
Portabilidad.
Mientras que con archivos planos o XML, la mantenibilidad y gestin de los datos es mas
complicada en el momento del desarrollo. Adems, no garantiza totalmente la seguridad
de los datos ya que si un archivo es modificado, la integridad puede verse cuestionada
[18].
Ver documento de Excel Anexo Plantilla de requerimientos.xlsx en la hoja
ESPECIFICACIN DE REQUERIMIENTO. Los requerimientos asociados a la Funcionalidad
se encuentran especificados bajo el identificador nicos 69, 84, 85, 86, 87, 88, 89, 90 y
91.
35
4. ANEXOS
4.1. Anexo 1: Tabla de priorizacin
VER DOCUMENTO DE EXCEL ANEXO Plantilla de requerimientos.XLSX pestaa
PRIORIZACION (NO TOCAR)
36