Our approach
Design with confidence
Model-based design enables us to develop complex software faster and more efficiently. Instead of writing each line of code by hand, we build and refine your design visually and generate the code automatically. This saves development time and helps your system evolve dynamically.
ECOSAR helps you move from hand-written code to model-based design. We work with you to build models that reflect your system, generate production-ready code and integrate it into your existing development process.
Our process
The model at the centre
In model-based design, one model drives everything - the design, its simulation, the code and tests. Each iterative pass round the cycle makes it progressively more complete and trusted.
- Specify
- Design
- Simulate
- Generate
- Verify
Step 1 of 5
Specify
Requirements, interfaces and architecture are captured and linked to the model from the start.
- Requirements linked to model elements
- Interfaces and signals defined up-front
- System architecture models
Step 2 of 5
Design
Control logic is built as models, not documents open to interpretation.
- Control algorithms and state machines
- Plant and environment models
- Modelling guidelines and model reviews
Step 3 of 5
Simulate
Behaviour and edge cases are explored in simulation, long before hardware is available.
- Closed-loop simulation
- Parameter studies and what-if analysis
- Early design verification (model-in-the-loop)
Step 4 of 5
Generate code
Verified models become efficient production code automatically, so design and code never drift apart.
- Production code generation for your target
- Code optimised for performance and memory
- Back-to-back testing of model and code
Step 5 of 5
Verify and refine
Results feed back into the model, and every change flows through the design, code and tests together.
- Model and code coverage
- Test results traced to requirements
- Controlled change across model, code and tests
How we help
From first model to production code
Whether you are taking your first steps with models or scaling an established workflow, we help at every stage.
-
Introduce model-based design
From choosing tools to shaping workflows, we help your team adopt model-based design in a way that fits your process.
-
Control and plant modelling
Clear, maintainable models of control logic and the physical system, ready for simulation and code generation.
-
Production code generation
Automated code generation set up and tuned for your target, so generated code is ready for production.
-
Modelling standards and quality
Modelling guidelines, automated checks and model reviews that keep models consistent.
-
Early verification
Simulation, model-in-the-loop and software-in-the-loop testing that catches problems before hardware.
-
Legacy code to models
Moving existing hand-written software into models, making it easier to understand, change and reuse.
Why model-based design
A smarter way to develop software
Accelerate development with model-based visual designs and automated code generation.
Find issues early
Design flaws show up in simulation, weeks or months before they would surface on hardware.
Visualise control logic
Control logic is laid out visually, so it is easier to follow, review and discuss than lines of code.
Built to evolve
Changes are made once in the model and flow through to code and tests, making new variants faster.