1 robocomm: rule-baseo d scheduling for communication systems csci 6838.2 research project and...

37
1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr. Dilhar De Silva

Upload: aron-brown

Post on 30-Dec-2015

222 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

1

RoboComm: Rule-Baseo d Scheduling for Communication

Systems

CSCI 6838.2 Research Project and Seminar

Team #7

Instructor: Dr. Kwok-Bun Yue

Mentor: Mr. Dilhar De Silva

Page 2: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

2

Content

Team Members Project Overview Software Architecture JBoss Rules Use Case Implementation Conclusion

Page 3: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

3

Team member

Name Responsibility

Thanh Doan Team Lead

Dung Nguyen JBoss rules

Tuan Le GUI

Hung Tran GUI & Database

Page 4: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

4

Project OverviewPresented by Hung Tran

Build on top of previous team work

Rewrite UI using Zimbra open source Ajax framework

Page 5: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

5

Apply JBoss Rules to improve how communication systems schedule meetings with participants

Project OverviewPresented by Hung Tran

Page 6: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

6

Technologies

JBoss Rules AJAX Web services

Page 7: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

7

Technologies Java MySQL LDAP Tomcat

Page 8: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

8

Software ArchitecturePresented by Hung Tran

Page 9: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

9

Server ArchitecturePresented by Hung Tran

Page 10: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

10

ZCS Migration Wizard for Exchange .exe file. Use the Migration Wizard .exe file to migrate Microsoft® Exchange server email accounts to the Zimbra server. Accounts from Microsoft Exchange 2000, 2003, and 5.5 can be migrated.

Presented by Hung Tran

Page 11: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

11

• Postfix serves as the Zimbra Mail Transfer Agent (MTA) for sending and receiving email across the Internet.

• All Zimbra messages (internal and external) flow through Postfix.

• Postfix uses SMTP/LMTP protocol.Presented by Hung Tran

Page 12: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

12

• The Zimbra message (or blob) store is built on the underlying Unix/Linux file system.

• The mapping is one file per message—Zimbra actually write the RFC822 MIME message representation directly to a file.

Presented by Hung Tran

Page 13: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

13

• The Zimbra includes an embedded relational database, MySQL, for managing mailbox meta-data

Presented by Hung Tran

Page 14: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

14

• Lucene is a high-performance, full-text search engine from Apache.

• The search process required to construct an index. So, Lucene works by generating a full “segment” index.

Presented by Hung Tran

Page 15: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

15

The Zimbra journal is like a database transaction log in guaranteeing that no data is lost in the event of a failure and that the system can restart quickly.

Presented by Hung Tran

Page 16: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

16

JBoss RulesPresented by Dung Nguyen

If A,not(B),not(C) then do(A1) elseIf A,B,not(C) then do(A1,B1) elseIf A,B,C then do(A1,B1,C1)

Rule A: When A then do(A1) Rule B: When B then do(B1) Rule C: When C then do(C1)

Page 17: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

17

JBoss Rules

Inference Engine

Pattern Matcher

Agenda

Knowledge/Rule Base

( Rules )

Working Memory

( Facts )

Structure of JBoss Rules Engine

Page 18: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

18

JBoss Rules

Rule: check if the Appointment is celebrated.

Class ParticipantList

{ int percetageOfParticipant;

long appointementID;

……

}

Class Appointment{ long appointmentID; int successPercentage; void setSuccess(boolean success);………}

WorkingMemory.Assert(m_ParticipantList);

WorkingMemory.Assert(m_AppointmentList);

Assert Object to Rule Engine

Page 19: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

19

JBoss Rules

rule when ParticipantList(percent: PercetageOfParticipant,apptID1: AppointementID) appt:Appointment(apptID: AppointmentID,successNo: SuccessPercentage) eval(apptID1==apptID) eval(percent>=successNo) then appt.setSuccess(true); appt.CreateAppointment();end

Rule: check if the Appointment is celebrated.

Page 20: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

20

JBoss Rules

WorkingMemory.assertObject(m_ParticipantList);

WorkingMemory.assertObject(m_AppointmentList);

Assert Object to Rule Engine

WorkingMemory.fireAllRules();

Activate Rules Engine

Import org.drools.*;

Page 21: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

21

Implementation – Create meeting requestPresented by Tuan Le

Convener click on “Save” button to create a conference call

J927913
Page 22: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

22

Login page

Page 23: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

23

Calendar page

Page 24: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

24

Appointment details

Page 25: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

25

Sequence Diagram

Services

getContext_Session

dispatchServices

createAppointment

getInfoRequest getContactRequest Client – Ajax GUI

JBoss Rules

Database – File System

Server

Page 26: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

26

Participant respond to the meeting request by accept it or decline it

Implementation– Respond the meeting requestPresented by Thanh Doan

Page 27: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

27

User 2 – Respond to meeting request

Page 28: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

28

User 2 – Response message (automatically)

Page 29: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

29

User 2 – respond message

Page 30: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

30

User 1 – Get response message

Page 31: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

31

User 4 – decline meeting

Page 32: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

32

User 4 – Accept meeting

Page 33: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

33

Sequence Diagram

Services

getContext_Session

dispatchServices

sendResponse

ResponseEvent ResponseHandle Client – Ajax GUI

JBoss Rules

Database – File System

Server

Page 34: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

34

Conclusion

RoboComm has been built with many features: Create / manage a meeting Response a meeting request Contact list

Page 35: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

35

Conclusion (cont) Email Individual calendar Apply JBoss rules into RoboComm

What will be done so far: Implement more rules into

RoboComm

Page 36: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

36

Reference

1. JBoss Rules: http://www.jboss.org

2. Zimbra: http://www.zimbra.com 3. Documentation:

http://sce.uhcl.edu/yue

Page 37: 1 RoboComm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838.2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr

37

Thanks for listening

QA