Università degli Studi dell’AquilaHenry MucciniUniversity of L’Aquila, Italy(www.henrymuccini.com, @muccinihenry)Dagstuhl ...
The “context” of this presentation…Investigation of the peculiarities of mobile applicationsand implications on testing [A...
3     and more…    Architecting and Analysing Wireless Sensor Networks Krishna Doddapaneni, Enver Ever, Ivano Malavolta, L...
4    Peculiarities and Implications on testing          Type of Mobile           Application                              ...
5    Peculiarities and Implications on testing         Type of Mobile          Application                                ...
6    CONTEXT-AWARE MOBILE APPLICATIONS
7    Context-Aware Computing    In context-aware computing, an application is aware of the    computing environment in whi...
8    The context in this room    Computing context:       Connectivity in this building       Connectivity of our devices ...
9    Context-aware (mobile) applications         FLYAQ                  Wii    busOnAir
11     Contextual Bugs: Interpretation-related     Device     movements        input              output                  ...
12     Our experimental framework           Monitoring         Capture                  Replay                         Bla...
13     Our experience
14     Contextual Bugs: bad assumptions!                            Bad assumption!!!          7:00 am
15     HOW THIS RELATES TO RESILIENCE?
16     Computing/User/Physical context                    Connectivity        To access                                   ...
17                 Connectivity                  Resources                    from     Data from                          ...
18                                        “The persistence of dependability                                        when fa...
19     [Strigini_Book]      ability to recover to normality after a disturbance     “ “resilience engineering” is about fl...
20 Engineering Resilient Context-aware systems = keeping the c-a         system persistently dependable when facing change...
22     Resilience requirements      The system availability shall not be less than 95% even     when “nodes” will move tow...
23     GM WOO
24     Google Car
25                 Context-aware systems are subject to both functional,                 environmental, and technological ...
Upcoming SlideShare
Loading in...5
×

Context awareness and Resilience Engineering

479

Published on

This presentation outlines the role played by context-awareness when engineering a resilient system.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
479
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Context awareness and Resilience Engineering"

  1. 1. Università degli Studi dell’AquilaHenry MucciniUniversity of L’Aquila, Italy(www.henrymuccini.com, @muccinihenry)Dagstuhl Seminar 13022 "Engineering Resilient Systems: Models, Methods and Tools“,January 2013
  2. 2. The “context” of this presentation…Investigation of the peculiarities of mobile applicationsand implications on testing [AST 2012]The mobile market is growing… http://code.google.com/p/android/issues/list Henry Muccini, Antonio Di Francesco and Patrizio Esposito, Software Testing of Mobile Applications:Challenges and Future Research Directions, in: 7th IEEE/ACM International Workshop on Automation of Software Test (AST 2012) @ ICSE 2012, IEEE Digital Library, 2012
  3. 3. 3 and more… Architecting and Analysing Wireless Sensor Networks Krishna Doddapaneni, Enver Ever, Ivano Malavolta, Leonardo Mostarda and Henry Muccini, A Model-driven Engineering Framework to Support an Architecture-Driven Development and Analysis of WSNs, in: Third Int. Workshop on SE for Sensor Network Applications (SESENA12) @ ICSE 2012
  4. 4. 4 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity 512 MB of RAM, Reliability, performance, security, 64 GB of disk space, testing Ghz dual core and functional and 1 through CPU different networks Apps4Mobile Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI TestingiPhone 4S: Context Awareness Context-dependent functional and200 hours autonomy in stand-by …drops to extra functional testing Mobile Applications9 hours when Wi-Fi is enabled … drops to Adaptation Adaptation correctness6 hours when a 3G connection is active New programming languages 1,800 different hw/sw New white box and black-box configurations analysis testing, byte-codeNew OS releases to increase O.S.s New autonomy Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  5. 5. 5 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Is the app going to work in any Limited Resources environment and under functional Performance and any unpredictable monitoring scenarios? Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  6. 6. 6 CONTEXT-AWARE MOBILE APPLICATIONS
  7. 7. 7 Context-Aware Computing In context-aware computing, an application is aware of the computing environment in which it runs, and adapts/reacts according to its computing, user, physical, or time context [Schilit1994,Chen2000]. Schilit (1994) •Computing context: e.g., the device connectivity, the available bandwith, the outside resources the device may interact with. •User context: the user’s feeling, his location, his prior actions. •Physical context: includes the environment luminosity, noice, temperature, pressure, etc.
  8. 8. 8 The context in this room Computing context: Connectivity in this building Connectivity of our devices User context: What happened this morning Mood Degree of happiness/tiredeness/… Deadlines Physical context: Luminosity Noice …
  9. 9. 9 Context-aware (mobile) applications FLYAQ Wii busOnAir
  10. 10. 11 Contextual Bugs: Interpretation-related Device movements input output Values must be “interpreted” and associated to “contextual info”
  11. 11. 12 Our experimental framework Monitoring Capture Replay Black-box / design-time Upgrade White-box/ run-time
  12. 12. 13 Our experience
  13. 13. 14 Contextual Bugs: bad assumptions! Bad assumption!!! 7:00 am
  14. 14. 15 HOW THIS RELATES TO RESILIENCE?
  15. 15. 16 Computing/User/Physical context Connectivity To access contextual (3G, WiFi, resources (printers, BT) devices) To get Sensors contextual data
  16. 16. 17 Connectivity Resources from Data from Data from Sensors Sensors Connectivity Resources from
  17. 17. 18 “The persistence of dependability when facing changes” Avizienis, Laprie, Randell, Landwehr [IEEE TDSC04] Laprie [DSN04]
  18. 18. 19 [Strigini_Book] ability to recover to normality after a disturbance “ “resilience engineering” is about flexibility of people and organisations, not just in reacting to individual incidents and anomalous situations, but also in learning from them and thus developing an ability to react to the set of problems concretely occurring in operation, even if not anticipated by designers of the machinery or of the organisation”
  19. 19. 20 Engineering Resilient Context-aware systems = keeping the c-a system persistently dependable when facing changes Resources: signal strenght type of network devices around me Data: luminosity mobility noice adaptivity by c-a feeling variability (since I move, or others move)Strategies (for making c-a systems resilient) builds on these
  20. 20. 22 Resilience requirements The system availability shall not be less than 95% even when “nodes” will move towards networks with different speeds: I have to design my system so to continuously monitor the WiFi networks around me and select those that overall guarantee 95%. In case of no open network, I check with my 3G connectivity The system must guarantee that data xxx remains confidential even when operating through open networks; The system reliability/performance shall not go lower than yy even when zz nodes are down
  21. 21. 23 GM WOO
  22. 22. 24 Google Car
  23. 23. 25 Context-aware systems are subject to both functional, environmental, and technological changes and disturbancies. Context-aware systems input data on which we may have made wrong assumptions All traditional dependabiliy issues apply, plus new related to the contextual (variable, unforeseenable, uncertain) nature of resources, assumptions, and data “context-awareness could be an important mechanism for achieving resilience, while on the other hand that systems that are intensely context-aware are intrinsically more vulnerable to failure due to their high sensitivity to changes in their environment.” [David Rosenblum]
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×