Documentos de Académico
Documentos de Profesional
Documentos de Cultura
REQUERIMIENTOS
PARTE I: EMPRESA 6
PROPÓSITO 6
DESCRIPCIÓN DE LA EMPRESA 6
MISIÓN 8
VISIÓN 8
OBJETIVOS EMPRESARIALES 8
APROBACIONES 13
RESUMEN EJECUTIVO 14
1 ALCANCE 14
Personal involucrado 15
Resumen 17
1.1.5 Restricciones 22
1.2.3.2 Seguridad 25
1.2.3.3 Fiabilidad 25
1.2.3.4 Disponibilidad 25
1.2.3.5 Mantenibilidad 25
1.2.3.6 Portabilidad 26
2.2.7 Premisas: 36
2.3.3.1 SONARQUBE: 38
2.3.3.2 PHPUnit: 39
5 Benchmarking: 64
3 Entregables de pruebas 65
CONCLUSIONES Y RECOMENDACIONES 65
BIBLIOGRAFÍA: 65
1.3 Referencia 65
ANEXOS SUGERIDOS: 66
3 JMeter 72
Historial de versiones
Fecha Versión Autores Organización Descripción
16/04/21 SRA001 Grupo 05 Sistema de Registro Especificación de Requisitos
de Asistencia. del Software ERS
09/05/21 SRA002 Grupo 05 Sistema de Registro Plan de pruebas de SRA con
de Asistencia. SonarQube - SonarLint
16/05/21 SRA003 Grupo 05 Sistema de Registro Plan de pruebas de SRA con
de Asistencia. PHPUnit - PhpLint
PARTE I: EMPRESA
PROPÓSITO
La presente documentación tiene como finalidad delimitar las especificaciones funcionales
y no funcionales del sistema web para el control de asistencias el cual permitirá gestionar la
información detallada de cada uno de los colaboradores mediante el registro de ingresos, de
los mismos. Permitiendo a los supervisores y RRHH utilizar dicha data para la correcta
toma de decisiones en cuanto a las remuneraciones.
DESCRIPCIÓN DE LA EMPRESA
Dynamicall es un Contact Center multicanal ubicado en Perú, cuenta con más de 10 años de
experiencia. Se especializa en outsourcing de ventas, retenciones, servicios de back office y
de atención al cliente, con una estrategia completa que les permita amoldarse a los procesos
de sus clientes.
Dynamicall cuenta con un rubro de negocio orientado B2B, buscan ser socios estratégicos
para ayudar a reducir costos y mejorar resultados, a continuación, un detalle de los
servicios.
● Soporte Operacional
BPO ● Atención de Reclamos.
● Courier
● Delivery Técnico
● Speech Analytics
INTELIGENCI ● ChatBot
A ARTIFICIAL ● IVR inteligentes
VISIÓN
Ser en el 2021 la mejor empresa para contratar y trabajar en el Perú, capaz de ofrecer una
gran experiencia a nuestros clientes.
OBJETIVOS EMPRESARIALES
● Reducir costos y mejorar resultados de sus clientes.
● Estar alineados siempre a la tecnología y personal altamente calificado para lograr
los mejores resultados.
● Mejorar los resultados financieros de forma rápida y estructurada a sus socios
a través de estrategias sincronizadas.
● CLIENTES: Somos conscientes que el cliente representa nuestra razón de ser como
negocio, y debemos estudiar continuamente sus deseos y requerimientos para lograr
mantener en alto nivel de satisfacción de los mismos en el proceso de atención al
cliente es:
ANALISIS DE FODA:
-Fortalezas
-Debilidades
-Amenazas
COMPETENCIAS:
GESTIÓN DE TALENTO:
TECNOLOGÍA:
Soporte tecnológico en cada fase del proceso de negocio para mayor efectividad.
ESTRATEGIAS IMPORTANTES:
Permitir la adaptación de los procesos de cada cliente y aplicar las mejores prácticas
experimentadas en la industria. Combinar eficiencia, flexibilidad y perfeccionamiento
logrando que la inversión del cliente se vea reflejada en mayor productividad.
CONCLUSIONES:
El área de call center técnico se encarga de atender las llamadas entrantes que realizan
los usuarios de servicio de banda ancha, quienes se comunican al área a través del canal
123. El staff de asesores debe de resolver toda clase de solicitud de soporte técnico del
SBA (Small Business Administration) de los usuarios. Sin embargo, el total de llamadas
entrantes no son atendidas generando llamadas abandonadas y llamadas atendidas fuera
del tiempo establecido por el cliente. En este sentido, el área presenta problemas de
operatividad que deben ser analizadas y resueltas.
APROBACIONES
Nombre y Apellido Cargo Departamento u Fecha Firma
organización
Rojas Espinoza, Juan Desarrollador 09/05/21
Carlos Frontend Dirección y gerencia
Vasquez Medina, Ana Analista de sistemas 09/05/21
Kelly Diseño del sistema
Sanchez Lopez, Fabian Administrador de 09/05/21
Leonel Base de Datos Administrador del sistema
Tasayco tuanama Luis Desarrollador Backend Desarrollo del sistema 09/05/21
fernando
Alarcón Castillo, Carlos Backend Testing Tester 09/05/21
Franco
RESUMEN EJECUTIVO
Este documento tiene como propósito evaluar los errores y defectos que pueden existir en
un sistema, con el fin de corregirlos. Validar que los datos funcionen correctamente y
determinen el ingreso de información adecuada.
Verificar que los validadores de datos funcionen y limiten el ingreso de información, para
que no se puedan ingresar datos que no están permitidos (sólo números en campos
numéricos, por ejemplo).
1 ALCANCE
Implementación y desarrollo de una aplicación web denominada Sistema de Registro de
Asistencias (SRA).
El sistema a desarrollar será a nivel de aplicación web, y tendrá que pasar evaluaciones de
aceptación de los colaboradores y supervisores.
Igualmente, facilitará a los administrativos contar con herramientas que les permita la
visualización de tablas informativas con las relaciones por índices de puntualidad,
tardanzas y faltas en el rango del horario laboral establecido, el cual se obtendrá en base a
los datos proporcionados por el algoritmo del sistema desarrollado en PHP programados en
el sistema web.
Además, trabajará con la consulta de datos ingresados por los diferentes colaboradores.
Asimismo, contará con una conexión a la intranet, navegadores web de la empresa, ya que
el sistema se encontrará alojado en el servidor local de la misma.
Asimismo, por cada ingreso de datos por parte de los colaboradores al sistema, los
encargados del área de recursos humanos podrán exportar un reporte de las asistencias.
Personal involucrado
Nombre Alarcón Castillo, Carlos Franco
Rol Backend Testing
Categoría profesional Ingeniero de Sistemas
Responsabilidades Diseñar la interfaz gráfica del sistema según los
requerimientos del cliente.
Información de contacto
Información de contacto
Del Sistema:
De Tecnología:
Resumen
En el presente documento se describe la información sobre las características del
producto de software, interfaces del usuario, interfaces del sistema, características de
los usuarios, descripción de los requerimientos funcionales, no funcionales y del
sistema, los cuales se representarán mediante el siguiente formato:
SRA
ERS – Especificación de requisitos de
Software
Código Nombre Fecha Grado Necesidad
Referencia Nombre del Requerimiento Fecha de Importancia del
de Especificació requerimiento
Código:
RF: Requerimiento funcional
RFN: Requerimiento no
funcional RI: Requerimiento de
interfaz
El sistema SRA será un producto diseñado para trabajar en entorno web, lo cual
permitirá su utilización de forma dinámica, además será independiente por lo cual
no interactúa con otros sistemas.
a. Inicio de sesión.
b. Formulario de asistencia.
c. Reporte de asistencia.
Flujo Normal:
1. El actor genera su reporte de entrada en el sistema.
2. El sistema presentará un mensaje de éxito con el registro de entrada.
3. Hacer el mismo procedimiento para registrar la salida.
4. El sistema tiene una opción para ver su asistencia semanal, quincenal y
mensual.
Flujo Alternativo: Si en el sistema de empleados no se registra entrada/salida presenta
un mensaje de error.
Postcondiciones: La información registrada en la Base de Datos se actualizará.
Flujo Normal:
1. El actor selecciona la opción de generar reporte.
2. El sistema presenta una tabla de datos con el listado de los
empleados y un panel de control de acción con el botón de filtrar.
3. Al hacer esto el sistema generará el reporte en un Excel.
4. Hacer clic en Aceptar para que se guarde el reporte en su
Computadora.
1.1.5 Restricciones
● El sistema tendrá un entorno accesible y amigable para poder
realizar los registros.
1.2.3.2 Seguridad
1.2.3.3 Fiabilidad
● El sistema debe tener una interfaz amigable de uso intuitivo y sencilla.
● La interfaz de usuario debe ajustarse a las necesidades del sistema.
1.2.3.4 Disponibilidad
● El sistema deberá estar disponible en los horarios de la jornada laboral que
corresponde a cada usuario, fuera de ello el sistema lo registrará como una
brecha de seguridad.
1.2.3.5 Mantenibilidad
● El mantenimiento del sistema se realizará de manera trimestral.
● El sistema deberá de tener un manual de instalación y manual de usuario
para facilitar los mantenimientos que serán realizados por el administrador.
1.2.3.6 Portabilidad
● En la fase de producción se definirá el porcentaje de componentes
dependientes del servidor, el porcentaje de código dependiente del servidor,
el uso de un determinado lenguaje por su portabilidad y de determinados
compiladores o sistemas operativos para el mejor desempeño.
Un listado de las pruebas que se realizarán “Desde el punto de vista del Usuario”. No es
una descripción técnica del software sino sus características y funcionalidades que
realizará, se incluirán tanto los nuevos requerimientos como los modificados.
Rol Usuario
(Imagen de Logueo)
(Imagen de Asistencias )
El supervisor podrá ingresar los horarios de trabajo para cada uno de los empleados
a los cuales les asignará el turno y horario de trabajo. Esta información debe quedar
almacenada en la base de datos, de tal manera que el Trabajador pueda visualizarlo a
través de la funcionalidad “Visualización de Horarios”
● Pruebas de carga
● Pruebas de estrés
● Pruebas de volumen
● Pruebas de configuración
● Planificación de pruebas
● Diseño de pruebas
● Implementación de pruebas
● Evaluación de criterios de salida
● Cierre del proceso
El fin de dividirlo en fases es para poder cumplir con cierta funcionalidad del software en
cada una de las fases. Las fases de un proyecto de metodología tradicional también pueden
definir diversos niveles de abstracción, en el caso de control de calidad se traduce en los
diferentes tipos de prueba de acuerdo a la profundidad o enfoque que se le quiera dar, en
nuestro proyecto usaremos el modelo V.
El SRA será entregada y posteriormente probada por el cliente DYNAMICALL, bajo los
siguientes criterios.
Criterio Descripción
Se aprobará el proyecto con un 100% de las pruebas ejecutadas pero con
un 90% de aceptación.
Aprobado Esto quiere decir que el 90% de las pruebas deben ser exitosas y sin
errores.
En el restante 10% puede existir fallas de criticidad medias o bajas pero
no graves o alta.
En caso de ocurrir que el proyecto no cumpla con el nivel exigido, el
Rechazado
proyecto se rechaza completo en su etapa final.
Criticidad Descripción
Son eventos producto del mal funcionamiento del sistema impidiendo
Alta
continuar con su uso.
Son eventos graves que pueden no afectar el funcionamiento del sistema
Media
pero necesitan ser corregidos.
Es un aporte al sistema que mejora la funcionalidad de los procesos.
Baja
Los Casos de Prueba que fallaron tendrán un evento asociado a un estado donde se reporta
la incidencia/error.
Estado Evento
Satisfactorio Cuando se ejecuta un Caso de Prueba y no se produce
ningún error.
Pérdida de Vigencia Cuando un error que había sido reportado, ya no está
vigente, es decir, ya no tiene sentido corregirlo por cambio
en la funcionalidad.
❖ Los estados intermedios de un evento que deben llegar a un estado final son:
Estado Evento
Pendiente Cuando el resultado de la ejecución del Caso de Prueba, se produce
un error.
Suspendido Cuando el error es reconocido como tal, pero por el momento no se
procederá a la corrección del mismo porque existen otras tareas de
mayor prioridad que deben realizarse.
No Asignado por el desarrollador: Cuando la incidencia asignada no le
corresponde al corresponde corregir, permitiéndole al jefe del proyecto asignarla al
recurso programador correspondiente.
No aplica Cuando el desarrollador o el jefe de proyecto interpretan que el error
desarrollo reportado no es tal.
Las posibles causas son: inconsistencia en la documentación,
factibilidad técnica, etc.
Cuando el analista de testing comprueba que el error ha sido
Cerrado corregido, es decir, vuelve a ejecutar el Caso de Prueba y ya no se
produce el error que había sido reportado.
Cuando el desarrollador ha corregido el error, es decir, vuelve a
Corregido ejecutar el Caso de Prueba y ya no se produce el error reportado.
Alta 0%
Media 4%
Baja 6%
Los procesos de prueba se suspenderán y el desarrollador será contactado bajo las siguientes
circunstancias o criterios:
2.2.6 Cronograma:
2.2.7 Premisas:
➢ Disponibilidad de tiempo.
➢ Disponibilidad de recursos.
➢ Metodología de las pruebas
➢ Uso de herramientas
➢ Conocimiento de las pruebas por los integrantes del grupo.
Errores en la ejecución del Volver a realizar las pruebas Área de pruebas, desarrollo y
plan de pruebas identificando los errores mantenimiento de Software
El equipo de pruebas utilizara las herramientas de medición para el SRA, son el paquete
SONAR (SonarQube, SonarScanner, Sonarlint) y PHPUNIT con las librerías de PHPUnit
(composer junto a PHPLint) , a continuación los detalles.
2.3.3.1 SONARQUBE:
Plataforma para evaluar código fuente y la calidad del mismo. Es software libre y
usa diversas herramientas de análisis estático de código fuente como Checkstyle,
PMD o FindBugs para obtener métricas que pueden ayudar a mejorar la calidad del
código de un programa.
2.3.3.2 PHPUnit:
En este capítulo vamos a ver los tipos de pruebas según se realizan dentro del ciclo de vida
del software.
Existen diferentes modelos de desarrollo de software. Entre ellos tenemos métodos clásicos
como pueden ser el modelo en cascada, el modelo general en V o métodos más populares
hoy en día como pueden ser metodologías ágiles, programación extrema, etc. Cada uno de
estos métodos tiene una vía de trabajo diferente, indicando cómo se tiene que trabajar
durante la vida del proyecto.
Las pruebas están dentro de estos modelos de maneras muy diferentes. Por ejemplo, dentro
del modelo en cascada las pruebas se ejecutan al final del proyecto y dentro del modelo en
V se realizan en los diferentes niveles de desarrollo.
1.5.1 Modelo en V:
Se va a utilizar el modelo en V como referencia para ver cómo se integran las pruebas
dentro del ciclo de vida del software. En este modelo las tareas de desarrollo y pruebas
tienen la misma importancia.
Para cada nivel de desarrollo se define un nivel de prueba. Dentro de cada nivel de prueba
el probador debe asegurarse de que los resultados cumplen con la verificación y la
validación del software.
Las herramientas de medición descritas con anterioridad para el SRA, deberá ser
capacitado en su uso y procedimiento a continuación el detalle.
● Bloqueador
● Crítico
● Importante
● Menor
● Info
Mejora de la calidad:
E_WARNING
E_NOTICE
E_USER_ERROR
➔ PHPUNIT ejemplo:
➔ En este archivo del desarrollador, tenemos la clase saludo, con una función que
retorna un string.
◆ Coverage Distribution
◆ Complexity
◆ Project Risks
◆ Insufficient Coverage
5 Benchmarking:
Cuadro comparativo entre el sonarqube y el phpunit.
Pasos: <Pasos generales para la prueba, basados en los escenarios de los casos de uso, si existen.>
ANEXOS SUGERIDOS:
1 PROJECT CHARTER
Datos
Premisas y restricciones
La restricción del sistema tendrá un entorno accesible y amigable para poder realizar
los registros.
Presupuesto estimado
Desarrollo del sistema de asistencias 5.000
Mantenimiento/actualización del 2.000
sistema de asistencias, con posibles
nuevas integraciones.
CEO y Fundador
Enrique Beltrán Cornejo
Niveles de autoridad
Aprobaciones
Patrocinador Fecha Firma
Carlos Basurto Yamani 19/05/21
Gianfranco Giuttari Claussi 28/05/21
3 JMeter
Es una herramienta que facilita la gestión integral de los procesos de pruebas de
rendimiento, no obstante no es la única puesto que tenemos otras como: Micro Focus
LoadRunner, IBM RPT, SilkPerformer, WebLoad, NeoLoad, OpenSTA, otras.
‘Apache JMeter’ es una aplicación de código abierto, 100% basada en Java con una interfaz
gráfica de usuario. Está diseñada para analizar, medir el rendimiento y cargar el
comportamiento funcional de la aplicación web y la variedad de servicios.
Tipo de prueba
Subconjunto
· Las pruebas de carga, las pruebas de estrés, las pruebas de picos, las pruebas de
resistencia y las pruebas de volumen son subconjuntos de las pruebas de rendimiento.
EJEMPLO