Está en la página 1de 19

Tarea

MODALIDAD ABIERTA Y A DISTANCIA


La Universidad Católica de Loja

Programación Avanzada
4 créditos

Departamento de Ciencias de la Computación y Electrónica


Sección Ingeniería del Software y Gestión de Tecnologías de la Información
Titulación Ciclo

§§ Informática IV

Profesor autor:
Daniel Alejandro Guamán Coronel

Le recordamos que el envío de la tarea a través del EVA (Entorno Virtual de


Aprendizaje) es obligatorio; y, el ingreso se lo realiza en las fechas establecidas en el
calendario académico, que se encuentra en el siguiente enlace.
https://distancia.utpl.edu.ec/calendario-academico/

Octubre 2017 - Febrero 2018

TUTORÍAS: El profesor asignado publicará en el Entorno Virtual de Aprendizaje (EVA) su número telefónico y horario de tutoría.
Más información puede obtener llamando al Call Center 07 3701444, línea gratuita 1800 88758875 o al correo electrónico
callcenter@utpl.edu.ec

Asesoría virtual:
www.utpl.edu.ec
Tarea: Programación Avanzada
Tarea
Primer bimestre

1. Actividad de aprendizaje No. 1: Analizar, diseñar y codificar un caso


práctico que se puede solucionar implementando los conceptos básicos de
programación (estructuras de datos/archivos/bases de datos), estándares de
programación, organización de código, estilos arquitectónicos, patrones de
diseño, pruebas unitarias con el fin de lograr una aplicación funcional.

Descripción de la Actividad a desarrollar:

La empresa XYZ brinda el servicio de transporte a las diferentes ciudades del País;
como parte de la innovación tecnológica se requiere implementar un módulo de
un sistema que no ha sido desarrollado anteriormente, el mismo que comprende
“Realizar venta de boletos para una ruta definida”. Cabe indicar que la empresa
actualmente no tiene nada automatizado y que le solicitan a Ud. que le proporcione
una solución que permita realizar el Ingreso, Búsqueda, Actualización, Eliminación
Física y Lógica de los datos requeridos para la solución. La eliminación física
corresponde a borrar el registro mientras que la eliminación lógica se refiere a marcar
el registro con un estado “ELIMINADO” por ejemplo.

Los requerimientos para poder desarrollar el módulo de venta de boletos son los
siguientes:

–– Para venta de un boleto se requiere:

oo Pasajero (Persona, Socio, Cliente VIP)

§§ Persona: Se considera una persona que no es un viajero


frecuente que se acerca a comprar un boleto para un viaje.
§§ Socio: Se considera a una persona que es socio activo de la
Empresa de transportes.
§§ Cliente VIP: Se considera un viajero frecuente.

oo Ruta (Origen y Destino)

§§ Origen: Se considera la terminal desde la cual sale el


transporte.
§§ Destino: Se considera el lugar donde el Pasajero requiere
llegar.

2
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

oo Fecha de Viaje

§§ Se considera la fecha en la que se va a llevar a cabo el viaje,


el formato de la fecha será DD/MM/YYYY.

oo Hora de Viaje

§§ Se considera la hora en formato 24 horas, por ejemplo


08h30am, 22h30 pm.

oo Costo de Pasaje
§§ El costo de pasaje es el valor total que tiene un pasaje
dependiendo del Pasajero y de la Ruta de viaje
§§ Costo dependiendo del Pasajero:

–– Si el pasajero es Persona, Socio, Cliente VIP debe


considerar que si la edad es mayor o igual a 70 años
(tercera edad) el costo del pasaje debe tener un
descuento del 10% del valor total.

–– Si el pasajero es Persona, Socio, Cliente VIP debe


considerar que si la edad es menos o igual a 5 años
(menor de edad) el costo del pasaje debe tener un
descuento del 5% del valor total.

–– Si el pasajero es un Socio, el costo del pasaje tendrá


un 2% de descuento del valor total.

–– Si el pasajero es un Cliente Vip, el costo del pasaje


tendrá un 4% de descuento del valor total.

–– Considere que si una persona es de la tercera edad,


menor de edad y cualquiera de los tipos de Persona se
aplicarán los descuentos sobre el valor total del pasaje.

oo Usuarios del Sistema

§§ Se considera la(s) persona(s) que utiliza el módulo de ventas


y es quien registra la venta de un boleto.

CONSIDERACIONES ADICIONALES

Para el primer bimestre, es necesario que se utilicen estructuras de datos y archivos


para operar con los datos, para el segundo bimestre es necesario utilizar bases de
datos y utilizar 3-layer como estilo arquitectónico o MVC (Modelo-Vista-Controlador).

3
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

IMPLEMENTACIÓN DE LOS MÓDULOS PARA REALIZAR EL PROCESO DE


VENTA DE BOLETOS:

–– Interface de Registro de Usuarios para utilizar el módulo de ventas

oo Debe proporcionar una Interface Gráfica que permita ingresar los


usuarios que utilizarán el módulo, los datos a registrar son nombres,
apellidos, username y password.
oo Además la interface debe tener un JTable que permita visualizar
los usuarios ingresados.
oo Los datos de estos usuarios pueden ser editados y/o eliminados.

–– Interface para acceder al módulo de venta de boletos

oo A través de una ventana (formulario/Jframe, JPanel, JDesktopPane)


que solicite como entrada el Username y Password deberá permitir
acceder a las demás interfaces gráficas para el proceso de venta
de boletos. Lo que hay que considerar es:

§§ Si el username y password son correctos se permitirá acceso


a las demás interfaces.
§§ En caso de que el username y password no sean los correctos
debe emitir un mensaje de alerta que no es correcto.
§§ Debe considerara además que el username y/o password
no deben quedar en blanco, de lo contrario debe mostrar
mensajes de alerta.

oo Si el Username y Password son correctos accederá al módulo


de compra de boletos que contiene los siguientes submenus u
opciones: la Interface de Registro de Rutas, Interface de Venta de
Boletos y Reporte de Venta de Boletos y los datos de Usuario que
accedió a la aplicación servirán para registrar la venta de boletos.

–– Interface de Registro de Rutas

oo Debe proporcionar una Interface Gráfica que permita ingresar las


rutas de viaje, debe registrar al menos 5 rutas con Origen y Destino.
oo Además la interface debe tener un JTable que permita visualizar
las rutas ingresadas, éstas también pueden ser editadas.

4
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

–– Interface de Venta de Boleto

oo Proporcionar un Interface Gráfica que permita realizar el proceso


de venta, donde se ingrese o busque los datos de la Persona
ingresada a través de su identificación o apellidos por ejemplo,
se seleccione la ruta (que ha sido ingresada previamente), se
seleccione la fecha y hora de viaje y se calcule el costo del pasaje
(este costo de pasaje puede ser un valor que Ud. considere o que
lo asocie a la ruta de viaje y teniendo en cuenta las condiciones de
descuento según el tipo de Persona)
oo Cada registro de compra de boleto con toda la información debe
almacenarse en un archivo de texto.

–– Interface de Reporte de Venta de Boletos

oo Proporciona una Interface Gráfica que permita realizar el proceso


de consulta de Boletos vendidos para una ruta específica, en ella
debe recuperar la información almacenada en el archivo Boletos.
txt
oo En dicha interface debe utilizar un control GUI de Swing JTable
junto con otros controles para crear una interface funcional. Sobre
dicho JTable ubicará el resultado de la información que se recupera
desde el archivo, esto con la finalidad de realizar las operaciones
de búsqueda, eliminación y actualización.
oo En esta interface debe permitir realizar las operaciones de
búsqueda, eliminación y actualización.
§§ Los criterios de búsqueda a utilizar quedan a conveniencia
suya, puede realizar la búsqueda por cedula del pasajero,
por ruta, por fecha, por tipo de pasajero, recuerde se debe
recuperar 1 registro o muchos registros, esto dependerá de
los filtros o condiciones de búsqueda que utilice.
§§ Los criterios para eliminación quedan a su conveniencia,
puede eliminar o actualizar un registro por su id, o cualquier
campo que crea necesario.

oo Cuando realice las operaciones propuestas, el JTable debe


actualizarse para sobre el ir verificando las búsquedas,
actualizaciones o eliminaciones.

5
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

ARCHIVOS REQUERIDOS COMO SALIDA:

Se requiere que la aplicación genere los siguientes archivos:

–– Accesos.txt: Este archivo debe contener los datos que se registren


a través de la Interface de Registro de Usuarios que servirán para
acceder al módulo de ventas.

–– Rutas.txt: Este archivo debe contener los datos con las rutas ingresadas
de origen y destino que Ud. ingrese en la Interface de Registro de
Rutas.

–– Boletos.txt: Este archivo debe contener la información relacionada a la


venta de boletos, por lo tanto tendrá:

oo Datos de Personas
oo Datos de Ruta
oo Datos de Viaje (Fecha, Hora, Costo)
oo Datos de Usuario (quien realizó la venta del boleto)

ACTIVIDADES PRIMER BIMESTRE:

–– Debe identificar y proponer las clases y relaciones existentes a través


de un diagrama de clases UML (Para ello utilice StarUML como software
para el modelado)

–– Debe identificar y ubicar a cada clase los atributos, métodos, visibilidad


correspondientes.

–– Cabe indicar que dicho diagrama de clases debe ser implementado en


java, con los mismos elementos definidos en el diagrama.

–– Recuerde que el diagrama de clases le sirve para codificar en java, no


es que va a realizar un diagrama y codificar otra cosa con diferentes
nombres de clases o relaciones sino que debe codificar acorde al modelo
de clases que Ud. proponga.

–– La codificación debe estar organizada en paquetes y debe contener GUI


para facilitar la usabilidad del cliente, utilice los controles Swing que Ud.
considere necesarios, recuerde es su primer entregable como parte de
programación, es lo que le espera en el ámbito laboral, por ende tómese
su tiempo y analice bien el problema y cómo solucionarlo.

–– Deberá adjuntar el código fuente, un documento Word que contenga


las captura de pantalla que evidencien la ejecución de su programa
y funcionamiento de su programa y adicional el código fuente de la
solución, es decir todo el proyecto java.

6
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

–– Deberá adjuntar los archivos de salida requeridos y propuestos los cuales


son necesarios para el desarrollo y funcionamiento del programa.

2. Tema de la tarea: Análisis, diseño de clases y codificación en java de un caso


práctico.

3. Competencia a la que aporta la actividad:

a. Analizar problemas de programación y plantear soluciones mediante


métodos computacionales.
b. Implementar aplicaciones a partir de especificaciones y modelos de
software utilizando estándares de documentación y de programación.
c. Construir modelos y especificaciones de software que permitan validar
un producto previo a su implementación.

4. Orientaciones metodológicas (estrategias de trabajo):

a. Desarrolle una lectura global y comprensiva de la unidad 1: Conceptos


básicos de programación (sentencias de control, arreglos y archivos),
unidad 2 para entender los conceptos de clases, objetos, y relaciones
como herencia, composición, agregación, clases abstractas, métodos.
Finalmente la unidad 3, con el fin de desarrollar una Interface Gráfica
de Usuario para a través de java Swing proponer una funcionalidad y
usabilidad de la solución.
b. Aplique técnicas de autoestudio como: subrayado, palabras claves y
frases significativas.
c. Investigue otras fuentes de información bibliográfica referentes
especialmente en temas de: Operaciones con Archivos, Objetos y Arreglo
de Objetos y como interactuar entre clases y GUI.
d. Realice un análisis previo para identificar las clases que formarán parte
de la solución propuesta, luego de ello utilice StarUML para modelar su
solución ubicando los atributos, métodos y relaciones entre clases lo cual
le permitirá posteriormente codificarlo utilizando NetBeans.
e. En el proceso de codificación organice su código en paquetes (Paquete
de Clases, Paquete de GUI, Paquete de Validaciones, etc), realice las
pruebas unitarias, elimine código duplicado o no utilizado para así tener
un código limpio.
f. Revise, ejecute y adapte los ejemplos codificados en java y cargados en
el EVA referente a los temas de Primer Bimestre.

7
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

g. Aplicar los conceptos básicos teóricos para solucionar el problema


utilizando java, compararlos con los encontrados en el EVA, MOOC e
internet y adaptarlos a la solución que Ud. proponga.

5. Ingreso de la actividad desarrollada en el EVA

Suba el archivo de la actividad referente a: Análisis, diseño de clases y


codificación en java de un caso práctico. La actividad debe ser cargada
siguiendo el formato siguiente:

–– Un solo archivo en formato ZIP que contenga:

oo Proyecto Java que contiene todo el código fuente(contiene


paquetes, clases, etc.)
oo Documento Word (contiene capturas (imágenes) de pantalla de
ejecución o salida del programa NO del código)
oo Documento Word (contiene captura (imagen) del modelo
desarrollado en StarUML)
oo Diagrama de clases desarrollado en StarUML (archivo generado
por StarUML)

El nombre del archivo tendrá el formato: NombreApellidoPrimerBimestre.zip.

Ejemplo: DanielGuamanPrimerBimestre.zip

6. Criterios de evaluación

6 4 2 0
Identifica Las clases
Identifica clases, solamente las no son las
Identifica clases,
atributos, métodos, clases y los correctas, por
atributos, métodos,
ubica la visibilidad modela en UML ende sus
visibilidad, pero su
y los diseña junto a sus relaciones y
diagrama UML no es
utilizando UML y relaciones, pero demás objetos
el correcto.
sus relaciones. los atributos no UML no son
son los correctos. válidos.

8
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

6 4 2 0
Utiliza el
Estructura diagrama
Estructura la
la solución UML pero no Codifica sin
solución en proyecto,
en proyecto, estructura considerar su
paquetes, clases,
paquetes, clases y la solución estructura y no
pero la codificación
codifica tomando en proyecto, toma en cuenta
NO es basada en
como referencia paquetes, el diagrama
el diagrama UML
el diagrama UML clases, sino que UML.
propuesto.
propuesto. tiene todo en un
solo archivo.
Implementa Implementa
Implementa adecuadamente las adecuadamente
Otorga una
adecuadamente sentencias de control, los conceptos
solución pero no
los conceptos de métodos, estructuras de objetos,
usa estructuras
objetos, relaciones, de datos como relaciones,
de datos ni
métodos, arreglos y archivos, métodos,
métodos, ni
sentencias de pero los conceptos de sentencias de
creación de
control y estructuras orientación a objetos control, pero el
objetos y sus
de datos como y sus relaciones no tema de arreglos
relaciones.
arreglos y archivos. son implementados y archivos no son
correctamente. los adecuados.
La GUI está
implementada
pero al momento
La GUI (controles, de programar los
Se ha implementado
mensajes, etc.) eventos tienen
la GUI (controles),
implementada mucho código No implementa
pero la misma no
permite usabilidad implementado y GUI.
es muy usable o
y funcionalidad de no hace llamada
funcional.
la solución. a métodos
para mejorar
el tema de
mantenibilidad.
El programa
El programa
funciona
El programa funciona funciona
correctamente
pero los resultados pero no tiene
y emite los El programa no
son mostrados en implementado
resultados en los funciona.
consola y no en todo lo solicitado,
archivos al ejecutar
archivos. solamente tiene
los eventos de la
una parte.
GUI.

9
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

7. Criterios para revisión y Calificación

La actividad debe contemplar todos los requerimientos solicitados, se


recomienda tomar en consideración las orientaciones metodológicas y los
criterios de evaluación propuestos en la rúbrica.

Estimado(a) estudiante, una vez resuelta su tarea en el documento impreso


(borrador), acceda al Entorno Virtual de Aprendizaje (EVA) en www.utpl.edu.ec
e ingrese las respuestas respectivas.

SEÑOR ESTUDIANTE:
Le recordamos que para presentarse a rendir las evaluaciones presenciales no
está permitido el uso de ningún material auxiliar (calculadora, diccionario, libros,
Biblia, formularios, códigos, leyes, etc.)
Las pruebas presenciales están diseñadas para desarrollarlas sin la utilización
de estos materiales.

10
MODALIDAD ABIERTA Y A DISTANCIA
Tarea
Segundo bimestre

1. Actividad de aprendizaje No. 1: Analizar, diseñar y codificar un caso


práctico que se puede solucionar implementando los conceptos básicos de
programación (estructuras de datos/archivos/bases de datos), estándares de
programación, organización de código, estilos arquitectónicos, patrones de
diseño, pruebas unitarias con el fin de lograr una aplicación funcional.

Descripción de la Actividad a desarrollar:

La empresa XYZ brinda el servicio de transporte a las diferentes ciudades del País;
como parte de la innovación tecnológica se requiere implementar un módulo de
un sistema que no ha sido desarrollado anteriormente, el mismo que comprende
“Realizar venta de boletos para una ruta definida”. Cabe indicar que la empresa
actualmente no tiene nada automatizado y que le solicitan a Ud. que le proporcione
una solución que permita realizar el Ingreso, Búsqueda, Actualización, Eliminación
Física y Lógica de los datos requeridos para la solución. La eliminación física
corresponde a borrar el registro mientras que la eliminación lógica se refiere a marcar
el registro con un estado “ELIMINADO” por ejemplo.

Los requerimientos para poder desarrollar el módulo de venta de boletos son los
siguientes:

–– Para venta de un boleto se requiere:

oo Pasajero (Persona, Socio, Cliente VIP)

§§ Persona: Se considera una persona que no es un viajero


frecuente que se acerca a comprar un boleto para un viaje.
§§ Socio: Se considera a una persona que es socio activo de la
Empresa de transportes.
§§ Cliente VIP: Se considera un viajero frecuente.

oo Ruta (Origen y Destino)

§§ Origen: Se considera la terminal desde la cual sale el


transporte.
§§ Destino: Se considera el lugar donde el Pasajero requiere
llegar.

11
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

oo Fecha de Viaje

§§ Se considera la fecha en la que se va a llevar a cabo el viaje,


el formato de la fecha será DD/MM/YYYY.

oo Hora de Viaje

§§ Se considera la hora en formato 24 horas, por ejemplo


08h30am, 22h30 pm.

oo Costo de Pasaje

§§ El costo de pasaje es el valor total que tiene un pasaje


dependiendo del Pasajero y de la Ruta de viaje
§§ Costo dependiendo del Pasajero:

–– Si el pasajero es Persona, Socio, Cliente VIP debe


considerar que si la edad es mayor o igual a 70 años
(tercera edad) el costo del pasaje debe tener un
descuento del 10% del valor total.

–– Si el pasajero es Persona, Socio, Cliente VIP debe


considerar que si la edad es menos o igual a 5 años
(menor de edad) el costo del pasaje debe tener un
descuento del 5% del valor total.

–– Si el pasajero es un Socio, el costo del pasaje tendrá


un 2% de descuento del valor total.

–– Si el pasajero es un Cliente Vip, el costo del pasaje


tendrá un 4% de descuento del valor total.

–– Considere que si una persona es de la tercera edad,


menor de edad y cualquiera de los tipos de Persona se
aplicarán los descuentos sobre el valor total del pasaje.

oo Usuarios del Sistema

§§ Se considera la(s) persona(s) que utiliza el módulo de ventas


y es quien registra la venta de un boleto.

12
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

CONSIDERACIONES ADICIONALES

Para el primer bimestre, el registro o ingreso de información se almacenarán en


archivos de texto, para el segundo bimestre es necesario utilizar bases de datos y
utilizar 3-layer como estilo arquitectónico o MVC (Modelo-Vista-Controlador).

IMPLEMENTACIÓN DE LOS MÓDULOS PARA REALIZAR EL PROCESO DE


VENTA DE BOLETOS:

–– Interface de Registro de Usuarios para utilizar el módulo de ventas

oo Debe proporcionar una Interface Gráfica que permita ingresar los


usuarios que utilizarán el módulo, los datos a registrar son nombres,
apellidos, username y password.
oo Además la interface debe tener un JTable que permita visualizar
los usuarios ingresados.
oo Los datos de estos usuarios pueden ser editados y/o eliminados.

–– Interface para acceder al módulo de venta de boletos

oo A través de una ventana (formulario) que solicite como entrada


el Username y Password deberá permitir acceder a las demás
interfaces para el proceso de venta de boletos. Lo que hay que
considerar es:

§§ Si el username y password son correctos se permitirá acceso


a las demás interfaces.
§§ En caso de que el username y password no sean los correctos
debe emitir un mensaje de alerta que no es correcto.
§§ Debe considerara además que el username y/o password
no deben quedar en blanco, de lo contrario debe mostrar
mensajes de alerta.

oo Si el Username y Password son correctos accederá al módulo de


compra de boletos que contiene: la Interface de Registro de Rutas,
Interface de Venta de Boletos y Reporte de Venta de Boletos y los
datos de Usuario que accedió a la aplicación servirán para registrar
la venta de boletos.

13
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

–– Interface de Registro de Rutas

oo Debe proporcionar una Interface Gráfica que permita ingresar las


rutas de viaje, debe registrar al menos 5 rutas con Origen y Destino.
oo Además la interface debe tener un JTable que permita visualizar
las rutas ingresadas, éstas también pueden ser editadas.

–– Interface de Venta de Boleto

oo Proporcionar un Interface Gráfica que permita realizar el proceso


de venta, donde se ingrese los datos de la Persona, se seleccione
la ruta (que ha sido ingresada previamente), se seleccione la fecha
y hora de viaje y se calcule el costo del pasaje (este costo de pasaje
puede ser un valor que Ud. considere o que lo asocie a la ruta de
viaje y teniendo en cuenta las condiciones de descuento según el
tipo de Persona)

–– Interface de Reporte de Venta de Boletos

oo Proporciona una Interface Gráfica que permita realizar el proceso de


consulta de Boletos vendidos para una ruta específica, en ella debe
recuperar la información almacenada en la tabla correspondiente
a la base de datos.
oo En dicha interface debe utilizar un control GUI de Swing JTable
junto con otros controles para crear una interface funcional. Sobre
dicho JTable ubicará el resultado de la información que se recupera
desde la tabla de la base de datos, esto con la finalidad de realizar
las operaciones de búsqueda, eliminación y actualización.
oo En esta interface debe permitir realizar las operaciones de
búsqueda, eliminación y actualización.
§§ Los criterios de búsqueda a utilizar quedan a conveniencia
suya, puede realizar la búsqueda por cedula del pasajero,
por ruta, por fecha, por tipo de pasajero, etc.
§§ Los criterios para eliminación quedan a su conveniencia,
puede eliminar o actualizar un registro por su id, o cualquier
campo que crea necesario.
oo Cuando realice las operaciones propuestas el JTable debe
actualizarse para sobre el ir verificando las búsquedas,
actualizaciones o eliminaciones.

14
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

ACTIVIDADES SEGUNDO BIMESTRE

–– Se toma como referencia el texto del problema propuesto para el primer


bimestre, lo que cambia es el repositorio para operar (ingresar, consultar,
editar, eliminar) los datos.

–– Debe mejorar las clases y relaciones existentes a través de un diagrama


de clases UML (Para ello utilice StarUML para el modelado)

–– Debe crear un pequeño modelo de base de datos o utilizar uno que se


propone y se cargará en el EVA donde almacenará los datos, el pequeño
modelo de base de datos consta de las tablas a utilizar para operar sobre
la base.

–– El modelo Entidad-Relación lógico y físico que podrían utilizarlo como


base para solucionar el problema y registrar los datos en la base de
datos estará alojado en el EVA (Entorno Virtual de Aprendizaje).

–– La base de datos sobre la que trabajará queda abierto, es decir puede


ser SQL, Mysql, Access como más livianas, OracleExpress o la que Ud.
considere pertinente.

–– La codificación debe estar organizada en paquetes (3-layer) y debe


contener la GUI respectiva para facilitar la usabilidad por parte del
cliente, utilice los controles que Ud. considere necesarios entre los
que destacan JFrame, JPanel, JTable, JTextArea, JButton, TTextField,
FormattedField, JCombobox; recuerde es su primer entregable como
parte de programación, es lo que le espera en el ámbito laboral, por
ende tómese su tiempo y analice bien el problema y cómo solucionarlo.

–– Debe realizar las operaciones CRUD (Insertar, Editar, Buscar, Eliminar)


sobre las clases definidas y utilizar algunos criterios, por ejemplo buscar
por identificación una persona, buscar todas las personas, eliminar uno
o varios registros por Id de la Persona, buscar registros por fechas, etc;
recuerde Ud. debe dar una solución no se limite en ello.

–– Utilice las formas que Ud. crea adecuadas para realizar las operaciones
de CRUD, es decir puede utilizar PreparedStatement, POJO’s, o las
sentencias SQL normales.

–– Cuando muestre los registros que contiene la base de datos deberá


mostrar en una etiqueta el total de registros existentes

–– Deberá adjuntar el código fuente, el archivo de creación de la base de


datos(script) para poder crear las bases con el modelo.

–– Deberá adjuntar el código fuente, un documento Word que contenga


las captura de pantalla que evidencien la ejecución de su programa

15
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

y funcionamiento de su programa y adicional el código fuente de la


solución, es decir todo el proyecto java.

–– En alguna parte de la aplicación que Ud. considere adecuada debe


ubicar en un JLabel un hilo que simule el funcionamiento de un reloj es
decir HH:MIN:SS que tome la hora actual y vaya cambiando los minutos,
segundos y horas.

–– Recuerde utilizar expresiones regulares o FormattedField que permiten


controlar los datos de entrada a nivel de GUI o código con el fin de que
no se envíen datos vacíos a la base.

2. Tema de la tarea: Análisis, diseño de clases y codificación en java de un caso


práctico.

3. Competencia a la que aporta la actividad:

a. Analizar problemas de programación y plantear soluciones mediante


métodos computacionales.
b. Implementar aplicaciones a partir de especificaciones y modelos de
software utilizando estándares de documentación y de programación.
c. Construir modelos y especificaciones de software que permitan validar
un producto previo a su implementación.

4. Orientaciones metodológicas (estrategias de trabajo):

a. Desarrolle una lectura global y comprensiva de la unidad 4: Diferenciar


el uso de arreglos frente a List, ArrayList y HashMap, unidad 5 utilizar
expresiones regulares para implementar validaciones en la solución
propuesta; en la unidad 6, revisar el tema de JDBC y su uso en la
interacción entre java y un motor de base de datos que puede ser MySQL,
Oracle, Sql u otra, finalmente en la unidad 7, revisar el tema de hilos o
multitarea, identificar sus ventajas y ámbitos de aplicación.
b. Aplique técnicas de autoestudio como: subrayado, palabras claves y
frases significativas.
c. Investigue otras fuentes de información bibliográfica referentes
especialmente en temas de: ArrayList de tipos de dato y clases,
Operaciones o sentencias SQL que se pueden utilizar desde java; como
interactuar entre clases, base de datos y GUI. Finalmente simular la
implementación de MVC o 3-layer en una solución software.

16
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

d. En el caso de que deba realizar mejoras al trabajo del primer bimestre,


realice un análisis previo para identificar las clases que formarán parte
de la solución propuesta, luego de ello utilice StarUML para modelar su
solución ubicando los atributos, métodos y relaciones entre clases lo cual
le permitirá posteriormente codificarlo utilizando NetBeans.
e. En el proceso de codificación organice su código en paquetes (Paquete
de Clases, Paquete de GUI, Paquete de Validaciones, Paquete de Lógica
de Negocios (BL), Paquete de Datos (DAT)), realice las pruebas unitarias,
elimine código duplicado o no utilizado para así tener un código limpio.
f. Revisión, ejecución y adaptación de los ejemplos codificados en java y
cargados en el EVA referente a los temas de Segundo Bimestre.
g. Aplicar los conceptos básicos teóricos en solucionar el problema
utilizando java, compararlos con los encontrados en el EVA, MOOC e
internet y adaptarlos a la solución que Ud. proponga.

5. Ingreso de la actividad desarrollada en el EVA

Suba el archivo de la actividad referente a: Análisis, diseño de clases y


codificación en java de un caso práctico. La actividad debe ser cargada
siguiendo el formato siguiente:

–– Un solo archivo en formato ZIP que contenga:

oo Proyecto Java que contiene todo el código fuente(contiene


paquetes, clases, etc.)
oo Documento Word (contiene capturas (imágenes) de pantalla de
ejecución o salida del programa NO del código)
oo Documento Word (contiene captura (imagen) del modelo
desarrollado en StarUML)
oo Diagrama de clases desarrollado en StarUML (archivo generado
por StarUML)
oo Script SQL de base de datos utilizado para la solución propuesta.

El nombre del archivo tendrá el formato: NombreApellidoSegundoBimestre.zip.

Ejemplo: DanielGuamanSegundoBimestre.zip

17
La Universidad Católica de Loja UTPL
Tarea: Programación Avanzada

6. Criterios de evaluación

6 4 2 0
Estructura la
Estructura la
solución en proyecto, Utiliza el diagrama
solución en proyecto,
paquetes, clases y UML pero no Codifica sin
paquetes, clases,
codifica tomando estructura la considerar su
pero la codificación
como referencia solución en estructura y no
NO es basada en
el diagrama UML proyecto, paquetes, toma en cuenta
el diagrama UML
propuesto (basado clases, sino que el diagrama
propuesto (basado en
en 3 layer o MVC tiene todo en un solo UML.
3 layer o MVC (Modelo
(Modelo Vista archivo.
Vista Controlador).
Controlador)
Implementa
Implementa
adecuadamente los Otorga una
Implementa adecuadamente
métodos, expresiones solución pero no
adecuadamente los los conceptos de
regulares, estructuras usa expresiones
conceptos de objetos, objetos, relaciones,
de datos como list, regulares,
relaciones, métodos, métodos,
arraylist, hashmap estructuras
expresiones expresiones
y archivos, pero de datos ni
regulares y regulares, pero
los conceptos de métodos, ni
estructuras de datos el tema de list,
orientación a objetos creación de
como list, arraylist, arraylist, hashmap y
y sus relaciones no objetos y sus
hashmap y archivos. archivos no son los
son implementados relaciones.
adecuados.
correctamente.
La GUI está
implementada
pero al momento
La GUI (controles,
de programar los
mensajes, etc.) Se ha implementado la
eventos tienen
implementada GUI (controles), pero No implementa
mucho código
permite usabilidad y la misma no es muy GUI.
implementado y
funcionalidad de la usable o funcional.
no hace llamada
solución.
a métodos para
mejorar el tema de
mantenibilidad.
El programa funciona
El programa
correctamente y El programa funciona
funciona pero no
emite los resultados pero los resultados
tiene implementado El programa no
en el modelo de base son mostrados en
todo lo solicitado, funciona.
de datos propuesto al consola y no en base
solamente tiene una
ejecutar los eventos de datos.
parte.
de la GUI.

18
MODALIDAD ABIERTA Y A DISTANCIA
Tarea: Programación Avanzada

6 4 2 0
La solución utiliza
La solución utiliza adecuadamente el
adecuadamente el JDBC, ResultSet, La solución no
JDBC, ResultSet, Statement, implementa
El CRUD
Statement, PreparedStatement solamente
implementado
PreparedStatement e e implementa el operaciones con
no es el correcto.
implementa el CRUD CRUD pero no se Insert y Select sobre
completo de las completa para todas una funcionalidad.
funcionalidades. las funcionalidades
solicitadas.

7. Criterios para revisión y Calificación

La actividad debe contemplar todos los requerimientos solicitados, se


recomienda tomar en consideración las orientaciones metodológicas y los
criterios de evaluación propuestos en la rúbrica.

Estimado(a) estudiante, una vez resuelta su tarea en el documento impreso


(borrador), acceda al Entorno Virtual de Aprendizaje (EVA) en www.utpl.edu.ec
e ingrese las respuestas respectivas.

SEÑOR ESTUDIANTE:
Le recordamos que para presentarse a rendir las evaluaciones presenciales no
está permitido el uso de ningún material auxiliar (calculadora, diccionario, libros,
Biblia, formularios, códigos, leyes, etc.)
Las pruebas presenciales están diseñadas para desarrollarlas sin la utilización
de estos materiales.

19
La Universidad Católica de Loja UTPL

También podría gustarte