Download presentation
Presentation is loading. Please wait.
Published byPatience Wiggins Modified over 8 years ago
1
INRIA - LaBRICharles Consel Jan-06 1 Domain-Specific Software Engineering Charles Consel Phoenix Research Group LaBRI /INRIA-Futurs January 2006
2
2INRIA - LaBRI Charles Consel Jan-06 Domain-Specific Knowledge Program family: – Commonalities – Variations Goals – Software automation – Software robustness Example: telephony services – Domain concepts and terminology – Domain regulations – Protocol rules – Programming interfaces – Frameworks… Key observation: In software engineering, domain-specific knowledge is technology centric
3
3INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge Libraries Software components … Knowledge encoded in – Operations – Glue code Gap between a solution and operations Policies not enforceable
4
4INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge Libraries Software components … Middleware Knowledge encoded in – Run-time – State – Glue code Not so domain specific Policies more enforceable (run time cost)
5
5INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge Libraries Software components … AOP Meta programming … Middleware Knowledge encoded in – Transformations – Program structure Maybe difficult to – Encode – Debug Tool trade-off between – Expressivity – Safety Dependant on program structure
6
6INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge Libraries Software components … AOP Meta programming … Middleware GPL Knowledge encoded in – Design patterns – Coding rules Policies not enforceable
7
7INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge GP Modeling Libraries Software components … AOP Meta programming … Middleware GPL Knowledge encoded in – Notations (non-std) – Transformations Nature: mostly graphic Not executable Manual code generation DS verification difficult because GP modeling
8
8INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware GPL Knowledge encoded in – Notations – Transformations Simple software config. Rich manual code generation
9
9INRIA - LaBRI Charles Consel Jan-06 Technology-Centric Software Engineering Domain-Specific Knowledge Modeling Libraries Software components … AOP Meta programming … Middleware GPL DS knowledge
10
10INRIA - LaBRI Charles Consel Jan-06 Generating Code From Models Modeling Libraries Software components … AOP Meta programming … Middleware GPL Domain-Specific Knowledge
11
11INRIA - LaBRI Charles Consel Jan-06 A Layered Approach To Code Generation Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware DSL GPL What How DSMLs (more abstract DSLs) cover sub-domains/views targets the DSL DSL covers a domain checks domain properties generate implementation
12
12INRIA - LaBRI Charles Consel Jan-06 An Example in Telephony Services Domain-Specific Knowledge VSPL Libraries Software components … AOP Meta programming … Middleware SPL GPL What How ……
13
13INRIA - LaBRI Charles Consel Jan-06 Modeling Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware DSL GPL What How Modeling (specification) DS notations Graphical/textual DS constraints DS transformations
14
14INRIA - LaBRI Charles Consel Jan-06 Domain-Specific Languages Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware DSL GPL What How DSL DS constructs DS semantics DS verifications DS compilation via generative programming DS architecture/middleware
15
15INRIA - LaBRI Charles Consel Jan-06 Generative Programming Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware DSL GPL What How Generative programming DS transformations DS optimizations DS aspect languages
16
16INRIA - LaBRI Charles Consel Jan-06 Software Components Domain-Specific Knowledge DS Modeling Libraries Software components … AOP Meta programming … Middleware DSL GPL What How Re-use Configuration Optimization
17
17INRIA - LaBRI Charles Consel Jan-06 Final Remarks Need for DS well-recognized in industry Each technology – Well matured – Well tooled Cross-technology approach: high potentials Research topics in – Bridging the technologies – Tooling the bridges – Working on case studies
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.