Software Framework

The Software Framework in D4Science is a comprehensive product designed to support the development, deployment, and management of software projects. This product integrates several advanced services, including Gitea, Jenkins, Maven, Harbor all tailored to the VRE where are activated. Additionally, it leverages Federated Identity and Access Management to provide Single Sign-On (SSO) capabilities, ensuring secure and seamless access for users. Together, these services create a robust infrastructure that facilitates efficient software development, continuous integration and delivery, artifact management, and project tracking.

Software Framework
Key Features

The Software Framework offers a range of features that enhance software development and project management. These features include version control for managing code repositories, continuous integration and delivery pipelines, artifact repository management, and issue tracking for effective project management. The inclusion of Federated Identity and Access Management provides SSO capabilities, enhancing security and simplifying user access. Additionally, the product includes consultancy services to assist users in optimizing their software development processes and VREs tailored to specific research needs. These features collectively ensure that software projects are developed, deployed, and managed efficiently, with robust support and scalability.
 

Efficient Version Control

The Software Framework includes Gitea, a powerful version control system that allows users to manage their code repositories effectively. This feature supports collaborative development, enabling multiple developers to work on the same project simultaneously while maintaining a complete history of changes.
 

Continuous Integration and Delivery

Jenkins is a key component of the Software Framework, providing continuous integration and delivery pipelines. This feature automates the build, test, and deployment processes, ensuring that software is always in a releasable state and reducing the time and effort required to deliver high-quality software.

Artifact Management

Harbor within the Software Framework acts as a repository for managing container images and other artifacts. This feature ensures that artifacts are securely stored and easily accessible, supporting efficient management of project dependencies and deployment artifacts.
 

Secure Access Management

The Federated Identity and Access Management system provides SSO capabilities, allowing users to log in using their institutional credentials. This feature manages access rights and permissions, enhancing security and simplifying user management, ensuring that users can access the Software Framework seamlessly and securely.

How it works

The Software Framework in D4Science operates by integrating multiple services into a cohesive system that supports the entire software development lifecycle. Users can manage their code repositories using Gitea, which provides a powerful version control system. Jenkins facilitates continuous integration and delivery, automating the build, test, and deployment processes to ensure that software is always in a releasable state. Maven is used for managing project dependencies and building projects, streamlining the development process. Harbor acts as a repository for managing container images, ensuring that artifacts are securely stored and easily accessible. The Issue Tracking service enables users to effectively manage and resolve project issues, ensuring that any problems encountered during development are promptly addressed. Virtual Research Environments (VREs) as a Service offer tailored environments for specific research needs, equipped with the necessary tools and resources for exploiting and promoting the software developed and deployed in the VRE. The Federated Identity and Access Management system provides SSO capabilities, allowing users to log in using their institutional credentials and managing access rights and permissions to enhance security and simplify user management. Consultancy and support services are available to assist users in navigating the Software Framework and maximizing its benefits.