Basics of a remote development environment
Vuorinen, Markus (2021)
Vuorinen, Markus
2021
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021060815015
https://urn.fi/URN:NBN:fi:amk-2021060815015
Tiivistelmä
The need for working remotely is ever-growing in the field of software development. The technology needed for this already exists and there are multiple competing services. However, many smaller companies still struggle to build even the most basic solutions for it or do not even pay attention to it.
This thesis aims to research and explain the basic concepts related to a remote development environment, making it easy to understand and briefly go through the most important steps when implementing the findings from the research in a real-world environment. The research carried out in this thesis used the author’s prior knowledge on the subject as a basis and expanded that to suit the needs of the thesis when needed. Important subjects within the thesis include version control systems, workflow, server security, documentation, style guides and communication. In the practical implementation of the remote development environment, the thesis briefly examines essential tasks such as settings on the core software and how to implement the continuous integration functions.
In the course of this thesis, it became obvious that many of the technologies and methods used in the thesis are useful for any development environment and there is no reason not to implement them to an existing one or create a completely new one based on this thesis. The modern solutions for setting up and using a remote development environment have improved significantly compared to the author’s prior experiences on the subject.
The thesis concludes that the subjects discussed in the thesis cover the most important parts for understanding how to set up a remote development environment. Subjects such as version control systems and server security demonstrate that the existing systems and knowledge can be used as-is or with minor changes while documentation and communication focus on the developer’s side of collaborating remotely. Finally, the subjects on workflow and the development environment itself demonstrate the structure of the system and how to create one.
This thesis aims to research and explain the basic concepts related to a remote development environment, making it easy to understand and briefly go through the most important steps when implementing the findings from the research in a real-world environment. The research carried out in this thesis used the author’s prior knowledge on the subject as a basis and expanded that to suit the needs of the thesis when needed. Important subjects within the thesis include version control systems, workflow, server security, documentation, style guides and communication. In the practical implementation of the remote development environment, the thesis briefly examines essential tasks such as settings on the core software and how to implement the continuous integration functions.
In the course of this thesis, it became obvious that many of the technologies and methods used in the thesis are useful for any development environment and there is no reason not to implement them to an existing one or create a completely new one based on this thesis. The modern solutions for setting up and using a remote development environment have improved significantly compared to the author’s prior experiences on the subject.
The thesis concludes that the subjects discussed in the thesis cover the most important parts for understanding how to set up a remote development environment. Subjects such as version control systems and server security demonstrate that the existing systems and knowledge can be used as-is or with minor changes while documentation and communication focus on the developer’s side of collaborating remotely. Finally, the subjects on workflow and the development environment itself demonstrate the structure of the system and how to create one.
