You are hereWhat is an Open Technology License?
What is an Open Technology License?
"Open" is one of those words that is used a lot. It came into being as a reaction to the closed software offered by many software vendors. Since then Open and Free have become intermingled although it is not by lack of variants of open source licensing schemes. So why did we create another "Open Licensing" scheme?
It all goes back to some 10 years ago when we conducted a market research for one of our customers in the space sector. They wanted to find an alternative for a distributed RTOS. There aren't that many RTOS around that can handle multi-processing systems in a transparent way. The shocking discovery however was that the bulk of all RTOS, commercial or open source could not be certified, even when already available for years and that is true for a lot of software products. There are exceptions, but to start with, design documents are a rarity. Decent comments in the source code even less, not to speak of obfuscation techniques. The software might have been tested, but then there is a license that says "right to use at your own risk". And what about a user manual? What about (formal) proofs that the software meets the specifications? Not a wonder that the software industry, except for a few giants, is often a service industry. Thus we asked ourselves: Is there a better alternative?
The first observation to make is that proving and certifying software is difficult, not to say impossible, after it was developed. Testing will only prove the absence of errors for which the specific test was designed to detect. The tested code can still fail if the usage pattern is different from the one used by the test and secondly silicon issues have a tendency to pop up very seldomly. If we look at the requirements of the safety standards, then one sees that the development process is as important as the code itself. It comes down to minimising the risk that the software doesn't meet the specifications in all possible circumstances. Even formal proofing of source code has it limits. If one line of code is changed, how can one be certain that all specifications and model properties are still met?
So we came up with the logical step beyond "open source". We call it the "Open Technology License". First of all, it is a software license, copyright applies. It has all the rights to use it as it comes. It comes with source code, the formal models, the design documents, the build system, the user manual, the unit tests, examples, simulators, supporting tools like code generators, visual editors and debugging tools. It's not just software, it is technology. Licensees can reuse, modify, rebrand and create themselves binary licenses. A small royalty applies because support is proportional to the number of users. In the case of OpenComRTOS, it is more than just a kernel. It is a real-time software development suite for programming concurrent applications, ranging from very small microcontrollers to large distributed systems with 10000's of processing nodes. And it is designed for making application development certifiable.
You might also wonder why we propose this approach?
Altreonic is first of all a developer of technology with a focus on the high reliability / safety engineering market. Hence, the focus in on Research & Development. We have proposed Open Technology type Licenses from the very beginning based on the previous 25 years of experience that standard distribution/reselling doesn’t work very well for high-end software. The overhead and cost of selling is too high. At the same time, the distributor’s margin is a limiting factor. Some companies address this issue by using the software to sell expensive engineering services. But this means that the software is sometimes deliberately kept simple, not well documented, etc. But if you focus like Altreonic on high reliability (“trust”), this is not a very good option as it conflicts with the requirements for safety engineering. It can also turn out to be a costly and risky option for the customer.
This is where the Open Technology License comes in. What licensees acquire is the technology (fully documented) allowing higher margins, more added value but also more flexibility. Licensees have full access and are able to support the customer much better. Altreonic will support the licensees, but is often not involved with licensee's customers. Altreonic only asks for a small fee because the licensee will handle most of the support and because the engineers will be well trained. The annual support and maintenance as well as the small fee will provide the licensee with new versions with more features and better support tools.
Of course, there is a larger investment up front but this is a small fraction of what it would cost to develop the equivalent technology from scratch (and that would take a few years as well). Once the licensee integrates the technology with the other products and engineering services he offers, he will become more productive and will enjoying better margins. Hence, the initial investment is quickly recovered.
We plan to offer the same Open Technology License model for the technology we are still working on. There is the StarFish family of controllers but there is also an environment in development support engineering teams to develop their projects in the safety engineering domain with semi-automatic certification (think about D0-178B, IEC 26262, etc). We are already working on Virtual Machines, dynamic resource management, fault tolerance and formal modeling support. When these technologies are ready, we will offer them as well.
What our customers / technology partners acquire is an integrated, unified approach, leading to more reliability and higher productivity. The approach is valid for many vertical markets and this is the second important reason to adopt this open licensing model. Altreonic itself can never exploit the potential in all these markets, fast enough. But our partners, each specialized in its vertical market can. Some people ask why we make it so easy to access our technology that took years to develop. The reason is to allow us to focus and to deliver leading edge new technology. Hence, it is a win-win proposal.
We are currently selecting dedicated partners for the regional markets. Besides the Open Technology License we offer binary with source code licenses as well to the occasional user.
Interested in an Open Technology License? Contact us. OpenLicense (@) Altreonic.com
Annex: detailed list of OpenTechnology License (as for OpenComRTOS Designer).
• Formally modeled and verified network-centric OpenComRTOS
- Based on a revolutionary, yet simple Interacting Entities paradigm
- Represents 5 years of development, but has a history of 3 previous generations since 1991
- Fully distributed, supporting heterogeneous targets (processor as well as communication medium)
- Fully transparent and straightforward concurrent and parallel application development
- Very resource efficient (typically < 5KB/node), therefore very good performance
- Formal models of the services (TLA+ and UPPAAL)
- Source code with meaningful comments.
- Design documents
- User API manual (partly generated from the source code)
- Example code
- Test suites
- Build system
• Simulator and cross development:
- Allows cross developing multi-node systems on a PC (Windows or Linux)
- Source code only needs to be recompiled for mapping on heterogenous embedded targets
- Host node integrates seamlessly with an embedded target network.
- Visual development environment for OpenComRTOS (Windows or Linux)
- Context sensitive help system
- Code generators:
- Used in OpenVE or command line
- Generate most of the source code based on application and platform metamodels
- Generate routing tables
- Customisable event trace visualization tool
- Also calculates resource statistics
- Displays interprocessor communication
• Open System Debugger:
- Allows to retrieve OpenComRTOS status data from any node
- System wide Peek and poke capability.
• Application support modules:
- Host server for stdio and graphics across a network
- Windows multimode simulation / cross compilation environment
• Drivers like TCP/IP, CAN, UART, …
- Target support included; Win32, ARM cortex M3.
• Not included: Safe Virtual Machine for C.
• License Conditions:
- Once-off license fee costing less than a year of development
- No royalties
- Right to customize the software
- Right to rebrand under a different name
- Right to produce binary licenses
- Right to fix the reselling price
- Each binary license carries a small fee to Altreonic.
- Annual maintenance and support: 20%/yr (starting 2nd year).
- Porting and customer specific developments upon request.
- One week training in our offices or at licensee’s premises.
- Special conditions for academic users available.