FREE ELECTRONIC LIBRARY - Theses, dissertations, documentation

Pages:     | 1 | 2 || 4 | 5 |

«To cite this version: Zo´ Drey, Charles Consel. Taxonomy-Driven Prototyping of Home Automation Applicae tions : a Novice-Programmer Visual Language ...»

-- [ Page 3 ] --

Context-centric model. To represent the reactive nature of Pantagruel, we leverage the context information provided by the taxonomy, focusing on what data are available at each orchestration step, instead of how these data are acquired. These data, representing the runtime state of a program, are made easy to manipulate via the sensor column of the orchestration panel.

Discrete time and parallel mode. Discrete time is modeled as clock ticks. Each tick corresponds to an orchestration step where all the rules are evaluated within a tick. Parallel mode assumes that all the rules, whose conditions are satisfied at a given step, are executed with the same state, making this execution simultaneous. As a result, there are no rule dependencies within a step; the user can observe the intended method invocations in the right part of the visual layer by selecting specific sensors in the left part.

Non-interfering execution. We say that execution is non-interfering when two rules can be executed independently from each other because their side-effects are disjoint. The side-effect declarations of methods enable to detect potential interferences. We use this language property to guide the user when he defines orchestration rules with side-effecting methods. A conflict can be displayed on the visual layer by highlighting interfering rules. This process forces deterministic behavior, thus increasing the confidence of the domain expert when developing orchestration rules.

6. Development process

–  –  –

The visual editor is parameterized with respect to an environment description, loaded as an XML file. Doing so enables to guide the domain expert in the creation of rules. This process is decomposed in conformance with the Pantagruel visual paradigm: first, the domain expert selects the entities relevant to the application to be defined (Figure 10). To do so, he selects the entity tool in the palette, which opens a contextual window listing the entity classes and their entity instances, available in the target environment description. The domain expert can first define a program that manipulates specific entities. To generalize rules, he can replace specific entities with an entity class, by simply selecting the generic entity, as specified by the ANY keyword in the pop-up window.

Figure 10: Selecting the relevant entities for the application

Second, he extracts context information from the selected entities (Figure 11). To guide the domain expert, another pop-up window lists the available attributes within a section, as well as their possible values, according to the data types defined in the concrete environment. In doing so, the programming process prevents syntax and type errors by contruction.

Figure 11: Selecting the relevant context information among the available attributes Third, he selects the actions that achieve the expected behavior from a pop-up window, similar to the attribute window. Finally, the domain expert connects the conditions and actions with a controller selected in the palette; a phrasing of the rule appears on the controller pop-up window (Figure 12).


–  –  –

7. Towards an expressiveness study A first step towards evaluating the expressiveness of Pantagruel is to study its ability (1) to model a range of entities that are found in the home automation domain, and (2) to model a range of applications related to home automation. We now present this study.

7.1. Study context To conduct our study, we have decomposed the requirements for applications of the home automation domain into increasingly specific goals This decomposition has resulted into elementary goals. For example, the “managing energy” requirement was decomposed into subgoals.

One of them was “controlling lights”, which itself was further decomposed into three subgoals, “detecting presence”, “measuring luminosity”, “adjusting light intensity”.

This decomposition process exposes the context information and the functionalities needed to express a range of applications in a given area. In doing so, each elementary goal is readily mapped into one or more objects, selected from a library of entities, according to the functionalities provided by these objects. For example, “measuring luminosity” was mapped to a light sensor. In our study, this type of mapping resulted in a taxonomy for each application area.

–  –  –

Table 2: Orchestration application case studies Each taxonomy definition consisted of 9 to 15 entity classes as reported in Table 1. In total, the three areas involved 50 entity classes. Some of them were shared among the areas (e.g., the presence detectors, the lights, and the calendars). For each area, we developed 3 to 6 applications, each consisting of 2 to 7 rules. Out of 20 applications, 15 of them have been deployed on the DiaSim simulator. These applications are reported in Table 2. We consider school management as a generalization of the home automation domain to large-scale buildings. Applications reported for the assisted living area were demonstrated at Percom’10 [21].

7.2. Entity design space

Writing the taxonomy definitions for the domain of home automation exercised key dimensions of our language expressiveness. Each dimension addresses the following facets of entities:

physical and virtual sensing, configuring and monitoring, and processing. An entity class may be an arbitrary combination of these facets.

Physical and virtual sensing. Home automation applications highly depend on the periodical changes of the surrounding environment. For example, an application that manages energy needs to react to temperature changes. The varying nature of an environment is captured by physical and virtual sensors. Unlike physical sensors, virtual sensors capture a status related to a computer activity. For example, an instant-messenging client detects whether the owner of a computer is online or away. The Calendar entity class of our example application, sending events according to a day planning, can also be modeled as a virtual sensor. Such varying information can be represented by volatile attributes, whether coming from physical or virtual devices.

Configuring and monitoring. A fundamental requirement of home automation is to be able to configure an environment according to sensed information and user preferences. We call components performing such activities, configuration components. For example, consider a music management application deployed in a house that relies on a radio installed in every room. Each radio is configured according to the preferences of the user entering the room. The configurable parts of this entity class are modeled as write attributes, such as a musicGenre attribute on Radio.

The preferences of a person can be gathered in a specific entity class (e.g., PersonProfile), defining constant attributes (e.g., a preferredMusic attribute).

Entity classes monitoring actions also declare specific write attributes. In the shower example, the run method of MixingValve is monitored by adding a showerStatus write attribute on the MixingValve methods.

Processing. When they involve numerous entities, home automation applications often consist of gathering and processing data sources. Such processing is typically defined in terms of input/output dependencies. To illustrate this approach, let us consider an energy management application. This application needs to configure heaters by processing sensed temperatures and other sources such as time and room occupancy. An example of such component is the HeatManager entity class that collects the people locations and working hours, and determines a target temperature for the heaters. The target temperature is captured by a write attribute (e.g., avheat); the processing is defined by the calculateHeat method, declaring the avheat in its side effects.

Summary. In this section, we identified three facets of entities, covering a range of application areas, captured by our taxonomy language. Our preliminary expressiveness study provides an illustration of the relevance of the Pantagruel taxonomy abstractions (e.g., attribute kinds and side-effect declarations).

7.3. Orchestration language expressiveness The taxonomy language provides the necessary building blocks to model a range of home automation entities. This is put to practice by the following analysis that conforms with the iCAP process [3] and covers Schilit’s four applications categories [22].

Proximate selection. Proximate selection applications enable to access resources according to their proximity. The filtering mechanism of the Pantagruel orchestration layer generalizes this selection process to any context information beyond location: it provides a concise means to prototype a range of applications requiring resource selection. For example, it is used to select a tagged outfit according to the current weather (see the Tag section of Figure 7). Such applications involve at least sensing components, as defined in our entity design space (see Section 7.2).

Automatic contextual reconfiguration. Applications of this category can detect the dynamic change of resources, that is, appearance or disappearance of components, or new connections between components. These applications include the follow-me applications, where the user interface of the application can follow the user as he moves around [23]. For example, a light follow-me application written in Pantagruel is displayed in Figure 8. Because Pantagruel leverages an entity discovery mechanism provided by its underlying platform [24], applications can manage appearing and disappearing entities. Such applications combine configuring and sensing components.

Contextual information and commands. Applications in this category execute commands parameterized by the contextual information captured by entities. We support these applications through the use of typed attributes and parameterized methods. Attributes, representing the context information may serve as parameters on the entity methods. For example, consider an application such that when a person enters a room, his smart phone displays information customized with respect to his new location; this operation would correspond to an actuator invoking a displayLocation method on a smart phone entity class, with the location as an argument.

Such applications combine configuring and processing components.

Context-triggered actions. Applications that define such actions extend the previous category by allowing context-triggered commands to be “invoked automatically according to previously specified rules” [22]. In the Pantagruel orchestration layer, this feature is enabled by the write attributes, as defined in monitoring components. Specifically, a write attribute depicts a dependency between two rules when (1) it is accessed in the sensor part of a rule, and (2) it is modified in the actuator part (i.e., an assignment or a side-effecting method) of another rule. This rule dependency is illustrated in our working example (Figure 6): on the one hand, the R5 rule includes in its sensor part the todolist attribute of the TimeTracker entity class; on the other hand, the R3 and R4 rules set the value of todolist in their actuator part, through the init method invocation; therefore, triggering R5 depends on the previous execution of either R3 or R4.

Summary. Through this study, we experimented and illustrated the ability of Pantagruel concepts and paradigm to embrace the four categories of applications proposed by Schilit et al., in conformance with their meaning.

8. User Study We evaluated whether non-programmer users could create orchestration rules for a predefined taxonomy, using the Pantagruel visual programming environment. In particular, we evaluated the

following aspects of our language:

• Intuitiveness of the Pantagruel visual paradigm. We evaluated whether a development process driven by the entities was suitable for a non-programmer.

• Accessibility of the Pantagruel abstractions. We evaluated whether a non-programmer could create class-based orchestration rules for a range of entities.

We conducted a user study in two phases. The first phase involved 12 participants, and aimed to collect feedback for improving the Pantagruel tool. The second phase involved 6 participants, and aimed to assess an improved version of the Pantagruel tool, as reported in Section 9.3. Both phases were conducted with the same study context and process. We now describe the material of this user study.

8.1. Study context The user study was composed of the following material: a pre-questionnaire aimed to collect the computer science background (programming language or visual software) of the participants.

After the participants were presented a short tutorial of our tool, we observed them expressing a set of 6 rules (see Tables 3 and 4) using our tool. Finally, a post-questionnaire, based on the System Usability Scale [25], gathered their overall acceptance of the Pantagruel tool. As shown in Figure 5 of Section 5, two screens were set up for each session of our user study: a screen displayed the Pantagruel editor; the other screen displayed a 2D-model of a house. It served as a visual support for choosing the entities to orchestrate. Initially, the Pantagruel visual editor was empty.

To accompany each participant during the study session, we recruited two test observers in our research group. One of them helped the participant if he felt confused for too long (i.e., hesitating for more than 3 minutes) or if he had problems with the graphical interface (e.g., how to use the tool palette). The other observer noted down the behavior of the participant (e.g., an invalid user-interaction with the editor, or when he thought aloud) and the interventions of the first observer. Interventions mainly consisted in showing how to interact with the editor, and showing elements of the solution (e.g., pointing at the ANY keyword on the entity pop-up window).

–  –  –

Table 4: Advanced rules sentences and average rule completion time (groups 1 and 2), in minutes

Pages:     | 1 | 2 || 4 | 5 |

Similar works:


«Whang and Haar Fashion and Textiles 2014, 1:18 http://link.springer.com/article/10.1186/s40691-014-0018-1 RESEARCH Open Access Nelly Don’s 1916 pink gingham apron frock: an illustration of the middle-class American housewife’s shifting role from producer to consumer Mikyoung Whang1* and Sherry Haar2 * Correspondence: Abstract whangm@centenarycollege.edu Communication and Fine Arts, Nelly Don created a stylish, practical, affordable pink gingham housedress in 1916, Centenary College, 400...»

«TD NACIONES UNIDAS Conferencia de las Distr. GENERAL Naciones Unidas sobre Comercio y Desarrollo TD/B/C.I/EM.2/3 19 de diciembre de 2008 ESPAÑOL Original: INGLÉS JUNTA DE COMERCIO Y DESARROLLO Comisión de Comercio y Desarrollo Reunión de expertos sobre la incorporación de una perspectiva de género en las políticas comerciales Ginebra, 10 y 11 de marzo de 2009 Tema 3 del programa provisional INCORPORACIÓN DE UNA PERSPECTIVA DE GÉNERO EN LAS POLÍTICAS COMERCIALES: ESTUDIOS DE CASOS Nota...»

«A-570-967 C-570-968 Scope Inquiry PUBLIC DOCUMENT Operations/Office 3: JSC February 3, 2012 MEMORANDUM TO: Christian Marsh Deputy Assistant Secretary for Antidumping and Countervailing Duty Operations THROUGH: Melissa G. Skinner Director Office 3, Operations FROM: John Conniff Senior Trade Analyst Eric B. Greynolds Program Manager RE: Antidumping Duty (AD) and Countervailing Duty (CVD) Orders on Aluminum Extrusions from the People’s Republic of China (PRC) SUBJECT: Final Scope Ruling on...»

«Implementing task-based language teaching in a Japanese EFL context Paul Dickinson Assignment submitted for Master of Arts in Applied Linguistics January 2010 Language Teaching Methodology LT/09/11.although PPP lessons are often supplemented with skills lessons, most students taught mainly through conventional approaches such as PPP leave school unable to communicate effectively in English (Stern, 1983). This situation has prompted many ELT professionals to take note of. second language...»

«WCSJ NS 2 (1999) © Allan W. Atlas ~~Notes~~ Collins, Count Fosco, and the Concertina Allan W. Atlas When Margaret Oliphant reviewed The Woman in White in 1862, she described Count Fosco partly in terms of what she perceived to be his Italianate character: No villain of the century, so far as we are aware, comes within a hundred miles of him: he is more real, more genuine, more Italian even, in his fatness and size, in his love of pets and pastry, than the whole array of conventional Italian...»

«At what cost 2.0 All Rands and No Sense A frank look at the dangers of dagga use, by Quintin van Kerken of the Anti Drug Alliance of South Africa. 1 At what cost 2.0 – All Rands and No Sense Introduction By Quintin van Kerken Chief Executive Officer Anti Drug Alliance South Africa Around two years ago, I sat down with the team and began to put all the data together for what turned out to be called “At What Cost?”, a report about what the “war against drugs” (or more specifically...»

«THOMAS STACY New World Records 80489 English Horn Concertos The English (or english) horn hasn't had an easy time of it. There is, first, the name, upper or lower case: the contralto of the oboe family definitely isn't a horn and probably isn't English, by provenance at any rate. Further, there's the curiously upmarket tendency among English-speaking musicians to call it cor anglais. As to matters French, native and naturalized, we have the Belgian-born César Franck's Symphony in D minor of...»

«The author(s) shown below used Federal funds provided by the U.S.Department of Justice and prepared the following final report: Document Title: Evaluation of the Second Chance Act (SCA) Adult Demonstration 2009 Grantees, Interim Report Author(s): Ron D’Amico, Christian Geckeler, Jennifer Henderson-Frakes, Deborah Kogan, Tyler Moazed Document No.: 243294 Date Received: August 2013 Award Number: 2010-RY-BX-0003 This report has not been published by the U.S. Department of Justice. To provide...»

«January saw more than 200 Wesleyan volunteers participate in the oncampus Winter Homeless Shelter and the first annual Neighborhood Martin Luther King Jr Day of Service. Pictured top to bottom are Elizabeth Wade with Nia Samuels and Zain Caputa; Kathy Bartkus with Quinn and McCarren Caputa; David Buckingham and Daphne Watson; Aubrey Westfall, Kellie Holzer, Julie Shaw, Patty Clark, Sue Erickson, Elizabeth Malcolm and Takeyra Collins; and Shelter Managers Tianna Garland, Diane Hotaling, Patty...»

«Sermon #3359 Metropolitan Tabernacle Pulpit 1 PENITENCE, PARDON, AND PEACE NO. 3359 A SERMON PUBLISHED ON THURSDAY, JUNE 19, 1913, DELIVERED BY C. H. SPURGEON, AT THE METROPOLITAN TABERNACLE, NEWINGTON. “And, behold, a woman in the city, who was a sinner, when she knew that Jesus sat at the table in the Pharisee’s house, brought an alabaster box of ointment, and stood at His feet behind Him weeping, and she began to wash His feet with her tears, and wiped them with the hair of her head, and...»

«Homeowner Manual Receipt Congratulations on your new home! Candlelight Homes is proud to deliver this copy of our homeowner manual to you as part of the purchase agreement materials for your new home: Date Lot _ Name_ Address_Please acknowledge for our records that you received this manual: Homebuyer_ Date Homebuyer_ Date Utility Transfer Please acknowledge that for our records you will have the utilities transferred into your name within 72 hours of closing/settlement. Homebuyer_ Date...»

<<  HOME   |    CONTACTS
2016 www.theses.xlibx.info - Theses, dissertations, documentation

Materials of this site are available for review, all rights belong to their respective owners.
If you do not agree with the fact that your material is placed on this site, please, email us, we will within 1-2 business days delete him.