/ProyectoDAM

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

PROXECTO DE DAW ORDINARIO

Resumo

En liñas xerais, o Módulo de Proxecto pretende complementar o aprendido no conxunto dos módulos do ciclo, poñendo en práctica as competencias adquiridas no contexto dun proxecto de desenvolvemento de software escollido e definido polo alumnado.

En concreto, o que se pretende é contrastar aquelas competencias profesionais relacionadas coas fases de análise, deseño, planificación, xestión e implantación dun proxecto orientado ao desenvolvemento dun produto software. Do mesmo xeito, tamén se pretende facer un achegamento á iniciativa emprendedora, a partires do desenvolvemento dun estudo de necesidades e da elaboración dun modelo de negocio que valore as posibilidades de comercialización do produto.

Fases

Inicialmente débese decidir en que vai consistir o proxecto a desenvolver.

A documentación que haberá que entregar elaborarase usando como base os documentos "modelo" que están no repositorio, no directorio "templates" dentro de "plantilla-proxecto". Eses "modelos inclúen todos os apartados dos documentos a cubrir e as fases a seguir para o desenvolvemento do proxecto.

No repositorio, no directorio "doc/material_axuda" hai documentos que poden orientar na realización do proxecto.

Aspectos Técnicos

Está creado un documento no repositorio como modelo base para cada apartado do proxecto.

A modo de axuda e organización, pódese utilizar o taboleiro do proxecto, indicando o seu estado: en desenvolvemento ou finalizado.

Pódese consultar información máis detallada nos "README.md" do repositorio. Este arquivo hai que cubrilo ao final ou a medida que se vai realizando o proxecto.

Requisitos

Ollo! Non pode coincidir cun proxecto realizado noutro módulo. Consultade co profesorado do proxecto se podedes partir dun prototipo creado nunha materia e mellorar a súa funcionalidade.

Para acadar unha avaliación positiva do proxecto, deben cubrirse os seguintes requisitos:

Requisitos Mínimos

  • Frontend
    • Linguaxes: HTML5, CSS3, JavaScript.
    • Prototipos con: Figma, Sketch,..
    • Responsive design.
    • Comunicación asíncrona: AJAX.
    • Uso de librerías JavaScript: Axios, D3.js, jQuery, MathJS, AOS..
    • Validación de formularios.
  • Backend
    • Linguaxes (escoller): PHP, NodeJS, Ruby , etc.
    • Uso da programación orientada a obxectos. Utilización de bases de datos SQL e/ou NonSQL: MySQL , MariaDB, PostgreSQL, MongoDB, Redis , etc.
    • Seguridade: validación de datos, control de inxección SQL e/ou NonSQL, Cross Site Scripting (XSS).

Requisitos opcionais

Algúns dos requisitos que se nomean a continuación axudan a conseguir unha mellor cualificación final no proxecto:

  • Frontend
    • Comunicación asíncrona: WebSockets, WebRTC.
    • Uso de framework CSS: Bootstrap, Foundation, Pure, UIkit, etc.
    • Uso de framework javascript: ReactJS, VueJS, AngularJS,..
    • Uso dun preprocesador CSS: LESS, SASS, Stylus, etc.
  • Backend
    • Implementación dunha API REST.
    • Implementación de OAuth.
    • Envío de arquivos ao servidor.
    • Integración con bots: Telegram, Facebook Messenger, Google, Discord, Slack, etc.
    • Integración con API's externas.
    • Integración de servicios de mapas: OpenStreetMaps, Google Maps, etc.

Ten en conta que se elixes empregar tecnoloxías opcionais e baixo a túa responsabilidade, de forma que podes atoparte con dificultades que non poidas solucionar e a que os profesores non poderán axudarte.

Entrega do Proxecto

Debe proporcionarse algunha forma de probar o software desenvolvido. Para isto existen dúas posibilidades:

  • Servidor externo (recomendado): ter a aplicación desenvolvida nun servidor accesible desde internet. Neste caso, unicamente se debe indicar a URL da aplicación na documentación do proxecto.
  • Máquina virtual: entregar a máquina virtual con todo o sistema funcionando. Deben adxuntarse unhas instruccións para poder realizar as probas sobre a máquina virtual.
  • Contenedor docker. Neste caso debes indicarllo antes os profesores para que teñan un equipo con docker funcionando. A hora de presentar o proxecto deberás traer ti unha máquina con docker.

Independientemente de cal foi a maneira de proporcionar o software desenvolvido, a entrega do código fonte debe realizarse a través de GitHub.

Criterios de Avaliación Mínimos

Os seguintes criterios deben ser cumpridos para poder entregar e defender o proxecto:

  • O proxecto debe alcanzar os obxectivos marcados na programación ou anteproxecto (non se entregarán cousas “a medio facer”).
  • O proxecto debe ser orixinal e elaborado exclusivamente polo alumnado que o presenta. Debe quedar moi claro (por medio de citas ou contido na propia documentación) as partes realizadas por terceiros e a súa licenza de uso.
  • O proxecto debe executarse correctamente e debe incluír unha descrición detallada da súa posta en marcha.
  • Na presentación e defensa do proxecto non se poderá incluír ningún tipo de material que non figure na documentación ou entregables finais entregados ata a data límite de entrega do proxecto.
  • Deben cumprirse os prazos de entrega establecidos das diferentes fases.

Dinámica de Traballo

Entregaremos software funcionando frecuentemente (cada dúas semanas como moito). O software que funcione será a nosa medida de progreso. Perseguiremos a excelencia técnica e o principio do bo deseño. En cada iteración do desenvolvemento farase unha "Review" ou demostración do software funcionando coa persoa titora.

Non será necesario a esquematización formal do deseño (mediante UML ou outros diagramas). Valorarase especialmente a calidade da documentación integrada no código. Non se elimina a necesidade de documentar, pero si se valorara que a documentación técnica sexa moito más concisa pero precisa. Podes documentar o exercicio do teu deseño empregando fotografías, como esquemas que fagas nun encerado ou folio por exemplo. Será especialmente valorado o acertado emprego de patróns de deseño.

Documentación Final (criterios mínimos)

A documentación final deberá estar lista para a súa revisión na data que se indique, previa á defensa do proxecto.

O código fonte, que debe ir anexo á realización do proxecto, debe ser aportado nun repositorio GIT, contendo todo o histórico da súa realización. Debe conter un ficheiro README (segundo modelo), onde se indique como despregar ou como probar a funcionalidade do código desenvolto.

O contido da documentación debe estar estruturado e organizado, de forma que sexa comprensible toda a información que contén.

A documentación debe ser presentada seguindo as liñas de estilo marcadas e de acorde a un modelo de mínimos acordado coa persoa titora.

Orixinalidade. Debe ser un proxecto novo e elaborado exclusivamente polo alumnado. Debe ser explicitamente indicado, e quedar moi claro, a través de citas e contido na propia documentación o código ou documentación de terceiros e a súa licencia de uso.

Manual do Proxecto

O manual do proxecto realizarase empregando os ficheiros markdown que atoparás en "templates".

Defensa do Proxecto (criterios mínimos)

A defensa oral do proxecto levarase a cabo ante o equipo docente. A defensa incluirá unha explicación do proxecto, por medio dunha breve presentación de duración entre 10 e 15 minutos, e a resposta ás preguntas realizadas polo tribunal, debendo demostrar a autoría e coñecemento do mesmo. Recoméndase revisar o documento Muerte_por_powerpoint de cara a elaboración da presentación. A presentación do proyecto deberá incluir unha demostración do funcionamento da aplicación (ententendo como tal aplicación Web) realizada.

Aspectos a ter en conta:

O proxecto presentado debe alcanzar os obxectivos marcados no alcance no mesmo, que estarán estipulados no anteproxecto presentado e aprobado polo equipo docente. Non se poderán presentar “cousas a medio facer”.

Non se exporá nada que non estea reflectido na documentación entregada.

O autor do proxecto debe saber explicar de maneira clara e concisa o contido do proxecto e os motivos polos que decide levar a cabo as tarefas planificadas do xeito reflectido na documentación, así como xustificar adecuadamente as decisións tomadas dende os puntos de vista técnico, económico e loxístico.

No caso de ter usado tecnoloxías innovadoras e ter considerado distintas alternativas, poden explicarse as vantaxes e limitacións destas.

Demostrar a autoría do mesmo. Se quedase en cuestión este aspecto, o proxecto sería cualificado inmediatamente coma NON APTO.

As puntuacións asignadas a cada un dos apartados do proxecto poderán modificarse en función da defensa do mesmo.

Calendario de Entregas

Como empezar o proxecto

  1. Lee este documento detidamente e consulta os ficheiros anexos.
  2. Consulta as instruccións
  3. Busca unha idea.
  4. Redacta o anteproxecto.
  5. Investiga sobre o que precisas para poder realizala.
  6. Codifica o proxecto.
  7. Documenta o proceso.
  8. Presenta o proxecto.