HSPC Collaboration Tools and Conventions

Tools

Each project wanting to use the HSPC Tools must follow these conventions.  For project naming, first decide on:

  • Project Category (Logical topic for this project)
  • Project Name
  • Project Key (Max of 5 letters)
  • Software Package appendix

For example, for a Bilirubin monitoring application, 

  • Project Category: Bilirubin
  • Project Name: Bilirubin Monitor
  • Project Key: BILM
  • Software Package appendix: .bilirubin.monitor

Bitbucket

We have an open source license for Bitbucket under the team HSPC (https://bitbucket.org/hspconsortium/).  Bitbucket projects may be created to allow teams to work on a shared source code repository.

Project

A Bitbucket project is created with the owner as HSPC.  

  • Name: Project Long Name
  • Key: Project Key
  • Not Private

Group

A Bitbucket group is created to control write access to the project.  

  • Name: Project Long Name
  • Team Permissions: Manage
  • Default Access: Write

Repositories

A project can have multiple repositories that are created by members of the group.

  • Owner: hspconsortium
  • Repository Name: something that makes sense within the project
  • Access Level: Not private
  • Repository Type: Git
  • Access Management
    • Add the project group

JIRA

A JIRA project can be created to correspond with the Bitbucket project.  

  • Template: something that makes sense for the development team
  • Name: Project Long Name
  • Key: Project Key
  • Project Lead: One of the members of the Bitbucket Group

Confluence

A Confluence space can be created to correspond with the Bitbucket and JIRA projects

  • Name: Project Long Name
  • Type: Team Space
  • Space Name: Project Long Name
  • Space Key: Project Key
  • Team Members: Same as Bitbucket Group Members

Bamboo

A Bamboo project can be created to allow the team to build a continuous delivery pipeline.

  • Plans and deployment projects: something that makes sense to the team

Software

Maven

For example, for Bilirubin Monitor:

    <parent>
        <groupId>org.hspconsortium.reference</groupId>
        <artifactId>hspc-reference-release-spring-boot</artifactId>
        <version>0.2</version>
    </parent>

	<groupId>org.hspconsortium.bilirubin</groupId>
	<artifactId>hspc-bilirubin-monitor</artifactId>
	<version>0.1-SNAPSHOT</version>
	<packaging>war</packaging>

 

Package Naming

  • Package naming should be in the form: org.hspconsortium.{project category lower case}.{project module lower case}

For example, for Bilirubin Monitor:

package org.hspconsortium.bilirubin.monitor;