Presentation is loading. Please wait.

Presentation is loading. Please wait.

Business Trip Scheduler Application Design Document Lital Badash Eran Banous Yanir Quinn Academic Advisor: Prof. Ehud Gudes amdocs.

Similar presentations


Presentation on theme: "Business Trip Scheduler Application Design Document Lital Badash Eran Banous Yanir Quinn Academic Advisor: Prof. Ehud Gudes amdocs."— Presentation transcript:

1 Business Trip Scheduler Application Design Document Lital Badash Eran Banous Yanir Quinn Academic Advisor: Prof. Ehud Gudes amdocs

2 Contents  Reminder – About the project  Main System Requirements  System Architecture  Class Diagram – Main Classes  Database Scheme  User Interface  Algorithms  Task List 2

3 Reminder  Amdocs employees usually divided to Groups that consists up to 30 people.  Occasionally, each group is signed up for a mission (at customer sites) and has to decide which of its members will be sent as part of the mission.  We are building web based application to help recommend which of the employees will commit the mission. Smart Algorithm that will take into account personal and group constraints is needed. 3

4 Main System Requirements  Add/remove personal constrains –Add/Modify personal constrains from a given template.  Create a new mission (assignment for site support) - Create a new mission for site support assignment. Including:  Define mission.  Select mission schedules, site location and mission specifications.  Select irrelevant constraints  Select irrelevant team members  All missions can be updated. Manager can edit any of the mission properties in modify scheduled mission.  Generate List for mission- After creating a new mission the algorithm can be activated and recommend which of the team members is most preferable to perform the mission. It will generate up to 10 most suitable options in a descending order. 4

5 Main System Requirements  Add/remove Group constraint – each group will have a set of constraints that will take into account every time the algorithm will run.  Add chosen match – After the algorithm generated the list and the manager pick the most suitable employees to perform the task, he must update the system about his decision.  Define new constrains templates – The administrator will be able to define new constrains that can later appear on the system pool from which a manger can pick his group’s constraint. The new constrains will be inserted by a given template and will be restricted to given patterns (Boolean, integers, date, etc.). the administrator will decide if the constraint is considered “hard” or “soft”. 5

6 System Architecture  From the whole system perspective 3 players are involved:  Client  Server (Application server – We picked WebLogic/tomcat)  Data Base (We picked mySQL platform)  This is a simple client-server model. This model satisfies our requirement for a distributed application. 6

7 System Architecture DB Client Web/Application Server 7

8 8

9 Main Class Diagram  Domain - this package classes mainly represent data objects that are used to save, handle and manipulate data regarding missions and group management, including the personal data objects, mission and group.  Classes : Groups, Missions, User (TeamMember, Administrator, Manager)  Main operations:  Add/Remove Personal constraints  Create a new mission  ADD/Remove group constraints.  Add chosen match 9

10 Main Class Diagram  AlgorithmLogic - classes in this package are responsible to the generation of lists for missions with data extraction from the database. Design pattern used: strategy.  Main operations:  Generate List for Mission.  RuleEngine – classes in this package are all part of constraints interpretation and storage in the database. in here are also the basic class of constraint and its subclasses.  Classes: SystemConstraint, PersonalConstraint, ConstraintManager, Interpreter. 10

11  UserLogic - classes in this package are responsible for the transactions in the system. All the information traffic from/to the end-user is done and managed by classes in this package.  Server – handles connections and http messages. Main Class Diagram 11

12 Database Scheme 12

13 User Interface – User Screen 13

14 User Interface – manager Screen 14

15 User Interface – Administrator Screen 15

16 Algorithm  Using the concepts of the following article we will present an idea and a general approach for solving our problem.  “Modeling the and solving employee time tabling problem” (by Amnon miesles and Andrea Scharef).  the article discusses the problem of solving the nurse scheduling problem which we can adapt for our problem. we will present the general idea for the algorithm techniques. 16

17 Algorithm * A designate algorithm will run according to local search techniques : - starting from an initial state s0 - iterate in a loop from state s(i) state s(i+1)  The search is driven by a cost function f that estimates the quality of the given state. The most common one, counts the number of violated constraints and the search objective is to minimize f to a lower boundary. 17

18 Algorithm * One of the local search techniques is hill climbing - comprised from a family of techniques based on the idea of performing moves that improves or doesn't change f’s value. * Hill climbing technique: - for every iteration i, select a move m(i) - if f(si * mi) <= f(si) then s(i+1) = s(i)*m(i) else s(i+1) = s(i)  Our stop criterion will be based on the number of iterations since the last strict constraint improvement 18

19 Task List 1.Algorithm research √ 2.Set up Server (Testing both tomcat and web logic)√ 3.Set up Database √ 4.Naïve algorithm implementation 5.Write Unit Testing 6.Implementation of other components 7.Testing 8.Implement our algorithm 9.Create GUI √ 10.Testing 11.Refactor 12.Write User Manual 13.Prepare our presentation 19

20 Thank You Questions?


Download ppt "Business Trip Scheduler Application Design Document Lital Badash Eran Banous Yanir Quinn Academic Advisor: Prof. Ehud Gudes amdocs."

Similar presentations


Ads by Google