Download Docx - Trabajos de Grado de la facultad de Ingeniería de Sistemas

Document related concepts
no text concepts found
Transcript
2014
Especificación De
Requerimientos
ELABORADO POR:
Eric Velandia
Sebastián Vivas
VERSION APROBADA:
2.4
UNIVERSIDAD:
Pontificia Universidad Javeriana
Tabla de Contenido
Historial De Revisiones .............................................................................................. 2
Tabla de Ilustraciones............................................................................................... 4
1.
2.
3.
4.
Introducción........................................................................................................ 5
1.1
Propósito ....................................................................................................... 5
1.2
Alcance ........................................................................................................ 5
Descripción General.......................................................................................... 6
2.1
Perspectiva ................................................................................................... 6
2.2
Funciones del Producto ............................................................................. 7
2.3
Clases y Características del Usuario ........................................................ 7
2.4
Ambiente Operativo................................................................................... 7
2.5
Restricciones de Diseño y Desarrollo ....................................................... 7
Requerimientos de Interfaces Externas .......................................................... 9
3.1
Interfaces de Usuario .................................................................................. 9
3.2
Interfaces de Hardware ........................................................................... 10
3.3
Interfaces de Software ............................................................................. 10
3.4
Interfaces de Comunicación .................................................................. 11
Características del Sistema ............................................................................ 12
4.1 Metodología de Especificación ................................................................. 12
4.2 Metodología de Priorización ....................................................................... 13
4.3 Plantilla de definición de requerimientos y funcionalidades ................ 14
Anexo A: Glosario ............................................................................................... 15
Anexo B: Modelos De Análisis............................. Error! Bookmark not defined.
Referencias .............................................................................................................. 16
Pagina. 1
Historial De Revisiones
Nombre
Fecha
Cambio
Versión
Eric
Velandia, 2 de Agosto, 2014 Introducción,
1.0
Sebastián Vivas
Descripción
General
y
Plantilla
de
requerimientos
Eric
Velandia, 4 de Agosto, 2014 Correcciones
1.1
Sebastián Vivas
secciones 1, 2 e
Interfaces
externas
Eric
Velandia, 7 de Agosto, 2014 Correcciones
Sebastián Vivas
sección 3
1.2
Eric
Velandia, 9 de Agosto, 2014 Plantilla
de 1.3
Sebastián Vivas
requerimientos
Eric
Velandia, 13 de
Sebastián Vivas
2014
Agosto, Citas, Notas, Pie 1.4
de
página,
Correcciones
sugeridas.
Eric
Velandia, 13 de
Sebastián Vivas
2014
Agosto, Correcciones
Generales
Eric
Velandia, 15 de
Sebastián Vivas
2014
Agosto, Organización del 2.1
documento, pie
de
página,
referencias
Eric
Velandia, 16 de
Sebastián Vivas
2014
Agosto, Metodologías de 2.2
recolección.
Pagina. 2
2.0
Eric
Velandia, 17 de
Sebastián Vivas
2014
Agosto, Metodologías de 2.3
priorización.
Eric
Velandia, 3 de Noviembre
Sebastian Vivas
Pagina. 3
Correcciones
Finales
2.4
Tabla de Ilustraciones
Ilustración 1: Proceso de facturación de un tiquete .......................................... 6
Ilustración 2: Interfaces de usuario......................................................................... 9
Ilustración 3: Interfaces de Hardware.................................................................. 10
Ilustración 4: Especificación Ágil de Requerimientos........................................ 12
Ilustración 5: Metodología de priorización ......................................................... 13
Pagina. 4
1. Introducción
En el presente documento se definen y analizan los requisitos del sistema
“Aplicación Móvil Para La Transferencia Y Aprobación De Tiquetes De
Servicio Por Medio De Tecnología NFC” el cual será desarrollado por los
estudiantes de ingeniería de sistemas, Eric Velandia Colmenares y Sebastian
Vivas Ospina de la Pontificia Universidad Javeriana como trabajo de grado.
Para este documento se adopta la guía de requerimientos de software de
la IEEE (Estándar 830 -1993) [1]i.
1.1
Propósito
El propósito de este documento es definir el funcionamiento general y dar a
conocer las características más relevantes del proyecto “Aplicación Móvil
Para La Transferencia Y Aprobación De Tiquetes De Servicio 4 Por Medio De
Tecnología NFC”, se tendrán en cuenta características tanto funcionales
como no funcionales las cuales serán explicadas de manera detallada al
usuario final.
1.2
Alcance
El proyecto “Aplicación Móvil Para La Transferencia Y Aprobación De
Tiquetes De Servicio Por Medio De Tecnología NFC” se basa en la recepción
de tiquetes de servicios petroleros en la locación, por medio de la tecnología
de Comunicación de campo cercano para la respectiva revisión y
aprobación por parte del encargado en la locación (Company Man) 2 y el
ingeniero dueño del contrato (contract owner).
Pagina. 5
2. Descripción General
En esta sección se definen los aspectos generales del sistema. Abarcando
funciones generales del producto descripción del ambiente operativo 1 y
características que se tienen en cuenta del usuario final2.
2.1
Perspectiva
En los campos petroleros se manejan diferentes servicios como, lodos 3 ,
cementos 4 , herramientas en general entre otros, cada compañía de
servicios realiza una serie de trabajos en la locación y al final de cada
trabajo entregan un tiquete de servicio físico, el cual cuenta con una breve
descripción del trabajo y los ítems usados en dichas operaciones con sus
respectivos costos. Estos tiquetes son revisados por el Company Man y
previamente aprobados. Una vez el tiquete es aprobado en campo, es
cargado dentro de una base de datos 5 y posteriormente el tiquete es
enviado a las oficinas en Bogotá para una nueva revisión y aprobación por
parte del ingeniero a cargo del respectivo contrato. Finalmente el tiquete es
aprobado y facturado. Este proceso tarda varios días y consume muchos
recursos naturales como el uso innecesario de papel. Esta propuesta busca
digitalizar y agilizar este proceso mediante Tecnología móviles permitiendo
la transmisión mediante NFC, la aprobación por medio de dispositivos
móviles y su envió mediante los mismos. En el siguiente cuadro se explica el
proceso de aprobación actual:
Entrega del
tiquete
Aprobacion
en campo
Envio a
oficinas
Aprobacion
en oficinas
Facturacion
del servicio
ILUSTRACIÓN 1: PROCESO DE FACTURACIÓN DE UN TIQUETE
Ambiente operativo: conglomeración de sistema operativo e interfaz de usuario.
Usuario Final: Usuario para quien se construye el producto, quien usará el producto.
3 Lodos: el servicio de lodos contiene los productos químicos que conforman un barril de
fluido el cual va a ser usado para la perforación del pozo. Las principales características
del lodo es dar lubricidad, mantener la presión del hueco y ayudar a la limpieza.
4 Cementos: El servicio de cementos es usado para mantener la tubería en su sitio y
ayudar a que el hueco no se derrumbe.
5 Base de datos: Conjunto de datos almacenados en una maquina dentro de tablas.
1
2
Pagina. 6
2.2
Funciones del Producto
Las funciones generales del producto son listadas a continuación:
•
Transferencia de archivos por medio de NFC. 1
•
Aprobación de documentos mediante firmas digitales 6 por usuario.
•
Envió de documentos por medio de correo electrónico.
•
Revisión de documentos.
•
Generación de reportes para la carga de tiquetes a una base de
datos Oracle.
2.3
Clases y Características del Usuario
Existen tres tipos de usuarios los cuales se definen y detallan a continuación:
•
Account Manager: es el encargado de atender los diferentes
requerimientos de los usuarios y es quien entrega el tiquete del servicio
prestado en campo al company man3.
•
Company Man: es la persona encargada de la locación en donde se
están ejecutando los diferentes trabajos por parte de las compañías de
servicios y es la persona quien recibe el tiquete de la compañía de servicios.
•
Contract Owner: es el ingeniero encargado de un contrato de servicio
usado en campo, es la persona responsable de la aprobación final del
tiquete.
2.4
Ambiente Operativo
El software debe correr bajo el sistema operativo Android en dispositivos
móviles que cuenten con Tecnología NFC 1 para la transmisión de archivos.
2.5
Restricciones de Diseño y Desarrollo 7
Se debe hacer uso de los protocolos de intercambio de datos vía internet y
NFC 1. Respecto a la seguridad, se debe considerar el uso de sesiones para
limitar el acceso a usuarios no autorizados.
Firmas Digitales: mecanismo criptográfico que permite identificar a un individuo de
manera digital.
7 Restricciones de diseño y desarrollo: limitaciones con las que se cuentan a causa de la
arquitectura y diseño del producto.
6
Pagina. 7
El cliente no ha especificado ninguna otra limitante en diseño o desarrollo, y
algunos de las características las dejó al criterio de los desarrolladores.
Pagina. 8
3. Requerimientos de Interfaces Externas
En esta sección se trataran los requisitos del sistema 8 de una manera
detallada, haciendo énfasis en la cada una de las interfaces del sistema y
las funcionalidades del mismo.
3.1
Interfaces de Usuario9
Teclado
SmartPhone
Pantalla
ILUSTRACIÓN 2: INTERFACES DE USUARIO
✓ Smartphone: Es el hardware principal en donde se ejecutará el sistema
y cuenta con varios componentes necesarios para el funcionamiento
óptimo del sistema.
o Pantalla: mediante este dispositivo, el usuario podrá visualizar los
datos y demás resultados del sistema, además gracias a la
Requisitos del sistema: necesidad que debe ser satisfecha por el producto para cumplir
con todas sus funcionalidades.
9 Interfaces de usuario: superficies con las que el usuario final debe interactuar.
8
Pagina. 9
interfaz gráfica de la aplicación el usuario podrá desarrollar
diferentes tareas de selección y visualización.
o Teclado: por medio de este dispositivo el usuario podrá
introducir algunos datos requeridos por el sistema.
3.2
Interfaces de Hardware
NFC
Chip
ILUSTRACIÓN 3: INTERFACES DE HARDWARE

3.3
Chip NFC: el sistema necesita de un chip NFC 1, el cual viene integrado
al dispositivo móvil para la transferencia de datos entre dispositivos
Smartphone. Este dispositivo es fundamental para el funcionamiento
del sistema ya que por medio de este chip se realizaran diferentes
tareas.
Interfaces de Software
Las interfaces de software requeridas por el sistema son:
o El sistema operativo Android 10 versión 4.4 Kitkat, sobre el cual se
ejecutara el aplicativo. Para evitar problemas de compatibilidad en
los dispositivos en los cuales se ejecutaran las pruebas.[2]ii
Android: sistema operativo usado por la compañía google en gran cantidad de
dispositivos móviles.
10
Pagina. 10
o Dalvik Virtual Machine 11 , la cual será la encargada de traducir el
lenguaje de alto nivel.
3.4
Interfaces de Comunicación
o Las interfaces de comunicación con las cuales interactuará el sistema
son:
o El protocolo de comunicación ISO/IEC 14443 el cual es un estándar
para tarjetas de proximidad. [3]iii Ya que es el estándar oficial para
NFC 1 en dispositivos móviles.
o E-mail para la comunicación entre usuarios.
Virtual Machine: máquina virtual encargada de convertir los comandos del usuario en
comandos de máquina.
11
Pagina. 11
4. Características del Sistema
En esta sección trabajaremos en la plantilla de requerimientos en donde se
detallan cada una de las funcionalidades del sistema y su asociación con
los casos de uso.
4.1 Metodología de Especificación
Agile Requirements 12 de SCRUM 13 es la metodología aplicada para la
especificación de requerimientos.iv La especificación de requerimientos por
medio de SCRUM es una metodología netamente comunicativa donde se
plantea un documento de back log en el cual se definen las diferentes
funcionalidades y requerimientos fundamentales del producto que desea el
stakeholder 9v . Una vez se reúnen estas funcionalidades del producto se
inicia a la fase de priorización. [4]vi vii A continuacion la ilustracion 4 recopila
el detalle de la construccion del product back log:
Priorización
Recopilación
Categorización
Product Backlog
ILUSTRACIÓN 4: ESPECIFICACIÓN ÁGIL DE REQUERIMIENTOS
Agile Manifiesto: Es una corriente moderna de desarrollo ágil de software que se rige los
siguientes supuestos:
o Individuos e interacciones sobre procesos y herramientas
o Software funcionando sobre documentación extensiva
o Colaboración con el cliente sobre negociación contractual
o Respuesta ante el cambio sobre seguir un plan
13 SCRUM: es un modelo de planeación, desarrollo e implementación de software basado
en la el Agile Manifiesto.
12
Pagina. 12
4.2 Metodología de Priorización
La priorización de los requerimientos es fundamental para Scrum, por tanto
se definen dos (2) evaluadores en el equipo quienes una vez se reúnan los
requerimientos del producto, son los encargados de asignar un puntaje de
1 a 10 a cada requerimiento dependiendo de su importancia para el
producto, una vez puntuados todos los requerimientos se procede a
categorizar los requerimientos en cinco (5) categorías del 1 al 5 donde 1 es
la categoría de los requerimientos no tan importantes y cinco la más
importante. [5] viii
Puntaje
Evaluador
1
Puntaje
Evaluador
2
ILUSTRACIÓN 5: METODOLOGÍA DE PRIORIZACIÓN
Pagina. 13
Categorizacion
4.3 Plantilla de definición de requerimientos y funcionalidades
Para una consulta detallada de los requisitos y funcionalidades del sistema
consulte la siguiente plantilla, allí encontrará una lista de requerimientos con
su respectiva categorización y priorización además de una explicación de
los casos de uso. Esta priorización se basa en el product back log de scrum.
En donde los stake holders asignan un puntaje a cada requerimiento y ese
puntaje después es organizado en diferentes categoríasix.
Ver Plantilla de Requerimientos
Pagina. 14
Anexo A: Glosario
NFC (Near Field Communication): es una tecnología de comunicación
inalámbrica, de corto alcance y alta frecuencia que permite el intercambio
de datos entre dispositivos.
1. Locación: Área geográfica en donde se realizan operaciones de
construcción, perforación o completamiento de pozos petroleros.
2. Company Man: Gerente de operaciones del taladro, es aquella
persona que coordina y dirige al equipo en locación encargado de
la perforación de un pozo petrolero.
3. Proveedor: persona encargada de representar a una compañía de
servicios, usuario quien realiza la interacción con los ingenieros y la
gente en campo.
4. Tiquete de servicio: factura que recibe la compañía por un servicio
utilizado en campo.
5. Elemento de gasto: código con el cual se identifica a un servicio.
6. Contract Owner: Ingeniero que administra un contrato de servicios.
7. Campo: conjunto de locaciones.
8. Account Manager: Persona de la empresa de servicio encargada de
satisfacer las necesidades del contract owner.
9. Stakeholder: es un término muy común en los proyectos de software
usado para agrupar el conjunto de trabajadores, organizaciones
sociales, accionistas, proveedores y demás interesados en el
proyecto.
Pagina. 15
Referencias
830-1993 - IEEE Recommended Practice for Software Requirements
Specifications.
i
ii
Android Platform, Más información en www.android.com
ISO/IEC 14443:2008 Identification Cards, Contactless integrated circuit
cards, Proximity cards
iii
A Semantic and Collaborative Platform for Agile Requirements Evolution,
Nirav Ajmeri, Riddhima Sejpal, Smita Ghaisas, Tata Research, Design and
Development Centre (TRDDC).
v A Guide to Agile Requirements Documentation, Sherif Mansour,
Confluence, 2013.
vi Agile Manifesto disponible en: www.agilemanifesto.org/iso/es/
iv
Agile Requirements Modeling, Scott W Amber, Disponible en:
http://www.agilemodeling.com/
viii Agile Requirements Definition and Management, Scrum Alliance,
disponible en: www.scrumalliance.org
vii
NORPLAN: Non-functional Requirements Planning for agile processes,
Farid, W.M. Mitropoulos, F.J. IEEE, 2013.
ix
Pagina. 16