Repository logo
 
Publication

Archetype para Projetos Full-stack

dc.contributor.advisorBragança, Alexandre Manuel Tavares
dc.contributor.authorFerreira, Telmo José Guedes Alpoim
dc.date.accessioned2022-03-14T15:58:47Z
dc.date.available2022-03-14T15:58:47Z
dc.date.issued2021
dc.description.abstractO conceito moderno de desenvolvimento ágil de software foi introduzido nos anos 90. Desde a sua conceção, este conceito tem dominado a indústria devido às vantagens que apresenta em relação a modelos anteriores de desenvolvimento (Hoda, Salleh e Grundy 2018). Contudo, para o desenvolvimento ágil ser eficazmente aplicado, a empresa tem de possuir um fluxo de trabalho bem otimizado. O começo de um novo projeto de software é, normalmente, um momento onde as equipas perdem algum tempo. Para além da definição e estruturação de todos os conceitos que envolvem o projeto, é também necessário tratar de todas as “burocracias técnicas”. Essas burocracias incluem tarefas como criar os repositórios onde o código vai estar alojado e onde será feito o controlo de versões, definir as estruturas de ficheiros para esses repositórios, entre muitas outras. Esse processo exige algum cuidado, uma vez que envolve algumas decisões que vão acompanhar o projeto daí para a frente. Contudo, é também, habitualmente, um processo maioritariamente manual, onde erros podem ser cometidos. A solução descrita neste documento tem como objetivo ajudar as equipas nessas fases de início de projetos, gerando automaticamente um esqueleto para todo o projeto, com templates de código para as componentes back-end e front-end, assim como pipelines e mecanismos de Continuous Integration, Continuous Delivery (CI/CD) para tornar o projeto deploy-ready. Assim, esta solução iria proporcionar às equipas uma forma automática de realizar várias tarefas que são normalmente efetuadas de forma manual, dando-lhes assim a oportunidade de utilizarem esse tempo para começarem imediatamente o desenvolvimento dos projetos e evitando potenciais lapsos provenientes de erro humano. Este projeto de tese foi realizado para a empresa Critical TechWorks, que é uma joint venture entre a Critical Software e o Grupo BMW. A solução aqui descrita foi idealizada para a área de Infotainment & Interactivity Services, cujo objetivo é desenvolver serviços para o sistema de infoentretenimento dos carros da BMW.pt_PT
dc.description.abstractThe modern concept of agile software development was introduced in the 1990s. Since its conception, this concept has dominated the industry due to the advantages it presents over previous development models. However, for agile development to be effectively applied, the company must have a well-optimized workflow. The start of a new software project is usually a time when teams lose some time. In addition to the definition and structuring of all the concepts that involve the project, it is also necessary to address all the “technical bureaucracies”. These bureaucracies include tasks such as creating the repositories where the code will be hosted and where version control will be done, defining the file structures for these repositories, among many others. This process requires some caution since it involves some decisions that will accompany the project from that moment forward. However, it is also usually a process that’s mostly manual, where mistakes can be made. The solution described in this document aims to help teams in these phases of project initiation, by automatically generating a skeleton for the entire project, with code templates for the backend and front-end components, as well as pipelines and Continuous Integration, Continuous Delivery (CI/CD) mechanisms to make the project deploy-ready. Thus, this solution would provide teams with an automatic way to carry out various tasks that are normally done manually, thus giving them the opportunity to use that time to start the project development immediately and avoid potential lapses resulting from human error. This thesis project was carried out for the company Critical TechWorks, which is a joint venture between Critical Software and the BMW Group. The solution described here was designed for the Infotainment & Interactivity Services area, whose objective is to develop services for the infotainment system of BMW cars.pt_PT
dc.identifier.tid202797546pt_PT
dc.identifier.urihttp://hdl.handle.net/10400.22/20225
dc.language.isoporpt_PT
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/pt_PT
dc.subjectArchetypept_PT
dc.subjectScaffoldingpt_PT
dc.subjectFull-stackpt_PT
dc.subjectAutomaçãopt_PT
dc.subjectDesenvolvimentopt_PT
dc.subjectSoftwarept_PT
dc.titleArchetype para Projetos Full-stackpt_PT
dc.typemaster thesis
dspace.entity.typePublication
rcaap.rightsopenAccesspt_PT
rcaap.typemasterThesispt_PT
thesis.degree.nameMestrado em Engenharia Informática - Sistemas Computacionaispt_PT

Files

Original bundle
Now showing 1 - 2 of 2
No Thumbnail Available
Name:
DM_TelmoFerreira_2021_MEI.pdf
Size:
5.79 MB
Format:
Adobe Portable Document Format
No Thumbnail Available
Name:
license (2).txt
Size:
1.74 KB
Format:
Item-specific license agreed upon to submission