Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

The What and Why of OSEE

The What and Why of the Open System Engineering Environment

Our Mission Statement: The Open System Engineering Environment (OSEE) is a tightly integrated, extensible environment providing full lifecycle traceability and Product Line Engineering in the context of an overall systems engineering approach. OSEE complements and integrates existing tools via its shared, extensible data model and integration platform.

OSEE was created to solve a number of problems in Engineering programs:

I. It is HARD to integrate all the tools for an engineering program!

Problem: When an engineering program starts, we download Commercial and Open Source software and then spend many years gluing everything together. These software products use different databases and user interfaces. And many times, they are managed by different people and potentially working on different operating systems. Also, and probably worst of all, these tools need to be integrated with all the other tools to provide a comprehensive solution.

Solution: What if we did this once with available Open Source solutions and glue them together with a common programming language in an open source integrated development environment? Then new programs could just download this full solution and use whatever pieces and parts are necessary for that program with no licensing fees. OSEE does this and includes a full-featured requirements/artifact configuration management system with product line engineering, automated regression testing, full lifecycle traceability, tightly integrated peer review system, code coverage and disposition, data rights management, and system safety analysis.

II. Extensibility of the User Interface And the Data Model is the key.

Problem: What happens if OSEE does not do what is necessary for a program?

Solution: OSEE is Open Source, so new features and capabilities can be integrated into the solution. And doing this once then provides those capabilities for all programs using OSEE. To be clear, OSEE does NOT replace all the great Open Source solutions, it integrates them once for all OSEE programs and continually improves those solutions and integrations. OSEE uses over 40+ Open Source solutions in its deployment and development.

III. Why Open Source?

Problem: Why would we put our in-house developed tool in Open Source?

Solution: Open Source means that the tool and its data is available forever. There's no single company that can buy that company/tool and sunset it. And, there's no proprietary database, so it's easy to import/export data as needs arise. It also means that as one program improves OSEE, all programs can benefit. That helps everyone, reduces costs and enables a common environment for those switching between programs or jobs.

IV. "It's All About The Data"

Problem: OSEE is built on the Eclipse IDE. The Eclipse IDE already brings together all kinds of Commercial and Open Source solutions into a common interface. Why would we need OSEE on top of that?

Solution: "It's All About The Data! - One of the key reasons for OSEE's creation was to not just bring the user interfaces together, but bring the data together. OSEE is built on a generic object database with a tight data model that can be configured by the program. Data is available to anyone authorized. Traceability is entered and viewed immediately. And reports and deliverables only access one database in a common generic way. In addition, the database has full history built in on a transactional database. So, you can easily tell who did a change, what was changed and even revert the change if it is not desired.

V. It is really HARD to manage all the different variants and configurations of a product!

Problem: If I have multiple variants/configurations of a software product, I have to clone the data for each variant. Eventually, this becomes unmanageable.

Solution: OSEE has a high-powered Product Line Engineering (PLE) capability built in. This allows for a single "development" line of engineering products that can be tagged with what configuration it belongs to. Then OSEE can read the PLE Configuration and pull whatever pieces and parts of requirements, code and test that are necessary for that variant.

VI. Who can use and contribute to OSEE?

OSEE is not a concept. It is a 20-year proven engineering solution that is being used on both small and large engineering programs. Additionally, OSEE has recently been collaborating with Arizona State University to provide senior students the opportunity to participate in a capstone project that teaches the full lifecycle of engineering. The students use OSEE to develop new features and capabilities for OSEE that will be contributed to the Open Source OSEE product.


In conclusion, the Open System Engineering Environment is a full-featured engineering solution developed by software engineers for any engineering program. And, it can be enhanced by any program to improve capabilities for all programs.

Back to the top