blob: b55f7eb3e417bacb60459a19a72ddf01eae30636 [file] [log] [blame]
<html>
<head>
<title></title>
</head>
<body>
<h1 border-image: none; text-align: center;">Welcome to OS.bee</h1>
<ul>
<li><strong>OS.Bee&copy;</strong> is a Business Application Software Factory based on the <a href="https://eclipse.org/e4/" target="_blank">Eclipse&trade; E4 application model</a>, <a href="http://www.vaadin.com/" target="_blank">Vaadin&trade;</a> and heavy use of cross-referenced domain-specific languages defined with <a href="https://eclipse.org/Xtext/" target="_blank">Xtext&trade;</a> allowing you to solve all imaginable <em>business</em> use-cases. You can obtain <strong>OS.bee</strong> information and sources from <a href="www.osbee.org" target="_blank">OS.Bee repository</a>.</li>
</ul>
<ul>
<li>With this application you can study an example build from a set of bottom-up models using the OS.Bee&copy; factory</li>
</ul>
<h3>Product Philosophy</h3>
<ul>
</ul>
<ul>
<li>In contrast to general-purpose programming languages like Java&trade; or C which is mainly applicable on any domain, a domain-specific language (DSL) is a programming language specialized to a particular application domain. A key part of the idea behind DSL is to allow a particular type of problem or solution of a specific domain to be expressed more clearly and more easily than an existing language would allow.</li>
</ul>
<ul>
<li>In other words a DSL shall simplify the wording of domain specific solutions, but shall be complex enough to give the DSL developer a tool at hand which is sharp enough to solve given problems. This is of course a tightrope walk and it needs long years of experience to be able to design an efficient DSL for complex domains like ERP, CRM and many other fields of application.</li>
</ul>
<ul>
<li>A possible solution to diminish complexity of an application field like an ERP is to subdivide a domain in sub-domains and to preserve their context and coherence. For example an ERP could be subdivided in three domains: UI, Web-services and database, facilitating the development of DSL for each (sub)domain matching the requirement of being simple and easy to understand to be used.</li>
</ul>
<ul>
<li>The innovative idea and sleight of hand of OS.bee is to have developed a DSL-architecture that allows to be applied on any business field preserving the paradigm of DSL-programming although the allover domain can be very complex. Even better it uses the DSL concept also to describe inter sub-domain and therefore inner-domain dependencies which can be used to evaluate information out of these interdependencies which can be used to design default (sub)models. For example OS.bee possesses a DSL describing an organigram an other describing authentication and authorization. Well it is typical in business that a person linked to a job in an organigram possesses authentication and authorization. This means that authentication and authorization can be derived from an organigramm and the same can be done analog between the corresponding DSL.</li>
</ul>
</body>
</html>