Wednesday, August 21, 2013

Avance del Proyecto Modulo II. -Especificación de Requerimientos


Especificación de Requerimientos

La especificación de requerimientos describe en forma detallada cada uno de los requerimientos del usuario o promotor(Cliente), así como las necesidades del sistema que no se describen en los casos de uso, tales como:
  • Precisiones legales y de reglamentación, incluyendo las normas de aplicación.
  • Los atributos de calidad indispensables para la construcción del sistema, incluyendo utilidad, confiabilidad, desempeño y requisitos de soporte.
  • Otras necesidades, tales como: sistemas operativos y ambientes, requerimientos de compatibilidad y limitaciones del diseño.



Los objetivos particulares y específicos identificados en este proyecto son:



2.1  Reporte de Investigación Preliminar


En un principio el Inventario de IIH se anotaba en una  libreta, luego se pasaron a anotar en archivos EXCEL, el cual fue creciendo, haciendo más difícil las búsquedas y la generación de filtros para poder localizar un bien en específico. Esto complica la generación de reportes ya hay que hacerlos a mano y continuamente hay errores, los cuales no nos han permitido contar con información   fiable.

Por otra parte el equipo de cómputo, en el área de soporte técnico, es muy común que ocurran incidencias del mimo tipo ,  teniendo un registro del equipo   con las notas de compra  y no cuentan con un registro de proveedores ni garantía de todo el equipo de cómputo , lo cual complica la búsqueda , para localizar a un proveedor , en caso de fallas del equipo, así como  tener a ciencia cierta si dicho equipo aun entra en garantía con los proveedores, o bien si  el equipo de soporte técnico , resolvió un problema en particular de  un  modelo en específico de equipo de cómputo, no se tiene ningún registro, para que otra persona  que no sabe cómo hacerlo , pueda tomar esas notas y resolver el problema.


·         El proceso  de inventario se  realiza manual, es tardado ocasiona muchos problemas y complicaciones para poder localizar los bienes.
·         No se pueden encontrar de manera rápida filtros por categorías de los bienes
·         No se cuenta con reportes del inventario.
·         La información no es oportuna, ya que una consulta en excel  tarada  demasiado
·         No sabemos el estado de inventario.
·         Ocurren muchos errores en las actualizaciones.

Problemática a resolver
·         Agilizar el inventario de nuevos bienes
·         Obtención de información confiable, libre de errores
·         Localización de los bines de manera  rápida.
·         Generación de reportes para auditorias y  usos internos
·         Solución rápida de problemas de equipo de computo
·         Lo cotización de proveedores y garantías de manera rápida
·         Realización de búsquedas con parámetros en específicos
·         Ordenamiento  y clasificación de los bienes de los bienes
·         Fácil análisis de necesidades de los bienes que requiera  IIH.
  • Generación de estadísticas

2.2  Visión

  • Realizar  de manera rápida y eficiente el  inventario del IIH.
  • Realizar reportes del inventario
  • Localizar rápidamente los bienes del  IIH
  • Agilizar las  bajas del inventario, así como las modificaciones.
  • Tener un registro histórico de los bienes
  • Tener reportes de incidencias de equipos, para  mejorar el soporte técnico.
  • Tener reportes de incidencias.
  • Realizar búsquedas especializadas del inventario.


Se realizara  un modulo   en internet que muestre los productos,  el cliente los pueda seleccionar y los compre con tarjeta de  crédito y/o debito ; asimismo  necesitamos un software de escritorio parara la administración de los usuarios, inventario y la generación de reportes, así como la a venta de productos en  sitio(punto de venta).

3.1  Actores del Sistema

Actor
Cargo / Actividades
Descripción
Administrador
·         Secretario Administrativo
·         Coordinador de computo
El administrador  es la persona que tendrá el control total del sistema, es decir, que podrá realizar modificaciones al mismo, dependiendo de las necesidades del usuario; como dar permisos de acceso y modificación, y consulta
Capturista de datos.
·         Secretaria del Administración
·         Equipo de Soporte técnico
Los capturitas son las personas encargadas de editar y  consultar información dentro del sistema así como obtener reportes del mismo.  Solo puede ser personal autorizado por el administrador del sistema
Consultas.
·         Personal de Administración
·         Personal del Departamento de Computo
El personal de consultas solo es personal autorizado por el administrador y el será quien permita si el usuario podrá o no visualizar algún tipo de información del sistema.
Consulta del bien

3.2  Requisitos funcionales

No.
Descripción
Observaciones


1.      
Altas, bajas (lógicas) o modificaciones de bienes
El usuario seleccionara  el  menú de alta de un bien y registrara los siguientes datos:
·         Id
·         No_economico
·         Inventario_unam
·         categoría: ej. Teclado, mouse, monitor.
·         marca: ej. Dell, HP.
·         modelo
·         serie: ej. CN-0DJ415-71616-81S-0PDT
·         descripción
·         alta: es una fecha, date
·         origen: ej. Proyecto ó Presupuesto
·         garantia: en años, por ejemplo 3 años
·         orden de compra
·         fecha_baja
·         motivobaja
·         comentario
·         estado:ej, Activo ó Inactivo, nuevo, baja, pendiente de baja
·         verificado: boolean(si/no)
·         hubicacion
·         responsable
·         Movimientos

El usuario puede seleccionar el menú actualización de los bienes y una vez seleccionado alguno le aparecerán los siguientes datos para  modificar:
·         categoría: ej. Teclado, mouse, monitor.
·         marca: ej. Dell, HP.
·         modelo
·         descripción
·         alta: es una fecha, date
·         origen: ej. Proyecto ó Presupuesto
·         garantia: en años, por ejemplo 3 años
·         orden de compra
·         fecha_baja:fecha de baja ,fecha date
·         motivobaja
·         comentario
·         estado:ej, Activo ó Inactivo, nuevo
·         verificado: boolean(si/no)
·         hubicacion
·         responsable
·         movimientos
El usuario selecciona el menú baja y selecciona un articulo, una vez seleccionado le aparecerá en pantalla los siguientes campos:
·         Id
·         No_economico
·         Inventario_unam
·         categoría: ej. Teclado, mouse, monitor.
·         marca: ej. Dell, HP.
·         modelo
·         serie: ej. CN-0DJ415-71616-81S-0PDT
El usuario deberá seleccionar el estado del bien en el campo:
  • Estado
Los valores que puede tomar el campo  Estado son:
  • Activo (se vende actualmente)
  • Inactivo (el articulo esta dado de baja).
  • Nuevo(el articulo de no mas de 6 meses ).
  • Pendiente de baja (estado pendiente).


2.
Consulta de bienes

















                   
El usuario  entra  a la sección de consulta de bines y puede  realizar  búsquedas a través de los siguientes rubros:

·         No_economico
·         Inventario_unam
·         No_serie
·         Marca
·         Categoría
·         Hubicacion
·         personal

Para los campos de  Marca, categoría, ubicación y personal, se realizaran las búsquedas con campos auto completables, buscando  a través de un patrón dentro del campo en cuestión.
La búsqueda no tomara  como diferentes, mayúsculas y minúsculas.
En caso de existir letras con acentos las búsqueda  las impetrara como si no hubiera acentos, ejemplo: Plácido lo cambiara  a Placido. De esta forma ambos registros aparecerán en la búsqueda.

Al obtener  resultados,  se mostraran los siguientes campos:
·         No_economico
·         Inventario_unam
·         No_serie
·         Marca
·         Categoría
·         Hubicacion
·         Personal
·         Se  agregara una pestaña de ver para ver más de talles acerca de bien

Si la búsqueda no arroja resultados, mostraremos un mensaje al usuario informándole que no se encontraron coincidencias con el patrón de busqueda.

3.
Movimiento de bienes.
El usuario consulta artículos a fines a su criterio. Seleccionara un bien .
Solo el usuario administrador podrá  hacer movimientos de un bien .
 El usuario puede seleccionar más de un bien si  lo desea y asignar una ubicación y un responsable pertenecido y que usuario fue el que realizo dicho movimiento del bien.
Se debe de contar con un histórico de movimientos, de donde se ha encontrado el  bien y quien realizo dicho movimiento, en caso que el administrador de computo haga dicho movimiento,  se debe de enviar un  estatus de los bienes al administrador secretario administrativo , para que valide o confirme dichos movimientos
4.
Salidas de vienes fuera del instituto
 En esta parte se especificará  si un bien salió o se encuentra fuera del instituto, en este se especificara:
  • Cuando salió
  • Por cuanto tiempo
  • Fecha de entrega
  • Fecha de entrega acordada
  • Quien autorizo la salida
  • Motivo

5.
Alta, baja y modificación de usuarios
El usuario administrador , es el único que podrá realizar las altas bajas y modificaciones a nuevos  usuarios al sistema, delegándoles ciertos privilegios dentro del  mismo
El administrador, seleccionara el menú de altas de usuario y  agregará aun formulario los datos del usuario , como:
  • Nombres
  • Apellidos
  • Usuario
  • Contraseña
  • Tipo de usuario

En caso de desear editar algún usuario, realizara una búsqueda de usuario en base a nombre de usuario o usuario, una ves encontrado este , podrá editar:
  • Nombres
  • Apellidos
  • Usuario
  • Contraseña
  • Tipo de usuario
Si bien desea eliminar usuarios, podrá hacer la misma búsqueda q en el campo anterior y eliminar si lo desea a dicho usuario.

6.
Generación de reportes
El  usuario administrador  podrá generar reporte de los bienes donde podrá generar reportes como:
  • Equipo activo por área.
    • Área
    • Ubicación
    • Responsable
    • Categoría
    • Marca
    • Modelo
    • Descripción
    • Serie
    • Inventario unam
    • estado

  • Equipo baja pendiente
    •  
    • Id
    • No_inventario
    • Área
    • Ubicación
    • Responsable
    • Categoría
    • Motivo
    • Descripción
    • Serie
    • Inventario unam

  • Equipo por responsable
    • Área
    • Ubicación
    • Responsable
    • Categoría
    • Marca
    • Modelo
    • Descripción
    • Serie
    • Inventario unam
    • estado

  • Equipo por responsable sin verificar
    • Área
    • Ubicación
    • Responsable
    • Categoría
    • Marca
    • Modelo
    • Descripción
    • Serie
    • Inventario unam
    • estado

  • Consulta mostrando:
    • Área
    • Ubicación
    • Responsable
    • Categoría
    • Marca
    • Modelo
    • Descripción
    • Serie
    • Inventario unam


7.
Login
El usuario  entra a la pantalla de inicio de escritorio  y aparece un formulario con los campos:
  • Login(usuario)
  • Password(contraseña)
  • El usuario podrá  realizar las tareas de acuerdo a los permisos que tenga establecidos(ver anexo B privilegios)
8.
Impresión de documentos
El u usuario selecciona  del  apartado de impresión para el documento especificado. Le aparecerá una  ventana del sistema  operativo con las opciones de impresión de los documentos  o reportes que dece generar

3.3  Requisitos no funcionales

·       El sistema realizara las transacciones de manera segura, mediante el uso de certificados digitales haciendo uso de HTTS(Protocolo Seguro de transferencia de Hipertexto) utiliza un cifrado basado en SSL(Protocolo de Capa de Conexión Segura)/TLS(Seguridad de la Capa de Transporte) para crear un canal cifrado.
·         El sistema se desarrollara en un lenguaje orientado a objetos que permite generar contenido dinámico para web, en forma de documentos HTML,XML o de otro tipo.

4.1  Requerimiento de utilidad

·         Agilizar el inventario de nuevos bienes
·         Obtención de información confiable, libre de errores
·         Localización de los bines de manera  rápida.
·         Generación de reportes para auditorias y  usos internos
·         Solución rápida de problemas de equipo de computo
·         Lo cotización de proveedores y garantías de manera rápida
·         Realización de búsquedas con parámetros en específicos
·         Ordenamiento  y clasificación de los bienes de los bienes
·         Fácil análisis de necesidades de los bienes que requiera  IIH.
  • Generación de estadísticas

5.1  Disponibilidad de la aplicación

·         El sistema debe mantenerse disponible al 100% para garantizar la integridad de la información, así como la operación diaria. El sistema debe de estar disponible los 7X24X365.

6.1  Requerimiento de Desempeño

Debido al volumen de solicitudes que se presentan en la operación, el tiempo de respuesta por transacción no debe exceder de 10 segundos por transacción y esta respuesta debe estar disponible durante el horario de atención  de servicio de 8am a 8pm.

·         Requeriremos de un servidor dedicado, con sistema operativo tipo Linux con recomendando las siguientes características físicas como mínimo:
o    Que cuente con un procesador que corra a 2 GHz
o    2GB de memoria RAM
o    Con un disco duro de 500 Gb
o    Cuente con lector de CD o DVD
·         Herramientas que se requerirán en el servidor que aloje el sitio:
o    Servidor web Apache-tomcat
o    Creación de certificados para realizar conexiones seguras HTTPS con  Open-SSL.
o    Debe de contar con java(JDK)
·         Se recomienda que el sistema manejador de bases de datos se encuentre fuera del servidor de aplicaciones web y que se use PostgresSQL.
·         También se recomienda que se cuente con un servidor mirror en caso de que ocurra cualquier tipo de contingencia y contar con un servidor alternativo.

6.2  Rendimiento

Con base en el tiempo de respuesta, el rendimiento que debe presentar el sistema es de 6 transacciones por un minuto.

Los requerimientos de seguridad con los que debe contar la aplicación son:
·         Para ingresar al sistema en sitio, el/la usuario/a interno/a deberá contar con clave de acceso y contraseña, los cuales serán validados por el administrador del mismo.
·         La información de contraseñas del sistema permanecerá cifrada en base de datos.
·         No se puede navegar en la aplicación en sitio sin haber sido firmada por la página de acceso.
·         Cada usuario/a es propietario/a de su información y visibilidad sobre el sistema.
·         Manejo de sesiones.

·         La lógica del negocio la manejaremos a través de procedimientos almacenados(es algo nuevo, tal vez no se mucho de ello, pero creo que nos ayudaría bastante, para la seguridad del sistema). Esto proporciona un entorno seguro y consistente, y los procedimientos pueden asegurar que cada operación se loguea apropiadamente. En tal entorno, las aplicaciones y los usuarios no obtendrían ningún acceso directo a las tablas de la base de datos, sólo pueden ejecutar algunos procedimientos almacenados. Además de hacer mucho más ligero el sitio, pues todo se ejecuta directamente en el manejador de Bases de Datos.

·         Se realizaran las conexiones seguras, mediante el protocolo HTTPS(Protocolo Seguro de Transferencia de Hipertexto), utiliza un cifrado basado en SSL/TLS para crear un canal cifrado (cuyo nivel de cifrado depende del servidor remoto y del navegador utilizado por el cliente) más apropiado para el tráfico de información sensible que el protocolo HTTP. De este modo se consigue que la información sensible (usuario y claves de paso normalmente) no pueda ser usada por un atacante que haya conseguido interceptar la transferencia de datos de la conexión, ya que lo único que obtendrá será un flujo de datos cifrados que le resultará imposible de descifrar.

·         Simplificar la administración del sistema centralizando la misma en el servidor.
·         La base de datos tendrá su propio espacio en el servidor con respaldos periódicos.

La aplicación deberá considerar los siguientes puntos:
·         No se deberá contener lógica de negocio en la capa de presentación (Internas de usuario).
·         La capa de negocio deberá de contener únicamente servicios que atiendan peticiones de negocio, sin entrar en complicaciones de validación de datos en pantalla.
·         El modelo de datos será únicamente repositorio de datos, no se puede integrar funcionalidad negocio ni procesos.


Se elaborará un manual de usuario/a para el manejo de la aplicación, el cual estará en línea dentro del propio sistema.


Scanner  de código de barras
Certificado seguro ssl para https con VerySing
Servicio para transacción de tarjetas de crédito o  debito

12.1Interfases de usuario

La interfaces de  usuario están predeterminadas al manual de identidad de sitios web institucionales por DGTIC:
Las interfases  del modulo online de usuario están predeterminadas al manual de identidad de la empresa X, podrán ser visualizadas por Internet Explorer 7.0 en adelante, crome 4 , firefox 6 en adelante
.
No aplica
No aplica


Entregable
Formato
REQUERIDO
IMPRESO
Inicio
Inicio del proyecto
 Inicio del proyecto
SI
SI
Alcance del proyecto
Alcance del proyecto
SI
SI

Entregable
Formato
REQUERIDO
IMPRESO
Elaboración
Especificación de requerimientos
Especificación de requerimientos
SI
SI
Casos de uso
Casos de uso
SI
SI
Análisis del sistema
Diagrama de Casos de uso
Dependerá del Diagrama
SI
NO
Diagrama entidad-relación
Diagrama entidad-relación
SI
SI
Diccionario de datos
Diccionario de datos
SI
SI
Protocolo de aceptación
Protocolo de Aceptación
SI
NO

Entregable
Formato
REQUERIDO
IMPRESO
Construcción
Código fuente
Código fuente
SI
NO
Protocolo de aceptación producción
Protocolo de aceptación producción
SI
NO

Entregable
Formato
REQUERIDO
IMPRESO
Transición
Manual de Usuario
Manual de Usuario
SI
SI
Capacitación del usuario final
Capacitación del usuario
SI
SI
Presentación ejecutiva del sistema
Presentación ejecutiva.ppt
SI
NO
Liberación a producción
Liberación a producción
SI
SI
Asistencia a Capacitación
Asistencia a Capacitación
SI
SI
1.     Que los requerimientos funcionales, proceso de negocio y flujos de la información estén reflejados en PIXUP
2.     Que sea entregado en tiempo y forma de acuerdo a las características acordadas.

3.     Que se encuentre funcionando en su totalidad.

2 comments:

  1. Hola Claudia Nelly
    He leído la información relativa a tu proyecto de inventarios para el IIH, y tienes mucha información de los requerimientos del sistema que quieres desarrollar.
    En el módulo 3 Java para aplicaciones de Escritorio, debes desarrollar los puntos que se encuentran publicados en el http://calypso.mascarones.unam.mx/moodle en el documento avance proyecto.pdf en http://calypso.mascarones.unam.mx/moodle/pluginfile.php/152/mod_resource/content/2/modulo3_E2.pdf
    Los puntos que se describen en ese documento son los siguientes:

    1. Utilizará colecciones y clases genéricas del paquete java.util para hacer comparaciones, ordenaciones y búsqueda de los objetos que maneja en su proyecto.

    TU PROYECTO TIENE BUSQUEDAS DE LOS BIENES A INVENTARIAR Y TIENE MUCHOS TIPOS DE USUARIOS. EN ESTOS CASOS PUEDES USAR LAS CLASES DE COLECIONES PARA BUSQUEDA, ORDENACIONES Y BUSQUEDAS

    2. Su aplicación deberá manejar hilos, para hacerla más atractiva, por ejemplo un banner que despliegue información reciente, con estadísticas, graficos, etc. Además deberá incluir un reloj ya sea analógico o digital para la GUI del sistema.

    TE RECOMIENDO QUE USES HILOS, YA SEA PARA CREAR UN BANNER DE NOTIFICACIÓN A LOS USUARIOS DE MESAJES DEL ADMINISTRADOR DEL SISTEMA A TODOS LOS QUE ESTEN USANDO EL SISTEMA O PONER UN RELOJ DIGITAL EN LA PANTALLA DE SESION DEL USUARIO PARA QUE SEPA CUANTO TIEMPO HA ESTADO CONECTADO AL SISTEMA

    3. Utilizará colecciones y clases genéricas para hacer comparaciones, ordenaciones y búsquedas de los objetos que maneja su proyecto.
    AQUÍ TE RECOMIENDO USAR MUCHOS CATALOGOS Y BUSQUEDAS POR TREEMAP Y LINKEDLIST COMO LO VIMOS EN LA CLASE DE GENERICOS. EL CODIGO ESTA EN LA PLATAFORMA MOODLE


    4. utilizará las clases del paquete javax.swing para crear un GUI con menús y ventanas, y cuadros de dialogo para administrar los módulos de su sistema, el cual deberá incluir:


    a. Altas, bajas y cambios de materiales y usuarios, según corresponda su sistema.
    b. Registrar cada cambio que se realicen los usuarios en su sistema.
    c. Todas las altas, bajas y cambios se guardarán en archivos usando las clases e interfaces del paquete java.io
    d. Se recomienda usar objetos de la clase javax.swing.JTable para mostrar y/o generar reportes de la información contenida en su sistema.

    CIERTAMENTE TU SISTEMA DEBERA INCLUIR TODOS ESTOS ELEMENTOS. TAL VEZ HAGAS LA MAYORIA PARA LA WEB, PERO TAMBIÉN PUEDES HACER UNA PARTE DEL SISTEMA COMO UNA GUI CON ABC ( POR EJEMPLO LA PARTE DEDICADA A LA ADMINISTRACIÓN DE USUARIOS DEL SISTEMA )

    4. Su aplicación deberá manejar un programa con chat RMI para interacturar con sus usuarios cuando estos tengan dudas sobre la disposición del contenido o manejo del sistema.

    TE DOY LA IDEA DE HACER UN METODO REMOTO QUE PUEDA GENERAR UN REPORTE ( YA SEA GRAFICA DE ESTADISTICAS, O UN DOCUMENTO PDF (VE CONOCIENDO EL ITEXT EN http://itextpdf.com/ ) ASI DISTRIBUYES LA CARGA DE TU SERVIDOR. PARA ACREDITAR ESTE PUNTO HAS ALGO SENCILLO AL PRINCIPIO Y A LO LARGO DE TU PROYECTO LO VAS IR AFINANDO

    6. Entregará en un documento los diagramas de clases en UML de su proyecto donde se visualice su aplicación de escritorio.

    DE TUS CASOS DE USO DEBEN SALIR LAS CLASES DE TU SISTEMA. NECESITO QUE PONGAS ALGUNAS CLASES ASI COMO LO DESCRIBES EN TUS CASOS DE USO, YA QUE DE AHÍ VAN A INSTANCIARSE LOS OBJETOS DE TU SISTEMA

    7. Entregará también un pequeño manual de usuario de la Interface Grafica de Usuario y proporcionará un ejemplo de aplicación de dicha interface, donde se vea que cumple con los puntos antes mencionados.

    PEQUEÑO MANUAL DONDE SE VEAN LAS PANTALLAS DE TU GUI ( DE UNAS 6 A 10 HOJAS MAXIMO ) SI NO TIENES AUN LAS GUIS PUEDES DISEÑARLAS CON EL WINDOWSBUILDER Y PREVISUALIZARLAS , LAS CAPTURAS Y LAS PONES EN TU MANUAL.

    8. Deberá publicar su avance del proyecto en su blog, el cual será evaluado por el profesor y por el comité académico del diplomado.

    TIENES HASTA DOS SEMANAS PARA PUBLICAR ESTO, YA QUE NO HAY QUE TRASLAPARSE CON EL MODULO SIGUIENTE.

    SALUDOS
    OSCAR ….

    ReplyDelete
  2. Hola Claudia
    Tu proyecto cumplio con casi todos los puntos que se socitaron en el avance del moudulo 3. Te recomiendo que uses clases genéricas personalizadas. No las que ya están para usar sino que tu hagas tus propias clases con genéricos.
    También te recomiendo que uses los sockets y serversockets asi como las RMI.
    Otra cosa que te recomiendo uses son las tablas con diversos tipos de campos que no todos sean String y otra cosa que te recomiendo es que uses el programa que vimos que copia imágenes en JFileChooser y con la clase Copy.java . Creo que te va a ser útil en tu proyecto.
    Te felicito y sigue asi.
    saludos

    ReplyDelete