Especificación de requisitos de software
Rev.
Pág. 1
Especificación de requisitos desoftware
Proyecto:Revisión [1.4]
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 2
Ficha del documento
Fecha Revisión Autor Verificado dep. calidad.Febrero 262013
1.4 SoftwareOne
Documento validado por las partes en fecha: [Fecha]
Por el cliente Por la empresa suministradora
Fdo. D./ Dña [Nombre] Fdo. D./Dña [Nombre]
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 3
Contenido
Ficha del documento
Contenido
1 Introducción
1.1 Propósito
1.2 Alcance
1.3 Personal involucrado
1.4 Definiciones, acrónimos y abreviaturas
1.5 Referencias
1.6 Resumen
2 Descripción general
2.1 Perspectiva del producto
2.2 Funcionalidad del producto
2.3 Características de los usuarios
2.4 Restricciones
2.5 Suposiciones y dependencias
2.6 Evolución previsible del sistema
3 Requisitos específicos
3.1 Requisitos comunes de los interfaces
3.1.1 Interfaces de usuario3.1.2 Interfaces de hardware3.1.3 Interfaces de software3.1.4 Interfaces de comunicación
3.2 Requisitos funcionales3.2.1 Requisito funcional 13.2.2 Requisito funcional 23.2.3 Requisito funcional 3
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 4
3.2.4 Requisito funcional n
3.3 Requisitos no funcionales3.3.1 Requisitos de rendimiento3.3.2 Seguridad3.3.3 Fiabilidad3.3.4 Disponibilidad3.3.5 Mantenibilidad3.3.6 Portabilidad
3.4 Otros requisitos
4 Apéndices
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 5
1. Introducción
Este documento inicia principalmente detallando las actividades necesarias de información para realizar un control detallado de las notas de los estudiantes utilizando herramientas básicas de modelado y la propuesta que contribuirá a solventar la problemática de muchas instituciones educativas en nuestro país aportando también una buena alternativa de seguridad para el manejo de las notas.
Propósito
Recolectar información para la elaboración del sistema de control de nota. Diseñar el sistema para el control de notas que sea compatible con la mayoría de las
instituciones educativas del país. Realizar las pruebas correspondientes para detectar las fallas del sistema. Implantar el sistema de control de notas en tiempos cortos y de forma exitosa. Este proyecto se encuentra enfocado a las instituciones educativas de nivel secundario,
técnico, tecnólogo y superior.
Alcance
Proporcionar al complejo educativo los recursos necesarios de un sistema de información para llevar a cabo el registro de notas mas eficiente y oportuno y que se beneficien ambas partes , directivos y estudiantes.
Proporcionar los lineamientos necesarios a los usuarios del sistema a través de manuales bien elaborados, contribuyendo así, a un uso eficiente del sistema propuesto.
Personal involucrado
Nombre Compañia DesigSoftwareRol Desarrolladores de SoftwareCategoríaprofesional
Desarrolladores Web , Bases de datos
Responsabilidades Desarrollo del productoInformación de
contacto
DesigSoftware
Aprobación
Nombre SoftwareOnuUccRol Planeadores ProyectoCategoríaprofesional
Arquitectura de software, Calidad
Responsabilidades Presentar requerimientos y planeación de dicho proyecto,responsable de probar el Software, infraestructura para elsoftware
Información decontacto
SoftwareOnuUcc
Aprobación
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 6
Definiciones, acrónimos y abreviaturas
Sistema de información (SI) : es un conjunto de elementos orientados al tratamiento y administración de datos e información, organizados y listos para su uso posterior, generados para cubrir una necesidad u objetivo. Dichos elementos formarán parte de alguna de las siguientes categorías:
Personas. Datos. Actividades o técnicas de trabajo.
Red informática mundial: es un sistema de distribución de información basado en hipertexto o hipermedios enlazados y accesibles a través de Internet. Con un navegador web, un usuario visualiza sitios web compuestos de páginas web que pueden contener texto, imágenes, vídeos u otros contenidos multimedia, y navega a través de ellas usando hiperenlaces.
Institucion Educativa :Es un conjunto de personas y bienes promovida por las autoridades públicas o por particulares, cuya finalidad será prestar un año de educación preescolar y nueve grados de educación básica como mínimo y la media.
Referencias
Referencia Titulo Ruta Fecha AutorWeb Requerimiento Blog softwareoneucc
.wordpress.com
Feb/2013 GVP
Resumen
En este documento se encuentran registradas las características principales del proyectoa desarrollar, especificando el alcance que se desea lograr, la descripción general delproducto, requerimientos y restricciones del software, especificaciones requeridas dehardware para la implementación y desarrollo.
Se describen las interfaces con las cuales el usuario final deberá interactuar para el usoy control tanto de las aplicaciones implementadas como la información suministrada aellas para su consigna y desarrollo de actividades institucionales.
Descripción general
1. Perspectiva del producto
El producto en su esencia es enteramente independiente ya que él mismo proporciona lasplantillas estándar para la recolección de datos(notas), permite la gestión y control de la
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 7
información, los usuarios y sus permisos, también porporciona su propia interface para eluso y control del sistema, pero depende del sistema de autenticación de la institucióneducativa para el acceso de los usuarios.
2. Funcionalidad del producto
Diseño de Entrada
Pantalla de bienvenida Pantalla de control de usuario Pantalla de menu Pantalla de captura de datos Pantalla de ingreso de notas Pantallas de creación y modificación de datos Pantallas de borrado de datos Pantalla guardando datos
Diseño de Salida
Pantalla de Estudiantes Reporte de notas al director Reporte de notas al estudiante Enviar mail a los estudiantes del estado de notas
El desarrollo de esta herramienta puede ser realizado en java o php , motor de base dedatos postgress o mysql .
3. Características de los usuarios
Tipo de usuario Ing Sistemas ,o Ultimos semestreFormación Universitario , PostgradoHabilidades Experiencia en programacion , trabajo en equipoActividades
4. Restricciones
El desarrollo de esta aplicación debe manejarle bajo la arquitectura 3 capas. Deben utilizarse herramientas GPL tipo Java , Php motor de base de datos MySql ,
Prostgress entre otros. Solución tendrá escenarios de pruebas y producción. Se acoplara junto al proveedor los requerimientos necesarios para desarrollar el
software.
Descripción de aquellas limitaciones a tener en cuenta a la hora de diseñar y desarrollar elsistema, tales como el empleo de determinadas metodologías de desarrollo, lenguajes deprogramación, normas particulares, restricciones de hardware, de sistema operativo etc.
5. Suposiciones y dependencias
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 8
En dado caso que se cambiara el desarrollador del sotfware se veria afectado el mismo
Si es el caso que el enfoque del software cambie afectaria notablemente la planeaciondel mismo y logicamente el desarrollo
Descripción de aquellos factores que, si cambian, pueden afectar a los requisitos. Porejemplo una asunción puede ser que determinado sistema operativo está disponible para elhardware requerido. De hecho, si el sistema operativo no estuviera disponible, la SRSdebería modificarse.
6. Evolución previsible del sistema
Identificación de futuras mejoras al sistema, que podrán analizarse e implementarse en unfuturo.
Requisitos específicosEsta es la sección más extensa y más importante del documento.Debe contener una lista detallada y completa de los requisitos que debe cumplir el sistema adesarrollar. El nivel de detalle de los requisitos debe ser el suficiente para que el equipo dedesarrollo pueda diseñar un sistema que satisfaga los requisitos y los encargados de laspruebas puedan determinar si éstos se satisfacen.
Los requisitos se dispondrán en forma de listas numeradas para su identificación,seguimiento, trazabilidad y validación (ej. RF 10, RF 10.1, RF 10.2,...).
Para cada requisito debe completarse la siguiente tabla:
Número de requisitoNombre de requisitoTipo Requisito RestricciónFuente del requisitoPrioridad del requisito Alta/Esencial
Media/Deseado Baja/Opcional
y realizar la descripción del requisito
La distribución de los párrafos que forman este punto puede diferir del propuesto en estaplantilla, si las características del sistema aconsejan otra distribución para ofrecer mayorclaridad en la exposición.
7. Requisitos comunes de los interfaces
Descripción detallada de todas las entradas y salidas del sistema de software.
1. Interfaces de usuario
Describir los requisitos del interfaz de usuario para el producto. Esto puede estaren la forma de descripciones del texto o pantallas del interfaz. Por ejemploposiblemente el cliente ha especificado el estilo y los colores del producto.Describa exacto cómo el producto aparecerá a su usuario previsto.
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 9
2. Interfaces de hardware
Especificar las características lógicas para cada interfaz entre el producto y loscomponentes de hardware del sistema. Se incluirán características deconfiguración.
3. Interfaces de software
Indicar si hay que integrar el producto con otros productos de software.Para cada producto de software debe especificarse lo siguiente: Descripción del producto software utilizado Propósito del interfaz Definición del interfaz: contiendo y formato4. Interfaces de comunicación
Describir los requisitos del interfaces de comunicación si hay comunicaciones conotros sistemas y cuales son las protocolos de comunicación.
8. Requisitos funcionales:
RF01 El sistema de autenticar contra LDAP/Dominio. RF02 El sistema debe permitir agregar Jefes de programa. RF03 El sistema debe permitir agregar Profesores. RF04 El sistema debe permitir agregar Grupos de alumnos por materia. RF05 El sistema debe permitir Modificar Jefes de programa por
SuperAdmin. RF06 El sistema debe permitir Modificar Profesores por Superadmin/jefe de
programa. RF07 El sistema debe permitir Modificar alumnos. RF08 El sistema debe permitir ingresar una nueva Cargue de notas. RF09 El sistema debe permitir eliminar Cargue de notas. RF10 El sistema debe permitir Modificar las notas solo por el profesor. RF11 El sistema debe permitir Consultar notas por parte de
Alumno/profesor/jefe de programa. RF12 El sistema debe Notificar a los alumnos cuando las notas son
cargadas. RF13 El sistema debe Notificar a los jefes de programa cuando las notas
son cargadas. RF14 El sistema debe manejar aprobaciones por el jefe de programa para
que el profesor una vez publique las notas sean de consultables para elestudiante.
RF15 El sistema debe permitir reporte histórico de las materias cursadaspor estudiante.
RF16 El sistema debe Permitir la calificación del profesor por cadaestudiante.
RF17 El sistema debe permitir agregar comentarios del estudiante para elprofesor.
RF18 El sistema debe Calcular promedios por curso que sea visible para elestudiante/Jefe de programa.
RF19 El sistema debe permitir agregar comentarios sobre el promedio delcurso.
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 10
RF20 El sistema se debe integrar al sistema de autenticación de lainstitución.
9. Requisitos no funcionales1. Requisitos de rendimiento
Especificación de los requisitos relacionados con la carga que se espera tenga quesoportar el sistema. Por ejemplo, el número de terminales, el número esperado deusuarios simultáneamente conectados, número de transacciones por segundo quedeberá soportar el sistema, etc.Todos estos requisitos deben ser mesurables. Por ejemplo, indicando “el 95% delas transacciones deben realizarse en menos de 1 segundo”, en lugar de “losoperadores no deben esperar a que se complete la transacción”.
2. Seguridad
Los niveles de seguridad se deben de ajustar a las existentes en la E BusinessSuite de Intermex.Para prevenir errores, perdida, modificaciones no autorizadas o mal uso de la información en las aplicaciones, es necesario que existan controles diseñados e implementados en las aplicaciones para asegurar el correcto procesamiento de la información. A continuación se describe los estándares de seguridad a nivel de aplicación que se deben cubrir:
AutenticaciónEl software debe tener un método de autenticación basado en usuarios y contraseñas, los elementos que deberán de considerar para el control de accesos son: Sincronización de contraseñas, caducidad, cifrado, complejidad Etc.
AutorizaciónEl sistema debe contar con una validación de los privilegios de los usuarios para asegurar que los usuarios sólo pueden realizar las funciones y operaciones que tienen permitidas; Dicha administración en la utilización del software debe realizarse por medio de roles y privilegios previamente definidos.
Administración de UsuariosSe deben establecer procedimientos y mecanismos que ayuden en la administración/Gestión de los usuarios. Deben existir procedimientos documentados y funciones que maximicen la operación.
Cifrado de InformaciónLa comunicación entre los componentes del software (clientes, servidores, manejadores de base de datos, etc.), independientemente del tipo de arquitectura o del número de capas que estén definidas, debe realizarse por medio de protocolos de comunicación cifrados. Se deben utilizar algoritmos de cifrado robustos, conocidos, probados; por ejemplo: 3DES, AES, RSA, ElGamal, etc.El uso de la información debe poseer controles adecuados para
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 11
asegurar la protección de la misma. Los controles deben ser para trasmisión de información internamente y de forma externa también.
Validación de la InformaciónEstablecer un mecanismo de programación para validar que los datosque se están ingresando, procesando y saliendo de la aplicación sonválidos.La validación debe ser aplicada siempre que exista una interface deintercambio de información que pueda ser manipulable.Deberán de tenerse en consideración las siguientes validaciones:
Integridad de los datos Validación del dato en general (coherencia del dato) Validación de las reglas de negocio.
Administración de la ConfiguraciónDeben existir procedimientos documentados, autorizados e implantados de administración de cambios y liberaciones para que se asegure la implantación de todos los controles mencionados en este documento, en cualquier liberación, y mantenimiento relacionados al sistema.Debe existir una adecuada segregación de funciones o deberes para que los desarrolladores no puedan realizar liberaciones y para que el código sea probado y liberado adecuadamente, con el objetivo de evitar problemas de confidencialidad, integridad y disponibilidad de la información
ConfiguraciónLa solución de software debe estar dividida en capas de acuerdo a su funcionalidad y debe evaluarse la posibilidad de instalar servidores detrás de Firewalls y en zonas desmilitarizadas, siempre que la aplicación se vaya a exponer a redes públicas o de entidades externas.Es importante tomar en consideración la separación de servidores de presentación, de procesamiento y de bases de datos en diferentes servidores de acuerdo a la criticidad de la información.Se deben separar los servidores de desarrollo, pruebas y producción en diferentes servidores y ambientes.
BitácorasEl software debe generar los registros necesarios de uso y transaccionalidad, de acuerdo al nivel de confidencialidad, integridad y disponibilidad de la información que maneje el mismo.Por lo tanto, se debe realizar un requerimiento explícito de las bitácoras respecto a acceso al software, consulta y modificación de información sensible, transacciones críticas, alta y baja de usuarios, alta y cambios en privilegios de acceso, etc.
Manejo de SesionesEl software debe realizar un manejo adecuado de las sesiones, de manera que un usuario no pueda utilizar la aplicación sin pasar por los procesos de autenticación y autorización necesarios.
Descripción de requisitos del sofware
Especificación de requisitos de software
Rev.
Pág. 12
Para esto se deben programar los mecanismos necesarios para abrir y cerrar sesión por parte de los usuarios, así como cierres de sesión automáticos en caso de cierres excepcionales del sistema y de tiempo excedido de inactividad.
Cuentas InactivasLos responsables de los aplicativos y dueños de la información deberán asegurar que se tomen acciones oportunas y apropiadas con respecto a cambios de puesto y despidos, de tal manera que los controles internos y la seguridad no se vean perjudicados por estos eventos.Para el caso de renuncias y despidos, existen procedimientos para asegurar que el acceso a aplicaciones y sistemas; es revocando de manera oportuna una vez que el usuario ha abandonado su función a fin de minimizar el abuso o el sabotaje.
3. Fiabilidad
4. Disponibilidad
El software estará alojado en un hosting (preferiblemente en un servidor en EEUU) el cual estará disponible las 24/7 con tiempo activo de un 100% .
5. Mantenibilidad
Para el mantenimiento o actualizaciones los cambios se harán preferiblemente los domingos en las horas de la noche. De esta forma manejarlo de forma transparente para el usuario final , Los cambios o mantenimientos realizados se harán única y exclusivamente cuando se encuentren validados y/o comprobados . El usuario que debe hacer mantenimiento será un administrador de nuestra compañía .
6. Portabilidad
Los componentes del software son completamente transparentes ya que se utiliza todos los controles y referencias del Framework de Java . Al momento de su compilación podrá ser alojado en el panel de la pagina para que esta solución pueda ser vista desde cualquier sistema operativo haciendo funcional el interpretador que es un explorador de internet.
Apéndices
Pueden contener todo tipo de información relevante para la SRS pero que, propiamente, noforme parte de la SRS.
Descripción de requisitos del sofware