Requerimientos



Descargar 57.27 Kb.
Fecha de conversión26.06.2018
Tamaño57.27 Kb.

Feed It

Especificación de Requerimientos de Software

Versión 1.4

Historia de revisiones

Fecha

Versión

Descripción

Autor

16/08/2006

1.0

Especificación de requerimientos.

Martín Corbo

18/08/2006

1.1

Especificación de requerimientos.

 Martín Corbo

19/08/2006

1.2

Especificación y corrección de requerimientos.

 Martín Corbo

19/08/2006

1.3

Corrección de requerimientos.

Martín Corbo

20/08/2006

1.4 

Especificación y corrección de requerimientos.

 Martín Corbo

Ricardo Bedat



Contenido

1.Introducción 4

1.1.Propósito 4

1.2.Alcance 4

1.3.Definiciones, siglas y abreviaturas. 4

1.4.Referencias 4

1.5.Visión general 4



2.Descripción general 5

2.1.Perspectiva del producto 5



2.1.1.Interfases de usuario 5

2.1.2.Restricciones de memoria 5

2.2.Funciones del producto 5



2.2.1.Manejo de proyectos 5

2.2.2.Carga de esquema de Base de Datos 5

2.2.3.Manejo de reglas 5

2.2.4.Asociación de reglas a campos de una tabla 5

2.2.5.Poblado de Base de Datos 5

2.2.5.1.Manejo de algoritmos de enmascaramiento de datos 5

2.2.5.2.Aplicación de reglas a campos de tablas 5

2.2.5.3.Asignación de porcentajes de cumplimiento de reglas para campos de tablas 6

2.2.6.Exportación de sentencias SQL 6

2.2.7.Plantillas y Wizards 6

2.2.8.Extensibilidad 6

2.2.8.1.Plugins para manejo de distintos DBMS 6

2.2.8.2.Nuevos tipos de datos 6

2.2.8.3.Nuevos operadores 6

2.2.8.4.Nuevos algoritmos de enmascaramiento de datos 6

2.3.Características de los usuarios 6

2.4.Restricciones de diseño 6

2.4.1.Lenguaje de Programación 6

2.4.2. IDE 6

2.4.3.Plataforma 6

2.5.Supuestos y dependencias 6



3.Requerimientos específicos 7

3.1.Requerimientos Funcionales 7



3.1.1.Alta de Empresa 7

3.1.2.Eliminación de Empresa 7

3.1.3.Modificación de Empresa 7

3.1.4.Alta de proyecto 7

3.1.5.Eliminación de proyecto 7

3.1.6.Modificación de proyecto 7

3.1.7.Almacenar proyecto 7

3.1.8.Cargar proyecto 7

3.1.9.Conexión a Base de Datos 7

3.1.10.Carga de esquema de Base de Datos 7

3.1.11.Alta de regla 8

3.1.12.Composición de reglas 8

3.1.13.Eliminación de regla 8

3.1.14.Modificación de regla 8

3.1.15.Secuencia de reglas 8

3.1.16.Asignación de porcentaje a regla 8

3.1.17.Poblado de Base de Datos 9

3.1.18.Exportación de sentencias SQL 9

3.1.19.Plantillas 9

3.1.20.Wizards 9

3.2.Requerimientos Suplementarios 9



3.2.1.Performance 9

3.2.2.Robustez 9

3.2.3.Extensibilidad 9

3.2.4.Plugins para distintos DBMS 9

3.2.5.Versión de DBMS 9

4.Requerimientos de documentación 10

4.1.Manual de Usuario 10

4.2.Ayuda en línea 10

4.3.Manual Técnico 10





  1. Introducción

Este documento contiene la especificación de requerimientos que el sistema debe satisfacer.

    1. Propósito

El propósito de la Especificación de Requerimientos de Software es describir los requerimientos que el sistema a desarrollar debe cumplir. Estos requerimientos son tanto funcionales como no funcionales.

La audiencia esperada para este documento está conformada por el Cliente, los Analistas, el Arquitecto, el Responsable de Verificación y el Responsable de SQA.



    1. Alcance

El producto a desarrollar es una herramienta que permita generar datos para poblar bases de datos, para luego realizar tests de performance sobre las mismas.

Se deberá poder definir un conjunto de reglas que deberán cumplirse para los datos generados, en cierto porcentaje.

Esta herramienta deberá proveer plugins para su utilización con distintos DBMS. En particular deberá proveer plugins para MySQL y para PostgreSQL.


    1. Definiciones, siglas y abreviaturas.

Ver Glosario.

    1. Referencias

  • Documento Pautas para la Interfaz de Usuario.

  • Glosario.



    1. Visión general

En lo que resta del documento se describen los factores generales que afectan al producto y sus requerimientos (Sección 2), los requerimientos específicos del software (Sección 3), y los requerimientos de documentación (Sección 4).

  1. Descripción general

    1. Perspectiva del producto

      1. Interfases de usuario

Se ha requerido por parte del Cliente que la interfaz de usuario sea amigable y fácil de utilizar.

Ver documento Pautas para la Interfaz de Usuario para más información.



      1. Restricciones de memoria

La herramienta a desarrollar deberá funcionar correctamente en un equipo con al menos 512 MB de memoria RAM.

    1. Funciones del producto

      1. Manejo de proyectos

Esta funcionalidad permite manejar distintos proyectos. Se cuenta con ABM de proyectos.

      1. Carga de esquema de Base de Datos

Mediante esta funcionalidad se carga el esquema de la base de datos que se desea poblar.

      1. Manejo de reglas

Se permitirá manejar distintas reglas a aplicar sobre los campos de una tabla de una base de datos. Se podrá dar de alta, modificar y eliminar una regla.

Se permitirá tener un conjunto de reglas por proyecto.



      1. Asociación de reglas a campos de una tabla

Se podrá aplicar reglas a distintos campos de una tabla, estableciendo un orden de precedencia para su aplicación. El software realizará indicaciones o advertencias al usuario en caso de encontrar alguna inconsistencia en la asociación de reglas, o en caso de no haberse asociado reglas a una tabla relacionada con la tabla principal de la base de datos, por ejemplo.

      1. Poblado de Base de Datos

Esta funcionalidad se encargará de poblar la base de datos. Para ello se aplicarán reglas y se asignarán porcentajes de cumplimiento de las reglas por campo de una tabla, que deberán cumplir los datos generados.

Los datos se podrán generar de forma secuencial o aleatoria, o se podrán utilizar algoritmos de enmascaramiento de datos existentes en otras bases.



        1. Manejo de algoritmos de enmascaramiento de datos

Se logra, utilizando estos algoritmos, generar datos de prueba a partir de datos reales. Se aplica un algoritmo de enmascaramiento para proteger la confidencialidad de los datos reales.

        1. Aplicación de reglas a campos de tablas

Se permite aplicar reglas a los distintos campos de las tablas. Los datos generados para poblar la base de datos deberán cumplir esas reglas en un determinado porcentaje.

        1. Asignación de porcentajes de cumplimiento de reglas para campos de tablas

Se asigna el porcentaje de cumplimiento de una determinada regla que deberán tener los datos generados.

      1. Exportación de sentencias SQL

Esta funcionalidad permite exportar las sentencias SQL utilizadas en un proyecto para la generación de los datos. Estas sentencias son exportadas en formato SQL estándar.

      1. Plantillas y Wizards

Se brindarán plantillas y wizards para facilitar el uso del software.

      1. Extensibilidad

Estas funcionalidades hacen a la extensibilidad del producto

        1. Plugins para manejo de distintos DBMS

Se proveerán plugins para utilizar el software con distintos DBMS. En particular se proveerán plugins para PostgreSQL y MySQL.

        1. Nuevos tipos de datos

El software soportará el manejo de nuevos tipos de datos.

        1. Nuevos operadores

El software soportará el ingreso de operadores para los nuevos tipos de datos, especificando el comportamiento correspondiente.

        1. Nuevos algoritmos de enmascaramiento de datos

El producto permitirá que nuevos algoritmos de enmascaramiento de datos puedan ser agregados en un futuro.

    1. Características de los usuarios

Los usuarios que utilizarán el producto tienen alto nivel educacional, experiencia y especialización técnica en el área que involucra al producto, por lo que tienen altos requerimientos de usabilidad y performance.

    1. Restricciones de diseño

      1. Lenguaje de Programación

El software a desarrollar deberá ser implementado utilizando el lenguaje de programación JAVA versión 1.5.

      1. IDE

Se deberán utilizar las IDE Eclipse o NetBeans.

      1. Plataforma

El software a desarrollar deberá desempeñarse correctamente en la plataforma Windows XP.

    1. Supuestos y dependencias

Se supone que el software solo será utilizado en la plataforma Windows XP.

Se supone que todos los datos referentes a la conexión con la base de datos serán conocidos y brindados por el usuario del software.



Se supone que la conexión a la base de datos es confiable.

  1. Requerimientos específicos

    1. Requerimientos Funcionales

      1. Alta de Empresa

Dados los datos de una empresa, se da de alta a la misma en el sistema. Las empresas se identificarán por su nombre.

      1. Eliminación de Empresa

Dado el nombre de una empresa, elimina la empresa del sistema. No se podrá eliminar una empresa que tenga proyectos asociados.

      1. Modificación de Empresa

Dado el nombre de una empresa, permite modificar los datos correspondientes a la empresa identificada por el nombre dado.

      1. Alta de proyecto

Dado el nombre de un proyecto y el nombre de la empresa al cual pertenece, se crea un nuevo proyecto en el sistema, asociado a la empresa a la que pertenece. Los proyectos se identificarán por el nombre de proyecto y nombre de la empresa a la que pertenece.

      1. Eliminación de proyecto

Dado el nombre de un proyecto y el nombre de la empresa al cual pertenece, se elimina el proyecto del sistema. Se elimina toda la información asociada a dicho proyecto.

      1. Modificación de proyecto

Dado el identificador de un proyecto, se permiten modificar los datos del proyecto con el identificador correspondiente.

      1. Almacenar proyecto

Dado el nombre de un proyecto y el nombre de la empresa al cual pertenece, se graba toda la información referente al proyecto en almacenamiento secundario.

      1. Cargar proyecto

Permite cargar toda la información referente al proyecto desde almacenamiento secundario.

      1. Conexión a Base de Datos

Permite al software conectarse a la base de datos para obtener su esquema o para poblarla.

      1. Carga de esquema de Base de Datos

Dado el nombre de un proyecto, el nombre de la empresa al cual pertenece y la información necesaria para la conexión a la base de datos, se carga el esquema de base de datos y se asocia dicho esquema al proyecto.

      1. Alta de regla

Dado un nombre, un tipo de datos, un operador y un valor, se da de alta una nueva regla en el sistema. El operador y el valor corresponden al tipo de datos ingresado. Las reglas se identificarán por nombre.

      1. Composición de reglas

Permite la creación de reglas a partir de la composición de reglas existentes.

Las composiciones posibles serán NOT regla1, regla1 AND regla2 y regla1 OR regla2, donde regla1 y regla2 son reglas existentes en el sistema. Dado un nombre se creará una nueva regla en el sistema, resultante de la composición de regla1 y regla2 según corresponda, identificada por el nombre dado.



      1. Eliminación de regla

Dado el identificador de una regla, se elimina del sistema la regla con el identificador correspondiente.

      1. Modificación de regla

Dado el identificador de una regla, se permite modificar los datos correspondientes a la regla correspondiente.

      1. Secuencia de reglas

Permite especificar secuencias de reglas a aplicar sobre distintos campos de una tabla. Se indica la secuencia de la siguiente manera: regla1- campo1-porcentaje1, regla2-campo2- porcentaje2, regla3-campo3- porcentaje3, así sucesivamente. Se aplicará la regla1 al campo1, luego los datos que cumplan con la regla1 deberán cumplir la regla2 en el campo2, y estos últimos deberán cumplir la regla3 en el campo3, y así sucesivamente. regla1, regla2, regla3, campo1, campo2 y campo3, son reglas y campos respectivamente, existentes en el sistema, donde las reglas mencionadas se pueden aplicar a los campos mencionados. porcentaje1, porcentaje2 y porcentaje3 son los porcentajes de cumplimiento de las reglas que deberán seguir los datos generados.




Esta imagen muestra como funcionaría la aplicación de reglas en secuencia.

Se consideró la siguiente secuencia:

Regla1-campo1-50%

Regla2-campo2-50%

Regla3-campo3-50%

Los porcentajes que se muestran en cada columna indican el porcentaje de registros a ser generados que cumplirán con la regla en ese campo.





      1. Asignación de porcentaje a regla

Dada una regla y un campo, permite asignar el porcentaje de cumplimiento de la regla que deberán seguir los datos generados para ese campo.

      1. Poblado de Base de Datos

Dado el conjunto de reglas asignadas a los distintos campos de las distintas tablas de la base de datos, los porcentajes de cumplimiento de dichas reglas, el porcentaje de valores nulos para cada campo y el número de registros a generar, se realiza el poblado de la base de datos, cumpliendo con las restricciones mencionadas anteriormente. La base de datos a poblar debe estar vacía. Se deberán mostrar mensajes de error o de advertencias en los casos que corresponda.

      1. Exportación de sentencias SQL

Dado un proyecto, permite exportar las sentencias SQL estándar utilizadas para la generación de datos de ese proyecto.

      1. Plantillas

Se contará con plantillas que permitan facilitar el uso del software para proyectos de similares características.

      1. Wizards

Se contará con wizards para facilitar el uso del software.

    1. Requerimientos Suplementarios

      1. Performance

El software deberá tener alta performance. Esto es, por ejemplo, que generar 100000 registros en una base de datos manejada por PostGreSQL, corriendo en un procesador Pentium 4 con 2 GB de RAM, no tome mas de 1 hora.

      1. Robustez

El software deberá ser robusto. Se deberá poner énfasis en que una vez iniciado el proceso de poblado de datos, este proceso finalizará correctamente.

      1. Extensibilidad

El software deberá ser fácilmente extensible. Se deberá poder agregar nuevos tipos de datos, nuevos operadores y nuevos algoritmos de enmascaramiento de datos.

      1. Plugins para distintos DBMS

Se deberá proveer plugins para PostgreSQL y MySQL. Se deberá permitir agregar plugins para otros manejadores.

      1. Versión de DBMS

El software deberá desempeñarse correctamente con los manejadores PostgreSQL versión 8.1 y MySQL versión 5.0.

  1. Requerimientos de documentación

    1. Manual de Usuario

Se deberá proveer un manual de usuario focalizado en la definición de las reglas.

    1. Ayuda en línea

Se deberá proveer ayuda en línea centrada en la definición de las reglas.

    1. Manual Técnico

Se deberá proveer un manual técnico que explique el procedimiento a seguir para extender el software (agregar plugin, tipo de dato, operador, algoritmo de enmascaramiento), definiendo interfases, restricciones, etc.

Especificación de Requerimientos Página de


Compartir con tus amigos:


La base de datos está protegida por derechos de autor ©composi.info 2017
enviar mensaje

    Página principal