Chair of Network Architectures and Services Department of Informatics Technical University of Munich Crowdsourced IoT Data Modeling Friederike Groschupp Final Talk for Bachelor’s Thesis Advisors: Marc-Oliver Pahl, Stefan Liebald March 19, 2018 Chair of Network Architectures and Services Department of Informatics Technical University of Munich
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Contents Motivation: Crowdsourced Context Modeling Demo Analysis Related Work Design Evaluation Performance Usability Conclusion F. Groschupp – Crowdsourced IoT Data Modeling 2
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Motivation: Crowdsourced Context Modeling [4] <model type =myModel> value <subnode type= mySubnode /> <model type =myModel> </myModel> value <subnode type= mySubnode /> </myModel> Context Model Repository (CMR) <model type =myModel> <model type =myModel> value value <subnode type= mySubnode /> <model type =myModel> <model type =myModel> <subnode type= mySubnode /> </myModel> value value </myModel> <subnode type= mySubnode /> <subnode type= mySubnode /> </myModel> </myModel> <model type =myModel> value <subnode type= mySubnode /> </myModel> <model type =myModel> value <subnode type= mySubnode /> </myModel> <model type =myModel> value <subnode type= mySubnode /> </myModel> F. Groschupp – Crowdsourced IoT Data Modeling 3
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Background: the Data Model • Four basic types: number, text, list, composed • List and composed nodes can contain other nodes • Restrictions can limit the value of a node • (Multi-)inheritance F. Groschupp – Crowdsourced IoT Data Modeling 4
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Background: the Data Model • Four basic types: number, text, list, composed • List and composed nodes can contain other nodes • Restrictions can limit the value of a node • (Multi-)inheritance F. Groschupp – Crowdsourced IoT Data Modeling 5
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Invariants to be checked • All types exist • All access rights groups exist • Restrictions are valid and only narrowed through inheritance • Default values match restrictions and types • Subnodes must be valid F. Groschupp – Crowdsourced IoT Data Modeling 6
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Demo F. Groschupp – Crowdsourced IoT Data Modeling 7
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Analysis – Requirements Analysis Functional requirements: • R1 : context models in the CMR must be valid. • R2 : context models in the CMR must be minimized. • R3 : possibility to browse and search the models. • R4 : convergence for standardization of models. Non-functional requirements: • R5 : validation process shall be interactive. • R6 : helpful error reports. F. Groschupp – Crowdsourced IoT Data Modeling 8
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Analysis • VSL information model: semantics distributed over several models • Standard solutions for XML validation • Document Type Definition (DTD) [1], XML Schema (XSD) [5] • Can validate syntax and restrict attributes • Cannot validate semantic aspects of the VSL information model: inheritance, attributes restricting value and elements of a node • VSL information model is independent from XML → Implement semantic validation process independent from XML F. Groschupp – Crowdsourced IoT Data Modeling 9
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Related Work – CellML Repository [3] • repository for biological models • quality control is performed manually • models can be browsed through web application, extended search functions F. Groschupp – Crowdsourced IoT Data Modeling 10
Chair of Network Architectures and Services Department of Informatics Technical University of Munich F. Groschupp – Crowdsourced IoT Data Modeling 11
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Design - Steps Required for Adding a Model new model Resolve parent model valid invalid Validation Produce Error Minimization Message Add Model Produce Success Message F. Groschupp – Crowdsourced IoT Data Modeling 12
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Resolving (1/2) Retrieve the model "myType" from the repository. F. Groschupp – Crowdsourced IoT Data Modeling 13
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Resolving (2/2) And resolve it. F. Groschupp – Crowdsourced IoT Data Modeling 14
Chair of Network Architectures and Services Department of Informatics Technical University of Munich R1: Validation - Second Step: Compare Information F. Groschupp – Crowdsourced IoT Data Modeling 15
Chair of Network Architectures and Services Department of Informatics Technical University of Munich R1: Validation - Policies for the Restrictions • "minimumValue", "maximumValue": simple comparison • "minimumEntries", "maximumEntries": simple comparison • "allowedIDs": must be subset • "regularExpression": No efficient methods known for deciding if L ( R 1 ) ⊆ L ( R 2 ). Policy: value has to comply with all regular expressions inherited. L ( R 1 ) ∩ L ( R 2 ) ⊆ L ( R 2 ) is always true. F. Groschupp – Crowdsourced IoT Data Modeling 16
Chair of Network Architectures and Services Department of Informatics Technical University of Munich R2: Minimization • performed when a model is valid • remove all redundant information • reuse the already created resolved parent model F. Groschupp – Crowdsourced IoT Data Modeling 17
Chair of Network Architectures and Services Department of Informatics Technical University of Munich F. Groschupp – Crowdsourced IoT Data Modeling 18
Chair of Network Architectures and Services Department of Informatics Technical University of Munich R6: Error Reports • line and identifier of the invalid (sub)node • error type • error reason F. Groschupp – Crowdsourced IoT Data Modeling 19
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R5: Performance Impact of • number of subnodes • inheritance depth of a model on resolving, validation, and minimization. Expectation: • resolving depends on inheritance depth • validation and minimization depend on model complexity F. Groschupp – Crowdsourced IoT Data Modeling 20
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R5: Performance Resolving per inheritance step 200 1 Time in ms 0.8 100 0.6 0.4 0 0.2 0 100 200 0 100 200 Inheritance Depth Inheritance Depth Figure 1: Time in milliseconds required for resolving context models with inheritance depth 10, 100, and 200. F. Groschupp – Crowdsourced IoT Data Modeling 21
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R5: Performance Validation 3,000 Time in ms per node 2 Time in ms 2,000 1.5 1,000 1 0.5 0 21 341 5461 21 341 5461 Number of subnodes Number of subnodes F. Groschupp – Crowdsourced IoT Data Modeling 22
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R5: Performance Conclusion: • bottleneck: retrieving and parsing models • caching component can significantly improve performance • total runtime of below 50ms for models of expected size (depth 5, 40 subnodes) F. Groschupp – Crowdsourced IoT Data Modeling 23
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R6: Helpfulness of Error Reports • survey with 10 participants, questionnaire with invalid models and error reports F. Groschupp – Crowdsourced IoT Data Modeling 24
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Evaluation – R6: Helpfulness of Error Reports • very good feedback for finding the error • suggestions for resolving the error would improve the helpfulness further error finding error resolving error type correct + o - + o - containing subnode 8 7 1 0 4 4 0 relaxing restriction 9 7 2 0 7 2 0 wrong restriction 9 9 0 0 6 3 0 undefined accessID 10 9 1 0 5 5 0 Table 1: Number of the correct answers for each context model, together with the rating of those participants who answered correctly. F. Groschupp – Crowdsourced IoT Data Modeling 25
Recommend
More recommend