Está en la página 1de 4

Enunciado.

La empresa BK ha recibido un nuevo encargo de software. Se trata de diseñar una


aplicación para una tienda especializada en vender productos estéticos. La tienda desea
trabajar con software libre. Además, desea explícitamente que la aplicación sea capaz de
cumplir las siguientes tareas:
• Proporcionar facturas de las ventas.
• Llevar la cuenta de lo que vende cada trabajador.
• Controlar el stock de productos en almacén.
• Operar con lector de código de barras y tarjetas de crédito.
• Controlar los precios de los productos y ofrecer la posibilidad de operar con ellos.
• El tiempo de respuesta de la aplicación ha de ser lo menor posible.
• No se podrán procesar dos peticiones a la vez, aunque haya varios equipos
funcionando simultáneamente.
• La empresa también quiere almacenar información de sus trabajadores: DNI,
nombre, apellidos, número de la Seguridad Social, fecha de nacimiento, teléfono y
localidad. Asimismo, de los productos interesa almacenar: código, marca, nombre
comercial, precio, cantidad.
Tendrás que diseñar una planificación del proyecto de desarrollo de ese software que
cumpla con las premisas estudiadas en la presente unidad de trabajo.
Esencialmente, el proyecto se divide en los siguientes apartados:

1. Sintetiza el análisis de requerimientos del sistema para nuestro cliente. Plantea


el diseño y determina el modelo de ciclo de vida más idóneo para esta aplicación.
Análisis de requerimientos del sistema:

REQUISITOS FUNCIONALES:
- Proporcionar las facturas de las ventas:
- Llevar la cuenta de lo que vende cada trabajador;
. Controlar el stock de almacén;
- Operar con código de barras y tarjeta de crédito
- Controlar los precios de los productos y ofrecerá la posibilidad de operar
con ellos;
- Almacenar siguiente información del trabajador: DNI, Nombre y
Apellido, Número de la seguridad social, Fecha de nacimiento, Teléfono y
Localidad;
- Almacenar la siguiente información de los productos: Código, Marca,
Nombre comercial, Precio y Cantidad

REQUISITOS NO FUNCIONALES:
- El tiempo de respuesta de la aplicación ha de ser lo menor posible;
- No se podrán procesar dos peticiones a la vez, aunque haya varios
equipos funcionando simultáneamente

Planteamiento del diseño y determinación del modelo de ciclo de vida:


El software deberá permitir almacenar y trabajar con todos los datos que se
manejan en una empresa de venta.
El modelo de ciclo de vida usaría un Modelo Evolutivo que cuenta con la
naturaleza evolutiva de la aplicación y concretamente, el Modelo Iterativo
Incremental, que es un modelo que nos permite realizar cambios en cualquier fase
y en cualquier momento, así si nos solicitan algún cambio o ampliación
posteriormente podríamos realizarla fácilmente.

2. Planifica la codificación, indicando el lenguaje de programación y las


herramientas que usarías para la obtención del código fuente, objeto y
ejecutable, explicando por qué eliges esas herramientas.

LENGUAJE DE PROGRAMACIÓN: Java, porque el cliente quiere que se use un


lenguaje de código abierto

HERRAMIENTAS PARA LA OBTENCIÓN DEL CÓDIGO FUENTE, OBJETO Y


EJECUTABLE: JRE (Java Run Environment), contiene además de la máquina virtual
de java todas las utilidades necesarias para ejecutar java en cualquier plataforma. La
máquina virtual es la encargada de compilar y permite ejecutar.
3. Planifica las restantes fases del ciclo de vida, indicando en cada una el objetivo
que persigues y cómo lo harías.

PRUEBAS:

Unitarias para probar el funcionamiento de cada una de sus partes (para ello usaría
Junit ya que también es código abierto y es el más popular)

De Integración: Para probar las diferentes partes juntas (para ello usaría TestNG
que también permite hacer pruebas de integración más complejas que el Junit)

EXPLOTACIÓN:

Para la instalación, puesta a punto y puesta en funcionamiento me desplazaría a la


sede del cliente, e instalaría en el servidor para que sea accesible desde cualquier
consola de la empresa que tenga que usarlo, intentaría que, al menos, un
responsable estuviera presente para ir explicando el proceso.

MNTENIMIENTO:

Al ser algo necesario para asegurar una vida larga a nuestra aplicación (poder
adaptarla a nuevos equipos, o incluso a nuevas circunstancias de la empresa), el
buen funcionamiento (corrección de errores a lo largo de la vida útil de la
aplicación), les propondría un mantenimiento anual con un coste mensual en el
que se contemplaran incluidos los cambios correctivos y adaptativos, sin embargo,
para cambios perfectivos, evolutivos los haría bajo presupuesto

DOCUMENTACIÓN:

Guía Técnica: Donde dejamos constancia de diseñó la aplicación, la codificación


del programa y las pruebas que se han realizado, así facilitamos el mantenimiento;
Guía de uso: Dónde explicaremos el funcionamiento de la aplicación así como el
cómo usar el programa, los requerimientos para poder ejecutarla y la solución a
los problemas que hemos detectado que pueden ocurrir. Se la entregaremos al
cliente para que conozca su funcionamiento y pueda resolver las dudas más
comunes
4. Indica el ciclo de vida que usarías.
El modelo de ciclo de vida usaría un Modelo Evolutivo que cuenta con la naturaleza
evolutiva de la aplicación y concretamente, el Modelo Iterativo Incremental, que es
un modelo que nos permite realizar cambios en cualquier fase y en cualquier
momento, así si nos solicitan algún cambio o ampliación posteriormente podríamos
realizarla fácilmente.

También podría gustarte