In this talk we'l present our experience with Cyber-Physical Systems (aka IoT), an experiment built on top of Eclipse Technologies: EMF and ECF. We will present a network of collaborating devices with physical input and output, represented by a live EMF model instance.
This talk looks at the experience of ArcCore in using Scala for plugin development in a major product in the automotive industry. Programming in Scala has made it easier to develop Arctic Studio, an RCP application that makes heavy use of Eclipse projects such as EMF, Sphinx and Xtext. Specific language features are covered, as well as general lessons learned from using Scala.
OSLC (Open Services for Lifecycle Collaboration) is a great initiative to interconnect Application Lifecycle Management (and in the future PLM) tools.
If you are a tool provider and you want to provide OSLC Services this is what you would have to endure:
Some of the modeling activities can be painful and repetitive, and the modeling rules can change during the lifecycle of a project. For these reasons we want to script our models. We could use the java API, but not everyone is a java developer and we want a more lightweight tool that does not involve compilation or building.
As an EMF user, you probably have already overridden the generated code. The easiest way is to write your own code in the generated one and to manage the @generated annotations.
This is not always a good practice because generated and developed code are mixed, and it is better to separate both.
This talk will explain how you can do this by hand and it will show a tool that can generate an independant development structure automatically.
You have your shiny new DSL up and running thanks to the Eclipse Modeling Technologies and you built a powerful tooling with graphical modelers, textual syntaxes or dedicated editors to support it. But how can you see what is going on when a model is executed ? Don't you need to simulate your design in some way ? Wouldn't you want to see your editors being animated directly within your modeling environment based on execution traces or simulator results?
Manual development of user interfaces for business applications has several drawbacks. Visible components such as forms or reports are typically subject to constant change in response to user feedback. Additionally, many forms are often developed in parallel while each form must still comply with a uniform look and feel. Typical UI layout technologies are powerful but also complex to use since they have to support any kind of possible layout. Maintenance and testing of manually coded forms is costly, time-consuming and error-prone.