1 / 10

MASE : Modeling & Analysis in Software Engineering

MASE : Modeling & Analysis in Software Engineering. Juergen Dingel. School of Computing Queen’s University Kingston, Ontario, Canada. CAMPAM, April 29, 2012. analyze. Requirements. Software. Models. generate. create. transform. What do we do?. Model-Driven Development (MDD):

latona
Download Presentation

MASE : Modeling & Analysis in Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MASE : Modeling & Analysis in Software Engineering Juergen Dingel School of Computing Queen’s University Kingston, Ontario, Canada CAMPAM, April 29, 2012

  2. analyze Requirements Software Models generate create transform What do we do? Model-Driven Development (MDD): A software development approach in which models, rather than code form the primary artifact Methods, techniques and tools for efficient construction of reliable software by increasing support for abstraction, automation, and analysis

  3. 40 years ago: Hardware Require-ments Today: Require-ments Hardware Or, more technically: A Historical Perspective [Source: B. Selic]

  4. Interfaces S, S C1 C2 Components Our Current Projects Theme 1: UML-RT • Formal semantics • “What does a model mean?” • Execution, simulation, and correctness analysis • “Does the model do the right thing?” • using kiltera & model checking • using symbolic execution • PSM conformance checking • “Is it safe to compose two models?” • Incremental test case generation • “Making test case generation more efficient in the presence of model evolution” M : UML-RT ! pi-calculus M ²? C1 conforms to S? M1 TC1 covered by ? update TC2 M2 covered by

  5. M1 ² ? ² M2 Our Current Projects (Cont’d) Theme 2: Model Transformation • MT case studies • UML-RT to kiltera translation • GM metamodel migration • MT and analysis • “How do MTs affect model analysis?” • Core idea: • Domain/task-specific model transformation languages • Trade expressiveness for analyzability • MT for code generation • accurate code from timed models t t preserves ?

  6. Our Current Projects (Cont’d) Theme 3: Control Theory (CT) for SW Development • “Can large body of knowledge on CT be leveraged for solving SE problems?” • Yes, e.g., automatic generation of concurrency control code concurrent code  + ? ² CT

  7. Topics • (Design of) (domain-specific) model transformation languages • which “properties” (capabilities) does a MT language need to have to be fit for a certain class of MT tasks? • which “properties” (capabilities) can be removed to facilitate reasoning about MTs? • Analysis of model transformations • “The success of a language depends on its underlying theory” [JD] • How can the design of domain-specific MT languages support reasoning? • c.f., “correctness (e.g., property preservation/establishment) by construction” • “The success of a language depends on its supporting tooling” [Bran Selic] • How can the generation of this tooling be facilitated? • c.f., language workbenches/frameworks/product lines (e.g., van den Brand et al., Atlee & Day) • Specification of model transformations • “A program without a specification can never be correct, it can only be surprising” [?] • Analysis of models • correctness, conformance, MBT, …

  8. Criteria of Success • I’m flexible…

  9. We have a workshop, too… Analysis of Model Transformations (AMT) • at MODELS’12 • first in a long series?

  10. MASE : Modeling & Analysis in Software Engineering Juergen Dingel School of Computing Queen’s University April 13, 2012

More Related