team 2 409-509 final presentation

Upload: andrew-denner

Post on 30-May-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Team 2 409-509 Final Presentation

    1/50

    Smart Home Calendaring andNotification SystemTeam 2 Hojun Jaygarl, Nam Pham,Andrew Denner

  • 8/14/2019 Team 2 409-509 Final Presentation

    2/50

    Introduction Overview

    Brief introductionAndrew

    DescriptionAndrew System RequirementsNam

    System VerificationHojun

  • 8/14/2019 Team 2 409-509 Final Presentation

    3/50

    Overview of System The Targeted user demographic: elderly and

    disabled persons

    Users Unique Issues Decline in cognitive function

    Medical issues/Dietary needs

    Medical Appointments

    Other senior activities

    Users desire to remain independent

  • 8/14/2019 Team 2 409-509 Final Presentation

    4/50

    Overview of System (cont.) Current existing systems

    Complex and scary

    Poorly integrated

  • 8/14/2019 Team 2 409-509 Final Presentation

    5/50

    Overall descriptionWhat does the Notification and Calendaring

    System (NCS) do?

    Schedule management Notification

    Planning

    Nam will go into this further next

  • 8/14/2019 Team 2 409-509 Final Presentation

    6/50

    Function DiagramCalendering

  • 8/14/2019 Team 2 409-509 Final Presentation

    7/50

    Function DiagramNotification

  • 8/14/2019 Team 2 409-509 Final Presentation

    8/50

    Class

  • 8/14/2019 Team 2 409-509 Final Presentation

    9/50

    Deployment

  • 8/14/2019 Team 2 409-509 Final Presentation

    10/50

    Sequence diagramfor

  • 8/14/2019 Team 2 409-509 Final Presentation

    11/50

    System Requirements

  • 8/14/2019 Team 2 409-509 Final Presentation

    12/50

    Specific Requirements Contain:

    External Interface Requirements

    User InterfaceHardware Interface

    Software Interface

    Performance Requirements

    Software System AttributeReliability, Security, Availability, Maintainability andReparability

    Design Constraint

  • 8/14/2019 Team 2 409-509 Final Presentation

    13/50

    External Interface Requirements User Interface

    The primary goals of the NCS user interfaces areaccessibility, universality, and reachability.

  • 8/14/2019 Team 2 409-509 Final Presentation

    14/50

    External Interface Requirements

  • 8/14/2019 Team 2 409-509 Final Presentation

    15/50

    External Interface Requirements Hardware Interface

    NCS has sensors to get data and actuators to

    provide physical services.

    These sensors and actuators are connected to thehome server computer through OSGi(Open

    Services Gate-way Initiative) interface.

  • 8/14/2019 Team 2 409-509 Final Presentation

    16/50

    External Interface Requirements Sensors

  • 8/14/2019 Team 2 409-509 Final Presentation

    17/50

    External Interface RequirementsActuators:

  • 8/14/2019 Team 2 409-509 Final Presentation

    18/50

    External Interface Requirements

    Communication Interfaces The system should be connected to the Internet or

    LAN. The system shall connect with the telephone lines.

    The system has a connection with an emergencyprotocol that is connected to a hospital, police

    station , and fire station.

  • 8/14/2019 Team 2 409-509 Final Presentation

    19/50

    External Interface Requirements

    Software Interface Subsystem of existing smart home

    The Calendaring System uses iCal file format (RFC2445)

    The Notification system uses XML file format

  • 8/14/2019 Team 2 409-509 Final Presentation

    20/50

    PERFORMANCE REQUIREMENTS UI Transition: The information transfers between any

    devices (sensors/actuators) with main system shouldnot take more than 3s.

    Data access time: The system should access any datafrom database in reasonable time.

    Startup Time: The time between when the system isreset and normally operated should be less than 10s.

    Interoperability: The system shall work smoothlywith other smart home systems

  • 8/14/2019 Team 2 409-509 Final Presentation

    21/50

    SOFTWARE SYSTEM ATTRIBUTES Reliability/Dependability

    Security

    Availability Maintainability

    Reparability

  • 8/14/2019 Team 2 409-509 Final Presentation

    22/50

    Reliability/Dependability

  • 8/14/2019 Team 2 409-509 Final Presentation

    23/50

    Security

    Contains three main properties: Information congeniality

    Information Integrity Information Availability

  • 8/14/2019 Team 2 409-509 Final Presentation

    24/50

    Availability

    The system shall provide requested service in24/7

    The response time of the system when a requestarrive should be prompt and precise.

  • 8/14/2019 Team 2 409-509 Final Presentation

    25/50

    Maintainability The system shall have a backup system to be

    upgraded parallel/online when a new device

    comes or some modifications taken by technician.

    With very low probability, the system willintroduce bugs when updating changes.

  • 8/14/2019 Team 2 409-509 Final Presentation

    26/50

    Reparability The repair time shall be quick.

    The system is able to be diagnosed and to replaceerroneous parts while still running.

  • 8/14/2019 Team 2 409-509 Final Presentation

    27/50

    Design Constraints Coding Constraint: Two sub-systems shall be

    developed using Java language.

    Memory Constraint: The memory for all twosubsystem shall not be larger than 1Gb.

    Line of code constraint: The total number of LOCshould be limited in range to 100k lines.

  • 8/14/2019 Team 2 409-509 Final Presentation

    28/50

    Design Constraints Functionality constraint: The two sub-systems

    shall provide ONLY the functions required in the

    requirement documents

    Environment constraint: The sub-systems shallbe developed using the Java VM.

    The interface between components shall beconsistent and well described.

  • 8/14/2019 Team 2 409-509 Final Presentation

    29/50

    System Verification

    30

  • 8/14/2019 Team 2 409-509 Final Presentation

    30/50

    04/01/09

    30

    Introduction ofBDI

    Bratman [1] proposedBelief, Desire, Intention (BDI)model based on belief, desire and intention as mentalstates.

    BDI models of agents have been widely researched byAI

    researchers. The purpose of these models is to characterize agents

    using anthropomorphic notions, such as mental states andactions.

    formally definedusing logical frameworks that allowtheorists to analyze, specify and verify rational agents [6].

    31

  • 8/14/2019 Team 2 409-509 Final Presentation

    31/50

    04/01/09

    31

    BDI Logic

    BDI logic?BDI logic? Belief, Desire, IntentionBelief, Desire, Intention Logic formalism for agent planningLogic formalism for agent planning

    BDI model

    (M. Bratman 87)

    Belief and Desire withdecision

    (Other Philosophers)

    In PhilosophyIn AI(Agent Planning)

    BDI logic(A. Rao and M. Georogeff 91)

    applied TemporalLogic.

    Much controversy exists

    X-BDI(M. Mora et al. 99)AgentSpeak (Rao 96)

    installed Explicit

    Negationimproved the BDI logic

    In Pervasive Computing

    Inference of HumanIntentions

    For a new evolvable,autonomous principle

    The Formalism(P. Cohen and H. Levesque 90)

    32

  • 8/14/2019 Team 2 409-509 Final Presentation

    32/50

    04/01/09

    32

    What is BDI[2]?

    Beliefs: represent the characteristics of the environment

    are updated appropriately after each sensing action. can be viewed as the informative component of the system.

    Desires: contain the information about the objectives to be

    accomplished, the priorities and payoffs associated with the

    various objectives can be thought as representing the motivationalstate ofthe system.

    33

  • 8/14/2019 Team 2 409-509 Final Presentation

    33/50

    04/01/09

    33

    What is BDI[2]? Intentions:

    represent the currently chosen course of action (the output of

    the most recent call to the selection function) capture the deliberativecomponent of the system.

    BDI agents are systems: situated in a changing environment

    receive continuous perceptual input

    take actions to affect their environment

    based on their internal mental state.

    34

  • 8/14/2019 Team 2 409-509 Final Presentation

    34/50

    04/01/09

    34

    Why BDI? Best known and best studied model of practical reasoning

    agents.

    BDI model combines a respectable philosophical model ofhuman practical reasoning.

    A number of implementations, several successfulapplications

    the now-famous fault diagnosis system for the space shuttle, as well asfactory process control systems and business process management

    An elegant abstract logical semantics, which have beentaken up and elaborated upon widely within the agentresearch community.

    35

  • 8/14/2019 Team 2 409-509 Final Presentation

    35/50

    04/01/09

    35

    AgentSpeak(L)

    Attempt to bridge the gap between theory and practice A model that shows a one-to-one correspondence between

    the model theory, proof theory and the abstract interpreter.

    Natural extension of logic programming for the BDI agent

    architecture Based on a restricted first-order language with events and

    actions.

    The behavior of the agent is dictated by the programswritten in AgentSpeak(L).

    36

  • 8/14/2019 Team 2 409-509 Final Presentation

    36/50

    04/01/09

    36

    +concert (A,V) : likes(A)

  • 8/14/2019 Team 2 409-509 Final Presentation

    37/50

    04/01/09

    37

    About Jason[2]

    a fully-fledged interpreter for AgentSpeak(L) many extensions, providing a very expressive

    programming language for agents. allows configuration of a multi-agent system to run on

    various hosts. implemented in Java (thus it is multi-platform) available Open Source and is distributed under GNU

    LGPL. http://jason.sourceforge.net/

    38

  • 8/14/2019 Team 2 409-509 Final Presentation

    38/50

    04/01/09

    38

    Safe Home ExampleBeliefstime(T)smokeheatloc(outside)loc(home)range(on)range(off)

    smokeTime(ST)

    ovenTime(ST)mvTime(ST)alarmTime(R,ST)

    Basic Actioncallenv

    alarmenv

    Goalalarm

    saveAlarm

    callFireman

    39

  • 8/14/2019 Team 2 409-509 Final Presentation

    39/50

    04/01/09

    39

    Safe Home Example/* Plans */

    +time(T) : smokeTime(ST) & (T > ST + 5) ST + 10) ST + 13) ST + 7)

  • 8/14/2019 Team 2 409-509 Final Presentation

    40/50

    Rhapsody

    41

  • 8/14/2019 Team 2 409-509 Final Presentation

    41/50

    4

    What Rhapsody can do?*

    A environment for Systems and Software Development Flexible design environments supporting SysML, UML 2.0, DoDAF, and

    Domain Specific Languages (Rational Rose import and XMI support) Integrated Requirements modeling, traceability and analysis

    e.g., Lifecycle traceability and analysis

    Small and large team collaboratione.g., Model-based differencing and merging Design for Testability

    Model simulation Requirements Based testing Auto test generation Embedded target model level debugging

    Application generation C, C++, Java, Ada Code visualization and reverse engineering Integration with Eclipse-based IDEs

    *http://www.ilogix.com/sublevel.aspx?id=53

    42

  • 8/14/2019 Team 2 409-509 Final Presentation

    42/50

    4

    Model Driven Development It starts out with making a requirements document

    and a series of models using UML, SysML or a similar

    modeling language. These models and requirements are then useddirectly for the generation of code.

    MDD tools use models as the primary means ofdevelopment.

    One of the extremely useful tools it has is itsanimator. It allows you to view an animatedversion of many diagrams in real time as theprogram is running.

  • 8/14/2019 Team 2 409-509 Final Presentation

    43/50

    Model Based Testing

    44

  • 8/14/2019 Team 2 409-509 Final Presentation

    44/50

    44

    Use Animation to Validate the Model Rhapsody animates the model by executing the code

    generated with instrumentation for classes, operations,and associations.

    Animated Sequence Diagram, State Machine Diagram,and Activity Diagram help design-level debugging. E.g., stepthrough the model, set and clear breakpoints, inject events, and generate anoutput trace.

    Allows incremental testing

    45

  • 8/14/2019 Team 2 409-509 Final Presentation

    45/50

    UML by Example: Home Alarm System

    Door and movement sensors

    Arm/Disarm based on 4 digit code

    Code may be modified

    Timeout to allow entering/exiting house

    Indication lights

    Siren

    46

  • 8/14/2019 Team 2 409-509 Final Presentation

    46/50

    Outlining the requirements:HomeAlarm Use Cases

    47

  • 8/14/2019 Team 2 409-509 Final Presentation

    47/50

    Detailed scenario: Arming the alarm

    48

  • 8/14/2019 Team 2 409-509 Final Presentation

    48/50

    Behavior: The AlarmController

    49

  • 8/14/2019 Team 2 409-509 Final Presentation

    49/50

    Resource UML resource:http://www.uml.org/#Links-General

    Model-driven Development resource:http://www.mdsd.info/mdsd_cm/page.php?page=intro&id

    http://www.omg.org/docs/omg/03-06-01.pdf

    Rhapsody resource:

    Rhapsody->Help->List of Bookshttp://www.ilogix.com/sublevel.aspx?id=53

    50

    http://www.uml.org/#Links-Generalhttp://www.mdsd.info/mdsd_cm/page.php?page=intro&id=5http://www.omg.org/docs/omg/03-06-01.pdfhttp://www.ilogix.com/sublevel.aspx?id=53http://www.ilogix.com/sublevel.aspx?id=53http://www.omg.org/docs/omg/03-06-01.pdfhttp://www.mdsd.info/mdsd_cm/page.php?page=intro&id=5http://www.uml.org/#Links-General
  • 8/14/2019 Team 2 409-509 Final Presentation

    50/50

    04/01/09

    References1. M. E. Bratman, Intentions, Plans, and Practical Reason, Harvard University Press, Cambridge,

    MA, 1987.

    2. BDI Agents and AgentSpeak(L)(Romelia Plesa,PhD Candidate, University of Ottawa)

    3. A BDI Agent-Based Software Process(Chang-Hyun Jo, California State University Fullerton,

    USA, Jeffery M. Einhorn, University of North Dakota, USA.4. AgentSpeak(L): BDI Agents speak out in a logical computable language (Anand S. Rao)

    5. http://jason.sourceforge.net/mini-tutorial/getting-started/

    6. P. R. Cohen and H. J. Levesque, Intention is choice with commitment, Artificial Intelligence ,vol. 42, is. 2-3, pp.213-261, 1990.

    7. Bordini, R. H., Hbner, J. F. and Vieira, R., Jason and the Golden Fleece of agent-oriented

    programming. In R. H. Bordini, M. Dastani, J. Dix, and A. El Fallah Seghrouchni, editors,Multi-Agent Programming: Languages, Platforms and Applications, chapter 1, pp. 337,Springer-Verlag, 2005.

    8. Rao, A. S. AgentSpeak(L): BDI agents speak out in a logical computable language, InProceedings of the 7th European Workshop on Modelling Autonomous Agents in A Multi-AgentWorld (MAAMAW96,), pp. 42-55, 1996

    http://jason.sourceforge.net/mini-tutorial/getting-started/http://jason.sourceforge.net/mini-tutorial/getting-started/