1.2 Reduction of Complexity
eTrice is all about the reduction of complexity:
- structural complexity
- by explicit modeling of hierarchical Actor containment, layering and inheritance
- behavioral complexity
- by hierachical statemachines with inheritance
- teamwork complexity
- because loosely coupled Actors provide a natural way to structure team work
- since textual model notation allows simple branching and merging
- complexity of concurrent & distributed systems
- because loosely coupled Actors are deployable to threads, processes, nodes
- complexity of variant handling and reuse (e.g. for product lines)
- by composition of existing Actors to new structures
- since Protocols and Ports make Actors replaceable
- by inheritance for structure, behavior and Protocols
- by making use of model level libraries
- complexity of debugging
- model level debugging: state machine animation, data inspection and manipulation,
message injection, generated message sequence charts
- model checking easier for model than for code (detect errors before they occur)