Documente Academic
Documente Profesional
Documente Cultură
“X-PRO-L”
Profesor Guía:
MARCELLO VISCONTI
Profesor Correferente:
LUIS HEVIA
VALPARAISO, CHILE
OCTUBRE, 2005
RESUMEN
X-Pro-L corresponde a una aplicación de software interactiva y didáctica, que permite facilitar y
difundir el autoaprendizaje del sistema operativo Linux.
Se pretende conseguir que el usuario participe de forma real y activa con la aplicación, de manera
que se adquieran de forma progresiva, los conocimientos necesarios que le permitan al interesado
utilizar las funciones principales del ambiente Linux.
Como característica a considerar, destacan la claridad en la entrega de la información y de los
contenidos a través de menús interactivos, imágenes y animaciones.
Lo que se persigue, es que la aplicación sea atractiva para el usuario, de manera que la
comprensión de los temas sea óptima.
Para alcanzar tales objetivos, el sistema debe introducir al usuario a la utilización del gestor de
ventanas GNOME de Linux, guiándolo paso a paso en la ejecución de las distintas tareas y
aplicaciones que utilice cotidianamente.
El objetivo de esta memoria es diseñar el Plan de Calidad, cuyo prototipo preliminar fue creado en
la asignatura “Taller de Titulación” durante el segundo semestre del año 2002 por la Empresa
FACDEL.
ABSTRACT
X-Pro-L is a didactic and interactive software application that makes better known and easier the
process of learning how to use the Linux Operating System.
The user is expected to participate in a real and interactive way in the use of this application, in a
way that he progressively gets the necessary knowledge to use the main functions of the Linux
environment.
One of the main features is the clear delivery of information through interactive menus, images and
animation.
We want the application to be attractive and user-friendly so as to optimize the understanding of the
subjects.
In order to reach these objectives, the system must bring the user to the point where he can use the
Linux window generator GNOME, guiding him each step of the way in the execution of the different
tasks and applications that are of every day use.
The goal of this paper is to design the Quality Plan; its preliminary prototype was designed while
doing the “ Workshop on How to Obtain a Degree” at FACDEL, during the second semester of the
year 2002.
INDICE
1. INTRODUCCIÓN...........................................................................................................................................6
1.1 Propósito...................................................................................................................................................6
1.2 Alcance......................................................................................................................................................6
1.3 Identificación de Productos de Trabajo....................................................................................................7
1.4 Descripción del Sistema............................................................................................................................8
1.4.1 Descripción de la situación actual.....................................................................................................8
1.4.2 Descripción del sistema...................................................................................................................10
1.5 Glosario de Términos.............................................................................................................................11
1.6 Acrónimos...............................................................................................................................................11
2. REQUERIMIENTOS...................................................................................................................................12
2.1 Aplicación de las Métricas definidas para el Producto X-Pro-L...........................................................12
3. MODELO DE DESARROLLO..................................................................................................................15
3.1 Actividades del proceso de desarrollo....................................................................................................16
3.2 Productos de Trabajo.............................................................................................................................19
3.2.1 Definición de los atributos de calidad.............................................................................................22
3.2.2 Atributos de calidad (evaluados por SQA) por actividades del proceso de desarrollo...................23
3.2.3 Atributos de calidad (evaluados por QA) por productos de trabajo...............................................25
3.2.4 Puntos de revisión (hitos).................................................................................................................28
4. GESTION......................................................................................................................................................29
4.1 Organización..........................................................................................................................................29
4.2 Recursos..................................................................................................................................................29
4.2.1 Recursos humanos............................................................................................................................29
4.2.2 Infraestructura.................................................................................................................................31
4.3 Actividades de SQA.................................................................................................................................32
4.4 Responsabilidades..................................................................................................................................35
4.5 Riesgos....................................................................................................................................................36
4.5.1 Identificación de riesgos..................................................................................................................36
4.5.2 Clasificación....................................................................................................................................36
4.5.3 Estimación de los riesgos.................................................................................................................37
4.5.4 Control de riesgos............................................................................................................................39
5. HERRAMIENTAS, TÉCNICAS Y METODOLOGÍAS..........................................................................44
5.1 Aplicación de métodos técnicos formales...............................................................................................44
5.2 Revisiones e inspecciones.......................................................................................................................44
5.3 Registro y generación de informes.........................................................................................................46
5.4 Checklist..................................................................................................................................................47
5.4.1 Cheklist por actividades del proceso de desarrollo evaluados por QA...........................................47
5.4.2 Cheklist por productos de trabajo evaluados por QA.....................................................................49
5.4.3 Cheklist evidenciados por QA..........................................................................................................57
6. PRUEBAS.....................................................................................................................................................62
6.1 Planificación...........................................................................................................................................62
6.2 Especificación.........................................................................................................................................63
6.3 Ejecución................................................................................................................................................63
6.4 Análisis de resultados.............................................................................................................................64
6.4.1 Completación...................................................................................................................................64
7. INFORME DE PROBLEMAS Y ACCIONES CORRECTIVAS...........................................................65
7.1 Informe de Auditoría...............................................................................................................................65
7.1.1 Identificación de la auditoría...........................................................................................................65
7.1.2 Objetos de auditoría.........................................................................................................................65
7.1.3 Bases para la evaluación.................................................................................................................65
7.1.4 Actividades de auditoría..................................................................................................................66
7.1.5 Anomalías.........................................................................................................................................66
7.2 Informe de discrepancias........................................................................................................................69
7.2.1 Identificación del proyecto...............................................................................................................69
7.2.2 Descripción del problema................................................................................................................69
7.2.3 Resolución........................................................................................................................................70
7.3 Informe de Actividades de SQA..............................................................................................................72
7.3.1 Identificación del proyecto...............................................................................................................72
7.3.2 Identificación del producto / proceso evaluado...............................................................................72
8. CONCLUSIONES.......................................................................................................................................74
9. BIBLIOGRAFÍA.........................................................................................................................................78
10. ANEXOS....................................................................................................................................................79
10.1 Plan de Proyecto...................................................................................................................................79
10.2 Plan de Riesgos.....................................................................................................................................96
10.3 Especificación de Requerimientos........................................................................................................96
10.4 Especificación del Sistema (Solución Propuesta)...............................................................................102
10.5 Especificación Funcional....................................................................................................................109
10.6 Plan de Pruebas..................................................................................................................................116
10.7 Especificación de Diseño de Sistema..................................................................................................126
10.8 Especificación de diseño de soporte...................................................................................................131
10.9 Plan de Gestión de la Configuración SCM.........................................................................................135
10.10 Informe de Pruebas (Testing)............................................................................................................140
10.11 Manual de Usuario............................................................................................................................141
Introducción
1. INTRODUCCIÓN
Para la empresa de buses Autoboy S.A se realiza un plan de calidad del software con el fin de
dar confiabilidad a este proyecto. La calidad se convierte en un importante punto diferenciador,
además de aumentar la satisfacción general del cliente, disminuir costos y optimizar los
recursos.
1.1 Propósito
El propósito de este documento es definir el plan de calidad del proyecto de buses Autoboy S.A,
así como proporcionar herramientas técnicas y metodologías para la realización de las actividades
propuestas para satisfacer la necesidad del cliente.
1.2 Alcance
Este documento establece las actividades realizadas para asegurar la calidad del proyecto de
buses Autoboy S.A. El alcance de este plan de aseguramiento de la calidad es verificar que todo el
software y la documentación que debe ser entregada cumplan con los requisitos técnicos y
necesidades del cliente, se debe seguir un procedimiento para la examinación del documento y
determinar que se cumplen todos los requisitos y que el rendimiento del sistema sea óptimo.
A continuación, se nombran los productos de trabajos que soportan la construcción del sistema.
Especificación de Requerimientos Dar a conocer algunos conceptos básicos para una mejor
interpretación de lo que va a tratar el sistema, donde se
guiará al lector por tres fases que contendrá dicho
documento sobre el sistema de contabilidad diaria para los
buses de la empresa Autoboy S.A.
Especificación del sistema (Solución Propuesta) El sistema da Información Contable de Autobuses (SICA),
donde se refleja las distintas temáticas y estructuras bajo las
cuales se desarrolla el software.
Plan de pruebas Documentación que describe las pruebas que serán llevadas
a cabo para demostrar al cliente que la solución satisface los
requerimientos definidos. (ver anexo Plan de Pruebas).
Especificación de Diseño de Soporte El diseño y la implementación del sistema debe ser sencilla,
acorde para que los usuarios que interactúen con ella, se les
facilite su manejo, independientemente del medio con el cual
se desarrolle.
Plan de aseguramiento de calidad SQA Documentación que define todas las actividades de
aseguramiento de calidad que se harán durante el Proyecto.
Plan de gestión de la configuración SCM Documentación que describe la metodología que se seguirá
para realizar la gestión de la configuración en el proceso de
desarrollo de software, formularios y checklist (ver anexo
Plan de gestión de la configuración SCM).
Informe de pruebas (testing) Documentación que describe los resultados de las pruebas,
los cuales ayudarán a comprobar el “buen” funcionamiento
del software.
Un software de contabilidad diaria para la empresa de Buses Autoboy S.A de la ciudad de Tunja.
Este software permitirá al usuario verificar toda la información relacionada con los buses,
conductores, las rutas, las planillas de rotación y a la vez generar una liquidación mostrando los
ingresos y egresos que tiene un bus.
El sistema tendrá grandes beneficios para la empresa ya que va a permitir llevar la contabilidad sin
la necesidad de estar utilizando papel y lápiz, y con ello los propietarios sabrán con exactitud la
contabilidad de su vehículo mea a mes.
El sistema de contabilidad es un producto que está diseñado para trabajar en entorno web, lo que
permitirá su utilización de forma rápida y eficaz, y a la vez conectado a una base de datos donde
se encontrará toda la información y así obtener una mejor respuesta.
Este sistema será un software independiente de los demás sistemas que maneja la empresa, ya
que está actualmente tiene una página web, pero esta es publica para cualquier usuario por ende
no se podrá incorporar el software a esta ya que se restringen la entrada a ciertos usuarios.
El software de contabilidad diaria para Buses consistirá o contará con las siguientes
funcionalidades:
El sistema de contabilidad es un producto que está diseñado para trabajar en entorno web, lo que
permitirá su utilización de forma rápida y eficaz, y a la vez conectado a una base de datos donde
se encontrará toda la información y así obtener una mejor respuesta.
Este sistema será un software independiente de los demás sistemas que maneja la empresa, ya
que está actualmente tiene una página web, pero esta es publica para cualquier usuario por ende
no se podrá incorporar el software a esta ya que se restringen la entrada a ciertos usuarios.
Botón/Icono: Símbolo gráfico que representa una acción que el usuario puede realizar de forma
interactiva. (En los primeros años del desarrollo del hipertexto se denominaban botones a los
iconos)
Interfaz (Interface): zona de contacto o conexión entre dos componentes de hardware; entre dos
aplicaciones, o entre un usuario y una aplicación. Apariencia externa de una aplicación informática.
Interfaz Gráfica de Usuario (GUI): componente de una aplicación informática que el usuario
visualiza y a través de la cual opera con ella. Está formada por ventanas, botones, menús e iconos,
entre otros elementos.
Interfaz de Usuario Basada en Web (WUI): Interfaz gráfica de usuario con la apariencia típica de
una página web.
Internet Explorer (IE): programa navegador o visualizador del WWW desarrollado por Microsoft.
ISO: International Organization for Standardization. Organización Internacional para la
Estandarización.
Página web: documento creado en formato HTML (Hypertext Markup Language) que es parte de
un grupo de documentos hipertexto o recursos disponibles en la World Wide Web.
WWW o la WEB o World Wide Web: medio más popular de comunicación en Internet. Sistema
de distribución y recuperación de información hipermedia (hipertexto+multimedia) almacenada en
los diferentes nodos de Internet.
Planilla: formulario con espacios en blanco para rellenar, en los que se dan informes, se hacen
peticiones o declaraciones.
Ingresos: son las entradas económicas que recibe una persona, una familia, una empresa, una
organización, un gobierno. El tipo de ingreso que recibe una persona o una empresa u
organización depende del tipo de actividad que realice (un trabajo, un negocio, una venta, etc.)
Egresos: denomina gasto o egreso a la anotación o partida contable que disminuye el beneficio o
aumenta la pérdida de una sociedad o persona física.
1.6 Acrónimos
Acrónimo Significado
2. REQUERIMIENTOS
Fiabilidad El software contara con herramientas antibloqueo para evitar que aparezcan o se
presenten posibles congestiones durante la ejecución de alguna funcionalidad del sistema, y
a la vez se harán diagnósticos trimestralmente para ver los fallos que este presentando.
Interfaz
La interfaz para esta aplicación debe ser simple en la entrega de datos, colores adecuados, rápidos
y eficientes para la selección e ingreso de datos al sistema.
Objetivos
Criterios de Aceptación
Portabilidad
Objetivos
Los equipos deben contar con ciertas características mínimas para el correcto funcionamiento
del sistema.
Criterios de Aceptación
La aplicación debe ejecutarse sin ningún problema en los distintos computadores donde sea
instalado. Para ello, las características mínimas son:
Performance
Objetivos
Criterios de Aceptación
La rapidez de respuesta no debe ser mayor a 5 [seg] desde que se realizó la actualización.
La aplicación debe permitir el manejo de 10000 registros.
Operacional
Por otra parte, la información desplegada por pantalla debe ser clara y sencilla, sin mayor
sobrecarga de imágenes e información, de manera que no sea dificultoso el entendimiento de los
datos desplegados.
Objetivos
Criterios de Aceptación
Mantenibilidad
El mantenimiento debe ser realizado a medida que se reporten fallas o inconsistencias que no sean
descubiertas durante el desarrollo, éstas fallas serán descubiertas por los mismos usuarios de la
aplicación dándolas a conocer a través de e-mail o personalmente al Administrador.
Objetivos
Criterios de Aceptación
El tiempo de mantención estará restringido según las líneas de código del módulo afectado,
debido a que existen componentes que son de gran complejidad, por lo cual tendrán un tiempo
mayor de mantención.
La aplicación debe ser actualizada una vez cada seis meses, debido a los continuos cambios
que puedan sufrir las versiones de la aplicación.
La documentación necesaria debe tener descrito los cambios realizados, además de los pasos
seguidos en el proceso de desarrollo y mantenciones posteriores.
El código fuente de la aplicación debe ser comentado al menos en un 50% del total, y claros en
su estructura.
Seguridad
La aplicación debe tener la capacidad de detectar consultas, equivocadas o mal intencionadas por
parte del usuario.
Por otra parte, el hecho de que los datos se modificarán constantemente, se debe tener un
respaldo periódico de la aplicación.
Objetivos
Criterios de Aceptación
Las claves del administrador del sistema deben ser de un largo determinado, con el fin de
evitar la entrada de personas ajenas al sistema.
Se debe respaldar la aplicación una vez a la semana.
Toda persona que desee ingresar a la aplicación debe tener asignado un login y password.
Los usuarios de la aplicación deben obligatoriamente actualizar su login y password una vez al
mes.
3. MODELO DE DESARROLLO
Se optó por la estrategia de desarrollo “Modelo Incremental”, el cual aplica secuencias lineales de
forma escalonada mientras progresa el tiempo en el calendario. Cada secuencia lineal produce un
“incremento” del software. La elección de la estrategia seleccionada se debe a que la intención es
entregar el software en partes pequeñas, pero utilizables, llamadas “incrementos”, es decir, cada
“incremento” se construye sobre aquél que ya ha sido entregado [PRE-01].
Cuando se utiliza un modelo incremental, el primer incremento a menudo es un producto esencial,
es decir, se afrontan requisitos básicos, pero muchas funciones suplementarias (algunas
conocidas, otras no) quedan sin extraer. El cliente utiliza el producto central (o sufre la revisión
detallada). Como un resultado de utilización y/o de evaluación, se desarrolla un plan para el
incremento siguiente. El plan afronta la modificación del producto central a fin de cumplir mejor las
necesidades del cliente y la entrega de funciones, y características adicionales. Este proceso se
repite siguiendo la entrega de cada incremento, hasta que se elabore el producto completo. Los
primeros incrementos son versiones “incompletas” del producto final, pero proporcionan al usuario
la funcionalidad que precisa y también una plataforma para la evaluación. El desarrollo incremental
es particularmente útil cuando la dotación de personal no está disponible para una implementación
completa en la fecha límite que se haya establecido para el proyecto. Los primeros incrementos se
pueden implementar con menos personas [PRE-01].
Otro punto a considerar, es que pese a que el cliente está abierto a recibir nuevas soluciones a sus
problemas, no tiene claro cuáles son sus requisitos ideales. Debido a esto, la construcción
temprana del sistema nos puede llevar a desarrollar una solución inútil. Como solución a esto, se
entregará una versión del programa X-Pro-L con la implementación de algunas funciones, dejando
el proyecto abierto a que en una futura etapa de desarrollo, entregue una nueva versión del
proyecto que agregue nuevas funcionalidades (un incremento).
Incremento 2
Entrega de 2°
Análisis Diseño Código Prueba
Incremento
Incremento 3
Entrega de 3°
Análisis Diseño Código Prueba
Incremento
Incremento 4
Entrega de 4°
Análisis Diseño Código Prueba
Incremento
Planificación
Esta fase comienza cuando se han identificado los problemas o necesidades de negocios, cuya
solución requiere un análisis y especificación. En esta etapa el equipo de proyecto debe entender
al cliente en términos de sus problemas y dirección, sus capacidades técnicas y de organización y
su potencial futuro. Para esto hay que analizar:
En esta etapa no se debe pensar en posibles soluciones, sino solamente en el problema, es decir,
se de describir el problema en forma de requerimientos.
SQA debe corroborar que en la Especificación estén expresados todos los requerimientos, de
manera tal que puedan ser verificados en el producto final.
Análisis
Durante esta fase se analiza la Especificación de Requerimientos con el objetivo de identificar las
soluciones que satisfagan los requerimientos, se analizan diferentes alternativas de solución y se
selecciona solo una, y se genera el informe de Solución Propuesta [MA-02].
En la fase de Análisis, dentro de las actividades de SQA se incluye asegurar:
Diseño
Esta etapa se centra en el "cómo", en la forma cómo debe construirse el sistema de software de
acuerdo a la información obtenida de la etapa de análisis. En esta etapa se define como deberá
implementarse el sistema de software. Los modelos creados en la fase de análisis determinan
claramente cuál debe ser el comportamiento general del sistema en un entorno ideal. Los modelos
a crear en la fase de diseño determinan, ya sobre el entorno propio de la organización, cómo
deberá implementarse el sistema. Por otra parte, en esta fase el Equipo de Proyecto define la
funcionalidad y solución física que va a satisfacer los requerimientos definidos [MA-02].
En la fase de diseño, dentro de las actividades de SQA se incluye asegurar:
Implementación
Los componentes individuales son distribuidos por varias disciplinas y terceras partes. Es esencial
que el Equipo aplique los principios de control de cambios, administración de la configuración y
reportes. Esta fase involucra a muchas personas trabajando simultáneamente, pero con
independencia en tareas complejas. Por lo tanto, es muy importante que los planes para apoyar
esta fase sean conocidos y los roles y responsabilidades estén claramente definidas.
El software generado en la fase de implementación no puede ser “entregado” a los clientes, para
que funcione, sin practicarle antes una serie de pruebas. Las pruebas son tendientes a encontrar
defectos en el sistema final debidos a omisión o mal interpretación de alguna parte del análisis o el
diseño.
Los defectos deberán entonces detectarse y corregirse en esta fase del proyecto. En ocasiones los
defectos pueden deberse a errores en la implementación de código (errores propios del lenguaje o
sistema de implementación), aunque en esta etapa es posible realizar una efectiva detección de los
mismos, ellos deben ser detectados y corregidos en la fase de implementación.
El Plan de QA define todas las actividades de aseguramiento de calidad que se harán durante el
proyecto. La importancia de este plan reside en contar con un documento formal con instrucciones
explícitas acerca de la forma de llevar a cabo cada una de las actividades previamente planificadas
y de esta forma poder controlar cada una de las variables que inciden en el correcto desarrollo del
producto.
Modelo de Desarrollo
3.2.2 Atributos de calidad (evaluados por SQA) por actividades del proceso de desarrollo
Producto Planificación
Objetivo Cuantificable La Planificación del proyecto debe respetar los plazos
establecidos.
Se requiere la participación del cliente.
Atributos de Calidad Claridad, Mantenimiento, Flexibilidad, Confiabilidad,
Corrección, Facilidad de uso, Eficiencia, Integridad.
Encargado (s) revisión final Gerente de Proyecto, Jefe de Proyecto, Cliente
Tabla 4: Planificación
Tabla 6: Análisis
Producto Diseño
Objetivo Cuantificable No se debe consumir más de un 60% del tiempo total del
Proyecto.
Se requiere de la participación del Arquitecto de Sistema.
Se requiere la participación del Diseñador.
Se requiere de la participación del Jefe de Proyectos.
Se requiere participación del Analista de Negocios
Se debe definir la Funcionalidad y Solución Física que va a
satisfacer los Requerimientos en un 90%.
Se debe planificar cómo se va a implementar y aceptar la
Solución Propuesta en un 90%.
Se debe planificar el soporte de la Solución Propuesta en un
90%.
Tabla 7: Diseño
Producto Implementación
Objetivo Cuantificable No se debe consumir más de un 60% del total del Proyecto.
Las Pruebas no deben superar más del 30% del total del
Proyecto.
Los componentes de la Solución deben ser construidos en
un 100%.
Las Pruebas deben cubrir el 100% de los Componentes
construidos.
Atributos de Calidad Corrección, Claridad, Mantenimiento, Integridad,
Completitud, Facilidad de uso, Integridad, Eficiencia
Encargado (s) revisión final Jefe de Proyecto, Cliente, Arquitecto de Sistema
Tabla 8: Implementación
fscommand("allowscale", false);
fscommand("allowscale", false);
//our map is 2-dimensional array
myMap1 = [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
Se identifican como puntos de revisión aquellos que permiten validar y controlar las tareas
realizadas dentro de cada etapa del ciclo de desarrollo y por cada cambio producido en
mantención. Debe ser utilizado por la unidad de SQA durante la planificación para verificar el
correcto establecimiento de los hitos de calidad [WEB-01].
Planificación
Análisis
Diseño
Implementación
Operación (Mantención)