0% encontró este documento útil (0 votos)
3 vistas4 páginas

ProyectoPOO_03_17-1

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 4

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO

FACULTAD DE INGENIERÍA

“ESPECIFICACIONES PROYECTO”

PROGRAMACIÓN ORIENTADA A OBJETOS

ING. HERNÁNDEZ LÓPEZ JORGE ÁNGEL


Ing. Jorge Angel Hernández López

Universidad Nacional Autónoma de México


Facultad de Ingeniería

Programación Orientada a Objetos

Proyecto: MyGitHub en JAVA

Objetivo
El alumno pondrá en práctica los conocimientos adquiridos sobre el paradigma de
programación orientado a objetos utilizando el lenguaje JAVA, donde practicará el uso de
abstracción, polimorfismo, encapsulamiento, herencia, el uso de clases, interfaces, objetos,
estructuras de control de flujo, archivos, entre otras cosas. Lo anterior, para consolidar su
aprendizaje, desarrollando un software que tenga una utilidad real.

Introducción

Se desea desarrollar un software que me permita implementar un control de versiones de


archivos y a su vez que me permita tener proyectos colaborativos, es decir, un repositorio
de almacenamiento, controlando las versiones de cada integrante involucrado en el
desarrollo de un proyecto. Como base, se pueden basar en el funcionamiento de una de las
plataformas más conocidas para llevar a cabo este tipo de actividades “GitHub”,
www.github.com.

Especificaciones

1. El programa será dividido en 4 secciones:

- Sección Autenticación:
En esta sección, la aplicación deberá solicitar la dirección del servidor a conectarse y el
nombre de usuario, si el usuario está registrado, deberá pedir la contraseña. En caso
de que el usuario no esté registrado, deberá darle la opción de registrarse.

Nota: Los usuarios y contraseñas deben prevalecer (Hacer uso de archivos).

Programación Orientada a Objetos


Ing. Jorge Angel Hernández López

- Sección Zona de trabajo:


Una vez que el usuario haya tenido una autenticación exitosa, se mostrará esta sección,
la cual está formada por las siguientes opciones:
 Crear Nuevo Repositorio
 Ver Repositorios de usuario
 Editar Repositorio

Nota: para el manejo de repositorios, les recomiendo que los agrupen por directorios
(buscar cómo se crean directorios en JAVA).

Para editar repositorio, se usarán los comandos básicos de git: init, clone, add,
commit, push, pull, merge. (Leer documentación de Git o esta pequeña guía de
comandos http://rogerdudler.github.io/git-guide/index.es.html) Al menos debe hacer
los comandos mencionados en este documento.

Crear nuevo repositorio me permitirá crear un nuevo repositorio, así como indicar que
usuarios tendrán acceso a dicho repositorio.

Ver repositorios de usuario, me listará todos los proyectos que tiene el usuario o en
los que participa como colaborador (sólo nombre de repositorios).

- Sección Log de Repositorio:


En esta sección, se mostrará la información respecto al repositorio, quienes son los
colaboradores, cuando se editó el archivo, cuántas branch existen y en qué fecha
fueron creadas, etc.

- Sección Acerca de:


En esta sección, se mostrarán los datos de los creadores del software, así como la
versión, semestre, fecha, materia, etc.

2. Cabe señalar, que este proyecto estará formado por dos partes:

 Cliente: Está conformada por la interfaz de usuario, la cual muestra la autenticación


de usuarios, la interfaz para la edición de los archivos de cada repositorio, la sección
del log de repositorio, etc. Esta parte del proyecto se ejecutará en dos o más
computadoras, que deben ser proporcionadas por los integrantes de los equipos.

Programación Orientada a Objetos


Ing. Jorge Angel Hernández López

 Servidor: Esta parte del proyecto, será la encargada de almacenar todos los archivos
asociados al repositorio, así como la lista de usuarios registrados y llevará a cabo la
lógica del servicio, cabe señalar que el servicio debe ser multiusuario y concurrente,
es decir, permitir la conexión de más de un usuario al mismo tiempo, y que trabajen
de forma independiente. Esta sección se ejecutará en una computadora
proporcionada por el profesor. Si lo desean pueden mostrar en pantalla un log de
las acciones que está realizando el servidor, por ejemplo:

- Se recibe conexión de la IP: 192.168.3.4 …


- Autenticando al usuario Pepito…
- Autenticación exitosa…
- Creando nuevo repositorio “Mis tareas”…
- Compartiendo repositorio con el usuario “Juanito”…

3. El proyecto se tendrá que hacer en equipos, con un máximo de 7 integrantes por


equipo.

4. El proyecto podrá ser en línea de comandos o con interfaz gráfica, siempre y cuando
todo lo solicitado funcione sin problemas, la interfaz gráfica se tomará en cuenta con
puntos extras.

5. El proyecto se enviará vía correo electrónico. Y habrá evaluación oral acerca del
proyecto. Por cada pregunta no contestada habrá penalizaciones a su calificación.

6. Si equipos diferentes entregan proyectos iguales, se anulará la calificación a todos los


equipos involucrados.

7. El proyecto lo deben de mandar en un archivo .rar o .zip, el cual contendrá todos sus
archivos de código fuente que utilizaron.

8. La fecha límite para enviar su proyecto será el día 08 de diciembre a las 23:59 hrs.

9. La fecha límite para la revisión oral de su proyecto será el día 09 de diciembre, máximo
a las 16:00 hrs.

Cualquier duda, comentario o sugerencia vía correo electrónico o personal.

jahl@fi-b.unam.mx

Mucho éxito...!!!
Programación Orientada a Objetos

También podría gustarte