Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • O OS Core Common
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 22
    • Issues 22
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Open Subsurface Data Universe SoftwareOpen Subsurface Data Universe Software
  • Platform
  • System
  • Lib
  • core
  • OS Core Common
  • Issues
  • #19
Closed
Open
Issue created Dec 29, 2020 by Rostislav Dublin (EPAM)@Rostislav_DublinMaintainer1 of 3 checklist items completed1/3 checklist items

OSDU Java stack Standards

Change Type:

  • Feature
  • Bugfix
  • Refactoring

Context and Scope

Standardization has a positive impact for successful software development. Java coding standards makes sure that all the developers working on the project are following certain specified guidelines. This is especially critical for OSDU community, where many Java teams develop independently and contribute into the common codebase.
The code should be easily understood and proper consistency maintained.

Currently, Java coding standards are not defined in the community. It leads to the following issues:

  • Poor code readability
  • Difficult onboarding
  • Same functionality redundancy
  • Libraries and frameworks versioning mess
  • Testing frameworks mess
  • Security Concerns
  • Performance Issues
  • etc.

Decision

Define, adopt and enforce a single Java coding standard for the community. Improve code quality and maintainability.

Rational

Achieve the following advantages:

  • Enhanced Efficiency - detect the problems early or even prevent them completely, increase efficiency throughout the software process.
  • Reduced risk of project failure - IT projects fails happen due to problems while developing software.
  • Decreased Complexity - coding standards help to develop less complex software and thereby reduce the errors.
  • Simplified Maintenance - when code is consistent it can be easily maintained, cause anyone can easily understand and modify it.
  • Bug Rectification - it becomes really easy to locate and correct bugs if the source code is written in a consistent manner.
  • Comprehensive Look - a clear view of how code fits in the larger application or fits into the company as a whole.
  • Cost-Efficiency - a clear code gives an opportunity to reuse it. This reduces the cost along with the efforts put in the development.

Consequences

The following definition of Java code Standard should be adopted and enforced:

[OSDU GCP Java Coding Standards]

All CSPs will need to:

  • enforce and follow the adopted Java coding Standard in their Java teams;
  • start contributing only compliant new Java code;
  • refactoring existing Java code where possible;
Edited Jan 19, 2021 by Rostislav Dublin (EPAM)
Assignee
Assign to
Time tracking