Jump to: navigation, search

EclipseSCADA/Development/RepositoryLayout

This document should describe how the repository layout of Eclipse SCADA should look like. Considering the initial contribution and the migration of the codebase of openSCADA.

New Repositories

External

All external libraries which are used but not already in Eclipse Orbit. The goal however is to migrate them sooner or later to Orbit.

Utils

Abstract: Contains tools and helper classes which are not related to SCADA functionality (UI and non-UI)

Base

Abstract: Contains tools and helper classes which are related to SCADA functionality

Contains: CA, HDS, …

Protocols

Abstract: Contains protocol implementations provided by Eclipse SCADA

Contains: mostly org.openscada.oxygen

Does not contain: Device driver implementations, these go to "Core"

Chart

Abstract: Contains the time series chart widget provided by Eclipse SCADA

Contains: Only to non-SCADA related parts of the time series widget. All chart configuration and data input modules specific to the SCADA application will got to "HMI".

This is a candidate for the Nebula Project.

Core

Abstract: The core SCADA system, all non-UI parts

Contains: Master Server Components, Device Drivers, …

HMI

Abstract: User Interface components with the character of building a SCADA User Interface

Contains: All user interface elements which can be used to visualize SCADA functionality. The Visual Interface, Details dialogs, CA import wizards, realtime list, chart functinality, …

Does not contain: Components which are more of an IDE, Development tool, nature. Like project wizards, editor components, …

Exception: EMF creates "edit", "editor" and "test" bundles next to the model. While the "edit" bundle can be seen as a part of the upper definition, "editor" would match the definition of the "IDE" repository. It creates a wizard and editor view which are, most likely, more like a development tool. However in this case an exception should be made and all bundles should stay together in the same repository, HMI. Bundles references this functionality however must not automatically be put in HMI but evaluated on their own.

IDE

Abstract: User Interface components with the character of being some sort of development environment.

Contains: the configurator, the embedded server launcher (from openSCADA Orion)

Releng

Abstract: Release Engineering Tool, global build and deployments scripts

Old reposotories

org.openscada.external

Will be replaced by using Eclipse Orbit.

org.openscada.jinterop

Will not be migrated to Eclipse. It will continue to exists in the openSCADA project.

org.openscada.utgard

Will not be migrated to Eclipse. It will continue to exists in the openSCADA project.