Está en la página 1de 11

Maestría en Software

MSW118-Planificación y Control de Calidad y Seguridad del Software

EJERCICIO REVISIÓN DE CÓDIGO

1) Seleccionar una lista de chequeo para revisión de requerimientos y


utilizarla para encontrar al menos diez oportunidades de mejora para el
siguiente documento de requisitos.

Omninet: El Internet en Todas Partes


Documento de los Requisitos de Marketing
1. Alcance
Este documento especifica los requisitos de un grupo de quioscos para el acceso al Internet
denominado Omninet. Estos quioscos deberían proporcionar a los clientes que tengan dinero
en efectivo, tarjetas de crédito o tarjetas de débito el acceso simple, rápido y fiable al Internet
en lugares públicos en precios razonables por minuto de uso.
1.1 Términos, Acrónimos y Abreviaciones
Para los propósitos de este proyecto, las siguientes abreviaciones son necesarias:

AS Servidor de
Aplicaciones
(Application
Server)

Cable Conexión de
Internet de alta
velocidad por
cable por lo
menos a 128
KBPS

CC Tarjeta de
Crédito (Credit
Card) (para
pago):
American
Express, Visa o
MasterCard
CS Servidor de
Comunicaciones
(Communication
Server)

DBMS Sistema de
Gestión de Base
de Datos
(Database
Management
System)

DC Tarjeta de
Débito (Debit
card) (para
pago): PLUS o
redes Cirrus.

DSL Conexión de
Internet de Alta
Velocidad de
Línea de
Subscripción
Digital (Digital
Subscriber Line
high-speed
Internet
connection) por
lo menos a 128
KBPS

IE El navegador de
Internet
Explorador de
Internet
(Internet
Explorer)

KBPS Kilobits por


segundo

Quiosco El punto de
acceso libre e
independiente a
Internet de
Omninet
Linux El sistema
operativo Red
Hat Linux
Versión 8.0

Opera El navegador de
Internet gratuito
Opera

PIN Número de
Identificación
Personal
(Personal
Identification
Number) (para
la tarjeta de
débito)

PSTN La conexión de
Internet de Red
Telefónica
Pública

Conmutada (conectividad común


de acceso a internet por la red
telefónica) por lo menos a 50
KBPS

URL Localizador Universal de


Recursos (Universal
resource locator)

WS WS Servidor Web (Web


Server)

WXP El sistema operativo


Windows XP
Professional

1.2 Documentos Aplicables


[1] Véase el Documento de los Requisitos del Sistema
Omninet para los requisitos de diseño del sistema.
[2] Véase el Documento de los Prototipos de las Pantallas de
Omninet del quiosco y el centro de llamadas
(actualmente no disponible).

2. Fecha de la versión requerida


El primer conjunto de los 1.000 quioscos de Omninet
debería funcionar, aceptar los pagos y acceder al
Internet en el tercer cuartal financiero.
3. Descripción de los requisitos
3.1 Requisitos técnicos generales
Omninet debería proporcionar el acceso al Internet a
los usuarios en los aeropuertos, los centros
comerciales, los teatros y otros lugares públicos.
Omninet debería proporcionar el acceso a la
información a los agentes del centro de llamadas
acerca de las sesiones de los quioscos actuales y
anteriores, así como también la habilidad de controlar
las sesiones actuales.
3.1.1 Bienvenida
Entre las sesiones, cada quiosco de Omninet debería
mostrar un mensaje de bienvenida atractivo (véase el
prototipo de la pantalla K.1).
3.1.2 Pago
Una vez que el usuario navega pasada la pantalla de
Bienvenida, el quiosco debería dar al usuario la
opción de comprar un período de tiempo en la pantalla
de Pago (Véase el prototipo de la pantalla K.2). El
quiosco debería vender períodos de tiempo en
incrementos de (5) minutos, hasta (1) hora.
El sistema acepta las siguientes formas de pago:
 Efectivo (billetes solamente) (véase el
prototipo de la pantalla K.3)
 Tarjeta de crédito (Sólo American Express,
Visa o Mastercard) (véase el prototipo de las
pantallas K.4 y K.7)
 Tarjeta de débito (Redes PLUS o Cirrus
solamente) (véase el prototipo de las
pantallas K.5 y K.7)
Una vez que el período actual de tiempo está dentro
de los sesenta (60) segundos de la expiración, el
quiosco debería mostrar un mensaje emergente que
pregunta si el usuario quiere comprar más tiempo
(véase el prototipo de la pantalla K.9).
3.1.3 Navegador de Internet
En la pantalla de Bienvenida, cada quiosco de
Omninet debería brindar al usuario la elección de la
última versión de Netscape, Opera o Internet Explorer
(disponible en los quioscos con Windows solamente).
3.1.4 Rendimiento
En los quioscos que operan con una conexión PSTN,
los usuarios deberían tener una velocidad de conexión
mayor que 50 KBPS.
En los quioscos con conexiones DSL o de cable, los
usuarios deberían tener una velocidad de conexión
mayor que 128 KBPS.
3.1.5 Localización
Cada quiosco debería ser configurado para operar en
el idioma local principal para su sitio instalado.
En ubicaciones donde múltiples idiomas son
comúnmente utilizados, la pantalla de Bienvenida
debería permitir al usuario seleccionar el idioma para
la sesión.
Cada navegador del quiosco de Omninet debería ser
configurado para admitir todos los idiomas
compatibles con el sistema operativo y navegador.
3.1.6 Control de Contenido
Porque los usuarios de Omninet accederán a Internet
en lugares públicos, Omninet debería implementar el
bloqueo de los sitios para prevenir que se muestre
material pornográfico, objetable, indecente, obsceno o
material violento.
Omninet debería proteger cada quiosco contra el
envío o el recibimiento de un virus, un gusano u otro
código malicioso.
3.1.7 Terminación de la Sesión
Los usuarios pueden terminar las sesiones en una de
las dos maneras:
 Cerrando la sesión (no hay reembolso para el
tiempo inutilizado)
 Permitiendo que el tiempo expire.
3.1.8 Confidencialidad
Para proteger la confidencialidad del usuario—p.ej.,
las URLs visitadas — una vez que la sesión termine,
cada quiosco debería limpiar todas las cookies y otros
archivos descargados, limpiar el histórico de las URL,
salir del navegador y reiniciar el navegador en la
pantalla de Bienvenida.
3.2 Administración
3.2.1 Actualizaciones de Software
En circunstancias normales, las actualizaciones del
software tomarán lugar automáticamente. A las 2:00
AM del horario local, cada quiosco debería conectarse
a la granja de servidores y pedir actualizaciones. Esas
actualizaciones incluyen:
 Parches del sistema operativo o el navegador.
 Nuevos drivers de red, modem y gráficas.
 Logos nuevos.
 Tablasactualizadas de las tasas de los pagos
por minuto.
 Definiciones de virus, gusanos, código
malicioso u otro cortafuego.
 Sitios Web bloqueados.
Si no hay actualizaciones disponibles, el quiosco
debería desconectarse.
Si la aplicación de la actualización en el servidor de
aplicaciones le comunica al quiosco que está
sobrecargado, el quiosco debería desconectarse, luego
reintentar después de un tiempo. El retraso para el
reintento es un período aleatorio entre diez (10) y
sesenta (60) minutos.
Los agentes del centro de llamadas también pueden
realizar las actualizaciones de software a los quioscos.
3.2.2 Vista de los Quioscos
Los agentes del centro de llamadas deberían ser
capaces de navegar en una lista de los quioscos. Para
cada quiosco, los agentes del centro de llamadas
deben poder ver:
 La versión del sistema operativo actual.
 La versión actual del navegador.
 Tiempso total de funcionamiento desde la
instalación.
 Laactualización total desde la última
actualización de software.
 El número de caídas, los reinicios u otras
fallas peligrosas desde la última actualización
de software.
Los quioscos deben conectarse a la granja de
servidores una vez por hora para informar su estado.
Si un quiosco no se conecta a la granja de servidores,
el agente del centro de llamadas puede obligar una
conexión para comprobar el estado.
Si un quiosco está desconectado, ese quiosco debería
mostrarse al principio de la lista de los quioscos,
resaltado en rojo.
3.2.3 Vista de los Usuarios
Para aquellos quioscos que tienen usuarios activos, los
agentes del centro de llamadas deberían tener acceso
a la siguiente información:
 URLs actuales y anteriores.
 Número de tarjeta de crédito o débito (si es
aplicable).
 Nombre (si es disponible de la validación de
la tarjeta de crédito).
 Cantidad pagada para esta sesión.
 Períodos comprados de tiempo.
 Sesión
anterior (si está disponible del número
y nombre de la tarjeta de crédito).
 Tiempo restante pagado.
3.2.4 Modificar el Usuario
Los agentes del centro de llamadas deberían ser
capaces de modificar la sesión de los usuarios
añadiendo períodos de tiempo.
La anulación supervisada es necesaria para que un
agente añada más de sesenta (60) minutos de tiempo
por día.
3.2.5 Terminar el Usuario
Si un agente del centro de llamadas cree que un
usuario ha participado en la utilización ilegal,
inapropiada o fraudulenta de una sesión, el agente
puede terminar esa sesión.
El usuario debería recibir un reembolso por cualquier
tiempo no utilizado al momento de la terminación.
El usuario debería recibir un mensaje de que la sesión
fue terminada por una actividad inapropiada. El
mensaje debería especificar la cantidad del reembolso.
2. Seleccionar una lista de chequeo para revisión de código y utilizarla para
encontrar al menos diez oportunidades de mejora para refactorizar el
siguiente código.

Lista de chequeo

Practica ¿Cumple? Errores Líneas Sentencia


Código duplicado NO 0

Variables duplicadas SI 2 10,11 10. void getInputs(float *base, float


power, float *S){
11. float base, power;
Variables no SI 2 19,20 19. *Base = &base;
definidas 20. *P = &power; }
Variable sin valor SI 2 23,24 22. float total;
23. if (Scale != 1) total == pow(base,
power) * Scale;
24. else total == pow(base, power);
Código Muerto NO 0

Complejidad de NO 0
métodos

Error de Seguridad NO 0

Errores gramaticales NO 0

Líneas de código SI 1 23 23. if (Scale != 1) total == pow(base,


largas power) * Scale;

Mal Formato SI 2 23,24 23. if (Scale != 1) total == pow(base,


power) * Scale;
24. else total == pow(base, power);
Mal uso de memoria NO 0

No liberar recursos NO 0
adecuadamente

Recursivo infinito NO 0

Metodos no SI 2 8,23,24 8. ShowIt(doCalculations(base,


declarados *power));
23. if (Scale != 1) total == pow(base,
power) * Scale;
24. else total == pow(base, power);
Sin Comentarios la Si 3 1,2,3 1. void getInputs(float *, float *,
Firma del método float*);
2. float doCalcs(float , float , float);
3. void ShowIt(float);
No cumple los tipos SI 1 25 21. float doCalcs(float base, float
de datos de power, float Scale){
parámetros de 25.return;}
entrada y salida
Identación NO 0
Total 13
3. Seleccionar una lista de chequeo para revisión de base de datos y
utilizarla para encontrar al menos diez oportunidades de mejora para
refactorizar el siguiente código.

https://www.lucidchart.com/pages/es/que-es-un-diagrama-entidad-relacion

También podría gustarte