Está en la página 1de 3

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

Plantear el diseño y determinar el

modelo de ciclo de vida más idóneo para esta aplicación.

2. Planificar la codificación. Indicar el lenguaje de programación y las herramientas que se usarían para la

obtención del código fuente, objeto y ejecutable, explicando el por qué esas herramientas.

3. Planificar las restantes fases del ciclo de vida, indicando en cada una el objetivo que persigues y cómo lo

harías.

4. Indicar el ciclo de vida que se usaría.

1. Este Plan de Desarrollo del Software es una versión previa preparada para ser
incluida en la propuesta elaborada como respuesta al proyecto “software de aplicaciones”. Este documento dispone una
visión global del enfoque de desarrollo propuesto.
Su enfoque constituye en el proceso de vender productos estéticos, de acuerdo a las características del proyecto.
En este se usa el cliclo de vida de modelo en espiral.

Comenzaremos el análisis de requisitos del sistema detallando los requisitos funcionales y no funcionales del
sistema.
Los requisitos funcionales podemos describirlos como las funciones que tendrá que realizar nuestra aplicación. En este
caso son las siguientes:

• Proporcionar facturas de las ventas. → crear facturas automáticamente en realizar cada compra, teniendo un
servicio ininterrumpido a lo largo del año.
• Llevar la cuenta de lo que vende cada trabajador. → cada trabajador tendrá asignado un tipo de producto,
por ejemplo: trabajador 1 > encargado de los productos maquillaje, trabajador 2 > encargado de la cosmética,
etc...
• Controlar el stock de productos en almacén. → revisar, registrar, controlar, actualizar cada día.
• Operar con lector de código de barras y tarjetas de crédito. → utilizar un lector de código de barras en
cada producto antes de enviarlo a los clientes (para un mejor control del stock) y permitir operar con tarjetas de
crédito para poder realizar una compra.
• Controlar los precios de los productos y ofrecer la posibilidad de operar con ellos. → permitir descuentos
en precios totales elevados.
• La empresa también quiere almacenar información de sus trabajadores. → una carpeta individual sobre
cada trabajador, en la cual estrá incluida la información siguiente: DNI, nombre y apellidos, número de la
Seguridad Social, fecha de nacimiento, teléfono y localidad.

• Almacenar información de los productos que nos interesa almacenar. → en cada producto habrá un
apartado de información sobre éste, en la cual podremos ver su código, marca, nombre comercial, precio,
cantidad.

Los requisitos no funcionales son la características que debe tener el programa al completo evitando los datos. Para
nuestro caso serían las siguientes:

• El tiempo de respuesta de la aplicación ha de ser lo menor posible. → hacer un suo de la aplicación rápido
y sencillo para los clientes.
• No se podrán procesar dos peticiones a la vez, aunque haya varios equipos funcionando
simultáneamente.

La Empresa BK requiere de un sistema de información personalizado, que permita suministrar la dicha información de
manera oportuna, confiable, actualizada y relevante a los procesos mencionados anteriormente.
También habrá reuniones semanales. Estas tendrán como objetivo analizar y comentar las compras que se han ido
haciendo a lo largo de cada semana, qué producto (o tipo de producto) ha tenido mejor éxito y cual menos, revisar
detalladamente el sistema (si existen posibles errores o mejoras) y escuchar opiniones que podrían llevar a futuros
éxitos.
Seguidamente, podemos mencionar el plan de pruebas, que se va a utilizar en la fase de pruebas.

En cuanto al sistema gestor de Bases de Datos hemos decido usar MySql ya que es un sistema relacional y además se
puede utilizar como software libre.

2. Necesitaremos herramientas para poder gestionar el código fuente, como por ejemplo:

➢ GitHub → revisa el nuevo código, observa los cambios de código visual y combina con confianza los cambios
de código con verificaciones de estado automatizadas.
➢ Notepad++ → código de texto que admite varios idiomas y utiliza API (interfaz de programación de
aplicaciones) y STL (biblioteca de plantillas estándar).
➢ Visual Studio Code → herramienta de edición de código fuente para MacOS, Windows y Linux.

Antes de empezar con la codificación, primero debemos diseñar y manejar los algoritmos, lo cual nos ayudará a que la
codificación posterior se realice más rápidamente y tenga menos errores. A partir de ahí, se utilizará la codificación
deductiva, ya que en esta se elabora un libro de códigos como referencia para guiar este proceso y, aparte, ahorrar
tiempo y ayuda a garantizarla.
Sobre el lenguaje, he elegido para la ocación el lenguaje de programación de alto nivel, ya que traducen los algoritmos a
un lenguaje mucha más fácil de entender para el programador y se pueden ejecutar en cualquier tipo de ordenador.

El lenguaje de programación que he elegido ha sido Java. Si ocurre cualquier error se podría depurar con facilidad, y es
un lenguaje reutilizable de cara a querer sacar una nueva versión de este mejorada: todo esto gestionado por una base de
datos MySQL para poder utilizarlo con java.

3. Una vez obtenido el software, la siguiente fase del ciclo de vida es la realización de pruebas.
Esta fase es obligatoria para la validación y verificación del software construido, es decir, comprobar si el software hace
lo que el usuario deseaba.

Para esta fase, usaríamos las pruebas unitarias, que consisten en probar, de manera individual, las diferentes partes de
software y comprobar su funcionamiento.
Como resultado, se genera un documento de procedimiento de pruebas, que tendrá como partida el plan de pruebas de la
fase de diseño. Éste incluye los resultados obtenidos y deben ser comparados con los resultados esperados que se habrán
determinado de antemano.
Para finalizar esta fase del proyecto, realizaremos una prueba final: BETA TEST, la cual realizaremos la instalación,
configuración y puesta en funcionamiento de la aplicación en los equipos del cliente. Y por último, los usuarios finales
comenzaran a usar la aplicación.

Finalmente tenemos la fase te mantenimiento, en el cual realizaremos los procesos de control, mejora y optimización
del software. Para ello, ajustaremos con el cliente los costes económicos y la duración del servicio de mantenimiento
que mejor se adapten a sus necesidades. El mantenimiento debe cubrir distintos cambios, como pueden ser:

➢ Perfectivos: mejora de la funcionalidad del software.


➢ Evolutivos: el cliente propone mejoras para el producto, implicando nuevos requisitos.
➢ Adaptativos: para adaptarse a las nuevas tendencias del mercado (actualizaciones, modificaciones, etc..)
➢ Correctivos: resolver los errores detectados.

4. He elegido el modelo en espiral de ciclo de vida por los motivos siguientes:

✔ si el proyecto es grande
✔ si se quiere que las liberaciones de software sean frecuentes
✔ si hay un alto grado de cambios y estos pueden aparecer en cualquier momento

Aparte, este modelo tiene sus ventajas que favorecen el proyecto:


✔ la funcionalidad adicional o los cambios se pueden hacer en una etapa posterior
✔ el desarrollo continuo o repetido ayuda en la gestión de riesgos
✔ siempre hay espacio para atender los comentarios de los clientes
✔ se adapta completamente a la naturaleza evolutiva del software
✔ reduce los riezgos antes de que sean problemáticos

Una fase también imprescindible es la fase de la documentación. En esta tendremos que dejar todas las etapas
perfectamente documentadas. Aunque, no debe ser considerada como una etapa más en el desarrollo del proyecto, ya
que es constante durante todo su ciclo de vida.
De acuerdo al destinatario final de los documentos, crearemos tres grandes bloques:

• Guía técnica → dirigido a los analistas/programadores, para facilitar un correcto desarrollo, realizar
correcciones en los programas y permitir un mantenimiento futuro.
• Guía de uso → dirigido a los usuarios de este (los clientes), con el objetivo de darles toda la información
necesaria para utilizar la aplicación.
• Guía de instalación → dirigidos al personal informático responsable de la instalación, dando toda la
información necesaria para garantizar que la implantación de la aplicación se realice de forma segura,
confiable y precisa.

También podría gustarte