You are on page 1of 53

Real Estate Website

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

Submitted by: Preeti

En.

Centre for Development of Advanced Computing, Noida 2011-2012

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.

Signature of the Students Date:

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.

Signature of the Students Date:

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.

DescriptionHere are some features of this project: Handy online calendar


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.

Individual or group scheduling


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.

Personal calendar options


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.

Rooms and resources


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.

Convenient online time sheet


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.

At-a-glance task tracking


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.

Operating system- Microsoft windows 2000/XP/Vista/7.

2. Java 1.5
3. Oracle 9i/Mysql

Tools Used1. Eclipse helios IDE

CONTENTS
S. No. Topic 9 Page No.

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.

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.

Context-Level Data Flow Diagram Level-1 Data Flow Diagram

10

3. 4.

Program Development Process Systems Implementation Process

39 51

LIST OF SYMBOLS

S. No. 1 2

Symbol Mr CDAC

Nomenclature & Meaning Mister Centre for Development of Advanced Computing

Dr.

Doctor

11

4 5 6 7 8 9 10 11

CPU MHz MB RAM GB R&D eg. DFD

Central Processing Unit Megahertz Megabytes Random Access Memory Gigabytes Research and Development for example Data Flow Diagram

CHAPTER-1 INTRODUCTION

12

Brief Description of the Organisation


Vedic Info Systems is an IT Consulting and Software Development company specializing in Software Development, Project Management, Contract Programming, and IT Staffing. Vedic Info Systems consultants possess extensive technical and project experience resulting in our ability to understand client requirements, supply the needed consulting resources and deliver the right kind of product. We fulfil our promises with speed, quality and value to both our Consultants and our Clients. Vedic Info Systems strives for a mutually beneficial relationship, delivering to needs requirements, by which the Customer is in complete control of outcomes. They offer specialized services in Software Testing and have developed a number of
13

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.

1. General Description of the System under Study


Schedule generally refers to a timetable. It is a list of operations (actions) ordered by time, performed by a set of transactions that are executed together in the system But here I am talking about scheduling the office events and appointments. The project SCHEDULER eliminates the problem comes from scheduling and saves you a lot of time and energy when youre trying to find a time to bring a number of people together. Instead of using just one option, you can propose several dates and times and the participants can indicate their availability online. With one look, youll be able to see what the best time is for the meeting, and this works with any calendar system that is being used.
14

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.

3. Need of The New System

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.

4. Objectives of the Project


The major objectives of the project are given as follows1. The main objective of this project is to aid the people who work in an

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

confirmation e-mail to client ,by Viewing appointments for multiple staff

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.

5. Data Required & Data Collection Method


Data collection is an important aspect of software development. The more precise is the data, the better will be the understanding of the project and the more precise will be the resulting software. In this project the data has been collected through interviews asking the users about the difficulties faced by the visually impaired in using a computer system with the Microsoft Windows operating system installed and by document analysis which helped a lot in the implementation phase.
18

CHAPTER-2
19

SYSTEMS REQUIREMENT ANALYSIS

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

2.1 Topic Understanding


It is vital to understand each and every aspect of the project. So, as soon as the project was allocated, the requirement of project is understanded by searching on internet, by watching into offices, by the management of meetings, events and by discussing friends.

21

2.2 Feasibility Analysis


Feasibility study is conducted to select the best system that meets the performance requirements. This entails an identification, description, and evaluation of the candidate system, and the section of the best system for the job. Many feasibility studies are disillusioning for both the user and the analyst. First, the study often pre-supposes that when feasibility of the documents is being prepared, the analysis is in position to evaluate solutions. Second, most studies tend to overlook the confusion inherent in the system development- the constraints and the assumed attitudes. If the feasibility study is to serve as decision document, it must answer three key questions: Is there new and better way to do a job that will benefit the user? What are the cost and saving of the alternatives? What is recommended?

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-

1. 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.
The software requirements are also easily achievable. The software requirements are as follows1.

Operating system- Microsoft windows 2000/XP/Vista/7.

2. Jdk 1.5 3. Oracle 9i/Mysql

Hence, it is a technically feasible project.


23

2.22 Cost Analysis


The cost to conduct investigation was negligible, as our project guide and faculty provided most of the information. The cost of essential hardware and software requirement is not very expensive. Hardware like Pentium IV PC and software like java development kit 1.5 are easily available in the market. Moreover oracle or mysql can be downloaded free of cost from the internet.

2.23 Benefits And Savings

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.

2.24 Operational Feasibility


In this, we determine what change will be brought in the system, new skills required and other human organization and political aspects. Every common user can easily use our software. However it is desirable that the user should be able to power on the system and login.

24

Without making any changes in the rules and regulations of the existing system, the proposed system can be easily adopted.

2.3 Functional Requirements


Scheduler has many unique features like web mail, pop up reminder, administrator option, personal calendar option, reservation of rooms, projector, TV. A common user need all these features and can use this software at home also for managing their daily schedule. Any birthdays, shopping schedule, home budget schedule can be saved in this software and any one can use reminder option to remind on particular date, time. Pop up reminder is a good option for those people who is not able to remember events, so a pop up window is displayed after a fixed time limit on users screen repeatedly.

2.4 Input Requirements


The data which is taken input by user is according to users selected option, like if user wants to add meeting then he has to enter date in dd/mm/yyyy format and information about events in string format. Similarly while deleting events user has to just enter the events date then in a specified format then event of that date will be deleted.
25

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.

2.5 Output Requirements


As the software outputs displays data so a monitor is needed for displaying the information.

CHAPTER-3 SYSTEMS DESIGN

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 system design considerations are:

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.

There are two methodologies for designing which are as follows:

1.1 Top down:


The top down approach starts from the highest-level component of the hierarchy and proceeds through to lower levels. It starts by identifying the major components of the system, decomposing them into lower level components and iterating until desired level of details is achieved. This approach of designing the system might be best if the designer has a detailed idea about the whole project to be developed. In this methodology, designer starts with an overall view of the project and works branching off from there. The advantages of the top-down approach are

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

1. Data Flow Diagrams

Fig:-Flow Graph of Schedular

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

Figure No-1: Context-Level Data Flow Diagram


1.2

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

Query executed Succes s Report

Database update Tables properties Updated database

Receive acknowled gement for success scheduling

User

Figure No-2: Level-1 Data Flow Diagram

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.

All Day Events


32

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

3. Screen Shots User Interface

Adding new events:

35

Message after successful adding events:

Deletion:

36

CHAPTER-4 SYSTEMS DEVELOPMENT

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

Figure No-4: Program Development Process

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.

2. Testing 2.1 Testing Methodology


Software testing is critical element of software quality assurance and represents the ultimate review of specification, design and coding. It is used to detect errors. Testing is a dynamic method for verification and validation, where the system to be tested is executed and the behaviour of the system is observed.

40

2.2 Testing Objectives


Testing is a process of executing a program with the intent of finding an error. A good test case is one that has a high probability of finding an as-yetundiscovered error. A successful test is one that uncovers an as-yet-undiscovered error.

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.

2.3 Testing Technique


The techniques followed throughout the testing of the system are as under-

2.31 Black-Box Testing


Black box testing focuses on the functional requirements of the software. That is, Black Box testing enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program. Black Box Testing is not an alternative to white-box techniques. Rather, it is a complementary approach that is likely to uncover a different class of errors than white-box methods.
41

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.

2.32 White-Box Testing


White Box Testing, knowing the internal workings of a product, can be conducted to ensure that internal operations are performed according to specifications and all internal components have been adequately exercised. Using white box testing methods, the test cases that can be derived are: All independent paths with in a module have been exercised at least once. Exercise all logical decisions on their true and false sides. Execute all loops at their boundaries and within their operational bounds. Exercise internal data structures to ensure their validity.

Control Structure Testing

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

Relational operator error Arithmetic expression error

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.

2.4 Testing Strategies


A strategy for software testing integrates software test case design methods into a wellplanned series of steps that result in the successful construction of software. A software testing strategy should be flexible enough to promote a customized testing approach.

2.41 Unit Testing


Unit testing focuses verification efforts on the smallest unit of software design. It is white box oriented. Unit testing is essentially for verification of the code produced during the coding phase and hence the goal is to test the internal logic of the module. Others consider a module for integration and use only after it has been unit tested satisfactorily.

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

All error-handling paths are tested.

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.

2.42 Integration Testing


Integration testing focuses on design and construction of the software architecture. For example: - We followed a systematic technique for constructing the program structure that is putting them together- interfacing at the same time conducting tests to uncover errors. We took unit tested components and built a program that has been dictated by design and tested it for interface errors.

2.43 Validation Testing


It is achieved through a series of Black Box tests. An important element of validation process is configuration review. It is intended for all the elements that they are properly configured and catalogued. It is also called AUDIT.

2.44 System Testing


The last high-order testing step falls outside the boundary of software engineering and into tile broader context of computer system engineering. Software, once validated, must be combined with other system elements (e.g., hardware, people, and database).

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.

2.5 Test Review


Test review is the process that ensures that testing is carried out as planned. Test review decides whether or not the program is ready to be shipped out for implementation Scheduler is tested through all these phases but during coding unit testing is done which reduces no. of expected errors from the system. Many test cases and different methodologies is taken to test the software i.e white box as well as black box.

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

CHAPTER-5 SYSTEMS IMPLEMENTATION

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

Figure No-5: Systems Implementation Process

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.

Summary & Conclusions


Scheduler helps those who had difficulty in scheduling their meetings and events organised at offices. In fact, some people were rendered helpless by their meetings because they have lots of meetings in a month or week. Although Scheduler can make accomplishing tasks easier, technology alone cannot mitigate all the difficulties that a person have.
51

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