Real Time Dynamic Mobile Scheduling System. Thesis proposal. For the degree of Master of Science in Computer Science



Similar documents
Java Platform, Micro Edition (Java ME) Mokoena F.R. The 7046 Team

Software Architecture Document

SYSTEM OF MONITORING AND CONTROL FOR THE AUTOMATION OF INDUSTRIAL WASH MACHINES

Databases Lesson 04 Client Server Computing and Adaptation

Project: E290 - MOBILE COMMERCE APPLICATION DEVELOPMENT

Mobile-PC Suite: Using Mobile Phone as Remote to Control PC Operations

Location-Based Information Systems

2sms SMS API Overview

Client/server is a network architecture that divides functions into client and server

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002

Mobile Devices: Server and Management Lesson 02 Application Servers Part 1

PDA DRIVEN WAREHOUSE INVENTORY MANAGEMENT SYSTEM Sebastian Albert Master of Science in Technology

Guide to Wireless Communications. Digital Cellular Telephony. Learning Objectives. Digital Cellular Telephony. Chapter 8

DESIGN OF MOBILE APPLICATION FOR SCHEDULING APPOINTMENT WITH BANK PERSONNEL FOR BANKING SERVICES

Wireless Solutions Beyond

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

Eclectic Computing. Time Tracking Tool Software Architecture Document. Version <1.3>

EFFECTIVE QUERY RETRIEVAL SYSTEM IN MOBILE BUSINESS ENVIRONMENT

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Nokia 9210i/9290 Communicators and PersonalJava TM Application Development

Mobile Operating Systems Lesson 07 Symbian OS

Your Mobile Phone as a Ticket (NFC)

How To Use The Dcml Framework

What's New in BlackBerry Enterprise Server 5.0 SP4 for Novell GroupWise

Oracle WebLogic Server 11g: Administration Essentials

CatDV Pro Workgroup Serve r

EVALUATION OF SERVER-SIDE TECHNOLOGY FOR WEB DEPLOYMENT

How to make a good Software Requirement Specification(SRS)

T141 Computer Systems Technician MTCU Code Program Learning Outcomes

JAVA-BASED FRAMEWORK FOR REMOTE ACCESS TO LABORATORY EXPERIMENTS. Department of Electrical Engineering University of Hagen D Hagen, Germany

A Monitored Student Testing Application Using Cloud Computing

Service Level Agreement (SLA) Arcplace Backup Enterprise Service

WHITE PAPER. Domo Advanced Architecture

Project Manager 1 Post == Experience years in Project Management in reputed company, Salary Rs.1,20,000/-

What Is the Java TM 2 Platform, Enterprise Edition?

Software Requirements Specification

Building Java Servlets with Oracle JDeveloper

Customer Bank Account Management System Technical Specification Document

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Mobility Solutions in IBM

Development of Java ME

Ricoh HotSpot Printer/MFP Whitepaper Version 4_r4

An Approach to Software Architecture Description Using UML

Excerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk

ORACLE FORMS APPLICATIONS?

Mobile Development Discovery Document

Designing Ubiquitous Personalized TV-Anytime Services

Collaboration solutions for midsized businesses Buyer s guide

Desktop Virtualization Technologies and Implementation

Wireless Java Programming for Enterprise Applications

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia.

Responsive, resilient, elastic and message driven system

Student Attendance Through Mobile Devices

Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform

Introduction to BlackBerry Smartphone Web Development Widgets

NetBeans IDE Field Guide

BlackBerry Enterprise Server Version: 5.0. Upgrade Planning Guide

NetCrunch 6. AdRem. Network Monitoring Server. Document. Monitor. Manage

A framework for web-based product data management using J2EE

1. Introduction 1.1 Methodology

1 File Processing Systems

AA Automated Attendant is a device connected to voice mail systems that answers and may route incoming calls or inquiries.

Extreme Java G Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti

How To Develop A Web Service In A Microsoft J2Ee (Java) 2.5 (Oracle) 2-Year Old (Orcient) 2Dj (Oracles) 2E (Orca) 2Gj (J

Online Fuzzy-C-Means clustering

IBM Rational Rapid Developer Components & Web Services

BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Feature and Technical Overview

Java ME Clients for XML Web Services

IT 3202 Internet Working (New)

Chapter 5. Data Communication And Internet Technology

Architectural Overview

Performance Comparison of Database Access over the Internet - Java Servlets vs CGI. T. Andrew Yang Ralph F. Grove

How To Use Ibm Tivoli Composite Application Manager For Response Time Tracking

ORACLE ADF MOBILE DATA SHEET

5 Days Course on Oracle WebLogic Server 11g: Administration Essentials

What is a database? COSC 304 Introduction to Database Systems. Database Introduction. Example Problem. Databases in the Real-World

Java Secure Application Manager

Security solutions Executive brief. Understand the varieties and business value of single sign-on.

Java Thin-Client Programming for a Network Computing Environment

Remote Access with Outlook 2003 Using RPC over HTTPS

CSI 2132 Lab 8. Outline. Web Programming JSP 23/03/2012

Building Reliable, Scalable AR System Solutions. High-Availability. White Paper

Conferencing Agent Enhancing the Communication Experience

At least 2 GCE A Level Passes and credit in Mathematics at Ordinary level. Mature candidates will also be considered on a case-by-case basis.

IS Careers. MIS 4133 Software Systems

Software design (Cont.)

Transcription:

Real Time Dynamic Mobile Scheduling System Page 1 Real Time Dynamic Mobile Scheduling System Thesis proposal For the degree of Master of Science in Computer Science At Southern Connecticut State University RamaKrishna Kolli July 2003 Thesis Advisor:Dr.Hrvoje Podnar Major-Field Approval The advisor and the department chairperson Advisor Chairperson Date Date

Real Time Dynamic Mobile Scheduling System Page 2 A. Title 3-Tier Real Time Dynamic Mobile Scheduling System. B. Statement of Purpose Traditional applications have not accounted for the fact that employees leave their desks. Effective mobile computing aims to solve this problem by delivering the information users require remotely. This approach is usually followed by increase in their productivity. One application that can be used is remote scheduler. Scheduler permits easier scheduling of activities and meetings involving individuals from other departments in the organization. It also provides an audit trail for verifying productivity of each individual. Implementing scheduling system on mobile phones would help individuals to schedule the meetings instantaneously. The goal of this project is to develop and implement meeting scheduler application for mobile phones that allows temporal assignment of meetings to resources (e.g. individuals and rooms) where a number of conditions have to be considered. The project focuses on the predictive scheduling and the correction of an existing schedule due to actual events in the planning-scheduling environment (reactive scheduling or rescheduling). In order to utilize the scheduling system the user interface should be developed using J2ME (Java 2 Platform, Micro Edition) technology. This technology provides a range of configurations and virtual machine technologies optimized for embedded application. Algorithms and methods to be used are required to conform to mobile phone specifications. A scheduling problem can be described by the tuple (R, HC, SC) with: a set of resources R = {R 1,..., R r } like rooms, individuals. a set of hard constraints HC = {H 1,..., H h } (e.g. high priority meetings), that have to be fulfilled, and

Real Time Dynamic Mobile Scheduling System Page 3 a set of soft constraints SC = {S 1,..., S s } (e.g. meeting due dates), that should be fulfilled but may be relaxed. Result of scheduling is a schedule (or plan) showing the temporal assignment of operations. This system will support a scheduling algorithm and tools required for information retrieval and processing. The platform should also support utilities for data analysis and performance measurement. Scheduling and, in particular, rescheduling are such difficult problems that no today s algorithmic approach can solve in a satisfactory manner and in reasonable time. Therefore, the objective of system approaches should not be the replacement of the human experts, but their support in order to extend their problem solving capabilities. Thus a computer-based scheduling system supporting the meeting planner in a user-friendly interactive manner should combine a graphical user interface with the scheduling method. Different kinds of knowledge are used in solving a scheduling problem (Sauer,1993). This solution methods can be divided into the areas of domain, situation, scheduling, and metascheduling. The domain knowledge contains static information about the application environment, which is reflected in the structure of the scheduling problem, e.g. the set of groups and the available resources. The situation knowledge represents the current state of scheduling, e.g. the existing schedule, the remaining capacities of resources etc. The scheduling knowledge is divided into static and dynamic approaches for scheduling and rescheduling. The static scheduling knowledge contains complete algorithms, e.g. operations research algorithms but also knowledge based ones. These algorithms are firmly implemented into the scheduling structure. The dynamic scheduling knowledge denotes chunks of heuristic planning knowledge, which can be used together or separately in finding solutions to scheduling problems. It provides the

Real Time Dynamic Mobile Scheduling System Page 4 possibility for adequate description and integration of multiple algorithmic approaches in one system. The meta-scheduling knowledge contains the information necessary to determine the best algorithm to the current scheduling problem. This includes the decision on which algorithms are applicable for which tasks (goals) and which ones are appropriate for which events of orders to the machines that shall be used (Sauer,1994). With any mobile solution, remote access to data is useless if the data is not accurate and timely (Pop Art, 2002). Currently, the United States is in its second generation, called 2G wireless networks.2g devices typically use circuit-switched technology so that the device only connects to the network when needed. 2G protocols include CDMA, TDMA and GSM. Data transfer ranging from 9.6 to 19.6 kilobits per second. The amount of time that handheld device is transmitting information should be kept to the minimum. Long transmission are prone to errors and certainly will reduce the battery life. The component list for this application includes many entities: The User-Interface provides a user-friendly and problem adequate graphical presentation of the information currently in the knowledge base, e.g. a Gantt chart representation of the existing schedule, and multiple tools for interaction. Final code could be implemented using Oracle9i JDeveloper that has seamlessly integrated the J2ME technology. The J2ME extension allows you to reach and use any J2ME toolkit (Oracle9iDS Jdeveloper,2002). The Meta-Scheduling component realizes the selection and interpretation of the appropriate scheduling strategies. The new scheduling problem is analyzed, the appropriate skeletons are identified and refined to solution algorithms, the alternative algorithms (static as well as dynamically created ones) are judged and the applicable approaches are ranked with respect to their appropriateness for the current problem.

Real Time Dynamic Mobile Scheduling System Page 5 To identify appropriate heuristic the input data are compared against the predetermined list of constraints. The best heuristic (where most of the constraints are met) is applied first. If the interpretation of a heuristic succeeds, a new plan is generated. If the interpretation of a heuristic fails, the next heuristic is chosen until a solution is found or no appropriate heuristic is available. Because of the mobile device memory limitations all the heuristics will be implemented and performed on the server side. C. Literature Review And Current State-Of-The-Art: Traditional scheduling systems like Lotus notes (IBM Lotus Notes,2002), Outlook (Mac Outlook, 2001) exist with Client-Server architecture in the market. These systems are not dynamic in nature in the sense that, the schedule does not adjust automatically based on the work/meeting/individual priority. Lotus Notes 6 displays the conflict if any, but does not try to resolve the conflict based on the static information available like priority. Most importantly, these systems are not available on the go where you cannot access the desktop or laptop. Mobile schedulers that are available in the market are personal schedulers and do not share the information real time. It seems that a majority of scheduler applications including traditional scheduling systems are enterprise products and are not publicly available. Dynamic schedulers with mobile technology are currently not available in the market. It seems that a majority of scheduler applications developed are non-dynamic. D. Methodology The proposed project will combine complex 3-tier architecture depicted in Figure 1. The first tier consists of a MIDlets installed on mobile phones. The second tier consists of server side application programs implemented in JAVA and running on TOMCAT servlet engine. The third

Real Time Dynamic Mobile Scheduling System Page 6 tier utilizes ORACLE (Oracle9iAS Wireless, 2002) relational database with JDBC connection calls between server side application and the Database. The Java 2 Platform Micro Edition, (J2ME) Wireless Toolkit (Sun Microsystems, 2002) is a set of tools that provide application developers with the emulation environments, documentation and examples needed to develop Java technology applications targeted at Connected Limited Device Configuration /Mobile Information Device Profile compliant mobile phones. CELL PHONE TOMCAT J2EE SERVLET J2ME MIDLET HTTP ORACLE DATABASE Figure 1. Pictorial representation of the 3-tier architecture. Writing a world-aware application that runs in the stripped-down environment of J2ME (Muchow, W. J. 2001) can be a real challenge because most of the J2SE(Java 2 Platform, Standard Edition) support classes simply aren t in J2ME. It s important to understand how MIDlets can use HTTP to talk to a TOMCAT server (Giguere, 2000) and to remember that with J2ME, memory is always at a premium the device might have very little space available for storing and running Java applications. This issue will be resolved by implementing the business rules on the server side. The MIDlets call the functions in the TOMCAT with parameters and based on these parameters server application derives the appropriate function to execute. The scheduling system takes as input, a set of participants, their user preferences, and a set of Calendar slots across a time range. The scheduling system would provide the following functions to help the initiator resolve conflicts:

Real Time Dynamic Mobile Scheduling System Page 7 A function to compute if everyone is available for a meeting on a particular day. A function to find the most preferred date within date range. Mobile_Phone Priority_level Person_Name Person_Id PERSON Requested_ Timestamp Person_Id Meeting_Id Meeting_ Timestamp attends MEETING Meeting_ Location Meeting_ Incharge_Id Meeting_Id Figure 2. Mobile Real time Scheduler Entity-Relationship diagram (Hoffer, J. A., & Prescott, M. B., & McFadden, F. 2002). Figure 2 shows a detailed, logical representation of the data for the meeting scheduler business environment. This Entity-Relationship model is expressed in terms of entities in the business environment, the relationships (or associations) among those entities, and the attributes (or properties) of both the entities and their relationships. Entities are represented by the rectangle symbol, while relationships between entities are represented by the diamond symbol connected by the lines to the related entities. Each entity type has a set of attributes associated with it. An attribute is a property or characteristic of an entity type that is of interest to the organization. Placing its name in an ellipse with a line connecting it to its associated entity represents attribute.

Real Time Dynamic Mobile Scheduling System Page 8 The entities in Figure 2 are: PERSON - A person in the organization who initiated the meeting or attends the meeting. Attributes of PERSON are person id, person name, mobile phone, and priority level MEETING Group of individuals scheduled for the meeting. Attributes of MEETING are meeting id, location, and in-charge or person initiated. E. Contributions Majority of scheduling applications are static. This means that if resources are not available user intervention is needed to resolve the conflict. There are some scheduling systems that perform real time dynamic scheduling.if resources are not available the system proceeds with rescheduling algorithm. Because of immense computing demand of those systems usually run only on the powerful servers without remote input. The Real Time Dynamic Mobile Scheduling System will provide remote capability for managing scheduling needs. This in turn will increase employee productivity, performance, efficiency and satisfaction. Given the today s boom in wireless technology it is expected that a RTDMS system will be utilized frequently. F. References Giguere, E. (2000). Making HTTP connections with MIDP. Web site: http://wireless.java.sun.com/midp/ttips/httpcon Jeffrey Hoffer (2002). The Database Environment in Prentice Hall 6E Modern Database Management (Ch 1-5). Copy Right: 2002 Prentice Hall IBM Lotus Notes.(2002) (n. d.) Calendaring & Scheduling for Lotus Notes 6 -- "seeing is knowing". Retrieved June 18, 2003, from

Real Time Dynamic Mobile Scheduling System Page 9 Web site: http://www.lotus.com/news/news.nsf/0/7042369bf2c9130a85256c3d005a039b?opendoc ument Mac Outlook. (2001) (n. d.) Calendar/Scheduler and Tasks. Retrieved June 18, 2003, from Web site: http://www.med.wayne.edu/msis/computing/software/mac/mac_sch.pdf Muchow, W. J. (2001). Core J2ME Technology & MIDP. (1 st ed.) Prentice Hall PTR. Oracle9iAS Wireless (2002). Creating a Mobilized Business An Oracle White Paper. Retrieved June 18, 2003, from Web site: http://technet.oracle.com/products/iaswe/pdf/9iaswe_twp.pdf Oracle9iDS Jdeveloper. (2002) - J2ME Extension. Retrieved June 18, 2003, from Web site: http://otn.oracle.com/products/ids/daily/jul11.htm Pop Art, Inc (2002). White Paper: Mobile/Wireless Services. Retrieved June 18, 2003, from Web site: http://www.popart.com/whitepapers/wireless-applications.pdf Rajpathak, D., & Motta, E., & Roy, R. (2001). A Generic Task Ontology for Scheduling Applications. Web site: http://kmi.open.ac.uk/people/dnyanesh/publications/ic-ai'2001-1/finalversion.pdf Sauer, J. (1993). Meta-Scheduling using Dynamic Schedule Knowledge. Web site: http://www-is.informatik.uni-oldenburg.de/publications/669.pdf Sauer, J. (1994). Scheduling Meta-Scheduling. Web site: http://www-is.informatik.uni-oldenburg.de/publications/667.pdf Sun Microsystems. (2002). Java 2 Micro Edition, Wireless Toolkit, Sun Microsystems Web site: http://java.sun.com/products/j2mewtoolkit