Entorno Desarrollo Tarea01 Desarrollo de Software
Entorno Desarrollo Tarea01 Desarrollo de Software
Enunciado
Tendrs que disear una planificacin del proyecto de desarrollo de ese software que cumpla
con las premisas estudiadas en la presente unidad de trabajo.
El modelo de ciclo de vida elegido ser en cascada con retroalimentacin puesto que los
requisitos de la aplicacin estn claros y el proyecto es rgido (pocos cambios, poco evolutivo).
Con este mtodo, si es necesario se puede volver atrs en cualquier momento y corregir,
modificar o depurar aspectos necesarios.
Otra opcin, un poco ms compleja, sera aplicar como ciclo de vida, el modelo iterativo
incremental. ste est basado en el modelo en cascada con realimentacin, donde las fases se
repiten y refinan, y van propagando su mejora a las fases siguientes.
Una de las especificaciones del cliente es que desea utilizar software libre. Teniendo en cuenta
que cualquier cdigo fuente, debe de presentar caractersticas como modularidad, correccin,
fcil de leer, eficiencia y portabilidad, una buena eleccin es usar como lenguaje de
programacin Java, que adems de facilitar la consecucin de las caractersticas anteriormente
expuestas se trata de un software libre y permite programacin orientada a objetos, que nos
dar la suficiente libertad para poder crear una aplicacin lo bastante amplia para abarcar
cualquier requerimiento solicitado por el cliente.
Al tratarse un lenguaje ampliamente difundido, tambin dispone de una amplia gama de
libreras que puede facilitar mucho nuestro trabajo.
Como entorno de desarrollo se puede usar NetBeans ya que es una herramienta consolidada en
el mercado.
Como requisitos funcionales (funciones que tendr que realizar la aplicacin) tenemos los
siguientes:
Proporcionar facturas de las ventas.
Llevar la cuenta de lo que vende cada trabajador.
Controlar el stock de productos en almacn.
Operar con lector de cdigo de barras y tarjetas de crdito.
Controlar los precios de los productos y ofrecer la posibilidad de operar con ellos.
Almacenar los datos de los empleados (trabajadores): o DNI o Nombre
o Apellidos o N
Seguridad Social o
Fecha de nacimiento
o Telfono o
Localidad
Almacenar informacin de los
productos: o Cdigo o Marca o
Nombre comercial o Precio o
Cantidad
Se planificar una serie de reuniones con el cliente para evitar requisitos mal planteados o que
se produzcan contradicciones.
Se le puede sugerir una serie de mejoras, que incluyan por ejemplo, incluir los datos de los
clientes para facilitar el sistema de facturacin.
Puesto que el cliente especifica que se quiere controlar el stock, se aadir un campo para
controlar el stock mnimo de un producto y que de una alerta para un mejor control por parte
del usuario final.
Diseo:
En esta etapa vamos a dividir el sistema en partes y a determinar la funcin de cada una
de ellas. Debemos determinar que har exactamente cada parte, para ello debemos
crear un modelo funcional-estructural de los requerimiento del sistema global y poder as
dividirlo y afrontar las distintas pares por separado.
Ventas
empleado
Cliente Stock
Lector
cdigo de
Factura Java barras
Tarjeta de
Crdito
Descripci
n Precio
Producto
Empleado
Tenemos dos entidades ya definidas con claridad como son Empleados y Productos. Tendramos
que crear otras como son Ventas con la que podramos obtener los productos vendidos, las
facturas a emitir, los empleados que han realizado la venta, etc.
Factura en la que se grabar toda la informacin individual de cada producto vendido, y
Cliente para poder identificar a quin se le realiza la venta e ir controlando los pedidos
realizados.
Gestin de Empleados.
Debe de realizar todas las acciones relacionadas con la gestin de los productos (alta, baja,
modificacin, consulta). La informacin de los productos se guardar en una tabla de la base de
datos con los siguientes campos: idEmpleado, nif, nombre, apellidos, numSeguridadSocial,
fechaNacimiento, telefono, localidad, idVenta.
Gestin de Productos.
Debe de realizar todas las acciones relacionadas con la gestin de los productos (alta, baja,
modificacin, consulta). La informacin de los productos se guardar en una tabla de la base de
datos con los siguientes campos: idProducto, nombre, descripcion, marca, precioCompra,
precioVenta, stockMinimo, cantidad.
Gestin de Clientes.
Debe de realizar todas las acciones relacionadas con la gestin de los clientes (alta, baja,
modificacin, consulta). La informacin de los clientes se guardar en una tabla de la base de
datos con los siguientes campos: idCliente, nif, nombre, apellidos, direccion, telefono.
Gestin de Ventas.
Debe de realizar todas las acciones relacionadas con la gestin de los pedidos (alta, baja,
modificacin, consulta). La informacin de los pedidos se guardar en una tabla de la base de
datos con los siguientes campos: idVenta, idCliente, fecha, idEmpleado, importeTotal, cobrada.
Gestin de Facturas.
Debe de realizar todas las acciones relacionadas con la gestin de los pedidos (alta, baja,
modificacin, consulta). La informacin de los pedidos se guardar en una tabla de la base de
datos con los siguientes campos:
idFactura, idVenta, cantidad, idProducto, precio, descuento, formaPago.
Codificacin:
Para facilitar la futura expansin de la empresa se optar por usar un lenguaje de programacin
multiplataforma como ya se mencion al principio del documento. Como sistema gestor de
base de datos, se puede usar Microsoft SQL Server 2014 Express, puesto que se puede
descargar de forma gratuita. Es un software potente, robusto y estable, que cubre las
necesidades del cliente, sin aumentar los costos.
Pruebas:
La realizacin de pruebas es imprescindible para asegurar la validacin y verificacin del
software construido. En esta etapa se prueban los programas para detectar errores y se
depuran.
El fichero objeto se usa para realizar las pruebas unitarias mediate JUnit que es el entorno de
pruebas para Java.
Una vez realizada con xito las pruebas unitarias, realizaremos las pruebas de integracin.
Comprobaremos el funcionamiento de todo el sistema con todas sus partes interrelacionadas,
para lo cual contactaremos con el cliente con el fin de poder implementar en sus equipos una
versin Beta que nos permita probar su desarrollo en el entorno donde se implantar
definitivamente.
El perodo de prueba ser pactado con el cliente.
Documentacin:
Gua tcnica.
Gua de uso.
Con este documento buscamos dar a los usuarios finales toda la informacin necesaria para
utilizar la aplicacin. Contendr la descripcin de la funcionalidad de la aplicacin, la forma de
comenzar a ejecutarla, ejemplos de uso del programa, los requerimientos software de la
aplicacin y la solucin de los posibles problemas que se pueden presentar. Este documento ir
dirigido a los usuarios que van a usar la aplicacin (clientes).
Gua de instalacin.
A travs de este documento se pretende dar toda la informacin necesaria para garantizar que
la implantacin de la aplicacin se realice de forma segura, confiable y precisa. Contendr toda
la informacin necesaria para poner en marcha la aplicacin, para su explotacin y para
mantener la seguridad del sistema.
Este documento estar dirigido al personal informtico responsable de la instalacin, en
colaboracin con los usuarios que van a usar la aplicacin (clientes).
Explotacin:
La fase de explotacin es la fase en la que los usuarios finales conocen la aplicacin y comienzan
a utilizarla.
En este momento, llevaremos a cabo las Beta Test, que son las ltimas pruebas que se realizan
en los propios equipos del cliente y bajo cargas normales de trabajo.
Una vez instalada la aplicacin, pasaremos a la fase de configuracin. En ella, asignaremos los
parmetros de funcionamiento normal y probaremos que la aplicacin es operativa.
Mantenimiento:
Por ello, se pactar con el cliente un servicio de mantenimiento de la aplicacin. Este servicio,
tendr un coste temporal y econmico.
Durante este proceso se realizar el control, mejora y optimizacin del software.
Tambin tendremos en cuenta aspectos como nuevas necesidades del cliente, adaptaciones a
nuevas tendencias del mercado o nuevos componentes software y la correccin de posible
errores futuros.
Le ofreceremos al cliente un precio por un mantenimiento perfectivo (que mejorar su
funcionalidad), evolutivo (modificaciones o expansiones para futuras nuevas necesidades),
adaptativo (modificaciones o actualizaciones que se adapten a las nuevas tendencias del
mercado o nuevos componentes hardware) y correctivos (para errores que pueda tener la
aplicacin en el futuro).