Team JVA Alison Hilaire - Jae Il Joo Dohan Kim – Virginie Vasselin CS408 Computer Science Project - Team JVA
AMP review Community website to organize meeting Group management User calendar management Automatic meeting time Suggestion of meeting location Focus on study groups but group and meeting time functions are also useful for students’ clubs, sports activities… Gain of time, best solution to satisfy more people CS408 Computer Science Project - Team JVA
Feedback Availability: make it as easy as possible to update timetable Import from Google Calendar and OTL Remote update Meeting time algorithm: more precise constraints Weighted time Limited time range(no meeting possible at 4 a.m.!) New features Suggestion of meeting location Vote for meeting time CS408 Computer Science Project - Team JVA
Use case diagram CS408 Computer Science Project - Team JVA
Use case description Plan meeting time Suggest maximum 5 meeting times sorted according to: Number of VIPs (most important people for the meeting) Number of members Time preference score Suggest meeting location Check library Search for available rooms at the library through reservation system If no room is available, find best location. Find best location Estimate attendant’s location according to the 30minutes time-slot before the meeting Calculate the best meeting place CS408 Computer Science Project - Team JVA5
Architecture: MVC model CS408 Computer Science Project - Team JVA
Design: classes CS408 Computer Science Project - Team JVA Blue: controller Yellow: model Green: view
Design: Plan meeting CS408 Computer Science Project - Team JVA8
Time# of VIPs # of members 09:00~11: :30~11: :00~12: :30~12: :00~13: :30~13: :00~14: :30~14: :00~15:0000 TimeIsEmptyD 09:00~09: :30~10: :00~10: :30~11: :00~11: :30~12: :00~12: :30~13: :00~13: :30~14: :00~14: :30~15:00 1 isEmpty: 1 if empty schedule D: continous empty schedule Find attendance: example
TimeIsEmptyD[i] 09:00~09: :30~10: :00~10: :30~11: :00~11: :30~12: :00~12: :30~13: :00~13: :30~14: :00~14: :30~15:00 15 Time# of VIPs # of members 09:00~11: :30~11: :00~12: :30~12: :00~13: :30~13: :00~14: :30~14: :00~15:0001 Find attendance: example
TimeIsEmptyD[i] 09:00~09: :30~10: :00~10: :30~11: :00~11: :30~12: :00~12: :30~13: :00~13: :30~14: :00~14: :30~15:00 15 Time# of VIPs # of members 09:00~11: :30~11: :00~12: :30~12: :00~13: :30~13: :00~14: :30~14: :00~15:0011 If he/she is VIP Find attendance: example
Time# of VIPs# of membersscores 13:00~15: :00~11: :30~11: :00~12: :30~12: :00~13: :30~13: :00~14: :30~14: Sort by scores Sort candidates: score
Time# of VIPs# of membersscores 13:00~15: :00~11: :30~13: :00~14: :30~14: :00~12: :30~11: :30~12: :00~13: Sort by # of members (stable sorting algorithm) Sort candidates: member
Time# of VIPs# of membersscores 13:00~15: :30~13: :00~13: :00~14: :30~12: :30~14: :30~11: :00~11: :00~12: Sort by # of VIPs Sort candidates: VIPs
Design: Suggest location Check library for room availability CS408 Computer Science Project - Team JVA15
Design: Suggest location Find best location CS408 Computer Science Project - Team JVA16
Design justification MVC model Each functional requirement corresponds to a module containing several design classes At least one controller, one model and one view Ex: Meeting Manager controller, Meeting model and MeetingUI for meeting handling Extensibility and maintainability are easy Usability: timetable import, remote update CS408 Computer Science Project - Team JVA
Technical challenges solved Design algorithms for computing meeting time and location Design database schema Selection of open-source components BBS Calendar CS408 Computer Science Project - Team JVA
Remaining challenges Communication with external interfaces (OTL, Google Calendar, KAIST Portal) Integration of open-source components (BBS,Calendar) CS408 Computer Science Project - Team JVA
Annex E-R diagram CS408 Computer Science Project - Team JVA21