Está en la página 1de 5

Descripcin: Las necesidades tecnolgicas varan rpidamente debido al desarrollo de diversos medios tecnolgicos, el desarrollo del Internet ha permitido

que los usuarios puedan interactuar de diversas formas, entre estas las redes sociales. El presente proyecto recrea una red social donde los usuarios crean su perfil y pueden seguir a otros usuarios y tambin pueden ser seguidos por otros usuarios, y tambin est un muro donde todo lo que el usuario escriba ser visible por todos sus seguidores. El Nick ser el id que se almacenara en el rbol. El rbol AVL tiene que tener todos los usuarios registrados en la aplicacin, los perfiles de los usuarios estn almacenados aqu. Cada usuario puede tener una lista simple con las personas que est siguiendo (ntese que es una lista por usuario). Inicio: Al inicio de la aplicacin deber estar un rea de login pero si una persona an no tiene un usuario deber de haber una opcin que le permita crear un usuario, si crea un usuario deber ingresar los datos siguientes: Nick (se deber de verificar que no exista para poderlo crear), nombre, apellido, fecha de nacimiento (en el perfil se deber mostrar la edad calculada en base a la fecha de nacimiento), subir una foto, si no sube foto se deber de tener una predeterminada, y escribir una descripcin de no ms de 150 caracteres. Si intenta loguearse y no se puede deber de mostrar un mensaje con el error. La foto de perfil se deber de guardar en el servidor con el Nick del usuario. Pgina principal Si se logra loguear entonces deber de mandarlo a una pgina donde en una parte se muestra el perfil, en otra se muestra una lista con las personas que est siguiendo dicho usuario (Nick y foto) tambin estadsticas de cuantos tweets lleva, cuantos personas est siguiendo y cuantas personas lo siguen y en otra parte deber mostrar todos los tweets en orden cronolgico estos tweets estarn almacenados en una lista doblemente enlazada, el espacio de la pgina deber de estar bien administrado para que todo lo mencionado se muestre de manera agradable a la vista y que se pueda usar con facilidad.

Creacin de perfil de usuario: Cuando alguien desee crear su perfil deber ingresar sus datos bsicos (nickname, Nombre real, Fecha de Nacimiento). Despus de ingresar los datos se procede a solicitar al usuario que ingrese una foto de perfil, al no seleccionar ninguna foto de perfil se colocara una imagen de usuario sin foto que ya est dentro del sistema. rea de Amigos Listado de Amigos: Como se mencion antes hay una parte donde se muestran las personas que se estn siguiendo, pero en esa parte solo se mostrara un nmero limitado de 10 personas, pero si el usuario tiene ms de 10 personas a las que sigue entonces all mismo en esa parte se tendr un link que lo conduzca a una pgina donde se muestren todos los amigos, en este listado se mostrara el Nick y la foto y al darle click se mostraran todos sus datos en otra pgina. Cuando estemos en el perfil de un amigo se debe de mostrar su perfil y todos sus tweets en una parte, en otra parte sus estadsticas (total de tweets, cuantas personas est siguiendo y cuantas lo siguen), y en otra parte el listado de amigos. Agregar Amigos: Cuando el usuario este en la pgina donde estn todos los amigos habr una opcin de buscar, esta opcin lo que har ser buscar dentro del rbol AVL todos las personas que l no este siguiendo y coincidan con texto que el ingrese para la bsqueda por ejemplo si tengo Usuario1, user2 y Anonimo3 e ingreso us el resultado debera de ser Usuario1 y user2 , si no ingresa nada entonces se mostraran todos excepto los que l ya est siguiendo, y se mostrara un listado en otra pgina similar al anterior, se muestra el Nick y la foto y al darle click nos muestra todo el perfil, solo que en vez de tener una opcin eliminar tendr una opcin seguir y al darle a esta opcin se agregara a su listado de personas que sigue, y a partir del momento en lo que lo sigue los twetts de esta persona se publicaran el muro del usuario. Eliminacin de amigos: Un usuario puede dejar de seguir a alguien y entonces se eliminara de su lista de seguidores, la opcin eliminar se mostrara en la pgina donde estn todos los amigos, la forma de eliminar ser as, est el

listado de amigos mencionada anteriormente, si le da click a un amigo se mostrara el perfil de este y dentro del perfil habr una opcin para eliminarlo pero al seleccionar esta opcin se deber de pedir una confirmacin. rea de Usuario Perfil: En el rea de usuario es el rea informativa (nickname, Nombre Real, edad (calculada en base a la fecha de nacimiento), foto, descripcin), y un listado con todos sus tweets, y tambin un rea de menciones si selecciono esta opcin me mostrara todos los tweets de quien sea que mencionen el nombre de usuario, tambin desde aqu habr un link o alguna opcin que me muestre el listado de seguidores y otra opcin para ver las personas que esta siguiendo. Modificar cuenta: Se podrn modificar todos los datos a excepcin del Nick. Eliminar Cuenta: Todo usuario registrado tendr la opcin de eliminar su propia cuenta, al eliminar un usuario se deber de eliminar tambin eliminar al usuario de las listas de sus seguidores y todos sus tweets de los muros de sus seguidores. Otros: Cada vez que alguien ponga @Usuario donde usuario es el Nick de alguien, entonces esa parte ser un link hacia el perfil de dicho usuario y deber de estar resaltado de alguna forma. Si alguien escribe texto con # antes por ejemplo #EDD tambin se marcara de alguna forma y ser un link y si alguien le da click lo llevara a una parte donde se mostraran todos los tweets de todas las personas que l sigue que tengan ese texto. Muro: El muro ser una lista doblemente enlazada en la cual se almacenan todos los tweets de todos los usuarios en orden cronolgico, cada tweet deber ser no mayor de 150 caracteres, y los datos que se almacenaran en esta lista son el Nick del usuario, el tweet y la hora y fecha en que se public, en el perfil de cada usuario se muestra el muro pero se mostraran nicamente los tweets de l y de las personas que el sigue. Cada tweet deber de tener la foto del usuario que lo escribi y su Nick y el texto. Cada tweet deber ser link al perfil del usuario que lo escribi.

Eliminar Tweet: Cada tweet del usuario que se muestra en el listado podr ser eliminado en cualquier momento, y si se elimina se deber de eliminar de los listados de todos sus seguidores. Administracin: Para esta parte no tienen que tener usuario administrador simplemente con un link o alguna opcin que los lleve a esta parte ser suficiente. En esta parte podrn ver a todos los usuarios en un rbol AVL diagramado con la herramienta graphviz, y adems de eso tendrn opciones para ver los recorridos pre-orden, in-orden y post-orden. Cada vez que se inserte un nodo al rbol se guardara en orden alfabtico ascendente, se debern hacer las rotaciones necesarias cuando sea necesario.

Bitcora, cada vez que se inserte un usuario y sea pierda el equilibrio en el rbol y se hagan rotaciones se guarda un historial en un archivo de texto que se mostrara en esta rea. Ejemplo: Factor de equilibrio = -2; Nodos en la rotacin = E, G, H; Rotacin = DD Factor de equilibrio = +2; Nodos en la rotacin = A, B, C, D; Rotacin = DI Tambin se podr seleccionar un usuario (esto pueden implementarlo de la forma que deseen) y mostrar grficamente dos listas una con sus amigos y

otra con todas las personas que lo siguen. Se podr hacer carga masiva de datos por medio de un archivo XML, el XML solo tendr usuarios que se agregaran al AVL ejemplo de XML:

Nickname = es el id como ya se mencion antes, siempre verificar antes de insertar que no hayan repetidos. Nombre = es el nombre completo del usuario. Fecha = fecha de nacimiento en formato dd/mm/aaaa, debern de pasarlo a formato de fecha para poder mostrar la edad el usuario. Foto = path de la foto de perfil, tomar en cuenta que el path puede ser relativo o absoluto, si la foto que se indica en el XML no existe deber de poner la imagen que tenga como predeterminada para quienes no ingresen foto, si el path es por ejemplo imgenes/carlos.jpg entonces la carpeta imgenes esta al mismo nivel que el archivo XML.

También podría gustarte