0% found this document useful (0 votes)
9 views86 pages

Online Appointment System Project

Uploaded by

yegashaw
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views86 pages

Online Appointment System Project

Uploaded by

yegashaw
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

California State University, San Bernardino

CSUSB ScholarWorks

Theses Digitization Project John M. Pfau Library

2006

Appointment system
Ming-Tse Chen

Follow this and additional works at: [Link]

Part of the Databases and Information Systems Commons

Recommended Citation
Chen, Ming-Tse, "Appointment system" (2006). Theses Digitization Project. 3469.
[Link]

This Project is brought to you for free and open access by the John M. Pfau Library at CSUSB ScholarWorks. It has
been accepted for inclusion in Theses Digitization Project by an authorized administrator of CSUSB ScholarWorks.
For more information, please contact scholarworks@[Link].
APPOINTMENT SYSTEM

A Project

Presented to the

Faculty of

California State University,

San Bernardino

In Partial Fulfillment

of the Requirements for the Degree

Master of Science

in

Computer Science

by

Ming-Tse Chen

March 2006
APPOINTMENT SYSTEM

A Project

Presented to the

Faculty of

California State University

San Bernardino

by

Ming-Tse Chen

March 2006

Approved by:

Dr. Keith Schubert,Chair, Computer Science


ABSTRACT

Appointment system (AS) is an on-line system that

allows students to make appointments through the internet.

The system allows students to browse information about the

faculty, including current course, available times. If the

student forgets the details of the appointment, he or she

can log in at any time to retrieve this information.

Additionally, the system sends email to the student with the

appointment information, including the date and time of the

appointment.

In addition to student functions, the system also

provides functions to faculty and administrators. Faculty

can edit their current courses and available times or check

their appointments of the site. Administrators can add new

faculty or delete the faculty who is going to leave the

campus.

In this system, we use the MySQL database server to

maintain persistent data.

iii
ACKNOWLEDGMENTS

I would like to express my deep appreciation to my

graduate advisor, Dr. Keith Schubert, for his important and

valuable contributions to me and my project. Discussions

with Dr. Schubert always give me significant help to resolve

my problems and give me positive directions to do my

research. Dr. Schubert offered me a lot of precious

information and suggestions during all the period of doing

my project. I also would like to thank my two project

committee faculties, Dr. Turner and Dr. Botting, for their

supportive help and important advice.

I would like to thank my parents, deeply from my heart,

who provide me the chance to fulfill my every dream in life.

Their love warmly supports me in every day and their

encouragement gives me the power to accomplish every success

in my life.

iv
TABLE OF CONTENTS

ABSTRACT . . . ............................................. iii

ACKNOWLEDGMENTS ........................................ iv

LIST OF TABLES.......................................... viii

LIST OF FIGURES........................................ ix

CHAPTER ONE: INTRODUCTION

1.1 Purpose of this Project..................... 1

1.2 Project Products .............................. 2

CHAPTER TWO: SYSTEM REQUIREMENTS ..................... 3

2.1 System Interfaces ............................ 4

2.2 Hardware Interfaces .......................... 5

2.3 Software Interfaces .......................... 5

2.4 Security...................................... 6

CHAPTER THREE: DATABASE DESIGN

3.1 Data Analysis................................. 7

3.2 Database Schema Conceptual Model - Entity


Relational Schema ............................ 7

3.3 Database Schema Logical Model - Relational


Schema ........................................ 8

3.4 Data Type and Detail......................... 9

3.5 Page Flow Models.............................. 12

3.5.1 Student................................ 13

3.5.2 Faculty................................ 21

3.5.3 Administrator......................... 29

CHAPTER FOUR: PROJECT IMPLEMENTATION

4.1 User Interface Design........................ 40


4.2 Graphical User Interface and-Description .... 40

4.2.1 Login Page............................ 40

4.2.2 Student Home Page................. . 41

4.2.3 Student Make Appointment Page......... 42

4.2.4 Student Cancel AppointmentPage ....... 43

4.2.5 Student Edit Personal Information


Page................................... 44

4.2.6 Change Password Page............ . 45

4.2.7 Faculty Home Page..................... 46

4.2.8 Faculty Check/Cancel Appointment


Page....... 47

4.2.9 Faculty Edit Personal Information


Page....................... ............ 48

4.2.10 Faculty Edit Current Course Page .... 49

4.2.11 Faculty Edit Available Time Page .... 50

4.2.12 Administrator Home Page...... 51

4.2.13 Administrator Add New Faculty


Page ............ 52

4.2.14 Administrator Delete Faculty Page ... 53

4.2.15 Edit. Faculty Current Course Page .... 54

4.2.16 Edit Personal Information Page ..... 55

4.2.17 Add New Administrator Page.......... 56

4.2.18 Delete Administrator Page ........... 57

4.2.19 Request Password Page ............... 58

4.2.20 Create New User Page................ 59

CHAPTER FIVE: SYSTEM VALIDATION

5.1 Unit Test..................................... 61

vi
5.2 Subsystem Testing ............................ 64

5.3 System Test Plan....................... 65

CHAPTER SIX: MAINTENANCE MANUAL

6.1 Software Installation ................. 67

6.1.1 Gentoo Installation ................... 67

6.1.2 Install Java 2 Platform, Standard


Edition................................ 68

6.1.3 Install Tomcat ......................... 68

6.1.4 MySQL Installation .................... 69

6.2 System Variables ............................. 69

6.3 Appointment System Installation/Migration ... 69

6.4 Backup and Restore ................................................................. 10

6.4.1 System Backup .......................... 70

6.4.2 Database Backup....................... 71

6.4.3 System Restore ......... . . ....... 71

6.4.4 Database Restore ...................... 72

CHAPTER SEVEN: CONCLUSION AND FUTURE DIRECTIONS

7.1 Conclusion............. . :.................... 73

7.2 Future Directions ............................ 73

REFERENCES .......................................... 74

vii
LIST OF TABLES

Table 1. Structure of Table Studentinfo............... 10

Table 2. Structure of Table facultyinfo............... 10

Table 3. Structure of Table administratorinfo ........ 11

Table 4. Structure of Table checklogin................ 11

Table 5. Structure of Table current_course ............ 11

Table 6. Structure of Table availabletime ............. 12

Table 7. Structure of Table app_taken................. 12

Table 8. The Unit Test Results........................ 62

Table 9. Subsystem Test Results....................... 65

Table 10. System Test Results......................... 66

viii
LIST OF FIGURES

Figure 1. System Deployment Diagram(UML 1.0) ........ 4

Figure 2. Appointment System Entity Relationship


Diagram ..................................... 8

Figure 3. Appointment System Database Relational


Schema ...................................... 9

Figure 4. Login Page(Student) ........................ 13

Figure 5. Student Home Page ..... .................... 14

Figure 6. Request Password Page ..................... 15

Figure 7. Create New User Page................... 16

Figure 8. Make Appointment Page.................. 17

Figure 9. Check/Cancel Appointment Page(Student) .... 18

Figure 10. Edit Personal Information Page(Student) ... 19

Figure 11. Change Password Page(Student) ............. 20

Figure 12. Result Page(Student) ....................... 21

Figure 13. Login Page(Faculty) ........................ 22

Figure 14. Faculty Page............................ 23

Figure 15. Check/Cancel Appointment Page(Faculty) .... 24

Figure 16. Edit Personal Information Page(Faculty) ... 25

Figure 17. Edit Current Course Page(Faculty) ........ 26

Figure 18. Edit Available Time Page.............. 27

Figure 19. Change Password Page(Faculty) ............. 28

Figure 20. Result Page(Faculty) ...................... 29

Figure 21. Login Page(Administrator) ................. 30

Figure 22. Administrator Home Page................ 31

Figure 23. Add New Faculty Page................... 32

ix
Figure 24. Delete Faculty Page 33

Figure 25. Edit Current Course Page.................. 34

Figure 26. Add New Administrator Page................ 35

Figure 27. Delete Administrator Page ................. 36

Figure 28. Edit Personal Information Page


(Administrator) ............................ 37

Figure 29. Change Password Page(Administrator) ...... 38

Figure 30. Result Page(Administrator) ................ 39

Figure 31. Login Page............ 41

Figure 32. Student Home Page.......................... 42

Figure 33. Student Make Appointment Page............. 43

Figure 34. Student Cancel Appointment Page .......... 44

Figure 35. Student Edit Personal Information Page .... 45

Figure 36. Change Password Page....................... 46

Figure 37. Faculty Home Page........................... 47

Figure 38. Faculty Check/Cancel Appointment Page ..... 48

Figure 39. FacultyEdit Person Information Page ...... 49

Figure 40. Faculty Edit Current Course Page ........ 50

Figure 41. Faculty Edit Available Time Page.......... 51

Figure 42. Administrator Home Page................... 52

Figure 43. Administrator Add New Faculty Page ....... 53

Figure 44. Administrator Delete Faculty Page ........ 54

Figure 45. Administrator Edit Current Course Page .... 55

Figure 46. Administrator Edit Personal Information


Page........................................ 56

x
Figure 47. Administrator Add New Administrator
Page........................................ 57

Figure 48. Administrator Delete Administrator Page ... 58

Figure 49. Request Password Page ...................... 59

Figure 50. Create New User Page....................... 60

xi
CHAPTER ONE

INTRODUCTION

Appointment System (AS) is an on-line system that

allows students to make appointments through the internet.

In AS, information about faculty's available time is

presented. Students can browse through all the information.

Since the information varies with faculty, all possible

information will be presented in an orderly fashion to

account for all the different possibilities. Students can

log on and check the information from time to time. After

students make appointments, thi's system emails the

appointment details to the students and faculty

automatically.

1.1 Purpose of this Project

Students who want to discuss anything with faculty

usually have to make an appointment first. When we want to

make an appointment, we always send an email to the faculty

and then wait for the reply. It is always need to write more

than one email for students and faculty to have an

appointment. If there is an appointment system to let

students make appointment, then it will save both faculty

and student time. The Appointment System offers all the CSCI

students to make appointments of any CSCI faculty.

1
1.2 Project Products

The AS project led to the following products:

• Implementation of AS: a working web-based online

application system with JSP and MySql database,

which achieves the specific needs of AS.

• System documentation: a project documentation,

which is available with system design,

specifications, project implementation and testing

reports.

2
CHAPTER TWO

SYSTEM REQUIREMENTS

The Appointment System (AS) project aims to be friendly

and convenient for students. The components of AS are a web

server, a database server, and a client browser. Student

browsers use the Internet (TCP/IP) to make appointments

through the web server under HTTP/HTTPS. The web server

connects to the email server with TCP/IP in order to send or

retrieve email through SMTP. The web application connects to

the database via TCP, and accesses database functionality

through JDBC.

In order to choose implementation components conforming

to the criteria of the shareware standard, this project uses

Tomcat as web server, and MySQL as database server. The

other components, such as the web browsers, are dependant on

which kind of browsers the students use. The email server

was provided by the'ISP (Internet Service Provider).

The architecture of this project is shown below in

Figure 1.

3
Figure 1. System Deployment Diagram (UML 1.0)

2.1 System Interfaces

The Appointment System (AS) is a 3-tier distributed

architecture that displays the user interface in a web

browser using HTML. The middle tier is a Java Servlet

(automatically created from JSP pages) that handles requests

from the client browser and provides access to the third

tier via JDBC, which is a MySQL database. The HTTP server is

provided by Apache Tomcat, which also implements JSP.

4
2.2 Hardware Interfaces

Appointment System will not implement hardware

interface directly. However, it will trust the underlying

operating system (Windows, NT, ME, XP, Linux, UNIX, MAC) to

handle the hardware interfaces.

2.3 Software Interfaces

As explained above, there will be two different

software interfaces depending on the type of access that the

user is demanding or the function that the user wants the

software to perform. The reasons that why I choose the

software interfaces used in this project are summarized as

following:

• Operating system (Gentoo Linux): a special flavor

of Linux that can be automatically optimized and

customized for just about any application or

needed.

• Web Server/Container (Jakarta Tomcat Server):

Tomcat server is a Java based web application

container that was created to run servlets and

Java Server Pages (JSP) in web applications.

• JAVA 2 Platform, Standard Edition (J2SE): A

Java-based, runtime platform that provides many

features for developing web-based Java

5
applications, including database access (JDBC API)

interface technology, and security for both local

network and Internet use and it's required in the

Tomcat JAVA Container.

• Database Server (MySQL Server): MySQL is open

source database software, and it's popular. MySQL

also provides a JDBC driver to be easily connected

from a JAVA program.

• Java Database Connector (JDBC); MySQL connector.

• Email package: JavaMail 1.3.

• Languages: HTML/JAVA/JSP/XML.

2.4 Security

In order to make sure the validity and the safety, I

use the SSL (Secure Sockets Layer) between the web browser

and the web server, and use a Web Service password between

the web applications and Web Service. SSL is used to make

sure that the messages transmitted between the users and the

web applications will not be changed or be stolen. SSL will

maintain the security and the completeness. The "s" in

"https" stands security for http over SSL. The Web Service

password is passed into the Web Service system with a

configuration file ([Link]). Each time the web applications

access the Web Service, it supplies the password.

6
CHAPTER THREE

DATABASE DESIGN

The database server used by Appointment System is

MySQL. Once the database has been created using MySQL, all

interfacing with the database will be done from Java. One

must note that all interfaces as seen by the users of the

system will be through pages with HTML forms generated from

JSP.

3.1 Data Analysis

The data for designing and implementing the schema of

the database depends on seven entities: studentinfo table

facultyinfo table, administratorinfo table, checklogin table

current_course table, availabletime table and app_taken

table. The tables of facultyinfo, current_course,

availabletime and app_taken are connected by the relation of

faculty's last name. The tables of studentinfo and app_taken

are connected by the relation of students' first name.

3.2 Database Schema Conceptual


Model - Entity Relational Schema

All the entities and relations used in Appointment

System are described in the ER Diagram in Figure 2.

7
Figure 2. Appointment System Entity Relationship Diagram

3.3 Database Schema Logical


Model - Relational Schema

[Link] model ER diagram maps into the following

relational table design. In the following tables (underlined

fields indicate the primary key).

8
Studentinfo
username fname lname email

Facultyinfo
username fname lname email office num

Administratorinfo
username fname lname email

Availabletime
faculty day start hour start min
end Hour end min

checklogin
username password ID

app taken
faculty student date time

current course
faculty course room num classday classtime

Figure 3. Appointment System Database Relational Schema

3.4 Data Type and Detail

The logical model establishes the following detailed

design in MySQL database. The following tables describe data

type, length, primary key, null or non-null keys, and extra

information, such as auto_increment .

9
Table 1. Structure of Table Studentinfo

Field type null key default extra


username varchar(50) PRI
fname varchar. (20)
lname varchar(20)
email varchar(50)

Table 2. Structure of Table facultyinfo

Field type null key default extra


username varchar(50) PRI
fname varchar(20)
lname varchar(20)
email varchar(50)
Office num varchar(10)

10
Table 3. Structure of Table administratorinfo

Field type null key default extra


username varchar(50) PRI
fname varchar(20)
lname varchar(20)
email varchar(50)
Office num varchar(10)

Table 4. Structure of Table checklogin

field Type null key default extra


username varchar(50) PRI
password varchar(50)
ID varchar(2)

Table 5. Structure of Table current course

Field type . null key default extra


faculty varchar(20) FOR
course varchar(20) PRI
room num varchar(10)
classday varchar(10)
Classtime varchar(30)

11
Table 6. Structure of Table availabletime

Field type null key default extra


faculty varchar(20) PRI
day varchar(2)
start hour varchar(5)
start min varchar(5)
end hour varchar(5)
end min varchar(5)

Table 7. Structure of Table app_taken

Field type null key default extra


Faculty varchar(20) PRI
student varchar(20) PRI
date varchar(20)
time varchar(10)

3.5 Page Flow Models

Page flow model shows the process of the pages, by

reading these diagrams, you can easily understand where the

page goes, and where it from.

The square in the upper section of the diagram stands

for the link or button to other page. The lower section

stands for the content, the form field of the page.

12
3.5.1 Student

Figure 4 represents the Login Page which is used by the

student, if the student successfully logins the system, the

student will be redirected to the Student Home Page; if not,

the student will stay at the Login Page. If the student

forgets his/her password, the student can go to the Password

Page to request the password. New students can go to the New

User page to create a new account.

Figure 4. Login Page (Student)

Figure 5 represents the Student Home Page which is used

by students. Students can choose which function they are

going to use, or logout to the Login Page.

13
Figure 5. Student Home Page

Figure 6 represents the Request Password Page which is

used by students. Students can request their password

through this page, or go to other pages through other links.

14
Figure 6. Request Password Page

Figure 7 represents the Create New User Page which is

used by new students. New students can create new accounts

through this page, or go to login page by clicking the login

link.

15
Figure 7. Create New User Page

Figure 8 represents the Make Appointment Page which is

used by students. Students can make appointments through

this page, or go to other pages through other links.

16
Student home

Figure 8. Make Appointment Page

Figure 9 represents the Check/Cancel Appointment Page

which is used by students. Students can check and cancel

their appointments through this page, or go to other pages

through other links.

17
Student home

Cancel form
field

Figure 9. Check/Cancel Appointment Page (Student)

Figure 10 represents the Edit Personal Information Page

which is used by students. Students can edit their personal

information through this page, or go to other pages through

other links.

18
Figure 10. Edit Personal Information Page (Student)

Figure 11 represents the Change Password Page which is

used by Students. Students can change their password through

this page or go to other pages through other links.

19
Figure 11. Change Password Page (Student)

Figure 12 represents the Result Page which is used by

students. Students can see the result through this page and

go to other pages through other links.

20
Figure 12. Result Page (Student)

3.5.2 Faculty

Figure 13 represents the Login Page which is used by

the faculty, if the faculty successfully logins the system,

the faculty will be redirected to the Faculty Home Page; if

not, the faculty will stay at the Login Page. If the faculty

forgets his/her password, the faculty can go to the Request

Password Page to request the password.

21
Figure 13. Login Page (Faculty)

Figure 14 represents the Faculty Home Page which is

used by faculty. Faculty can choose which function they are

going to use, or logout to the Login Page.

22
Figure 14. Faculty Page

Figure 15 represents the Check/Cancel Appointment Page

which is used by faculty. Faculty can check and cancel

appointment through this page, or go to other pages through

other links.

23
Figure 15. Check/Cancel Appointment Page (Faculty)

Figure 16 represents the Edit Personal Information Page

which is used by faculty. Faculty can edit personal

information through this page, or go to other pages through

other links.

24
Figure 16. Edit Personal Information Page (Faculty)

Figure 17 represents the Edit Current Course Page which

is used by faculty. Faculty can edit their current course

through this page, or go to other pages through other links.

25
Figure 17. Edit Current Course Page (Faculty)

Figure 18 represents the Edit Available Time Page which

is used by Faculty. Faculty can edit their available time

through this page, or go to other pages through other links.

26
Figure 18. Edit Available Time Page

Figure 19 represents the Change Password Page which is

used by faculty. Faculty can change their password through

this page or go to other pages through other links.

27
Figure 19. Change Password Page (Faculty)

Figure 20 represents the Result Page which is used by

faculty. Faculty can see the result through this page and go

to other pages through other links.

28
Figure 20. Result Page (Faculty)

3.5.3 Administrator

Figure 21 represents the Login Page which is used by

the administrator, if the administrator successfully logins

the system, the administrator will be redirected to the

Administrator Home Page; if not, the administrator will stay

at the Login Page. If the administrator forgets his/her

password, the administrator can go to the Password Page to

request the password.

29
Figure 21. Login Page (Administrator)

Figure 22 represents the Administrator Home Page which

is used by the administrator. The administrator can choose

which function they are going to use, or logout to the Login

Page.

30
Figure 22. Administrator Home Page

Figure 23 represents the Add New Faculty Page which is

used by the administrator. The administrator can add new

faculty through this page, or logout to the Login Page.

31
Figure 23. Add New Faculty Page

Figure 24 represents the Delete Faculty Page which is

used by the administrator. The 'administrator can delete

faculty through this page, or logout to the Login Page.

32
Figure 24. Delete Faculty Page

Figure 25 represents the Edit Current Course Page which

is used by administrator. The administrator can edit current

course for faculty through this page, or logout to the login

page.

33
Figure 25. Edit Current Course Page

Figure 26 represents the Add New Administrator Page

which is used by the administrator. The administrator can

add new administrators through this page, or logout to the

Login Page.

34
Figure 26. Add New Administrator Page

Page Figure 27 represents the Delete Administrator Page

which is used by the administrator. The administrator can

delete administrators through this page, or logout to the

Login Page.

35
Figure 27. Delete Administrator Page

Figure 28 represents the Edit Personal Information Page

which is used by administrator. The administrator can edit

personal information through this page, or logout to the

login page.

36
Figure 28. Edit Personal Information Page (Administrator)

Figure 29 represents the Change Password Page which is

used by the administrator. The administrator can change

his/her password through this page, or logout to the Login

Page.

37
Figure 29. Change Password Page (Administrator)

Figure 30 represents the Result Page which is used by

the administrator. The administrator can see the result

through this page, or logout to the Login Page.

38
Figure 30. Result Page (Administrator)

39
CHAPTER FOUR

PROJECT IMPLEMENTATION

4.1 User Interface Design

User interfaces are established on the web and

therefore the system can use all user interface features

provided by the web browser, including plug-ins and any

added functionality that the browser may possess. Any

standard web browser, such as Microsoft Internet Explorer or

Netscape Navigator/Communicator can provide the user

interface to the system. The user interfaces will be

generated dynamically on the server side using JSP. These

user interfaces will provide information tailored to the

user who is logged in.

4.2 Graphical User Interface and Description

4.2.1 Login Page

This page is the starting page for all people (Student,

Faculty and System Administrator) who are going to use this

software product. Faculty and Administrator must be created

by System Administrator. Students can click on the New User

link in this page to create an account. All users can log in

by providing a username and a password on this page. The

login jsp will verify the username and password. If it is

40
correct, it forwards to different page base on the "ID" of

each user.

: Fite Edit View Favorites Toots Help <7/?

: Ltnfc ^CustomizeLinks i^] Free Hotmail ij?] Inbox @ Windows 5E> Windows Marketplace Windows Media tStT 40LMLf3XtfIfWOxAZojjD$$Z
: Google - P [v|| {Gj Search ’ I §} 97 blocked ' *$F Check ’ ■< A'Jtobnk > CjAutoFil g Options

i ©Back ’ © ' 0 @ ’'^Search ^Favorites J ’ Q ®

: Address httpsi//localhost:8443/[Link] iv| Go :

yd

Welcome to the Appointment System


Please login:

Username:|l I

Password: | I

| Submit Ifpraet your password?

New User

Done_________________________________________________ ______________________________________________________________________________ I____________ • (f?) Local intranet

Figure 31. Login Page

4.2.2 Student Home Page

On this page, there are four pages that students can

choose.

41
Figure 32. Student Home Page

4.2.3 Student Make Appointment. Page

On this page, students can pick one faculty to see the

information of his/her•available time and then make the

appointment. After the student making the appointment, the

system will send emails [Link] student and the faculty.

42
w*] student choose professor- Microsoft Internet Explorer - l~
: Fife Edit View Favorites Tools Help I

: LWs jg£] Customize Links Free Hotmail Inbox Windows ?C> Windows Marketplace Windows Media ?§) tjfH (•£) 40LMLf3XtflfW0xA2oj)D$|Z

: Google- | [v|; [Q] Search ' ■’ 97blocked I Check - AutsLink ’ ‘^AitoFia [^Options c?
| ©Batk ’ © • 0 S 'w’Favoritw ■© S 0 • @ • □ .&'

: Address p^https;//localhost:8443/$tudent/$[Link] (v| §3 Go :

Appointment System

Please choose the faculty; | David Turner [v|

| Submit |

Student home

^Done 'Local Mr anet

Figure 33. Student Make Appointment Page

4.2.4 Student Cancel Appointment Page

This page will list the details of the appointments for

the students. Students can click the "cancel" to cancel

appointments.

43
canc?^appbFnrment - MicrosofLlnternet Explorer
: File Edit View Favorites Tools Help
: Linte (?) Customize Links Free Hotmafl Inbox @ Windows Windows Marketplace Windows Meda SJcf (§£] 40LMLf3XtfIfW0xAZoj)D$$Z

; Google »| [vlj [G] Search ’ 97blocked J Check ’ '•< Autdink '^JAutoFiil ^Options $

I ©** • Q ■ 0 ® ® IP*-* ☆'=»-*“ < B ® •O


: Address |ffi| [Link]
13 SI50
Appointment System

Here are your appointments.

^Faculty j Date ,|Tinie ^Cancel,


^Turner [2006-01-24;jl5:15 [cancel
[ turner 12006-01-30 [13:15 [cancel

Student home

! Sjj Eocal intranet

Figure 34. Student Cancel Appointment Page

4.2.5 Student Edit Personal Information Page

On this page, students can edit personal information.

44
: File Edit. View Favorites Tools Help >

; Unlis Customize Links i^) Free Hotmail .^| Inbox Windows Windows Marketplace Windows Meda feTcJ 40LMtf3Xtf IfW0xAZofiD$$Z
: Google ■ | [v]j [Qj Search - I $ §197 blocked • Check < Autotink • -gAutoFfl ^Options

1 @B«k • © ■ 0 g (g| • jD5earch ■^■[Link] <gj I >7 • .

Address |^| https:/fbcalhost:8443/student/stuedkfl~[Link]


. MEBsq J;
Hi
Appointment System

Please edit your information.

|| EirstName i| Last Name (j Email Address


[|Aaron” ■jjChen 'p^iingE^holrnaii com

{ Submit^ |[ Reset |

Student home

4.2.6 Change Password Page

This page can let users to change personal password.

After users changing the password, the system will send the

email to users with the new password.

45
: File Edit View Payot ites Tools Help 1 [

i Links Customize Links 4?J Free Hotmail Inbox Windows IS Windows Marketplace Windows Media W @ 40LT4Lf3XtftfW0xAZoj)D$$Z

: Google y| [v|j Search • j §3 97 blocked 1 Check • \ AutoLirJ; - ’CjAutoFd ^Options

j ©Back ’ © • @ © C/j/Useotch ^Favorites 0 ’ □ !

: Address |4|1 htlps://localhost:84S3/stijdent/sluchanQepass.jsp_______________________________ _______________________________________________ ______________ ______ jv| [53 Go ]

Appointment System

Please enter your password:

New password: | |

Retype password/

| Submit ][ Reset }

Student home

a) Done I (§ | ’£3 Local intranet'

Figure 36. Change Password Page

4.2.7 Faculty Home Page

On this page, there are five pages faculty can choose.

46
^ffeclty home page - Microsoft Internet Explorer

: File Edit View Favorites Tods Help


: Ltnl'S Customize links Free Hotmail Ip] Inbox ,§] Windows ^Windows Marketplace Windows Media 40LMLf3XtflfW0xAZojjD|fZ

: Google-| |v|, |G] Search • §1 103 blocked '*5? Check ’ ' \ Autounk ‘CjAutoFLl ^Options cP

: @ Back - @ - [«] [5] . Address |i^[Link] )v| Go :

Appointment System

What do you want to do?

Check/Cancel appointment

Edit personal information

Edit current course

Edit available time

Chanae personal password

Loqout

(gjDone • ‘ Local intranet , :

Figure 37. Faculty Home Page

4.2.8 Faculty Check/Cancel Appointment Page

This page lets faculty to choose showing all

appointments, appointments in a specific range or the

appointments on one specific day. Once the page shows the

appointments, faculty can cancel any appointment they want.

47
Figure 38. Faculty Check/Cancel Appointment Page

4.2.9 Faculty Edit Personal Information Page

On this page, faculty can edit personal information.

48
SWcWyedit personal information- Microsoft internet Explorer
' ~' ' Oh®
: File Edit View Faverites Tools Help
: Links 4?) Customize Links ifej Free Hotmail Inbox Windows 12 Windows Marketplace Windows Media 40LMLf3XlftfW0xAZojjD$$Z

: Googk-j FI!OSea,ch ' , $9 §103 blotted ; Check ’ AutoUr* 'Q AutoFifl Options zP
■ Csl ' |^| |£*1 G'l) j : Address |^|http5:/flocalhost:84-13/facu!ty/faceditinfo.j5p Fl S<*>
Appointment System

Please edit your information.

|| First Name ([ Last Name | Email Address |Office Number


j||DAViD| ;j|TURNER -jliurner@[Link] ||jbh-345 |

| Submil |[ Reset |

Faculty home

Logout

Done ’ 5si, Local intranet

Figure 39. Faculty Edit Person Information Page

4.2.10 Faculty Edit Current Course Page

On this page, faculty can edit or delete their current

courses. Faculty also can add new current courses by

clicking the link.

49
i facility edit current course - Microsoft Internet Explorer
|i Me EcJt Visw Favorites Toe's Help
, % |.
Links |§} Customize Links Free Hotmd |g[) Inbox fS) Windows ^Windows Marketplace iS’j Windows Media £2 e? 40LMlf3XtfIfWOxAZojjD$$Z

Google’j M| S3 Search ’ [§h I03blocked , Check ’ \ Autoimk '^AutoFfl ^Options <#>

© Back • © " @ ® '


Address http$://loc3lhost:8413/facuky/faceditcour$[Link] H S3Go h
Appointment System

Here are your current courses.

| Course ')] loom Number'|Class Day | Class Time ' EditjDelete


JCSCEOlf JBH-378 MW [14:00-16:00 edit I delete
.|CSCJ333.[’ JBH-919 L„MW :|16:00-17:00 edit | delete,
ICSCI777| JBH-788 JMW '|ll:00~12:00i edit1) delete*
'|CSCI3331 JBH-888 TR [11:00-13:00. edit [delete!

Add new course

| Faculty home

I Logout

J.^Done ■ I (£| local intranet

Figure 40. Faculty Edit Current Course Page

4.2,11 Faculty Edit Available Time Page

On this page, faculty can edit or delete their

available times. Faculty also can add new available times by

clicking the link.

50
Figure 41. Faculty Edit Available Time Page

4.2.12 Administrator Home Page

On this page, the system administrator can click the

links to add and delete faculty, edit faculty current

courses, add and delete new administrators, edit personal

information or change personal password.

51
Figure 42. Administrator Home Page

4.2.13 Administrator Add New Faculty Page

On this page, the system administrator can edit

information to add new faculty.

52
.: File Edit View Favorites Tools Help . .. , j

: Links l^| Customize Links Free Hotmail Inbox ^Windows Windows Marketplace Windows Media STS’ 4(XJylLf3XtfIfW0xAiOjp$|Z j

,; GOOgle-1 [v,|j Seaich - ^97 blocked j Check » *\ AutoLink - *QAutoFt!l ^Option? ;

| ©Back ’©’00 (g)J/)Search ^Favorites <$| jg- gg ’-Q ‘ .'

’: Address |lf^ [Link] p/| Go .■

" • Appointment System ~

Please edit the information of the new faculty. ;

First Name: ' " 4


" " • ‘

Last Name: J j • , , ■

Email Address: [ ' ■

Office Number. | |

| Submit || Reset |

Administrator home

Porte ' _______ ~ _ ............................ .. .... _______ I i. ! i’ ?Lia) '__________ [

Figure 43. Administrator Add New Faculty Page

4.2.14 Administrator Delete Faculty Page

On this page, the system administrator can delete the

faculty who is going to leave the campus.

53
[■£j‘deleteyprofessora-Microsofulnternfit Explorer -r *».
File. Edit View Favorites Tools Help

Links Customize Links ^FreeHotmaJ (§) Inbox ^Windows 12 Windows Marketplace (§} Windows Media 10LMLf3XtfLfW0xA2ojjD$$Z
Google’[ 11 [vlj -Search ’ ] |§l97blocked [ ^r Check AutoQnk - ^AutoFi!) ^3 Options fl

©Back © ’ 0 © >o)]"j3s8afch ! (B’ §h IS ’ D f


Address [(§] https!/jtocahost:8443/acfowfetrator/[Link]

Appointment System

Please choose the faculty: | David Turner |v|

[ Submit || Reset j

Administrator home

____________________________ ±i

Done [9|1 Local Intranet i

Figure 44. Administrator Delete Faculty Page

4.2.15 Edit Faculty Current Course Page

On this page, the system administrator can pick a

faculty to add and edit current courses.

54
•* ~ "F‘
£j admihistartor pick faculty - Microsoft Internet Explorer
: File Edit View Favorites Tools Help
Iriks Customize Links Free Hotmail Spinbox Windows Windows Marketplace Windows Media ;§f| isTuf 40LMLf3XtftfW0xA2ojjD$$Z

Google [vh ’K?) Search • 1 §197 blocked j Check ’ \ AuteLink • '■~j AutoFil £3 Options &

Back » - [~X*] [g?| Address https;//localhost:8443/adminl$trator/ad^[Link]


Els* 1
Appointment System

Please choose the faculty: I DAVID TURNER { v|

[ Submit /{Reset j

Administrator home

(S’} Done I f=i' *v3 Local intranet I

Figure 45. Administrator Edit Current Course Page

4.2.16 Edit Personal Information Page

On this page, the system administrator can edit his/her

personal information.

55
Figure 46. Administrator Edit Personal Information Page.

4.2.17 Add New Administrator'Page -

On this page, the system administrator can add new

administrators. ,

56
Figure 47. Administrator Add New Administrator Page

4.2.18 Delete Administrator Page

On this page, the system administrator can delete

administrators.

57
^C&d^te'7ecuUy.' Microsoft lnterne?E^jorer? ''‘[Link]'’

Fife Edit View Favorites Tods Help


Links Customize links Free Hotmail Inbox {^Windows Windows Marketplace ^Windows Media 40LMLf3Xtftfw6xAZojjD$$Z

Google’[ [y|[ O Search ’ | §1 103 blocked. | Check ’ AutoLink * AutoFiil ^Options

@B«k - ©I ’ @ ® ifil| ■; Address ___________ 13 g3*


Appointment System

Please choose the administrator |[MpNIGA [

| Submit ]| Reset |

Admirnstraior home

ig) Done I jsl i Local intranet

Figure 48. Administrator Delete- Administrator Page

4.2.19 Request Password Page

On this page, users provide their ID and email to ask

their password. The Appointment System will send an email

with new password to the email address which the user

entered.

58
[^^fpr^t^p^swn^^RicnisnftTlninrnBWxpio^^^a
■—oai
Fie £dt View Favorites Tools Help
Links Customize Links Free Hotmail Inbox (^Windows 13. Windows Marketplace @ Windows Media ;§) @ 40LMLf3XtfIfW0xAZojjD$|Z
Google| |v|| [G] Search ’ * $2 97 blocked ] Check ’ Autolink - ^AutoFii [^Options <&

©B.A ' © ’ 0 @ ☆ 8 '□ '


Address https!//localhdst;8443/[Link] _________________________________ S EJ®> i;;
Appointment System

Select your IDj Student [ v]

Please enter your email address^”"

[ submit |[ Reset |

Login

I j^t^LocalJritr&net ________ ]

Figure 49. Request Password Page

4.2.20 Create New User Page

New students can -Create new accounts through this page.

59
Figure 50. Create New User Page

60
CHAPTER FIVE

SYSTEM VALIDATION

To validate a system, just having an understanding of

computers and software systems is not adequate. It is

essential to fully understand the process and the equipment

that is being validated. Validation testing is a concern

that overlaps with integration testing. Ensuring that the

application fulfils its specification is a major criterion

for the construction of an integration test. Validation

testing also overlaps to a large extent with system testing,

where the application is tested with respect to its typical

working environment.

5.1 Unit Test

The Unit test presents the basic level of testing on

all the individual components. The individual components

include the object, the class, and the program in the

system. The following table shows the results of the unit

test for the Appointment System.

l
i
I

61
Table 8-. The Un it Test Results

Unit Test | Tests Performed Results


Login page • Check the correctness of the displayed
data in JSP included pages components.
• Verify the login function working OK
properly and get the error message
properly.
Student home • !Check the correctness of the displayed
page 1 data. OK
• [check the links working properly.
Student make • [Check the correctness of the displayed
appointment 'data.
page • [check the entire selection list, buttons,
OK
and links working properly.
• 'Check JavaScript function working
[properly.
Student • [check the correctness of the displayed
cancel [data.
appointment • jverify all links working as expected. OK
page • Verify the page can get the error message
[and work properly by t'he message.
Student edit • 'check the correctness of the displayed
personal 'data.
information • ^Verify all links and buttons- working as
page jexpected.
OK
• .Test the correctness of the validation
'for all input data.
• Verify the page can get the error message
knd work properly iby the message.
change • bheck the correctness of the displayed
password page data.
• Verify all links and buttons working as
expected.
OK
• Test the correctness of the validation
tor all input data.
• Verify the page can get the error message
and work properly by the message.
Faculty home • Check the correctness of the displayed
page data.
• Verify all links working as expected. OK
• Verify the page can get the error message
and work properly by the message.
Faculty • Check the correctness of the displayed
check/cancel data.
i
appointment • Verify all links and'..buttons working as
page expected. OK
• Tjest the correctness of the validation
flor all input data.
• Verify the page can get the error message

62
1
Unit Test j Tests Performed Results
Faculty edit • Check the correctness of the displayed
personal data.
information • Verify all links and buttons working as
page expected.
• Test the correctness of the validation OK
for all input data.
• Verify the page can get the error message
and working properly by the message.
• Verify the form is generated correctly.
Faculty edit • Check the correctness of the displayed
current data.
course • Verify all links working as expected. OK
• Verify the page can get the error message
and working properly by the message.
Faculty edit • Check the correctness of the displayed
available data.
time page • Verify all links working as expected. OK
• Verify the page can get the error message
and working properly by the message.
Administrator • Check the correctness of the displayed
home page data. OK
• Verify all links working as expected.
Administrator • Check the correctness of the displayed
add faculty data.
page • Check the entire buttons and links
working properly. OK
• Verify all links and buttons working as
expected.
• Verify the form is generated correctly.
Administrator • Check the correctness of the displayed
delete data.
faculty page • Check the entire buttons and links OK
working properly.
• Verify all links and buttons working as
expected.
Administrator • Check the correctness of the displayed
edit faculty data.
current • Verify all links working as expected. OK
course
• Verify the page Can get the error message
and working properly by the message.
Administrator • Check the correctness of the displayed
edit personal data.
information • Verify all links and buttons working as
page expected.
OK
• Test the correctness of the validation
for all input data.
• Verify the page can get the error message
and working properly by the message.

63
Unit Test Tests Performed Results
• Verify the form is generated correctly.
Administrator • Check the correctness of the displayed
add data.
administrator • Check the entire buttons and links
page working properly. OK
• Verify all links and buttons working as
expected.
• Verify the form is generated correctly.
Administrator • Check the correctness of the displayed
delete data.
administrator • Check the entire buttons and links OK
page working properly.
• Verify all links and buttons working as
expected.
Create new • Check the entire buttons and links
user page working properly.
• Check the entire selection list, buttons,
and links working properly.
• Check JavaScript function working OK
properly.
• Test the correctness of the validation
for all input data.
• Verify the page can get the error message
and working properly by the message

5.2 Subsystem Testing

Subsystem testing is the next step up in the testing

process where all related units from a subsystem does a

certain task. Thus, the subsystem test process is useful for

detecting interface errors and specific functions. Table 9

show subsystem test results- in detail.

64
Table 9. Subsystem Test Results

Subsystem Tests Performed Results


Make • Make sure the time that the student
appointment chooses has not taken by other students.
OK
Subsystem • Make sure students choose the time which
is faculty's available time.
Check/ Cancel • Make sure the subsystem list all the
Subsystem appointments.
• Make sure all the columns are printed
correctly. OK
• Make sure after canceling the
appointment, the time will be released
for other students.
Approve • Make sure each column is listed
Subsystem correctly.
• Make sure students and faculties will OK
receive the confirmation letter after
appointments being made.
Create User • Check if the subsystem can detect the
Subsystem error of creating of the user that exists
in the subsystem. OK
• Make sure the subsystem can automatically
assign the substitute.
Modify User • Check if users can update their personal
Subsystem information properly.
• Verify if the subsystem shows the page OK
properties correctly when the users are
students, faculties or the administrator.
Delete User • Verify the subsystem can delete a user
OK
Subsystem account properly.
Security • Verify the page will be redirected to
Login page when the user is not OK
authenticated.

5.3 System Test Plan

System test plan is a test process that uses real data,

which the system is intended to manipulate, to test the

system. First of all the subsystem will be integrated into

65
one system. Then test the system by using a variety of data

to see the overall results.

The steps for the system test plan are showed in the

following table:

Table 10. System Test Results

System Test Results


1. Install the Appointment System into server. OK
2. Start up all services such as JSP engine, MySQL OK
database engine.
3. Running testing by using real data on all forms OK
and reports.

66
CHAPTER SIX

MAINTENANCE MANUAL

The Maintenance Manual provides maintenance personnel

with the information necessary to maintain the system

effectively. The manual provides the definition of the

software support environment, the roles and responsibilities

of maintenance personnel, and the regular activities

essential to the support and maintenance of program modules,

job streams, and database structures. In MTTOS, there are 3

major issues: Software Installation, Variable Installation,

and AS Installation.

6.1 Software Installation

In AS, it requires Gentoo, MySQL, JSDK, and TOMCAT to

run the programs. Following will detail the installation of

those five software systems.

6.1.1 Gentoo Installation

Gentoo is a very good distribution for Linux. Following

are the steps to install Gentoo Linux onto your machine.

1. Download the latest version of the Gentoo

Universal LiveCD operating systems from

[Link]

d/ and burn the iso files into CDs.

2. Install the operating system by inserting CD into

67
the CD-ROM and make sure the bios is set to boot

from CD.

3. The machine will startup via CD-ROM and start to

install Gentoo.

4. Check the date and time, and correct if needed.

Set the root password. Configure networking. Start

sshd. Exit shell running on local console.

5. Setup the environment and install the components,

then Gentoo Linux is installed.

6.1.2 Install Java 2 Platform, Standard Edition

To install J2SDK in your machine under the Gentoo Linux

System, you only have to type the command:

emerge jdk

Then the system will automatically finish the

installation.

6.1.3 Install Tomcat

Following are the steps to install Tomcat onto your

machine.

1. Run emerge tomcat.

2. Run rc-update add tomcat5 default.

3. Run chmod 755 /opt/tomcat5

4. Restart Tomcat and type [Link] into

the browser to test that your system works OK.

68
6.1.4 MySQL Installation

The database system in Vacation System is MySQL. To

install MySQL, follow the following steps:

1. Run emerge mysql.

2. Initialize the data directory and create the MySQL

grant tables.

mysql_install_db --user=mysql

3. Add to default run-level, and start the server.

rc-update add mysql default

/etc/init.d/mysql start

4. Remove accounts without passwords.

mysql -u root -p

mysql> use mysql;

mysql> delete from user where password =

mysql> flush privileges;

6.2 System Variables

In this system, we don't have to change any environment

variables in the Linux system .and [Link] in Tomcat

server configuration directory.

The default configuration for the MySQL database is

sufficient.

6.3 Appointment System Installation/Migration

69
1. All the JSP programs and HTML programs are stored

in

/tomcat5/webapps/R00T

/tomcat5/webapps/as

2. All the *.java are stored in

/tomcat5/webapps/ROOT/WEB-INF/classes

3. All the classes are stored in

/tomcat5/webapps/ROOT/WEB-INF/classes

/tomcat5/webapps/vs/WEB-INF/classes

/tomcat5/webapps/ers/WEB-INF/classes

6.4 Backup and Restore

Protecting system information is one of the system

administrator's most import tasks. Backups allow the

administrator to restore a file system to the condition it

was in at the time of the last backup. Backups must be done

carefully and on a strict schedule. The backup system and

backup media must also be tested regularly to verify that

they are working correctly. There are two steps to back up

Appointment System (AS). One is to backup the system files.

The other step is to backup the database which is used by AS.

6.4.1 System Backup

All the system files are stored in the directory

"/tomcat5/webapps/R00T," "/opt/tomcat5/webapps/as," and the

70
subdirectory of its. Thus, in order to backup the system

files, we can compress this directory by using the compress

program "tar" to backup the system files:

tar -cf [Link] /tomcat5/webapps/R00T

tar -cf [Link] /tomcat5/webapps/as

6.4.2 Database Backup

To backup the database system, we use mysqldump command

to backup all database used by the system. The following

command is used to backup the database:

1. Create a subdirectory named backup under the

directory /var/lib/mysql/appointment

2. Using command:

mysqldump —tab=/var/lib/mysql/appointment/backup

--opt appointment

After executing the backup command above, we will

have 14 files: [Link], [Link],

[Link], [Link],

[Link], [Link],

[Link], [Link], [Link],

[Link], app_taken.sql, app_taken.txt,

current_course.sql, current_course.txt.

6.4.3 System Restore

To restore the system file, simply extract the backup

file by using the following command:

71
tar -xzvf [Link] /

tar -xzvf [Link] /

6.4.4 Database Restore

To restore the database needed for the system, go to

the directory /var/lib/mysql/appointment/backup, and execute

the following commands:

1. create database appointment;

2. restore table users from

/var/lib/mysql/appointment/backup

72
CHAPTER SEVEN

CONCLUSION AND FUTURE DIRECTIONS

7.1 Conclusion

All the functions are described as follows: 1) Students

can make appointments with faculty in this system.

2) Students can make appointments online without sending

several emails, which is more efficient. 3) Users get

confirmation letter through the email submitted by server. 4)

Students can log on and get the information of faculty.

By using the internet to make appointment, students and

faculty can save so much time. Students do not have to write

email to faculty to ask the available time and wait for the

reply. Faculty does not have to check their schedule and

write emails to students. Students can log on the

Appointment System to check the available time and make

appointments anytime.

7.2 Future Directions

The next step is to make this application as part of

the CSCI Department website. This implies analyzing the

connect site and integrate the new function with it.

73
REFERENCES

[1] "Beginning JSP Web Development." Jayson Falkner. August


2001.

[2] IEEE Recommended Practice for Software Requirements


Specifications (IEEE Std 830-1993).

[3] "JavaScript: The Definitive Guide 4th edition." David


Flanagan. O'Reilly & Associates, December 2001.

[4] "JavaServer Pages." Larne Pekowsky. April 2000.

[5] "Java Servlet Programming Second Edition." Jason Hunter


and William Crawford. O'Reilly and Assoicates, 2002.

[6] "JavaSpaces Principles, Patterns, and Practice." Eric


Freeman. Novermber 1999.

[7] SSL 3.0 Specification.


[Link] November 1996.

[8] "The Java Programming Language Second Edition." Ken


Arnold and James Gosling. February 2000.

[9] "UML Distilled, A Brief Guide to Standard Object


Modeling Language", Fowler & Scott, 1999.

[10] "A Web Services Primer." Venu Vasudevan,


[Link]
ces/[Link], April 2001.

[11] "What is Service-Oriented Architecture?" Hao He,


[Link]
September 2003.

[12] "JAVA and XML 2nd Edition" Brett McLaughlin. O'Reilly &
Associates, January 2002.

[13] "XML Web Services Basics" Roger Wolter. Microsoft


Corporation, December 2001.

74

You might also like