Mostrando entradas con la etiqueta Universidad de los Andes. Mostrar todas las entradas
Mostrando entradas con la etiqueta Universidad de los Andes. Mostrar todas las entradas

lunes, 7 de diciembre de 2015

APO1 - Nivel 4 - Club Social

Índice

1. Introducción
2. Palabras Clave
3. Problema
3.1 Enunciado
3.2 Interfaz gráfica de usuario (versión Java)
4. Requerimientos
4.1 R1 - Registrar una persona autorizada por un socio
4.2 R2 - Pagar una factura
4.3 R3 - Afiliar un socio al club
4.4 R4 - Registrar un consumo en la cuenta de un socio
5. Modelo del Mundo del Problema
6. Modelo de la Interfaz Gráfica de Usuario
7. Modelo de Pruebas Unitarios
8. Repositorio: Exploración de Código Fuente C#
9. Recursos
9.1 Java
9.2 C#
9.2.1 Solución y proyectos
9.2.2 Documentación código fuente
9.2.3 Aplicación en ejecución
9.2.3.1 Capturas de pantalla
9.2.3.2 Demostración
10. Cambios
11. Conclusiones
12. Literatura & Enlaces

1. Introducción

Se inicia esta serie de aplicaciones del Nivel 4 de Algoritmia y Programación Orientada a Objetos 1 (APO1) donde principalmente se comprende los conceptos de definición de contrato de un método, uso del contrato para la invocación de un método, asignación de responsabilidades a clases, uso de la técnica de dividir y conquistar para facilitar la resolución de un problema, entre otras más.


En cuanto a la primea aplicación a desarrollar en este nivel, ésta consiste en la administración de un club social. En esta aplicación se crean socios y asignar las personas que poseen autorización para el ingreso al club y uso de sus servicios. Además, cuenta con la administración de los gastos generados por las personas autorizadas; gastos que serán cargados a la cuenta del socio.

2. Palabras Clave

  • .NET
  • Aplicación
  • Clase
  • Cupi2
  • Cupi2.NET
  • Enumeración
  • Excepción
  • Software

3. Problema

3.1 Enunciado

Descripción literal del problema original "Enunciado" (2015):

Se quiere construir una aplicación para un club, el club tiene socios afiliados y personas autorizadas por los socios. Cada socio está identificado con su nombre y su cédula, el autorizado se caracteriza por su nombre y la cédula del socio quien lo autoriza. Dentro del club se pueden realizar consumos que serán cargados al socio, esto se manejará en la contabilidad del club. Estos consumos se caracterizan por un concepto que lo identifica y el valor de los consumido.

Las cuentas pendientes de un socio es la lista de sus facturas. Cada factura contiene el concepto y el valor del consumo o servicio que el club lee prestó. Los pagos se realizarán de acuerdo con la factura que el usuario seleccione.

3.2 Interfaz gráfica de usuario (versión Java)


En la Figura 1 se presenta la interfaz gráfica de usuario de la aplicación Club construida con los elementos de programa del lenguaje de programación Java.
GUI en Java
Figura 1. GUI en Java.

4. Requerimientos

4.1 R1 - Registrar una persona autorizada por un socio

Código: R1

Nombre: Registrar una persona autorizada por un socio

Descripción: Los socios tienen un conjunto de personas autorizadas que pueden ingresar al club y hacer consumos en sus restaurantes. Este requerimiento permite a un socio registrar una de estas personas.

Entradas:
  • Nombre: Nombre de la persona autorizada por el socio.
  • Cédula: Cédula del socio al que se registrará el autorizado.
Resultados:
  • Registro de autorizado: El socio tiene una nueva persona autorizada.

4.2 R2 - Pagar una factura

Código: R2

Nombre: Pagar una factura

Descripción: La factura que quiere pagar el socio, de su lista de facturas pendientes.

Entradas:
  • Socio: Cédula del socio que pagará la factura.
  • Factura: La factura que quiere pagar el socio, de su lista de facturas pendientes.
Resultados:
  • La factura ha sido pagada: La factura cancelada ya no está pendiente para el socio.

4.3 R3 - Afiliar un socio al club

Código: R3

Nombre: Afiliar un socio al club

Descripción: Se agregar un nuevo socio al club.

Entradas:
  • Nombre: Nombre del socio.
  • Cédula: Cédula del socio.
Resultados:
  • Afiliación del socio: Se adicionó el nuevo socio al club.

4.4 R4 - Registrar un consumo en la cuenta de un socio

Código: R4

Nombre: Registrar un consumo en la cuenta de un socio

Descripción: El socio o una de sus personas autorizadas, puede agregar un consumo a la cuenta del socio.

Entradas:
  • Concepto: Concepto del consumo.
  • Valor: Valor por el cual fue el consumo.
  • Nombre: Persona que realizó el consumo.
Resultados:
  • Registro de consumo: Se crea una nueva factura por el valor del consumo y se rgistra al socio.

5. Modelo del Mundo del Problema

En la Figura 2 se describe el diagrama UML con las entidades que integran el modelo del mundo del problema (dominio). (Original en "Modelo conceptual" (2015)).
Modelo del mundo del problema
Figura 2. Modelo del mundo del problema.

6. Modelo de la Interfaz Gráfica de Usuario

En la Figura 3 se muestra el diagrama UML que describe los controles visuales que integran la interfaz gráfica de usuario. (Original en "Interfaz" (2015)).
Modelo de la interfaz gráfica de usuario
Figura 3. Modelo de la interfaz gráfica de usuario.

7. Modelo de Pruebas Unitarias

En el diagrama UML presentando en la Figura 4 se modelan las clases de pruebas del modelo del mundo del problema. (Original en "Pruebas" (2015)).
Modelo de pruebas unitarias
Figura 4. Modelo de pruebas unitarias.

8. Repositorio: Exploración de Código Fuente C#

En el siguiente enlace de repositorio en GitHub se puede explorar todo el código fuente de la aplicación; el cual comprende:
  • Modelo del mundo del problema
  • Controles de la interfaz gráfica de usuario
  • Archivos de configuración
  • Recursos (imágenes, íconos, cadenas de texto, entre otros)
  • Clases de pruebas unitarias del comportamiento y estado de las entidades del modelo del mundo del problema.

9. Recursos

9.1 Java

Recursos del proyecto en su versión original:

9.2.1 Solución y proyectos

Enlaces de descarga de archivos ZIP con la solución y los proyectos integrales de la aplicación en Visual Studio:

9.2.2 Documentación código fuente

Archivo CHM con la documentación del código fuente C#:

9.2.3 Aplicación en ejecución

9.2.3.1 Capturas de pantalla
Club Social en C#
Figura 6. Club Social en C#.
9.2.3.2 Demostración

10. Cambios

Cambios sobresalientes en la solución respecto al proyecto original:

Clase Factura:
  • El tipo de dato para el campo valor pasa de double a decimal (apto para representar valores que requieren precisión).
  • Se remueven los métodos darConcepto, darValor y darNombre y se usan propiedades para obtener el valor de los campos correspondientes.
Clase Socio:
  • En lugar de los métodos darCedula, darNombre, darFacturas y darAutorizados, se crearon propiedades de solo lectura.
  • El método AfiliarSocio recibe, ahora, un parámetro de tipo Socio.
Nuevo:
  • Agregada la clase AutoreferenciaSocioException que hereda de System.Exception. Útil para manejar la excepción cuando el autorizado es el mismo socio.
  • Agregada la clase SocioExisteException que hereda de System.Exception. Clase útil para la gestión de excepciones relacionadas con la existencia de un socio.
  • Agregada la clase AutorizadoExisteException que hereda de System.Exception. Clase útil para la gestión de excepciones relacionadas con la existe de autorizado.
  • Agregada enumeración Operaciones para determinar el tipo de operación que debe asociar en la búsqueda de socio desde un control personalizado.

11. Conclusiones

A través de esta aplicación se ha adquirido conocimiento práctico acerca de una de las estructuras de datos integrados en .NET Framework: ArrayList.Estructura útil para el almacenamiento y manipulación de objetos. Se realizaron cambios en el proyecto C# con el propósito de aprovechar sus componentes sintácticos de descripción de entidades de un modelo: propiedades, enumeraciones; en especial. En la próxima publicación se desarrollará una aplicación controlar un brazo mecánico de una bodega.

12. Literatura & Enlaces

Universidad de los Andes - Colombia (2015, diciembre 7). Recuperado desde: http://www.uniandes.edu.co/.
Cupi2 (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/.
APO1 (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1.
Enunciado (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-4/club.
Modelo Conceptual (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-4/club/modeloconceptual-n4club.
Interfaz (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-4/club/interfaz-n4club.
Pruebas (2015, diciembre 7). Recuperado desde: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-4/club/pruebas-n4club.


V

jueves, 2 de julio de 2015

APO1 - Nivel 3 en C#: El Avión

Índice

0. Introducción
1. Enunciado
1.1. Vista previa de la aplicación (en Java)
2. Requerimientos
2.1 R1: Asignar una silla a un pasajero
2.2 R2: Desasignar una silla a un pasajero
2.3 R3: Conocer los datos de reserva de un pasajero
2.4 R4: Conocer el porcentaje de ocupación de la avión
3. Modelo del Mundo del Problema
4. Modelo de la Interfaz Gráfica de Usuario
5. Modelo de Pruebas Unitarias
6. Exploración de código
6.1 Modelo
6.2 GUI
7. Recursos
7.1 Java
7.2 C#
7.2.1 Solución y proyectos
7.2.2 Documentación del código fuente de la aplicación
7.2.3 Aplicación en ejecución
7.2.3.1 Capturas de pantalla
7.2.3.2 Vídeo
8. Cambios
9. Conclusiones
10. Glosario
11. Literatura & Enlaces

0. Introducción

Empezamos con el segundo ejercicio de traducción -Java a C#- del tercer nivel del proyecto Cupi2 del Departamento de Ingeniería de Sistemas y Computación de la Universidad de los Andes. En esta oportunidad crearemos una aplicación utilizando las herramientas de Microsoft .NET Framework (principalmente el lenguaje de programación C# y el entorno de desarrollo integrado Visual Studio 2013); esta aplicación consistirá en un manejador de reservas de una aerolínea. Permitirá clasificar las reservas por clases ejecutiva y económica. La atención se realizará de acuerdo al orden de llegada de los clientes del servicio. Por otra parte vale resaltar dos de los objetivos pedagógicos de este ejercicio: uso de estructuras contenedoras de tamaño fijo (arreglos) y estructuras de tamaño variable (listas).


[Nota Importante: Este proyecto, Cupi2.NET, está basado en el proyecto Cupi2 del Departamento de Ingeniería de Sistemas y Computación de la Universidad de los Andes. El uso de este material intelectual es única y expresamente para la difusión de conocimiento de tecnologías de desarrollo y las metodologías inherentes a esta disciplina.]

1. Enunciado

Descripción del planteamiento de la aplicación El Avión a construir. (La versión original se puede encontrar [4].)


El avión de una aerolínea tiene un número fijo de 50 sillas. De ellas 8 son de clase ejecutiva, mientras que el resto son de clase económica. Las sillas ejecutivas se acomodan en filas de cuatro sillas separadas en el medio por el corredor. Las sillas económicas, en cambio, se acomodan en filas de seis sillas, tres a cada lado del corredor. El esquema del avión es el siguiente:
Esquema del avión
Figura 1. Esquema del avión [4].
Cuando un pasajero llega a solicitar una silla, éste indica sus datos personales y sus preferencias con respecto a la posición de la silla. Los datos del pasajero que le interesan a la aerolínea son:
  • Nombre de la persona
  • Cédula de la persona
Para dar la ubicación deseada, el pasajero indica la clase y la ubicación, que puede ser:
  • Ejecutivas
    • Ventana
    • Pasillo
  • Económicas:
    • Ventana
    • Pasillo
    • Centro
La asignación de la silla en el avión se hace en orden de llegada, tomando en cuenta las preferencias anteriores.

1.1 Vista previa de la aplicación (en Java)

En la Figura 2 se muestra la interfaz gráfica de usuario de la aplicación desarrollada en lenguaje de programación Java.
El Avión
Figura 2. El Avión  [4].

2. Requerimientos

A continuación los requerimientos funcionales a implementar mediante el lenguaje de programación en C#.

2.1 R1: Asignar una silla a un pasajero

Código: R1

Descripción: Asignar una silla a un pasajero

Resumen: Se requiere asignar una silla según las preferencias del pasajero, estas son clase ejecutiva o económica, y ubicación: ventana, centro o pasillo. En la asignación se debe registrar los datos del pasajero.

Entradas:
  • Nombre: Nombre del pasajero
  • Cédula: Cédula del pasajero
  • Clase: Clase de la silla
  • Ubicación: Ubicación de la silla
Resultados:
  • Asignación de silla: Si existe una silla con las características de clase y ubicación solicitadas por el pasajero, ésta queda asignada a dicho pasajero.
Manejo de errores:
  • Error 1:
    • Situación de error: Si no hay sillas disponibles con las características del usuario.
    • Acción: Se presenta un mensaje informando la falta.
  • Error 2:
    • Situación de error: Si el usuario ya tiene asignada una silla.
    • Acción: No se permite la asignación en una nueva silla y se informa el motivo.

2.2 R2: Desasignar una silla a un pasajero

Código: R2

Descripción: Desasignar una silla a un pasajero

Resumen: Dada la cédula de un pasajero se elimina su reservación de silla.

Entradas:
  • Cédula: Cédula del pasajero
Resultados:
  • Desasignación de silla
Manejo de errores:
  • Error 1:
    • Situación de error: Si el pasajero no tenía ninguna silla asignada.
    • Acción: Se presenta un mensaje indicando que el pasajero no tiene silla.

2.3 R3: Conocer los datos de reserva de un pasajero

Código: R3

Descripción: Conocer los datos de reserva de un pasajero

Resumen: Dada la cédula de un pasajero, si éste tiene reserva se presentan los datos de su reservación.

Entradas:
  • Cédula: Cédula del pasajero
Resultados:
  • Nombre: Nombre del pasajero
  • Cédula: Cédula del pasajero
  • Silla: Número de silla
  • Clase: Clase de la silla
  • Ubicación: Ubicación de la silla
Manejo de errores:
  • Error 1:
    • Situación de error: Si el pasajero no tenía ninguna silla asignada.
    • Acción: Se presenta un mensaje indicando que el pasajero no tiene ninguna asignación.

2.4 R4: Conocer el porcentaje de ocupación del avión

Código: R4

Descripción: Conocer el porcentaje de ocupación del avión

Resumen: A partir del número de sillas asignadas versus el número de sillas disponibles en el avión, presentar el porcentaje de ocupación del avión.

Entradas:
  • Estado del avión: Sillas asignadas y por asignar del avión.
Resultados:
  • Porcentaje: Porcentaje de ocupación del avión.

3. Modelo del Mundo del Problema


En la Figura 3 se presenta el diagrama UML con la descripción visual de las entidades y enumeraciones que integral el modelo del mundo del problema (dominio). (Original en [7].)
APO1 - Nivel 3 - El Avión - Modelo del mundo del problema
Figura 3. Modelo del mundo del problema.

4. Modelo de la Intefaz Gráfica de Usuario (GUI)

En la Figura 4 se presenta el diagrama UML con los componentes integrales de la interfaz gráfica de usuario. (Original en [8].)
APO1 - Nivel 3 - El Avión - Modelo de la interfaz gráfica de usuario
Figura 5. Modelo de la interfaz gráfica de usuario.

5. Modelo de Pruebas Unitarias

El diagrama UML (Figura 6) describe el modelo de las pruebas unitarias de validación del comportamiento y estado de objetos del mundo del problema (dominio). (Original en [9].)
APO1 - Nivel 3 - El Avión - Modelo de pruebas unitarias
Figura 6. Modelo de pruebas untiarias.

6. Exploración de Código Fuente C#

6.2 Modelo
Modelo

Archivo C# Avion.cs [Enlace alternativo]:


Archivo C# Clase.cs [Enlace alternativo]:


Archivo C# Pasajero.cs [Enlace alternativo]:


Archivo Silla.cs [Enlace alternativo]:


Archivo UbicacionSilla.cs [Enlace alternativo]:



6.2 GUI
APO1 - Nivel 3 - El Avión - GUI


Archivo C# ControlAvion.cs [Enlace alternativo]:


Archivo C# ControlSillaGrafica.cs [Enlace alternativo]:


Archivo C# DialogoBuscarPasajero.cs [Enlace alternativo]:


Archivo DialogoDetallesPasajero.cs [Enlace alternativo]:


Archivo DialogoEliminarPasajero.cs [Enlace alternativo]:


Archivo C# DialogoRegistrarPasajero.cs [Enlace alternativo]:


Archivo C# Principal.cs [Enlace alternativo]:



7. Recursos

7.1 Java

Recursos del proyecto en su versión orginal (lenguaje de programación Java):

7.2 C#

7.2.1 Solución y proyectos

Enlaces de descarga de archivos ZIP con la solución y los proyectos integrales (solución C# y pruebas unitarias) de la aplicación:

7.2.2 Documentación de código fuente de la aplicación

Enlace de descarga de la documentación (formato CHM) del código fuente C# de la aplicación.

7.2.3 Aplicación en ejecución

7.2.3.1 Capturas de pantalla
APO 1 - NIvel 3 - El Avión  - (Demo Aplicación)
Figura 7. El Avión en C#.
7.2.3.2 Demostración

8. Cambios

Cambios en el diseño de El Avión:
  • Agregación de las enumeraciones:
    • `Clase`, y 
    • `UbicacionSilla`

9. Conclusiones

En esta oportunidad de traducción de aplicación del proyecto Cupi2 (Universidad de Los Andes), El Avión, se realizaron adaptaciones con elementos de programados como las enumeraciones. Por otro lado, también se empleó varios de los elementos de programa (e.g., propiedades, organizadores de código (regiones)) propios del lenguaje de programación C#; esto con el propósito de darle sentido y propósito a esta tarea de traducción. Respecto a la creación de interfaces de usuario, se procedió a la creación de controles personalizados (i.e., `ControlSillaGrafica`, `ControlAvion`) para la composición de la interfaz ilustrada en la Figura 7.

10. Glosario

  • Clase
  • Control personalizado
  • Diagrama
  • Enumeración
  • GUI
  • Modelo
  • Mundo
  • UML

11. Literatura & Enlaces

[1]: Universidad de los Andes - http://www.uniandes.edu.co
[2]: Departamento de Ingeniería de Sistemas y Computación - http://sistemas.uniandes.edu.co
[3]: Proyecto Cupi2 - http://cupi2.uniandes.edu.co/sitio
[4]: El Avión - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion
[5]: Enunciado - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/enunciado-1698
[6]: Requerimientos - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/requerimientos-1699
[7]: Modelo Conceptual - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/modeloconceptual-n3avion
[8]: Interfaz - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/interfaz-n3avion
[9]: Pruebas - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/avion/pruebas-n3avion
J

sábado, 16 de agosto de 2014

APO1 - Nivel 3 en C#: Notas Curso

Índice

0. Introducción
1. Enunaciado
1.1 Vista previa de la aplicación (en Java)
2. Requerimientos
2.1 R1: Registrar o cambiar nota
2.2 R2: Calcular el promedio de las notas de los estudiantes
2.3 R3: Calcular el número de estudiantes del promedio
3. Modelo del Mundo del Problema
4. Modelo de la Interfaz Gráfica de Usuario
5. Modelo de Pruebas Unitarias
6. Exploración de c´doigo
6.1 Modelo
6.2 GUI
7. Recursos
7.1 Java 
7.2 C#
7.2.1 Solución y proyectos
7.2.2 Documentación del código fuente de la aplicación
7.2.3 Aplicación en ejecución
7.2.3.1 Capturas de pantalla
7.2.3.2 Vídeo
8. Cambios
9. Conclusiones
10. Glosario
11. Literatura & Enlaces

0. Introducción

Empezamos con la traducción de los ejercicios del Nivel 3 de Algorítmica y Programación Orientada a Objetos (APO1) del proyecto Cupi2 del Departamento de Ingeniería de Sistemas y Computación de la Universidad de los Andes (Colombia). En esta oportunidad crearemos una aplicación para el manejo de notas de un curso que está compuesto hasta por doce (12) estudiantes. En este nivel se hará ahínco en el uso de contenedores de valores de tamaño fijo como elementos de modelaje de atributos cuyo valor es una secuencia de objetos. A lo anterior, también se suma el uso recurrente de instrucciones de repetición para la modificación, recorrido del contenido de la secuencia de objetos.


[Nota: Se respetará cada uno de los elementos que pertenecen al proyecto de Cupi2 del Departamento de Ingeniería de Sistemas y Computación de la Universidad de los Andes. El uso de este material intelectual es única y expresamente para la difusión de conocimiento de tecnologías de desarrollo y las metodologías inherentes a esta profesión.]

1. Enunciado

Descripción del planteamiento del problema para la aplicación Notas Curso originalmente especificado para su desarrollo en el lenguaje de programación Java. (Versión original en [4].)

Se necesita crear una aplicación para manejar las notas para un curso. El curso es visto por doce (12) estudiantes. Para cada estudiante se deber poder registrar la nota definitiva que sacó en el curso.

Adicionalmente, la aplicación debe permitir calcular el promedio del curso, y el número de estudiantes que tienen una nota por encima del promedio.

1.1 Vista previa de la aplicación (en Java)


En la Figura 1 se muestra la interfaz gráfica de usuario de la aplicación desarrollada en lenguaje de programación Java.
Aplicación Notas Curso en Java
Figura 1. Aplicación Notas Curso en Java.

2. Requerimientos

A continuación el conjunto de requerimientos funcionales identificados en la etapa de análisis del planteamiento del problema (sección 1) de Notas Curso. (Fuente: [6].]

2.1 R1: Registrar o cambiar nota

Código: R1

Descripción: Registrar o cambiar nota

Resumen: Se deben poder agregar/modificar la nota de cualquier estudiante del curso.

Entradas:
  • Identificador del estudiante a modificar
  • Nueva nota para el estudiante
Resultados:
  • El estudiante tiene registrar su nueva nota

2.2 R2: Calcular el promedio de las notas de los estudiantes

Código: R2

Descripción: Calcular el promedio de las notas de los estudiantes.

Resumen: Se deben poder calcular el promedio de todas las notas de los estudiantes del curso.

Entradas: «Ninguna»

Resultados:
  • El promedio de las notas del curso. De ser la suma de todas las notas dividido en el número de estudiantes.

2.3 R3: Calcular el número de estudiantes por encima del promedio

Código: R3

Descripción: Calcular el número de estudiantes por encima del promedio

Resumen: Se quiere saber cuántos estudiantes tienen una nota superior a la nota promedio del curso.

Entradas: «Ninguna»

Resultados:
  • Número de estudiantes con una nota superior a la nota promedio del curso.

3. Modelo del Mundo del Problema


En el diagrama UML de la Figura 2 se esquematiza el modelo del mundo del problema para la aplicación Notas Curso. (En la sección 8 se resaltan los cambios realizados sobre el modelo original hallado en [7].)
Modelo del mundo del problema.
Figura 2. Modelo del mundo del problema.

4. Modelo de la Interfaz Gráfica de Usuario


En la Figura 3 se esquematiza el diagrama UML con los artefactos integrales de la interfaz gráfica de usuario. (Este modelo es una adaptación de la versión original [8].)
Modelo de la intefaz gráfica de usuario.
Figura 3. Modelo de la intefaz gráfica de usuario.

5. Modelo de Pruebas Unitarias


El diagrama UML esquematizado en la Figura 4 presenta el modelo de pruebas unitarias. (Original en [9].)
Modelo de pruebas unitarias
Figura 4. Modelo de pruebas unitarias.

6. Exploración de Código C#

6.1 Modelo
Artefactos del modelo del mundo del problema

6.2 GUI
Artefactos integrales del modelo de interfaz gráfica de usuario.

7.1 Java

Conjunto de recursos del proyecto en su versión original [4]:

7.2.1 Solución y proyectos

Enlaces de descarga de archivo ZIP con la solución y los proyectos integrales de la aplicación:

7.2.2 Documentión de código fuente de la aplicación

Enlace de descarga de la documentación (formato CHM) del código fuente C# de la aplicación.

7.2.3 Aplicación en ejecución

7.2.3.1 Capturas de pantalla
Notas Curso en C#
Figura 5. Notas Curso en C#.
7.2.3.2 Vídeo

8. Cambios

Cambios en el diseño de la clase Curso:
  • El método darNota renombrado a ObtenerNota.

9. Conclusiones

A pesar de que en los ejercicios de los niveles 2 y 3 ya habíamos trabajado con estructuras de datos simples (secuenciales) para la manipulación de grupos de atributos, a partir de este ejercicio se hará especial énfasis en su uso. Aquí, por ejemplo manipulamos grupos de controles -Label y Button- como grupos de atributos; esto facilito en gran medida crear varios controles de los tipos correspondientes de forma más ágil que si lo hubiéramos hecho uno por uno. En el próximo ejercucio crearemos (trudiciremos) una aplicación para la administración de las reservas en un vuelo.

10. Glosario

  • Arreglo
  • Atributo
  • Clase
  • Grupo de atributos
  • Modelo
  • UML
  • Uniandes
  • Universidad de los Andes
  • Vector

11. Literatura & Enlaces

[1]: Universidad de los Andes - http://www.uniandes.edu.co
[2]: Departamento de Ingeniería de Sistemas y Computación - http://sistemas.uniandes.edu.co
[3]: Proyecto Cupi2 - http://cupi2.uniandes.edu.co/sitio
[4]: Notas Curso - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso
[5]: Enunciado - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso
[6]: Requerimientos - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/requerimientos-1660
[7]: Modelo Conceptual - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/modeloconceptual-n3notascurso
[8]: Interfaz - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/interfaz-n3notascurso
[9]: Pruebas - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/pruebas-n3notascurso
[10]: JavaDoc - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/javadoc-n3notascurso
[11]: Visualización Código - http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/notas-curso/javadoc-n3notascurso


J