Con éxito

Notas

Error

Session expiration Your session is going to expireClick here to extend

Presupuesto

Proyecto pequeño <800

Publicado el

22/02/13 1:20

Cliente

Dar***

Este proyecto ha expirado

Publica un proyecto similar y recibe ofertas sin compromiso alguno.

¡Publica un proyecto similar ahora!

Descripción

Propuesta de trabajo

Gestión de aparcamientos

Al departamento de desarrollo se nos ha solicitado analizar y crear una aplicación para la gestión de parking, que junto con servidores y teléfonos inteligentes conectados se pretende encontrar aparcamiento más fácil.

En este enunciado se indica el ciclo de vida de la aplicación, y el trabajo consiste en crear la base de datos y realizar una web con ASP.NET C#.

Otro departamento se encargará de realizar la aplicación móvil, nuestro cometido es crear la infraestructura, los webservices, y la versión web de esta aplicación.

La web tendrá las siguientes opciones:

  • Registro de un usuario, un usuario puede disponer de varios vehículos.
  • Una vez autenticado en el sistema tendremos varias opciones:
  • Buscar aparcamiento
  • Dejar aparcamiento
  • Caducar aparcamiento
  • Aparcado
  • Buscar coche

 

Dejar aparcamiento

Cuando pulsamos este botón, gracias al posicionamiento GPS que disponen los teléfonos inteligentes guardaremos un registro de la hora y el día que se ha dejado un sitio libre en las coordenadas GPS indicadas, y que usuario ha dejado el sitio libre.

Debemos crear un procedimiento almacenado en la base de datos y un webservice para esta acción.

 

Buscar aparcamiento

Gracias al posicionamiento GPS que disponen los teléfonos inteligentes averiguaremos las coordenadas gps y el sistema, debe retornarnos las coordenadas de los lugares más próximos que tenemos sitio libre, indicando los minutos que hace que se ha quedado libre.

Debemos crear una vista, consulta para esta acción, teniendo en cuenta el apartado del sistema de puntuación que se indica más adelante, y un webservice que retorne los datos.

Caducar aparcamiento

Aunque el sistema es muy ambicioso a simple vista, no todos los conductores disponen de un teléfono inteligente así que si dejamos un sitio libre, cualquier otro conductor puede ocupar el lugar, si al darle a buscar aparcamiento, el sistema nos ha indicado un lugar, y al llegar, no hay sitio libre, podremos indicar a través de esta acción que ese sitio está caducado, así pues la próxima vez que se busque aparcamiento este no saldrá.

Debemos crear un procedimiento almacenado para esta acción y un webservice para esta acción.

Aparcado

Si buscamos aparcamiento y llegamos a un lugar libre que nos ha indicado el sistema, marcaremos ese lugar como que hemos aparcado.

Y si encontramos un lugar libre que el sistema no nos ha indicado, indicaremos también las coordenadas donde tenemos aparcado el coche.

Debemos crear un procedimiento almacenado para esta acción, además de un webService.

Buscar Coche

Una vez que le hemos dado a la opción anterior, lo más fácil es que si pasan algunos días sin mover el vehículo nos olvidemos de donde lo hemos aparcado, con esta opción, retornaremos la posición gps de nuestro vehículo.

Debemos crear una consulta o vista para esta acción junto con un webservice.

 

Sistema de puntuación

El sistema debe de ser capaz de premiar a los conductores que más informan de los sitios que dejan libres, así pues de alguna forma tenemos que poder almacenar dicha información.

Así pues se creará un trigger que cada vez que se crea un registro en la entidad modificada por la acción “Dejar aparcamiento”, se añadirá 1 a la puntuación del usuario, además sumará 0,5 puntos cuando informamos de que un sitio está caducado.

Restaremos 0,75 puntos cada vez que otro usuario caduca un sitio que un usuario ha informado (esto se hace para evitar sitios falsos y ganar puntos ilegalmente).

Todo este sistema de puntuación tiene un cometido, premiar a quien más informe, y la forma de premiar es la siguiente:

Cuando se busca aparcamiento la consulta que tenemos que realizar irá en función de los puntos del usuario, el usuario que más puntuación tenga, se le informarán todos los lugares marcados en el sistema como libre.

Y al usuario que menos puntos tenga se le informará de un porcentaje inferior de aparcamientos libres (se omitirán datos aleatorios) pero como no queremos que los usuarios veteranos tengan ventaja respecto a los nuevos usuarios (ya que si no, no habría nuevos usuarios), tenemos que calcular la cantidad de puntos acumulados entre el tiempo que el usuario lleva de alta en el sistema, así que lo que tenemos que tener en cuenta sería la media de puntos informados por días registrado.

Administración

Se dispondrá de un rol Admin, que podrá añadir, modificar e incluso eliminar datos de todas las entidades.

Incluso registrar usuarios, darlos de bajar, etc.

Además tendrá información a través de una API de google maps de los aparcamientos disponibles, pudiendo realizar lo mismo que un usuario.

El alumno puede aportar nuevas funcionalidades y modificar las descritas, siempre y cuando defienda el por qué las ha creado y el nivel final se igual o superior al exigido en el actual enunciado.

Implementación y documentación tanto a nivel técnico como de usuario de una aplicación web orientada a objetos en C#.

Se desarrollará obligatoriamente el enunciado que se adjunta.

 

Objetivos del trabajo

  • Esta práctica debe ser realizada en VISUAL STUDIO 2010 con SQL SERVER 2008, bien en la versión gratuita como de pago.
  • Se debe entregar un documento Word con el análisis, diagrama E/R, el diagrama entidad relación, manual de usuario, y explicados los problemas que se ha encontrado a la hora de realizar la práctica y como los ha solventado.
  • Se deben aplicar todos los conceptos aprendidos en la asignatura, acceso a datos, seguridad, …
  • Se debe aplicar el estándar de codificación C# incluido en la asignatura además de documentar correctamente el código.
  • Se debe crear una aplicación como mínimo en tres capas (Presentación, Dominio y Datos)
  • Se puede realizar la aplicación tanto en ASP.NET C# con webforms como con MVC.
  • Se debe entregar los ficheros de la base de datos (mdf y ldf) en la carpeta APP_DATA de la aplicación web y la cadena de conexión del web config apuntar a ella.
  • Sólo debe existir una configuración de cadena de conexión en el web.config.