Difference between revisions of "Software Integration and Distribution: Overview"

From Gcube Wiki
Jump to: navigation, search
 
(89 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
  
=== [[Release Tools|Release Tools]] ===
+
This section documents all the procedures and tools used for releasing the gCube system. It is intended as the central access point to information about the integration, validation, and distribution of the system for developers, software testers, release managers, and for any other actor involved in the development of the system (see [[Software_Integration_and_Distribution:_Roles|Roles]]).
* [[SCM tools|SCM Tools]]
+
** [[gcube subversion repository|gCube Subversion Repository]]
+
* [[Building tools|Building tools]]
+
** ETICS
+
*** ant/maven guidelines
+
** [[BTRT|BTRT]]
+
** [[Building Infrastructure|Building Infrastructure]]
+
* [[Trac|Tracking System - Trac]]
+
* Documentation and Distribution
+
** software documentation wiki
+
** gCube web site + distribution site
+
  
=== [[Testing Tools|Testing Tools]] ===
+
Given the large size of the gCube system, its high degree of modularity and the number of developers involved in the implementation, a set of procedures that formalize and simplify the integration, test, documentation and distribution of the software have been defined. These procedures coordinate the actions and the timing of the different actors to achieve the desired result. Section [[Release Procedures]] provides a detailed description of each procedure by listing actors and their responsibilities for each step of each procedure.
* ETICS
+
* [[Testing Infrastructure|Testing Infrastructure]]
+
* MyContainer ?
+
* BTRT - test reports viewer
+
  
=== [[Release Procedures|Release Procedures]] ===
+
Activities in release procedures are highly automated and supported by several tools described in section [[Release Tools|Release Tools]].
* [[Continuous Integration procedure|Continuous Integration]]
+
* [[Major/Minor Release Cycle procedure|Major/Minor Release Cycle]]
+
* [[Maintenance Release Cycle procedure|Maintenance Release Cycle]]
+
* [[Distribution procedure|Distribution]]
+
** [[Changelog Generation procedure|Changelog Generation]]
+
* Documentation
+
** Writing Procedure and Guidelines
+
** Admin Guide, Developer Guide, Javadoc
+
** Documentation Validation Procedure
+
  
=== [[Testing Procedures|Testing Procedures]] ===
+
==== [[Software Integration and Distribution: Roles|Release Roles]] ====
* Static Analysis Testing procedure
+
* Unit Testing procedure
+
* Functional Testing procedure
+
* Integration Testing procedure
+
* Deployment Testing procedure
+
* Performance Testing procedure
+
 
+
=== [[Naming Conventions|Naming Conventions]] ===
+
 
+
=== [[Release Log|Release Log]] ===
+
 
+
=== [[Release Plan|Release Plan]] ===
+
 
+
=== [[Software Integration and Distribution: Roles|Release Roles]] ===
+
 
* [[Role Release Manager|Release Manager]]
 
* [[Role Release Manager|Release Manager]]
 
* [[Role Subsystem Manager|Subsystem Manager]]
 
* [[Role Subsystem Manager|Subsystem Manager]]
Line 53: Line 15:
 
* [[Role Documentation Author|Documentation Author]]
 
* [[Role Documentation Author|Documentation Author]]
  
Test Plan
+
==== [[Release Tools|Release Tools]] ====
 +
* [[Redmine|Tracking System]]
 +
* [[Integration of Maven Components|Maven]]
 +
** [[Developing gCube Maven Components|gCube Maven Components]]
 +
** [[GCube_Maven_BOMs|gCube Maven BOMs]]
 +
* [[Java Platform: OpenJDK|OpenJDK_as_Java_Platform]]
 +
* [[Integration Infrastructure]]
 +
** <span style="color:DarkGreen">'''''NEW'''''</span> [[GCube_Git_Migration|gCube Git Migration State Of the Art]]
 +
** [[gcube subversion repository|SVN Repository]]
 +
** [[ETICS|ETICS]]
 +
*** [[MavenBuilder|MavenBuilder]]
 +
** [[BTRT|BTRT]]
 +
** [[gCube Web Site and Distribution Site|Distribution Sites]]
 +
*** [[GitHub|GitHub]]
 +
* [[Testing Infrastructure|Testing Infrastructure]]
 +
* [[gCube System documentation wiki|Documentation]]
 +
 
 +
==== [[Release Procedures|Release Procedures]] ====
 +
* [[Continuous Integration procedure|Continuous Integration]]
 +
* [[Major/Minor Release Cycle procedure|Release Cycle]]
 +
* [[Maintenance Release Cycle procedure|Maintenance Release Cycle]]
 +
* [[Documentation Writing guidelines|Documentation Writing Guidelines]]
 +
** [[Changelog Generation procedure|Changelog Generation Procedure]]
 +
* [[Distribution procedure|Distribution Procedure]]
 +
** [[Zenodo Publication|Zenodo Publication]]
 +
 
 +
==== [[Test Plan|Test Plan]] ====
 +
* [[Static Code Analysis|Static Code Analysis]]
 +
* [[Unit Testing|Unit Testing]]
 +
* [[Functional Testing|Functional Testing]]
 +
* [[Deployment Testing|Deployment Testing]]
 +
 
 +
==== [[Naming Conventions|Naming Conventions]] ====
 +
 
 +
==== [[Software Integration and Distribution: Release Log|Release Log]] ====

Latest revision as of 05:00, 3 May 2019


This section documents all the procedures and tools used for releasing the gCube system. It is intended as the central access point to information about the integration, validation, and distribution of the system for developers, software testers, release managers, and for any other actor involved in the development of the system (see Roles).

Given the large size of the gCube system, its high degree of modularity and the number of developers involved in the implementation, a set of procedures that formalize and simplify the integration, test, documentation and distribution of the software have been defined. These procedures coordinate the actions and the timing of the different actors to achieve the desired result. Section Release Procedures provides a detailed description of each procedure by listing actors and their responsibilities for each step of each procedure.

Activities in release procedures are highly automated and supported by several tools described in section Release Tools.

Release Roles

Release Tools

Release Procedures

Test Plan

Naming Conventions

Release Log