PCM Development/Palladio Coding Session/20180608 SimuLizar Developer Meeting

Aus SDQ-Wiki

Organizational

  • Date: 08.06.2018
  • Location: Karlsruhe

Agenda

Simulizar

  • Requests
    • handle stereotyped elements special (e.g. stereotype to additional behavior)
    • UI for measurement point specification
    • Language or concept for sensors that are affected by reconfiguration including semantical linking of related sensors
    • Reuse background magic that is applied when specifying Simulizar experiment runs in experiment automation and unify specification process
    • Create standard measurement points and monitors automatically at simulation start and save measurements in EDP2 properly
  • Cleanup
    • Extension points review at coding session (many available, partially overlap)
      • Registration of new measurement results in runtime model has no perfectly matching measurement point
    • Central event handler, InterpreterListener with 25 listeners for all types.

Meeting Notes

  • Current features and extensions of SimuLizar (09:30 - 10:30)
    • Action model
    • Reconfiguration engines
      • QVTo: Stable
      • Henshin: Essential for non-simulated analysis (model checking)
      • StoryDiagrams: Partially stable (unrolling the state space), partially alpha (performance simulation)
      • Requests / wishes
        • Java / XTend code (simple interface!)
        • QVTd
        • ATL (??)
    • Reconfiguration rules
      • Decide between multiple reconfigurations
        • Workaround: Have one master QVTo file and delegate
      • Non-existent support for elaborate reconfiguration rule management
        • There is some code in the master
    • Current state of the documentation
      • SimuLizar Wiki Page: Core Features w/o Basic Instrumentation (Monitors)
      • Simulation Execution missing documentation
      • Tutorial from S.Lehrig, pdf file on github: core + instrumentation + ATs + slos + EDP2
      • Cloud Scale Book
      • Dissertations: M.Becker, S.Lehrig, C.Stier
      • QuAL Docu (incomplete)
  • Capture current state of the architecture
  • Extensibility (-11:50)
    • Current state (extension points, etc.)
      • Redundancies?
    • Simulate stereotyped elements
  • Lunchbreak (11:55 - 13:30)
  • Usability (13:30-14:00)
    • Current state and ongoing activities
      • Usability improvement for measuring points and monitor repositories
        • Automatically generate common measuring types
        • Mutliple ways to get to the specifications (graphical editor, wizard, ...)
        • Task of the group of students to develop concrete concepts and implement them
        • Project running until beginning of October
        • 7 Students á 12ECTS
        • Perhaps a topic for SSP (depending on the outcome)
        • Focus on user experience
        • Generate standard measurement points and monitor repositories
        • UI for measurement point specification
        • In later iterations also experiment automation
      • Experiment Automation DSL also @ FZI
    • Small improvements
      • Integrate SimuLizar with the Simulatoin Dock
    • Not so small improvements
      • Nasty Sirius bugs
        • C/P issues
        • Unique name constraint
        • Compartment handling
        • Allocation diagram bug
    • Documentation
      • TODO: For each cluster (feature/extension) one page of documentation in the wiki
      • TODO: Make S.Lehrigs Tutorial more visible --> wiki
        • Pandoc
      • Move QuAL documentation to wiki?
        • Pandoc ftw.
      • Something on Usage Evolution from the Cloud Scale?
        • There is nothing on tooling
        • Some conceptual stuff, but using CloudScale IDE
      • Concerning AT videos from cloud scale could be used
      • TODO: Steffen to call CEO from xlab (hosted wiki for CloudScale)
  • Design Refactorings (14:00 - 15:30)
    • Prototype of separation: Interpreter handler, traversal, event notification
      • Interpreter: Behavior of single actions
      • Traversal: Decision on next RD behavior (including inner behavior) to process (tree-like)
    • Separate stream of interpreter events (simple pub/sub library)
    • as declarative as possible
    • Selection of reconfigurations to run
      • remove existing work ("reconfigurationrule")
        • maybe as conceptual starting point
      • topic for another students thesis? (--> TODO Max)
    • Simulation Models / Simulation Model Registry
      • IModelAccess necessary?
        • TODO: move Local/Global model copy to ModelCache and onlyuse it in user creation
      • Future: Flag: failures on entities removed by reconfiguration
    • Language or concept for sensors that are affected by reconfiguration including semantical linking of related sensors
      • TODO: Convert broken ResourceURIMeasuringPoints to StringMeasuringPoints on loading of the model
      • Conceptual solution: "semantic link", e.g. autoscaling group
        • Reference only on group level
        • For all aggregated measurements
        • Student's thesis? Too complex? Probably not suitable for someone without experience
    • Registration of new measurement results in runtime model has no perfectly matching measurement point
      • TODO: Check implication of removing all pcm measuring points w/o additoinal information or document necessesity (or find documentation)
      • Measuring Points with more than one element reference make sense
      • --> Should go into QuAL docu
      • TODO: Steffen, Christian, Sebastian dig into potential ways of improving the concept
    • Code quality in general
      • TODO: Target top 10 classes w/r/t lines of code
  • Relation to other tools
    • Experiment Automation
      • Reuse background magic that is applied when specifying Simulizar experiment runs in experiment automation and unify specification process
  • Organizational Stuff
    • TODO Documentation (One page per topic, general concept, usage, (optional) development)
      • Dealines:
        • Initial version: 09.07.18 (next Palladio Concall)
        • Version with corrected references: 13.08.18
      • Action: Christian
      • Power: Christian
      • Cloud Metrics: Steffen
      • Usage Evolution: Floriment (+ Christian)
      • Update Core, include Tutorial from S.Lehrig: Markus F.
      • Monitors / MPoints: Students of Markus F.
      • Technical page (Transformations): Sebastian
      • Overview on extensions: Floriment together with page on ATs
      • ATs: Markus F. & Floriment
      • Native simulation of events: Dominik
      • Arbitrary load balancing strategies: Patrick Firnkes
    • Check if access to wiki for externals is possible: Dominik
    • First Prototype of Next Gen SimuLizar: Sebastian, 02.07.18; Review by Steffen and Jörg
    • Max: Student's thesis announcement (reconfiguration rules NG) 09.07.18
    • Deadlines for the following points: Progress report until next CC, finished by the one after that.
    • Remove IModelAccess: Max
    • Convert broken ResourceURIMeasuringPoints to StringMeasuringPoints on loading of the EDP2 repository: Markus F.
    • Check implication of removing all pcm measuring points w/o additional information or document necessesity (or find documentation): Dominik
    • Dig into potential ways of improving the measuring point concept: Steffen, Christian, Sebastian, plan telco during next CC
    • Target top 10 classes w/r/t lines of code: Defer to next concall
    • Add discussing impact of changes to the release of Palladio to the agenda of the next CC: Stephan