can we talk now? technology selection for an intelligent status tracking system

23
Can We Talk Now? Can We Talk Now? Technology Selection Technology Selection for an Intelligent for an Intelligent Status Tracking System Status Tracking System 5 th June 2009 Sidney Shek (41419979) [email protected] Supervisor: Dr Rolf Schwitter

Upload: keran

Post on 23-Jan-2016

17 views

Category:

Documents


0 download

DESCRIPTION

Can We Talk Now? Technology Selection for an Intelligent Status Tracking System. 5 th June 2009 Sidney Shek (41419979) [email protected] Supervisor: Dr Rolf Schwitter. Agenda. Project Introduction Related Work Requirements and System Analysis Rule Engine Evaluation - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Can We Talk Now?Can We Talk Now?Technology Selection for an Technology Selection for an Intelligent Status Tracking Intelligent Status Tracking SystemSystem

5th June 2009Sidney Shek (41419979)[email protected]: Dr Rolf Schwitter

Page 2: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

2

Page 3: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

The ProblemThe ProblemWhere is ‘John’ and how should I contact

him?

What happens if I call during a meeting with the CEO?

Page 4: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Project AimsProject AimsTo develop a low-cost prototype intelligent

status tracking system (Can We Talk Now?)

◦ Based on Social Networking principles

◦ Populate user’s status information based on

calendar, location, etc.

◦ Use logic to determine ‘best’ means of

communication between two users

◦ To integrate with mobile devices (Apple iPhone)

4

Page 5: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Project Phases Project Phases Project split into two phases:

1. Feasibility study and technology selection: Rule engine Client-server communications Server platform

2. Prototype system development

5

Page 6: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

6

Page 7: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Related WorkRelated WorkMany public and private Social

Networking Services (SNS) store status information◦ Not automatically populated◦ No logic rules applied to extract information

Dinoff et al. 2007 reports a similar system to CWTN for service providers or carriers (Intuitive Network Applications)◦ CWTN is low-cost ‘add-on’ system for

individual enterprises

7

Page 8: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Learnings from other SNSsLearnings from other SNSsNeed for flexibility in data and functionality

Need to integrate with SNS as mini-application rather than reinventing wheel

Need to address enterprise deployment issues:◦ Security◦ Cultural hindrance◦ Privacy◦ Scale and critical mass

8

Page 9: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

9

Page 10: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Application Data StructuresApplication Data Structures

10

Page 11: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Application LogicApplication Logic1. Populating Activity facts based on:

◦ GPS, calendar information, etc.

2. Determining available means of communication based on:

◦ Matching location◦ ‘Free to talk’ status:

Current activity (e.g. meeting versus idle) Relative importance of people Relative urgency of question

3. Prioritising means of communication11

Page 12: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

12

Page 13: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Rule Engine EvaluationRule Engine EvaluationEvaluated rule engines: SWI-Prolog,

Prova, Drools, JESS

Criteria included:◦ Support for application logic◦ Integration with Java (for server platform)◦ Enterprise based criteria (robustness,

development environment, support, licence fees)

◦ Future proofing (RuleML, Semantic Web support)

13

Page 14: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Comparison of Rule Comparison of Rule EnginesEngines

SWI-Prolog

Prova Drools JESS

1. Support for rules 2. Integration with Java

3. Suitability for enterprise

~ ~

4. IDE Available ~ 5. Licence cost ~6. Future proofing

14

Page 15: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Rule Engine Evaluation Rule Engine Evaluation ResultsResultsNo rule engine ideally suited

◦ Backward chaining like Prolog or Prova good for problem, but lacked in other areas

◦ Drools has good support, but is forward chaining

◦ Use Drools for now, with architecture to support simple replacement

15

Page 16: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

16

Page 17: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Client-Server Client-Server communicationscommunicationsMobile device restrictions:

◦ Limited battery◦ Limited CPU◦ Limited libraries

Use REST (RESTlet framework)◦ Fits into SOA◦ Easier to process than Web Services

Use JSON instead of XML◦ Lightweight and less bandwidth

17

Page 18: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Server platformServer platformMobile devices need Internet-facing

server◦ Difficult to get for a prototype system!

Deploy prototype to Google App Engine◦ Internet accessible and free JEE server◦ Consider integration with enterprise later

Enterprise hosted server Trusted connection to Google App Engine cloud

18

Page 19: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

AgendaAgendaProject IntroductionRelated WorkRequirements and System

AnalysisRule Engine EvaluationTechnologies for client and

server partsFuture WorkConclusion

19

Page 20: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Future Work – Next PhaseFuture Work – Next Phase

20

Page 21: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Future Work – Post-Future Work – Post-PrototypePrototypeEnterprise deployment:

◦Implement integration with SNSs

Research testbed:◦Use of Semantic Web technology for

data storage and reasoning

21

Page 22: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

ConclusionConclusionAim of project is to develop a low-cost

intelligent status tracking systemInitial feasibility study and technology

selection completed◦ Rule engine, server platform, client-server

communicationsDevelopment iterations scopedNext steps – Design and develop

prototype

22

Page 23: Can We Talk Now? Technology Selection for an Intelligent Status Tracking System

Thank youThank youQuestions?

23