proyecto gasolineria

22
0 UNIVERSIDAD POLITÉCNICA DE TULANCINGO INGENIERÍA EN SISTEMAS COMPUTACIONALES Proyecto Final “Administración de una Gasolinera” Asignatura: Programación Orientada a Objetos Catedrático: Luis Roberto Morales Manilla Integrantes: Karina Vargas Vargas 1130043 Cesar Pérez Hernández 1230125 Vicente Sánchez Flores 1130073 Luis Demetrio López Sosa 1230232 Tulancingo de Bravo, Hgo a 15 de Agosto de 2013

Upload: cesar-perez

Post on 19-Jan-2016

52 views

Category:

Documents


1 download

TRANSCRIPT

0

UNIVERSIDAD POLITÉCNICA DE TULANCINGO

INGENIERÍA EN SISTEMAS COMPUTACIONALES

Proyecto Final “Administración de una Gasolinera” Asignatura: Programación Orientada a Objetos Catedrático: Luis Roberto Morales Manilla Integrantes: Karina Vargas Vargas 1130043 Cesar Pérez Hernández 1230125 Vicente Sánchez Flores 1130073 Luis Demetrio López Sosa 1230232

Tulancingo de Bravo, Hgo a 15 de Agosto de 2013

1

Contenido

Definición del problema……………………………………………..……. 2

Análisis del problema …………………………………………...……..… 3

Objetivo ……………………………………….………………………..….. 3

Diseño del algoritmo………………………………………………………. 4

a) Diagrama de flujo…………………………………………………… 4

b) Diagrama de clases…………………………………………………6

c) Pseudocódigo…………………………………………………….… 7

Pruebas……………………………………………………………………..12

Arquitectura del sistema………………………………………………… 13

Especificación del software………………………………………………13

Manual de usuario…………………………………………………………14

Conclusiones……………………………………………………………… 18

Bibliografía………………………………………………………………… 21

2

DEFINICIÓN DEL PROBLEMA

Administración de gasolinera.

Desarrollar un programa que permita llevar el control de las ventas de una

gasolinera. Esta última vende al día una por cantidad de litros de gasolina magna,

y gasolina Premium.

Vende también frascos de anticongelante, aceite de motor, liquido de frenos y

aditivo para gasolina. Todos en envases de litro. La gasolina lleva un reporte de

las ventas al día realizadas por cada uno de los 3 vendedores que atienden cada

una de las 3 bombas que hay.

Existe también un reporte de las existencias de litros de cada una de las gasolinas

y de la cantidad de frascos de los diversos líquidos que cada bomba tiene

asignado.

Se cuenta con una lista de precios para todo lo q se vende la cual sirve para hacer

los cálculos de las ventas.

El objetivo de este proyecto es llevar el control de una gasolinera que tiene dos

tipos de gasolina ala venta la magna y Premium, a su vez también tienen a la

venta otros productos como frascos de anticongelante, aceite de motor, líquido de

frenos y aditivo para gasolina. Todos en envases de litro, para que el control sea

3

mas concreto tiene un reporte de las ventas al día realizadas por cada uno de los

3 vendedores que atienden cada una de las 3 bombas que hay.

OBJETIVO

Realizar un programa que permita la administración de una gasolinera, tomando

en cuenta que se tienen 3 bombas, con una serie de productos a la venta por cada

una, que permita que el usuario pueda comprar n número de litros de gasolina al

día, al final imprimir un reporte de venta que se obtuvo al día.

Todo esto se debe realizar con las estructuras aprendidas, desarrolladas y

realizadas durante el curso de Programación Orientada a Objetos, cabe mencionar

que algunas de las cuales no fueron aprendidas en el curso sin embargo se tienen

que desarrollar en el proyecto, esto nos hace que el programa sea aún más

interesante y complicado.

Por último el objetivo es utilizando las diferentes clases y programas que podamos

hacer una combinación y finalmente hacer un buen resultado en el proyecto y

cumplir con las especificaciones que se nos pidan

DISEÑO DEL ALGORITMO

4

a) Diagrama de flujo

5

6

B) Diagrama de clases

bomba 1

bomba2

bomba3

nombre usuario

Menu

Gasolina Magna

Gasolina Premiun

Frascos de anticongelante

Aceite de motor

Liquido de frenos

Aditivo para gasolina

Selecion de bomba

int i, j, a = 0;

int b,c;

int opcion;

int total;

int t1;

int t2;

int t3;

String vendedor;

int subtotal;

int g1 = 1;

int g2 = 1;

int g3 = 1;

int g4 = 1;

int g5 = 1;

int g6 = 1;

int ga1 = 1;

int ga2 = 1;

int ga3 = 1;

int ga4 = 1;

int ga5 = 1;

int ga6 = 1;

int gas1 = 1;

int gas2 = 1;

int gas3 = 1;

int gas4 = 1;

int gas5 = 1;

int gas6 = 1;

int b1 = 1;

int op;

int bomba1 = a;

int bomba2 = b;

int bomba3 = c;

Control Ventas

Logo

Logo

LA BOMBA 1

LA BOMBA 2

LA BOMBA 3

Total vendidio por cada

bomba

ReporteDiario

7

C) Pseudocódigo VAR

int opcion, g1 = 1, g2 = 1, g3 = 1, g4 = 1, g5 = 1, g6 = 1 ENTERO

vendedor; CADENA

INICIO

método seleccionBomba

hacer

hacer

mostrar "bomba 1

mostrar "bomba 2"

mostrar "bomba 3"

mostrar "Elige una opcion: "

leer o

según sea o

en caso 1

mostrar “nombre del vendedor”

leer vendedor

entonces

mostrar “MENU"

mostrar “*****************************”

mostrar “TIPO PRECIOS"

mostrar “1 -Gasolina Magna $11”

mostrar “2 -Gasolina Premium $12”

mostrar “3 -Frascos de anticongelante $20”

mostrar “4 -Aceite de motor $30”

mostrar “5 -Líquido de frenos $40”

mostrar “6 -Aditivo para gasolina $60”

mostrar “*****************************”

8

leer opcion

si opcion =1 entonces

mostrar “Ingrese la cantidad de litros”

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

si opcion =2 entonces

mostrar “Ingrese la cantidad de litros”

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

si opcion =3 entonces

mostrar “Ingrese la cantidad de litros”

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

si opcion =4 entonces

mostrar “Ingrese la cantidad de litros”

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

si opcion =5 entonces

mostrar “Ingrese la cantidad de litros”

9

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

si opcion =6 entonces

mostrar “Ingrese la cantidad de litros”

leer “l

subtotal = g1*l

mostrar ”la cantidad es”, subtotal”

fin según sea

mostrar “¿desea otro producto?”

mientras

opcion = 1

subtotal = t3++

mostrar “el subtotal a pagar es el siguiente, subtotal

fin mostrar mientras

método ReporteDiario

mostrar "************************************************"

mostrar "LA BOMBA 1"

mostrar "TIPO Cantidad"

mostrar "1 -Gasolina Magna"+"g1

mostrar "2 -Gasolina Premiun"+"+g2);

mostrar "3 -Frascos de anticongelante"+"+g3

mostrar "4 -Aceite de motor"+"+g4

mostrar "5 -Liquido de frenos"+"+g5

mostrar "6 -Aditivo para gasolina"+"+g6

10

mostrar"************************************************"

mostrar "El total vendido es el siguiente: $" + pesos

mostrar "************************************************"

mostrar "************************************************"

mostrar "LA BOMBA 2"

mostrar "TIPO Cantidad"

mostrar "1 -Gasolina Magna"+"g1

mostrar "2 -Gasolina Premiun"+"+g2);

mostrar "3 -Frascos de anticongelante"+"+g3

mostrar "4 -Aceite de motor"+"+g4

mostrar "5 -Liquido de frenos"+"+g5

mostrar "6 -Aditivo para gasolina"+"+g6

mostrar"************************************************"

mostrar "El total vendido es el siguiente: $" + pesos

mostrar "************************************************"

mostrar "************************************************"

mostrar "LA BOMBA 3"

mostrar "TIPO Cantidad"

11

mostrar "1 -Gasolina Magna"+"g1

mostrar "2 -Gasolina Premiun"+"+g2);

mostrar "3 -Frascos de anticongelante"+"+g3

mostrar "4 -Aceite de motor"+"+g4

mostrar "5 -Liquido de frenos"+"+g5

mostrar "6 -Aditivo para gasolina"+"+g6

mostrar"************************************************"

mostrar "El total vendido es el siguiente: $" + pesos

mostrar "************************************************"

total=t1+t2+t3;

mostrar"El total vendido en todas las bombas es el siguiente: $" , total + pesos

fin hacer mientras

FIN

12

PRUEBAS

PRUEBA CUMPLE OBSERVACIONES

El Programa se realizó en el sistema Java con Netbeans

Si Si

El programa se ejecuta correctamente Si Si

El programa permite la selección de bombas Si Si el programa si permite la

selección de bombas

El programa permite mostrar el menú Si Si lo muestra

Se puede seleccionar cualquier opción del menú Si Si lo permite

Permite comprar otro producto Si Si

Imprime el reporte Si Si

El programa cumple con los requerimientos establecidos por el usuario

Si Si

13

ARQUITECTURA DEL SISTEMA

La aplicación podrá ser instalada en cualquier equipo ya que es de fácil manejo y

administración y además tiene una confiable y segura aplicación haciendo este

programa de fácil manejo para el usuario con una muy marcada revisión de las

especificaciones de lo que el usuario y el problema nos pide, cabe mencionar que

los primeros días no fue fácil ya que conforme fue aumentando la codificación fue

aumentado la complejidad de la aplicación

ESPECIFICACIÓN DEL SOFTWARE

Se trabajó con Java en el entorno de desarrollo denominado Netbeans versión IDE

7.3, cabe mencionar que el programa solo se ejecutara con esta versión de lo

contrario, el programa mostrara un mensaje de error haciendo imposible la

conexión.

El programa se ejecutara a partir de que tanto el main como la clase estén

abiertas, en este caso se llaman “ProyectoGasolinera” y la clase se llama

“ControlVentas”.

Al ejecutar, el programa tardará unos segundo en ejecutarse, después de aquí, el

programa en ejecución, mostrara la opciones que se muestran las adelante en el

manual de usuario.

14

MANUAL DE USUARIO

Ilustración 1 Muestra la opción de selección de bomba, reporte diario y salir

Ilustración 2 Nos da la posibilidad de seleccionar alguna de las tres bombas

Ilustración 3 Se ingresó el nombre del empleado, y el menú de lo que se tiene.

15

Ilustración 4 Se muestra que se seleccionó la opción 1, y muestra la pregunta para ingresar la cantidad de litros, y nos muestra la cantidad, y el subtotal.

Ilustración 5 Muestra la opción de ingresar otro producto.

Ilustración 6 Si Seleccionamos la opción si nos arrija nuevamente la pantalla del menú.

16

Ilustración 7 Nuevamente llenamos lo que nos pide

Ilustración 8 Si ya no deseamos otro producto seleccionamos la opción no.

Ilustración 9 Muestra el total vendido

17

Ilustración 10 Muestra el reporte final

18

CONCLUSIONES

a) Particulares

Cesar Pérez Hernández

Durante el desarrollo del programa puse en práctica lo que aprendí durante el

curso, me di cuenta que java (NetBeans) es una aplicación bastante útil para

resolver problemas que surgen en la vida diaria, en este caso es el de una

gasolinera donde nos damos una idea de cómo es el funcionamiento de estas,

también me familiarice con una nueva herramienta para programar ya fue una

herramienta nueva para mí ya que nunca la había utilizado.

Luis Demetrio López Sosa

En este proyecto a entender la importancia de java (Netbeans) en el desarrollo de

problemas de la vida diaria, en este caso una gasolinera, aquí aplicamos y

aprendimos nuevas cosas las cuales dieron como resultado un buen proyecto final

haciéndolo útil y correcto a las especificaciones en lo solicitado.

En mi caso pude aclarar y practicar de una forma más dinámica lo visto durante el

curso de Programación Orientada a Objetos, y también aplicando lo que le

antecedió que fue Análisis y Diseño Orientado a Objetos y Fundamentos de

Programación.

19

Karina Vargas Vargas

Durante el desarrollo del proyecto aprendí a utilizar java,(netbeans),herramienta

útil para el desarrollo de programas como en este caso realizar el proyecto de una

gasolinera, también aprendí a trabajar en equipo, a desarrollar mi lógica de

programación, a visualizar mis erres que tengo al desarrollar un programa, a su

vez pude trabajar con las estructuras de programación.

Vicente Sánchez Flores

En el desarrollo del proyecto logre vincular todos los conocimientos que adquirí

durante el cuatrimestre actual, todo lo relacionado con clase de objetos así como

distinguir cada una de sus partes que caracterizan a la programación orientada a

objetos. Me sirvió mucho el proyecto ya que hay puntos los cuales me hace falta

reforzar y es en el donde me di cuenta de esos errores y posteriormente los

corregí.

Trabaje en el equipo adecuadamente ayudando al mismo poniéndonos de acuerdo

para la realización del proyecto aunque nos faltaron algunos puntos, el equipo

trabajo para sacar adelante lo mejor posible el proyecto.

20

b) Generales

En este proyecto pudimos desarrollar ciertas habilidades y aprendizajes que

obtuvimos en la materia de Programación Orientada a Objetos, pudimos aplicarlo

en una situación de la vida cotidiana, pudimos dar nuestra opinión y expresar y

obtener una solución a diversas cuestiones, unidos pudimos desarrollar el código

satisfactoriamente, obtuvimos varias fallas durante el desarrollo tanto en la lógica,

pero conforme se fue dando la análisis más profunda pudimos aclararlo y poderlo

terminar de forma adecuada.

Esto se lo logro gracias a que pudimos desarrollar y poder practicar lo aprendimos,

también se desarrolló un trabajo en equipo, aunque tuvimos circunstancias que

hicieron que de alguna forma el trabajo tuviera algunas fallas, aunque cabe

destacar que hicimos el mayor esfuerzo por entregar un gran trabajo.

Por ultimo concluimos que es de suma importancia el hacer una adecuada

reflexión del problema ya que al ir analizando, poco a poco descubrimos nuevas

cosas y esto hizo que el trabajo tuviera una mejor calidad y presentación

21

- BIBLIOGRAFÍA

García, Luis Fernando., Programación Orientada a objetos, ediciones uninorte,

México., 2010

Osorio Rivera Fray León, Lógica y programación orientada a los objetos, un inicio

al desarrollo de software, ediciones IMT, Colombia 2009

Vélez Serrano, José Fernando. Diseñar y Programar todo es empezar. Una

introducción a la programación. España., 2011

Gronssard Thierry, Los Fundamentos del Lenguaje Java, Inglaterra., 2012

Dantas Rhawi, Netbeans IDE 7 cookbook, Open Source Publishing, Inglaterra.

2012