Professional Documents
Culture Documents
Submitted in partial fulfillment of the requirements for the award of the degree of Master of Computer Applications (MCA) Guru Gobind Singh Indraprastha University, Delhi
Guide:
Guide: Nikhil Aggarwal NO. 05111804409 nikhil@aradhyatechnologies
Tripti Garg Lecture, CDAC Noida
En.
Certificate
I, Mr. MOHD AZEEM, Enroll No. 0321184408 certify that the Project Report entitled SCHEDULAR is done by me and it is an authentic work carried out by me at Vedic Info Systems pvt. ltd.. The matter embodied in this project work has not been submitted earlier for the award of any degree or diploma to the best of my knowledge and belief.
Certified that the Project Report entitled SCHEDULAR done by Mr. MOHD AZEEM Enroll No. 0321184408 is completed under my guidance.
Signature of the Guide Date: Name of the Guide: Mr. Prashant Designation: Project Manager
2
Certificate
I, Mr. MOHD AZEEM, Enroll No. 0321184408 certify that the Project Report entitled SCHEDULAR is done by me and it is an authentic work carried out by me at Vedic Info Systems pvt. ltd.. The matter embodied in this project work has not been submitted earlier for the award of any degree or diploma to the best of my knowledge and belief.
Certified that the Project Report entitled SCHEDULAR done by Mr. MOHD AZEEM Enroll No. 0321184408 is completed under my guidance.
Signature of the Guide Date: Name of the Guide: Mrs. Rekha Saraswat Designation: Sr. Lecturer, CDAC Noida
Acknowledgements
Many persons have contributed to make this project SCHEDULAR a reality. I would especially like to express our appreciation to Prashant Sir for his unstinted support, encouragement and his painstaking and meticulous effort towards developing this software. I sincerely express my gratitude towards Rekha Saraswat mam my present Project Guide at CDAC Noida, for her support and help in the final preparation of this Report. I will always remain indebted to ATUL Sir. His invaluable suggestions and guidelines helped me passing through the grinding situations. His motivation helped me reach this state. I acknowledge the help and cooperation received from all the staff of Vedic Info Systems pvt. ltd. Several colleagues have contributed directly and indirectly to the contents this software, as they had given me numerous ideas. Their criticism gave me the much-needed hints about the areas that needed amendments. Finally, I wish to express our sincere thanks to all my family members, especially my Parents for their constant moral support and encouragement. I would welcome Constructive Suggestions to improve this software, which can be implemented in my further attempts. Thanking you! MOHD AZEEM Enrollment No 0321184408
SYNOPSIS
Problem Definition:
This project is mainly intended to easily keep track of and maintain your individual or co-workers' schedules. You can quickly view and schedule meetings, appointments or company resources. With Scheduler, you can keep track of your meetings and events, or view other people's calendars. You can add one-time meetings, recurring meetings, or all day events on your calendar, someone else's, or a group calendar. You can also reserve a corporate facility or any equipment you will need, such as a projector, conference room or TV.
ObjectiveThis project aims at creating event scheduler software, especially for the official people, which can have official meetings, events to remember.
View your calendar on your personal Home Page. Switch from yearly/monthly/weekly/daily views of your personal schedule, depending on your preference. View month-by-month calendars for years to come. View daily or weekly group schedules. With the "My Group" feature, select specific members' schedules to be displayed. Choose your preferred format for times/dates.
Input appointments on your personal calendar, either as public or private. Schedule all day events, or block out days or weeks at a time. Schedule recurring times for individual appointments or group meetings. Re-use existing appointments for commonly scheduled meetings. Add anniversaries, such as birthdays or anniversaries, to your calendar. Import/export these annual occasions via CSV file. Attach documents to meetings, such as agendas, maps, or meeting notes. Find Available Time tool allows you to view the calendars of all Facilities and Attendees while you are scheduling a meeting to help avoid conflicts.
Meeting invitations
Invite members to an event - members can immediately decline the meeting. Meetings will automatically show up on invitees' calendars until the meeting is declined. Easily re-schedule meetings until all members accept.
Create "private" events where time is blocked out in your schedule, but the event itself is not visible to other users with access to your calendar. Create "hidden" events where only you can see the time or the event. Export your calendar information.
Pop-up reminders
Set up meeting reminders to pop-up X minutes before your meeting. Set up meeting reminders through email instead of in the pop-up format.
View all facilities' schedules at a glance to see what's happening in each room. View facilities from a weekly, daily or monthly view. Review and reserve resources online for coordinated scheduling. Reserve facilities for multiple days or for recurring dates months in advance. Track white boards, monitors, TVs, VCRs, speaker phones, parking spots, etc. as well as conference rooms. Group facilities by categories you define - appliances, rooms, off site properties, etc. Import/export facilities information.
Administrator options
Set up access permissions for individual calendar access for viewing, editing or adding events. View all users' time sheets at a glance. Sort time sheets by group. Export group or individual time sheets. Print or download time sheets of select users.
Keep track of your Time Sheet with an easy punch-in system. If you prefer, manually enter times in your time sheet. View your time sheet at a glance. Print your time sheet for easy reference. Punch in or out with Share360 login/log out.
Eliminate sticky notes and scribbled messages to yourself. Add and keep track of tasks with an easy-to-use online form. Assign priorities to every task to highlight the urgent items. Assign tasks in categories you set up. Assign tasks with or without a deadline date. Sort your tasks by priority, deadline date or category. View all your completed tasks for easy reference. Set deadlines with a handy clickable calendar. View your tasks on your calendar. If you decide a completed task is not really complete, move it back to incomplete whenever you want.
Web mail
7
Send and receive email in an easy web-based email system. WebMail complies with SMTP Internet standards, so it is simple to set up and use.
Sort and organize emails along with your memos and notes in multi-level personal folders.
Search past emails with our fast, comprehensive search system. Search using to, from, cc, subject or message text.
Send and receive attachments. Set up multiple personal signatures to be included with all outgoing emails. Set up email rules, directing certain emails to particular folders when they arrive in your inbox.
Put unwanted emails in the trash folder, so you can delete trash once you're sure of your actions.
Set up the system to auto retrieve your emails every 10-60 minutes.
Hardware requirements1. CPU- A Pentium IV/Pentium IV- equivalent or later processor at 600 MHz or
more.
2. Memory- 128 MB of RAM or more. 3. Hard Disk- At least 2 GB hard disk space should be available. 4. A Display Monitor Software Requirements8
1.
2. Java 1.5
3. Oracle 9i/Mysql
CONTENTS
S. No. Topic 9 Page No.
Certificate Acknowledgements Synopsis List of Figures List of Symbols Chapter-1: Introduction Chapter-2: Systems Requirement Analysis Chapter-3: Systems Design Chapter-4: Systems Development Chapter-5: Systems Implementation Summary and Conclusions References/Bibliography 12 19 26 37 48 52 53
LIST OF FIGURES
S. No.
Figure
Page No. 28 29
1. 2.
10
3. 4.
39 51
LIST OF SYMBOLS
S. No. 1 2
Symbol Mr CDAC
Dr.
Doctor
11
4 5 6 7 8 9 10 11
Central Processing Unit Megahertz Megabytes Random Access Memory Gigabytes Research and Development for example Data Flow Diagram
CHAPTER-1 INTRODUCTION
12
tools to improve test coverage and test performance. Their experience in Software Testing spans across various application domains such as Telecom, ERP and Government Services. Vedic Info Systems provides high quality Offshore IT Outsourcing and Global IT Consulting Services. Their Offshore IT Outsourcing Services can provide you up to 65% of cost savings on your IT Application Development and Maintenance. With a small on-site team to ensure knowledge continuity and proactive delivery to the business, offshore teams are leveraged to deliver a variety of application development and maintenance services.
Business partners and friends want to meet with you. Show them when youre busy and available and let them submit meeting requests to get on your calendar. Meet Me is your central hub for scheduling. As a professional scheduling solution, this project is integrated where you need it the most. You can use it in your home and while working with your team at office.
2. User Requirements
Some of the software which is available in the market is not fulfilling all the user requirements and their interfaces are not as good as common user needs. For a person, it is very difficult to navigate through the system and organise their events in a single click. User needs a complete system which has all such facility and fulfils all their requirements in a single application.
15
Scheduler is a events calendar and event handler that provides a rich and intuitive scheduling solution similar to Microsoft Outlook Calendar, Apple's iCal, or Google Calendar but has more features. The events can be displayed in Day, Week, Month, Year, or Agenda views. Advanced drag-and-drop functionality allows users to change date and time of an event by easily moving or resizing event boxes. Very lightweight i.e there is no complexity in executing the software, no deadlock and fastperforming, the scheduler uses oracle database to smoothly update and display the events schedule. Scheduler has mailing features which was not available in the above listed software. User can easily send or receive mail via web mail facility and if meeting has been cancelled then user can send cancellation mail to all employees in one click. Scheduler also has administrator account which can access account of all user. Administrator can add events to other employees, delete events and can modify to other users events.
organization and have personal secretory to schedule their events, meetings, appointments.
2. To help them easily navigate through this application and manage their events. 3. And to help the official peoples by sending automatic appointment
16
members at the same time, by Sending automatic appointment reminder e-mail to client
Methodology
6.1 Introduction
A software life cycle is the series of identifiable stages that a software product undergoes during its lifetime. The first stage in the life cycle of any software product is usually the feasibility study stage. The subsequent stages are: Requirement analysis and specification, design, coding, testing and maintenance. Each of these stages is called a life cycle phase. A life cycle model represents all the activities required to make a software product transit through its life cycle
17
phases. It also captures the order in which these activities are to be undertaken. The most strict life cycle model used is the Classical Life Cycle Model.
6.2Methodology Used
The classical waterfall model has been used in developing this project for the following reasons: 1. The requirements are well defined and can be frozen in the initial stages of the development process. 2. Hardware required is easily available at minimum cost. 3. The risk involved is not very high. This methodology involves sequential execution of Feasibility study, Analysis, Design, Construction, Testing and Maintenance phases.
CHAPTER-2
19
1.
Introduction
Requirements analysis is a software engineering task that bridges the gap between system level requirements engineering and software design. Requirements engineering activities result in the specification of softwares operational characteristics (function, data and behaviour), indicate softwares interface with other system elements, and establish constraints that software must meet. The most commonly used requirements technique is to conduct a meeting or interview. The first meeting between a software engineer (the analyst) and the customer can be likened to the awkwardness of a first date between two adolescents. Neither person knows what to say or ask; both are
20
worried that they do say will be misinterpreted; both are thinking about where it might lead (both likely have radically different expectations here); both want to get the thing over with, but at the same time, both want it to be a success. Gause and Weinberg suggest that the analyst start by asking context-free questions. That is, a set of questions that will lead to a basic understanding of the problem, the people who want a solution, the nature of the solution that is desired, and the effectiveness of the first encounter itself. The goal of the requirements gathering activity is to collect all relevant information from the customer regarding the product to be developed with a view to clearly understanding the customer requirements and weeding out the incompleteness and inconsistencies in these requirements. The requirements analysis activity is begun by collecting all relevant data regarding the product to be developed from the users of the product and from the customer through interviews and discussions.
2.
The Process
21
The most successful system projects are not necessarily the most visible in business but rather those that truly fulfil the user expectations. Most projects fail because of inflated expectations than for any other reasons. Following are the main considerations involved in feasibility analysis:
2.21Technical Analysis
Technical feasibility centres on the current system and to what extent it can support the proposed system, it includes current computer system specifications such as hardware,
22
software etc. it also involves financial considerations to accommodate the technical enhancements. If the budget is serious constraint then the project is adjudged as not feasible. Though the system is developed in the generalized form, which covers all the windows controls, the language used in development is Microsoft Visual C++ and the text-tospeech engine used is the text-to-speech engine of Microsoft Speech Application Programming Interface. The hardware requirements of the system are much lower than the currently available technology. So, the software is feasible from hardware point of view. The hardware requirements are as follows-
2. Memory- 128 MB of RAM or more. 3. Hard Disk- At least 2 GB hard disk space should be available.
The software requirements are also easily achievable. The software requirements are as follows1.
Cost of the maintenance of the proposed system is negligible. Makes navigation through the system really easy for a common person. The proposed system is fully automated and hence easy to use. Since benefits out base the cost, hence our project is economically feasible.
24
Without making any changes in the rules and regulations of the existing system, the proposed system can be easily adopted.
If user wants to send mail then he has to just enter email id of one or multiple employee and select send button to send the mail.
26
Introduction
System design phase starts after the software requirements have been analysed and specified. System design is the first of the three technical activities: Design, code and test that is required to build and verify the software. A design methodology is a systematic approach to create a design by application of a set of techniques and guidelines. Some desirable properties for a software system design are as follows: Verifiability Completeness Consistency Efficiency Traceability
27
Simplicity/Understandability
The design objective that include practicality, efficiency etc. The constraints, which include the hardware, software, budget, time, scale and the interface with all other systems.
The processing techniques, which include batch processing, real time processing and on-line processing.
Your organization realizes a focused use of resources. The first implementation becomes a showcase for the application.
28
When the phases are completed, you have implemented a deeper, more mature implementation of the system.
Operation and maintenance resources are not initially impacted very much severely.
1.2 Bottom-up:
A bottom-up approach starts from the lowest level of component hierarchy and proceeds through progressively higher levels to top level components. This design approach starts with designing the most basic or primitive components and proceed to higher-level components that use these lower level components. This approach is adopted when the designer doesnt have a good idea about the layout of final project, but knows how specific modules work. It might be that working from these specific modules to the top modules is the way to proceed. This is particularly true if there are, already, existing modules as a result of development of some other project made by someone having the same concept. If there are no modules from which the designer has to start, then he can begin by designing modules that accomplish specific objectives and then linking them together. The advantages of this design are
Benefits are realized in the early phases. You can replace many manual processes with early automation. It is closer to practicality.
29
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an information system. DFDs can also be used for the visualization of data processing (structured design). On a DFD, data items flow from an external data source or an internal data store to an internal data store or an external data sink, via an internal process. A DFD provides no information about the timing of processes, or about whether processes will operate in sequence or in parallel. It is therefore quite different from a flowchart, which shows the flow of control through an algorithm, allowing a reader to determine what operations will be performed, in what order, and under what circumstances, but not what kinds of data will be input to and output from the system, nor where the data will come from and go to, nor where the data will be stored (all of which are shown on a DFD).
30
1.1 Context-level
DFD
On the context diagram (also known as the 'Level 0 DFD') the system's interactions with the outside world are modelled purely in terms of data flows across the system boundary. The context diagram shows the entire system as a single process, and gives no clues as to its internal organization. The following figure shows the context-level data flow diagram of the system-
User
Input Informatio
Schedular Software
Scheduled Events
User
Level 1 DFD
The context-level DFD is next "exploded", to produce a Level 1 DFD that shows some of the detail of the system being modelled. The Level 1 DFD shows how the system is divided into sub-systems (processes), each of which deals with one or more of the data flows to or from an external agent, and which together provide all of the functionality of the system as a whole. It also identifies internal data stores that must be present in order for the system to do its job, and shows the flow of data between the various parts of the system. The following figure shows the level 1 data flow diagram of the systemChose Desired Option Opens Applicatio n Choose Desired Option 31 Insert or delete Their data Press submit button to execute query
User
User
2. Process Logic
Add an Event
1. Click Scheduler from the main navigation. 2. Click the new: Event tab. Or, click on the date cell you in which you want to add an event. 3. Enter Date, Time, Event, and Note. 5. Click Add Event.
Repeating Events 1. Go to the Add Event screen. 2. Click on Repeating Events above the date field. 3. Enter Repeating Info, Date, Time, Event, and Note. 4. Click Add Event.
1. To add an all-day event goes to the Add Event screen 2. Click All Day Events. 3. Enter Date, Event, and Note. 4. Click Add.
Invite Users and Groups/Reserve Facilities 1. Click Scheduler from the main navigation. 2. Click new: Event. 3. Enter Date, Time, Event, and Note. 4. Click Invitations/Reservations. 5. Select users you want to invite to the meeting, and add them to the attendees box. If you do not see the members you want listed, change the group pull down to view users in a different group. Click Add to find free time for all invitees, Use the Find Available Time - the Calendars of all invited users and selected Facilities will be displayed. 6. To register the event on a group schedule, choose the group as an attendee. If you'd like the event to show up on individual group member's schedules, you must add each group member individually. 7. Select facilities you want to reserve for the meeting, and add to the facilities box. If you do not see the facilities you want listed, change the facility group pull down to view facilities in a different group. Click Add.
Event Notifications When you invite members to events, the event will automatically appear on the invitees' calendars. Invitees will receive notification of the event in the Notification Box on his or her Home Page, with the option to immediately decline your invitation. If the invitee declines the event, the event will be removed from his or her calendar, and a notification will be sent to the event organizer. If an invitee does not decline the event, the event will remain on his or her calendar. Decline Events 1. Click Scheduler from the main navigation. 2. Click on the event you want to decline. 3. Click Decline.
33
4. Enter reason and click Decline Event. When you decline a meeting, it will be automatically removed from your calendar, and the event organizer will receive a notification that you have declined the event. If the meeting organizer wants to reschedule the meeting, invitees will again be notified of the change and will again be able to decline the meeting. Edit/Delete an Event 1. Go to the Scheduler. 2. Click on the event you want to edit/delete. 3. To edit, click Edit. After editing the schedule, click Save Changes. 4. To delete, click Delete button. Click Delete to confirm. Members invited to the edited/deleted event will be notified of the changes. Note: Any user can edit/delete events with Browse/Edit/Add/Delete permissions. Permissions can be set up by the admin at Tool>Admin Tools > Applications > Scheduler > Access Permission to Specific Schedules.
Add/Edit/Delete a Facility The admin has permission to add/edit/delete facilities at Admin Tools > Applications > Scheduler > - Facilities - Add/Edit/Delete Facilities and Add/Edit/Delete Facility Groups.
set up View Settings, Anniversaries See tool>My Options > Applications > Scheduler for personal Scheduler options.
Anniversaries Users can set up personal anniversaries to be viewed yearly on their calendars. These are private to the user, and independent of the holidays set up by the admin in Admin Tools > Applications > Scheduler > Holidays.
34
35
Deletion:
36
37
1.
Program Development
First, there is a need for a computer based solution to a problem. The need may be expressed in a few sentences as a problem specification. The progression from understanding a problem specification to achieving a working computer-based solution is known as program development.
38
1.1Language used
Java is a programming language originally developed by James Gosling at Sun Microsystems (which is now a subsidiary of Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities. Java applications are typically compiled to byte code (class file)
39
that can run on any Java Virtual Machine (JVM) regardless of computer architecture. Java is a general-purpose, concurrent, class-based, object-oriented language that is Specifically designed to have as few implementation dependencies as possible. It is intended to let application developers "write once, run anywhere". Java is currently one of the most popular programming languages in use, and is widely used from application software to web applications. One characteristic of Java is portability, which means that computer programs written in the Java language must run similarly on any supported hardware/operating-system platform. This is achieved by compiling the Java language code to an intermediate representation called Java byte code, instead of directly to platform-specific machine code. Java byte code instructions are analogous to machine code, but are intended to be interpreted by a virtual machine (VM) written specifically for the host hardware. End-users commonly use a Java Runtime Environment (JRE) installed on their own machine for standalone Java applications, or in a Web browser for Java applets.
40
The above objectives imply a dramatic change in viewpoint. They move counter to the commonly held view that a successful test is one in which no errors are found. Our objective is to design tests that systematically uncover different classes of errors and do so with a minimum amount of time and effort. If testing is conducted successfully (according to the objectives stated above), it will uncover errors in the software. Testing cannot show the absence of defects, it can only show that software errors are present.
Black-Box Testing attempts to find errors in the following categories: Incorrect or missing functions. Interface errors. Errors in data structures or external data base access. Performance errors. Initialization and termination errors.
Unlike White Box Testing, which is performed early in the testing process, Black Box Testing tends to be applied during later stages of testing. Because Black Box Testing purposely disregards control structure, attention is focused on the information domain. Tests are designed to answer the following questions:
How is functional validity tested? What classes of input will make good test cases? Is the system particularly sensitive to certain input values? How are the boundaries of a data class isolated? What data rates and data volume can the system tolerate? What effect will specific combinations of data have on system operation?
By applying black box techniques, we derive a set of test cases that satisfy the following criteria: Test cases that reduce, by a count that is greater than one, the number of additional test cases that must be designed to achieve reasonable testing.
42
Test cases that tell us something about the presence or absence of classes of errors, rather than errors associated only with the specific test at hand.
Condition Testing
Condition testing is a test case design method that exercises the logical conditions contained in a program module. Types of errors in a condition include the following. Boolean operator error Boolean variable error Boolean parenthesis error
43
Loop Testing
Loops are the corner stone for the vast majority of all algorithms implemented in software. Loop testing is a white-box testing technique that focuses exclusively on the validity of loop constructs. Four different classes of loops:
Simple Loops Nested Loops Concatenated Loops Unstructured Loops
Dataflow Testing
The dataflow testing method selects test paths of a program according to the location of definitions and uses of variables in the program. In this testing approach, assume that each statement in a program is assigned a unique statement number and that each function does not modify its parameters or global variables. It is useful for selecting test paths of a program containing nested if and loop statements. This approach is effective for error detection. However, the problems of
44
measuring test coverage and selecting test paths for data flow testing are more difficult than the corresponding problems for condition testing.
The module interface is tested to ensure that information properly flows in and out of program.
Local data structure is examined to ensure that data stored temporarily maintain its integrity.
Boundary conditions are tested to ensure that modules operate properly at boundary limits of processing.
All independent paths are exercised to ensure all statements in a module have been executed at least once.
45
We performed unit testing by building the different components of the software separately and testing them. To test whether the program fetches the properties of the windows controls or not, we created a graphical interface displaying the fetched properties and then checking them for correctness.
46
System testing verifies that all elements mesh properly and that overall system function/performance is achieved. It is a series of different tests whose primary purpose is to fully exercise the computerbased system. Although each test has a different purpose, all work to verify that the system elements have been properly integrated and perform allocated functions. It was performed by testing the program under various conditions. It was tested by running it on desktop, windows explorer, notepad, Microsoft word etc.
1. Validation Validation checks the system with real-time data for input, output, computational processing & controls. The software has been checked to be operating with different types of the various windows controls and has been found to be working well with them.
47
48
1. System Implementation
It refers to putting a planned system into action. The stages of systems development in which hardware and software are acquired, developed and installed, the system is tested and documented, people are trained to operate and use the system, and an organization converts to the use of a newly developed system. To ensure that a system's implementation takes place as efficiently and with as little disruption as possible, a number of tasks are necessary. These include ordering and installing new equipment, ordering new stationery and storage media, training personnel, converting data files into new formats, drawing up an overall implementation plan, and preparing for a period of either parallel running. The resources that are applied to a system implementation depend on the scope and complexity of the system. During implementation, all necessary software and hardware
49
is obtained and the system is staged where the components are configured according to the System Design Specification and tested. Systems can be staged at our facility or at the customers site if required. If staged at the developer site, they are shipped to the client site once the configuration is complete. A final test is performed on all components and system training is commenced. Once the system training is complete, the system is rolled out into implementation. On-site support can also be provided to handle post-implementation issues and questions. The process of planning, designing, and implementing computer system is called a project. It is directed by a project manager who uses available resources to produce system for the organization. It takes an effective manager resource, schedule the events, establish standards, and complete the project on time, within budget, and with successful results. With parallel running, the new system is introduced alongside the existing system. With parallel running both systems (manual and computer, or old computer and new computer system) will be in operation at the same time. This has the advantage that the results from the new system can be compared with those of the old system.
50
The implementation of Scheduler software is quite same as above. First part was planning that how to develop the system for which the agenda is gather the requirement and implement according to module. If any requirement occurs later then add this feature. For this all the related requirement is gathered and collected and the part which was going to develop initially is main window of Scheduler then its features like add, delete event, web mail, administrator option etc.
4. Training
There is not much requirement for training as the software does not have a wrong or difficult interface to understand, where a user can required help ,there a label is given in next to input text area to understand to input data and a help menu is also given to understand the system.
Scheduler is a big boon for the corporate people and its use should be popularized and widened in scope to assist and help them, not only to be independent at office, but also at home to organise their daily schedules.
References/Bibliography Books:
1. Herbert Schildt JAVA COMPLETE REFERENCE Tata MCGraw-Hill Seventh edition 2007
Internet
1. About vedic info system http://www.vedicinfosys.com 2. gathering information http://www.book-appointment.com/features.html 3. System understanding http://www.share360.com/products/s360v2/Applications 4. Schedule Adjustments http://dus.psu.edu/handbook/dropadd.html Dhtmlx Scheduler 5. http://dhtmlx.com/docs/products/dhtmlxScheduler/index.shtml Scheduling (computing) 7. http://en.wikipedia.org/wiki/Scheduling_%28computing%29 Java (programming language)
13. http://en.wikipedia.org/wiki/Java_%28programming_language%29
52
53