Está en la página 1de 14

FACULTAD DE INGENIERÍA Y ARQUITECTURA

ESCUELA PROFESIONAL DE ING. DE SISTEMAS

Título

Evaluación y análisis de la calidad de un software de Sistema de


Sembrado y Cosecha

Autores:
Gavilan García, Ali Densel
Poma Nureña, Bryan
Herrera López, Jesús Omar
Silva Ravello, José Alberto

Asesor:
Gómez Ávila, José Alberto.

Línea de Investigación:
Ingeniería de Software

Trujillo – Perú
RESUMEN

El presente informe expone el estudio y la influencia de la aplicación de técnicas


de refactorización en un software de sembrado y cosecha, todo esto a través del
diseño de investigación preexperimental, el cual parte de una medición inicial de la
problemática en materia de valores concretos, pasando por la aplicación de la
propuesta de solución, hasta llegar a la medición final de los puntos a evaluar
como parte de la problemática general. Los resultados de esta investigación y
aplicación de los métodos de refactorización al software de sembrado y cosecha
fueron la reducción de código redundante, el correcto nombramiento de clases,
métodos, variables y capas, la aplicación de patrones de diseño como alta
cohesión y experto en información, lo cual llevó a tener como resultado principal
un código bien estructurado, ordenado, preciso y mantenible. Se obtuvieron
resultados satisfactorios al aplicar la normativa ISO/IEC 9126. Las conclusiones
obtenidas de esta investigación fueron que los casos de prueba permiten
encontrar fallas o errores de manera rápida y eficiente. Las pruebas funcionales
fueron esenciales para validar los requisitos funcionales que dieron como
resultado un software de calidad.
I. INTRODUCCIÓN
En la actualidad, todas las empresas requieren de un sistema para automatizar los
procesos principales y secundarios de sus actividades, el avance y creación de
nuevas tecnologías ha permitido adaptar un software a los requerimientos de una
empresa, es por ello que se desarrolló un sistema para la gestión de sembrado y
cosecha de una empresa agrícola, la cual será de vital ayuda en la administración
de los trabajadores, los pagos, las siembras, la gestión de los campos disponibles,
la estimación de tiempos de sembrado y los reportes respectivos. El sistema
desarrollado dota de gran control al usuario de este, así como también brinda
apoyo a la empresa para llevar una correcta organización de sus procesos.
Como todo software que se envía a producción, el diseño y desarrollo de este
producto exige cumplir con ciertos parámetros y normas que exigen la calidad del
código, estructuración, patrones de diseño, entre otros. Estas normas son de gran
importancia al momento de realizar las pruebas a las diferentes partes del sistema.
Los procesos de calidad y pruebas de software se enfocan en dotar al sistema de
una alta mantenibilidad, lo que brinda una vida útil más larga al software y una
correcta capacidad de evolución a futuro. Asimismo, tienen como objetivo principal
definir las mediciones de atributos de calidad de un producto, demostrando cómo
este se puede mejorar con respecto a las anteriores versiones del software, para
así poder realizar todos los procesos de manera correcta.

Objetivo general:
Determinar la influencia de la aplicación de técnicas de refactorización en la
mantenibilidad del Sistema de Sembrado y Cosecha.
Objetivos específicos:
Determinar la influencia de la aplicación de técnicas de refactorización en la
facilidad de cambio del Sistema de Sembrado y Cosecha. Determinar la
influencia de la aplicación de técnicas de refactorización en la facilidad de
pruebas unitarias del Sistema de Sembrado y Cosecha.
I. METODOLOGÍA
MARCO TEÓRICO
Calidad de software:
El término calidad de software se refiere al nivel de
cumplimiento de los requerimientos que debe cubrir un sistema
computacional durante su ciclo de vida, dichas características
de cierta manera garantizan que el cliente cuente con un
sistema confiable, lo cual aumenta su satisfacción frente a la
funcionalidad y eficiencia del sistema construido.

El concepto de calidad de software, según Pressman (2010) se


asocia a la "concordancia con los requisitos funcionales y de
rendimiento explícitamente establecidos con los estándares de
desarrollo plenamente documentados y con las características
implícitas que se espera de todo software desarrollado
profesionalmente", con base en los requisitos funcionales y no
funcionales identificados en la etapa de análisis del sistema,
insumo principal para implementar dichos requisitos con los
atributos mínimos de calidad, fomentando la aplicación de
procesos estandarizados y criterios necesarios en cada una de
sus etapas, así se fomenta que el avance en el ciclo de vida del
software minimice el riesgo de fracaso del proyecto. Por su
parte, el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE,
1990) define calidad de software como "el grado con el que un
sistema, componente o proceso cumple los requerimientos
especificados y las necesidades o expectativas del cliente o
usuario", denotando que el énfasis radica en los requisitos
específicos del sistema y en la búsqueda de la satisfacción del
cliente.

Para garantizar la calidad de software es importante


implementar algún modelo o estándar de calidad que permita la
gestión de atributos en el proceso de construcción de software,
teniendo en cuenta que la concordancia de los requisitos y su
construcción son la base de las medidas de calidad
establecidas.

Gestión de Almacenes:

La gestión de los almacenes es un elemento clave para lograr


el uso óptimo de los recursos y capacidades del almacén
dependiendo de la característica y el volumen de los productos
a almacenar (Poirier y Reiter,1996). A continuación, se
presentan los conceptos y elementos necesarios para que su
gestión sea adecuada.

Principios de la gestión de almacenes:

Entre los principios para la gestión óptima de los almacenes se


considera la coordinación con otros procesos logísticos, el
equilibrio en el manejo de los niveles de inventario y en ser
adaptarse a los cambios de un mundo empresarial globalizado.
De esta forma, Mulcahy (1993) y Harnsberger (1997) indican
que los objetivos a buscar con la gestión de almacenes son:

Minimizar: Aumentar la rentabilidad:

● Las necesidades de inversión y costos de


administración de inventarios.
● Los riesgos, dentro de los cuales se consideran los
relacionados con el personal, con los productos y
con la planta física.
● Pérdidas, causadas por robos, averías e inventario
extraviado.
● Las manipulaciones, por lo cual los recorridos y
movimientos de las personas, equipos de manejo
de materiales y productos, deben ser reducidos a
través de la sim.
● Los costos logísticos a través de economías de
escala, reducción de faltantes y retrasos en la
preparación de despachos.

Maximizar:

● La disponibilidad de productos para atender


pedidos de clientes.
● La capacidad de almacenamiento y rotación de
productos.
● La protección a los productos.

Cabe destacar que los dos primeros objetivos de maximización


son parcialmente contrapuestos, por lo cual se debe equilibrar
su nivel de implementación, debido a que a mayor capacidad
de almacenamiento se tiende a reducir la operatividad en el
almacén.

Tipos de pruebas de software

Existen diversos tipos de pruebas para el software las cuales


tienen la finalidad de asegurar la calidad y correcto
funcionamiento de dicho software, estas pruebas se
categorizan como sigue:

● Pruebas estáticas
● Inspecciones
● Pruebas de escritorio
● Code review
● Pruebas dinámicas
● White Box
● Black Box
● Prueba unitaria
● Prueba de integración
● Pruebas del sistema
● Pruebas de regresión
● Pruebas de aceptación

Pruebas estáticas - Inspección

El objetivo de este tipo de pruebas es detectar e identificar


defectos en el software mediante una inspección del código
línea a línea, dicha inspección se hace por medio de expertos
en la materia que no hayan participado en el desarrollo del
código a revisar.

El resultado de este tipo de pruebas es remover defectos en el


código y malas prácticas usadas por el desarrollador, así como
verificar que el código cumpla con los estándares establecidos
por la compañía de software.

Pruebas estáticas - Pruebas de escritorio

Este tipo de pruebas consiste en hacer una corrida del código a


mano con valores reales para verificar si el código tendrá el
comportamiento deseado y cumple con los requerimientos del
cliente.

El resultado de este tipo de prueba es remover defectos en el


código por una mala codificación o un error por parte del
desarrollador.

Pruebas estáticas - Code Review

Este tipo de prueba es parecida a la inspección, con la


diferencia de que la inspección verifica el código, el formato y
estándares, y el code review se enfoca en errores de
codificación mediante la revisión línea por línea del software.

El resultado de este tipo de prueba es remover defectos en la


programación del software para evitar errores en el producto.

Pruebas dinámicas - White Box

Este tipo de pruebas se realizan sobre el código en ejecución,


se proveen entradas y se ve todo el procesamiento de las
entradas hasta ver el resultado final en las salidas.

Con este tipo de pruebas se pueden encontrar errores en


cualquier parte y decisión del software, aunque es una prueba
tardada y extensiva, asegura el correcto funcionamiento del
software y la calidad del mismo.

Entre las técnicas de las pruebas de caja blanca más conocidas


tenemos la cobertura, que consiste en la verificación de que
todos los caminos lógicos del software son alcanzables en
función de los diferentes valores de entradas de los
parámetros.
Otra técnica bastante conocida es la Mutation Testing. Se basa
principalmente en realizar ligeras modificaciones en el
programa para dar lugar a un comportamiento anómalo del
mismo (resultados distintos) y verificar si la estrategia de testing
utilizada es capaz de detectar estos cambios.

Pruebas dinámicas - Prueba Unitaria

Este tipo de pruebas se basan en separar el código en partes


pequeñas y probar cada una de esas partes de forma
independiente. Ayuda a localizar errores en partes específicas
del código, pero dada la cantidad de casos de prueba que
requiere, es tardada.

Para realizar este tipo de pruebas se pueden usar distintas


herramientas que ayudan a realizar, automatizar y reutilizar los
casos de prueba dependiendo del ambiente del software a
probar como lo son:

• JUnit: Entorno de pruebas para Java


• PHPUnit: Sistema para la realización pruebas unitarias en
PHP

• CPPUnit: Versión del framework para lenguajes C/C++

• NUnit: Versión del framework para la plataforma

• Test: Entorno desarrollado por GE para realizar pruebas


unitarias con las especificaciones necesarias para la
certificación del software GE Unit

BITACORA

AUTOR Titulo Objetivo general Hipotesis Metodo Conclusiones

Encuesta a
VANESSA MODELO ISO/IEC Evaluar la calidad El modelo la Una vez efectuada la
BAUTISTA 25010 EN EL de software con ISO/IEC población comparación del modelo
GRISALES y PROCESO DE base en el 25010 identificada actual de evaluación de
EVALUACIÓN DE modelo (ISO/IEC mejorará el la calidad del producto
ELIANA LA CALIDAD DEL 25010) en el área proceso de de software, frente al
CATHERINE
de evaluación modelo propuesto en el
ROBAYO SOFTWARE EN LA de la calidad trabajo de grado, se
BAUTISTA EMPRESA OBRAS tecnología de la del software evidencia la necesidad
CIVILES DE información y en la de estructurar un grupo
BOGOTÁ EN EL comunicación de empresa de interno de trabajo y un
ÁREA DE la empresa de obras civiles flujo de actividades para
obras civiles de ejecutar el proceso de
TECNOLOGÍA DE Bogotá. evaluación de la calidad
LA INFORMACIÓN Y con el fin de obtener un
COMUNICACIÓN. mínimo de
inconformidades para la
entrega de un producto
al usuario final

Miriam Amable ANÁLISIS DEL USO Identificar las El modelo Encuestas Con las encuestas
Ciudad DE MODELOS DE normas y propuesto y Registros elaboradas en base a las
CALIDAD DE modelos de mejorar los de propuestas de mejoras
SOFTWARE. UNA calidad de procesos observació de los procesos de
PROPUESTA DE software dirigidas del n desarrollo de software en
Rocío Checa
MEJORA DE a Mypes desarrollo las Mypes de
Fernández
PROCESOS EN LAS productoras de de software productoras de Software,
MYPES Software; de las se evidencia la
PRODUCTORAS DE establecer el nivel Mypes optimización de estos ya
Rosa Millones SOFTWARE DE de aplicación de productoras que las normas y
Rivalles LIMA, PERÚ normas y de Software. modelos propuestos ,
modelos de proponen un modelo de
calidad de evaluación y gestión que
software; apoye a la incorporación
establecer los de la calidad en los
requerimientos de procesos de desarrollo
aplicación de de software.
normas y
modelos de
calidad de
software y por
último, proponer
un modelo de
mejora de
procesos de
desarrollo de
software.
Balseca Evaluación de calidad Analizar los Método de Contar el nùmero de las
Chisaguano, de productos de productos de El modelo aplicación funciones que vamos a
Evelyn Amparo software en empresas software a ISO/IEC evaluar indicadas de las
de desarrollo de evaluar , 25000 especificaciones de los
software aplicando la especificando los mejorará el requerimientos y el
norma ISO/IEC 25000 requisitos del proceso de nùmero de las funciones
sistema según es evaluación que faltan o están
estándar IEEE de la calidad incorrectas.
830 y la del software
funcionalidad del en la
mismo, para asi
empresa de
verificar si se
desarrollo
inicia la
de software.
preparación de
los
requerimientos
de evaluación,
finalizando con el
análisis de los
resultados
obtenidos.
Dina Beatriz, EVALUACIÓN DE Identificar las encuesta al Con las encuestas
LA CALIDAD EN características y El modelo personal generadas se logra
Villegas ISO 25022
USO DEL SISTEMA subcaracterística responsabl verificar las mejoras
Balandra
DE INFORMACIÓN s que evalúen el mejorará el e del dentro de la institución
DE APOYO A LA Sistema de proceso de Sistema de dado que se detalla la
GESTIÓN DE LA Información de evaluación Informació problemática , y si poder
INSTITUCIÓN Apoyo a la de la calidad n de Apoyo agregar o asignar las
EDUCATIVA Gestión de la en la a la propuestas de mejora
(SIAGIE) DE LA I.E. Institución institución Gestión de que se esta realizando.
54078 JUAN Educativa de la educativa la
ESPINOZA I.E. 54078 Juan Institución
JUAN
MEDRANO - NIVEL Espinoza Educativa
ESPINOZA
PRIMARIO, Medrano - Nivel
MEDRANO
BASADO EN LA Primario, basado
NORMA ISO 25022 en la norma ISO
25022

Fanny Analy Modelo de gestión implementar un La Encuesta a Se verificó que en


MORENO de calidad basada en modelo de implementa la promedio la cantidad de
SUCRE los estándares NTP gestión de ción del población defectos por proyecto
12207, ISO 9001 E calidad, basada modelo de identificada (etapa preprueba) es de
ISO 9126, para los en los estándares gestión de 156, a comparación con
procesos de NTP 12207, ISO calidad el promedio de defectos
desarrollo de 9001 e ISO 9126, basada en por proyecto (etapa post-
software: caso en el desarrollo los prueba) es de 16
RENIEC de software estándares defectos por proyecto;
cuyos resultados NTP 12207, concluyendo que existe
evidencian que ISO 9001 E una significativa
existe ISO 9126, diferencia en los
disminución en permite promedios de defectos
los defectos en mejorar la en las correspondientes
los proyectos calidad de etapas de prueba.
desarrollados, los procesos
mejora de
satisfacción de desarrollo
los usuarios- de software
RENIEC, mejora en el área
la gestión de la Sub.
documentaria y Gerencia de
mejora la Ingeniería
funcionalidad en de Software
la gestión de del
desarrollo. RENIEC.
JACKELINE SISTEMA WEB Desarrollar un Un Sistema Encuestas Con la encuesta
BENITEZ BASADO EN LA Sistema Web Web basado y registros elaborada en base al
LLANQUE y NORMA ISO/IEC basado en la en la Norma de modelo de calidad de la
ALODIA 25010:2010 Norma ISO/IEC ISO/IEC observacio norma ISO/IEC 25000
FLORES (SQuaRE) PARA LA 25010:2010 25010:2010 n (SQuaRE), que
ARNAO GESTIÓN DE (SQuaRE) para (SQuaRE) considera las
INFORMACIÓN EN mejorar la gestión mejora la características de calidad
EL COLEGIO DE de información en gestión de interna, externa y en uso,
INGENIEROS DEL el Colegio de información y realizada en el CIP CD
PERÚ CD PUNO - Ingenieros del en el Puno, se obtuvo como
2013 Perú CD Puno. Colegio de resultado que el 83.3%
Ingenieros de la muestra aprueba el
del Perú CD sistema Web como “Muy
Puno. Bueno”, lo que significa
que tiene un alto grado
de aceptación, por
consiguiente en la
realización de la prueba
estadística de nivel de
significancia de 5% se
obtuvo como p-value =
0,00 ≤ 0,05, lo que indica
la validación de la
hipótesis planteada en
esta investigación
MATRIZ DE TRASABALIDAD

También podría gustarte