UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL GENERAL PACHECO ANEXO JOSÉ CLEMENTE PAZ TECNICO SUPERIOR EN PROGRAMACION LABORATORIOS DE COMPUTACIÓN II Prof. Rubén A. Calabuig TRABAJO PRÁCTICO INTEGRADOR Nº1 PAUTAS PARA EL DESARROLLO
Índice TEMA .............................................................................................................................................................................. 1 PROGRAMA ................................................................................................................................................................... 1 FUENTES ........................................................................................................................................................................ 2 Ejemplo de documentación de un archivo fuente de programa. ..............................................................................2 Ejemplo de encabezado de un archivo de clase. ......................................................................................................3 Ejemplo de encabezado de un método de una clase. ................................................................................................3 Ejemplo de encabezado de una función. ..................................................................................................................4 MANUALES Y DOCUMENTACIÓN .......................................................................................................................... 4 ARCHIVOS FUENTES..............................................................................................................................................4 GUIA DEL USUARIO...............................................................................................................................................4 GUIA DEL PROGRAMADOR...................................................................................................................................4 LICENCIA DE DISTRIBUCIÓN...............................................................................................................................4 DISTRIBUCIÓN ............................................................................................................................................................. 5
LABORATORIO II TRABAJO PRÁCTICO INTEGRADOR Nº 1 PAUTAS PARA EL DESARROLLO TEMA El alumno deberá realizar una agenda directorio electrónica.
PROGRAMA El programa debe ser desarrollado en C++ utilizando como entorno de desarrollo el IDE Code::Blocks, con el compilador GNU gcc. La agenda debe ser desarrollada en su totalidad en modo consola (modo texto). El paradigma de programación a utilizarse para el desarrollo de la agenda es la Programa ción Modular y Estructurada. NOTA: Todo el desarrollo debe estar basado en funciones, las que se agruparán según sus características en archivos de tipo “.h”, los que serán incluidos en el archivo que contiene a la función main(). La interfase del usuario debe presentar las siguientes características: La agenda debe comenzar con una pantalla de presentación y terminar con pantalla de despedida. El control del programa debe realizarse a través de un sistema de menús de varios nive les. Debe existir la posibilidad de acceder en cualquier momento de la ejecución a un sistema de ayuda en línea (pantallas explicativas, ejemplos, ayudas contextuales, etc.). Se debe tener la posibilidad de realizar altas, bajas, modificaciones, búsquedas y lista dos. El registro mínimo debe contar con campos: nombre, dirección, teléfono, celular, email. NOTA: Los alumnos podrán realizar propuestas de mejoras sobre este tópico.
Debe existir la posibilidad de salir del programa en cualquier momento de su ejecución. Según el momento de ocurrida la petición de abandono, pueden presentarse diferentes situaciones que se detallan a continuación: • • •
Si se presionó la opción “salir” del Menú Principal, debe terminarse el programa. Si se presionó la opción “salir”, la tecla “ESC” o se realizó alguna acción equivalen te, desde algún submenú, debe retornarse al Menú Principal. Si se presionó la tecla “ESC” o se realizó alguna acción equivalente durante la edi ción de algún registro, debe pedirse confirmación, ofrecerse la posibilidad de conti nuar.
FUENTES El proyecto debe ser entregado con todos sus archivos fuentes (programas y librerías). Los archivos fuentes deben presentar el encabezado de autor, y cada una de las funciones debe, también, presentar un encabezado explicativo.
Ejemplo de documentación de un archivo fuente de programa.
//////////////////////////////////////////////////////////////////////// // ARCHIVO : Turf.cpp // PROGRAMA : Turf. // AUTOR : Ruben A. Calabuig. // VERSION : 3.0 Estable. // FECHA : 17/07/2008. // IDE : Code::Blocks. // COMPILADOR : GNU GCC Compiler (Mingway). // SISTEMA OPERATIVO: MS – Windows Xp //...................................................................... // DESCRIPCION: Este archivo contiene el programa principal del juego // “Turf”. // El programa es un juego de azar donde los usuarios pue// den realizar apuestas a 3 caballos elegidos por la ma// quina. //====================================================================== // INCLUSION DE LIBRERIAS ESTANDAR //---------------------------------------------------------------------#include // Contiene todas las funciones estandar. //---------------------------------------------------------------------// INCLUSION DE LIBRERIAS DE OTROS AUTORES //---------------------------------------------------------------------#include // Contiene la emulacion de la libreria conio.h de // Borland --> Autor: Salvador Pozo Coronado. //---------------------------------------------------------------------// INCLUSION DE LIBRERIAS PROPIAS //---------------------------------------------------------------------#include // Contiene la emulacion de las // funciones randomize() y random() // de Borland. using namespace std; //---------------------------------------------------------------------// DECLARACION DE CONSTANTES //---------------------------------------------------------------------//====================================================================== // CUERPO PRINCIPAL DEL PROGRAMA:FUNCION "main". //====================================================================== int main(int argc, char* argv[]) { // // Declaracion de variables locales //---------------------------------//====================== // Inicio del algoritmo //====================== return 0; // Retorno de la funcion. } ///// FIN //////////////////////////////////////////////////////////////
Ejemplo de encabezado de un archivo de funciones.
//////////////////////////////////////////////////////////////////////// // ARCHIVO
: ClsMenu.h
// AUTOR
: Ruben A. Calabuig.
// VERSIÓN
: 3.0 Estable.
// FECHA
: 18/07/2008.
// IDE
: Code::Blocks.
// COMPILADOR: GNU GCC Compiler (Mingway). //...................................................................... // DESCRIPCION: //
Este archivo incluye la definicion de las funciones nece-
//
sarias para la administracion del sistema de menus.
// ////////////////////////////////////////////////////////////////////////
Ejemplo de encabezado de una función.
//====================================================================== // FUNCION
: int random(int n)
// ACCION
: Devuelve un numero aleatorio entero entre 0 y n-1.
// PARAMETROS: int n -> numero tope del rango aleatorio. // DEVUELVE
: int n -> numero aleatorio generado.
//----------------------------------------------------------------------
NOTA: en cada caso los parámetros deben ser correctamente explicados (tipo, nombre y rol que cumple).
MANUALES Y DOCUMENTACIÓN La documentación mínima a presentar es:
ARCHIVOS FUENTES.
GUIA DEL USUARIO
Debe prepararse una guía del usuario donde se explique claramente los distintos tópicos del programa. (uso del menú, detalle de las opciones, pantallas, teclas, comandos, ayu das, estrategias sugeridas, etc.). NOTA: debe entregarse con formato libre ODT (Open Document Text).
GUIA DEL PROGRAMADOR
Debe presentarse una guía del programador donde: • Se describa cada una de las librerías y funciones. • Se presente una lista de errores donde aparezcan código de error, descripción, posi bles causas, y métodos para solucionarlo.
NOTA: debe entregarse con formato libre ODT (Open Document Text).
LICENCIA DE DISTRIBUCIÓN
Debe presentarse toda la documentación pertinente al tipo de licencia requerida para la distribución del software (GNU, Open Source, GPL, etc.).
NOTA: Bajo ningún concepto se permitirán distribuciones de tipo “propietario” o que no in cluyan los códigos fuentes.
DISTRIBUCIÓN Todo el trabajo práctico deberá ser entregado en un archivo comprimido (ZIP) que incluya: Archivos fuentes. Manual del Usuario. Manual del Programador. Licencia. Créditos de otros autores.