Design and Implementation of Web-based OpenLaboratory Management Information System
Cui Xiuli, Yao Lan , Wang Fengwei
College of Information Science and Engineering
Northeastern University, NEU
Abstract—In order to improve the utilization ratio of laboratory
devices, according to the actual requirements of laboratory
management, a Web-based open-Laboratory Management
Information System is designed and implemented based on B/S
architecture and JSP + Servlet + JavaBeans mode. By this
system, student users can browse introducing information, query
experiment schedule, reserve open experiments, self-drafted
experiments and query experiment results. Through system
testing, the system is proved to improve the utilization ratio of the
laboratory devices as anticipated, and it is suitable to be
popularized in college laboratories.
Keywords-component; Laboratory Management Information
System; Web; B/S
With the increasing number of students and the growing
needs of experiments, the problem of laboratory devices
utilization ratio arises. In order to improve the utilization ratio
of the laboratory devices and meet the requirements of
experiment, a convenient and effective management
information system is need urgently.
Therefore, a Web-based Open-Laboratory Management
Information System is designed and implemented. The system
is based on B/S architecture and JSP + Servlet + JavaBeans
mode, and MySql is used as the database in the system. By this
system, student users can query experiment schedule, reserve
open experiment, query experiment result and so on; and
laboratory technician users can manage users’ information,
manage experiment courses, grade experiment, and publish
messages and so on.
II. SYSTEM DESIGN
A. Technique Framework
The system is designed and implemented based on JSP +
Servlet + JavaBeans mode. The JSP + Servlet + JavaBeans
mode makes full use of the advantages of JSP and Servelet
technology, and it follows the view controller( MVC, that is,
Model-View-Controller), and the main idea of the mode is to
use one or more servlets as controller. As in , the Model
layer implements business logic, the View layer shows the user
interface, and the Controller layer does some controls between
the View layer and the Model layer, therefore the mode
implements better separation of data layer and presentation
B. System Function Modules Design
According to the user roles, the system is divided into
student sub-system and laboratory technician sub-system,
therein the function module diagram of student subsystem is
shown as Fig. 1, and the function module diagram of laboratory
technician sub-system is shown as Fig. 2.
Figure 1. Function module diagram of student sub-system
Managing User's Information Module
Dealing With Reservation Request Module
Managing Experiment Courses Module
Grading Experiments Module
Publishing Messages Module
Figure 2. Function module diagram of laboratory technician sub-system
C Database Design
The management information system involves many data,
and so there are many tables in the database, including student
information table(student), laboratory technician table(admin),
laboratory information table(lab), experimental device
2009 First International Workshop on Education Technology and Computer Science
978-0-7695-3557-9/09 $25.00 © 2009 IEEE
information table(device), course information table(course),
experimental project information table(item), experimental
arrangement information table(arrange), experiment
reservation table(booking), self-drafted experiment reservation
table (self-booking) , experimental remark information table
(score), published messages table(bulletin), and so on.
III. SYSTEM IMPLEMENTATION
A. Technique Application
JSP, which is the abbreviation of Java Server Pages, is a
widely used network development technique. The presentation
layer of the system is composed of dynamically generated
*.JSP page by adding JSP code based on HTML according to
the request of the application layer and the transferred
information. In the system, built-in JSP objects request” and
“session” is widely used.
correctness of input data. When users submit HTML
expressions, some of the information is typed manually rather
than chosen from provided information, so maybe it is not in
accordance with system requirements. At this time, the
the submitted information, including whether necessary
information is filled , whether constrained conditions are met
and so on, if the data can not meet verification, alert() function
will be invocated to give appropriate suggestion, as in .
The main operation of Servelet is to handle the business.
Servelet gets corresponding information from database
according to its function, shows information in the presentation
layer, and handles submitted information by user, and then
calls specific functions to realize its function, as in .
B. Development Environment
The hardware environment of system development:
Database server: a Hasee E6800 computer, 2.4GHz
processor, 512M Memory, 80G hard disk;
Application server: a Hasee E6800 computer, 2.4GHz
processor, 512M Memory, 80G hard disk;
The software environment of system development:
Database management system: MySQL 4.0.22;
Web server: Tomcat 5.5;
Application development tool: Eclipse 3.1 ， MyEclipse
Page development tool: Dreamweaver MX 2004.
C. the Function and Implementation of Each Module
Browsing introducing information module: through this
module，student users view laboratory information, device
information and experiment information. For example, a user
inputs a project name and submits it to the system, and the
system will receive the “name” parameter, query project
information in the database and then display the result in the
Querying experiment Schedule module: the system
supports 3 types of querying: querying by class, querying by
laboratory and combined query, each can be used to output
class schedule, laboratory schedule and deal with user
reservation querying, respectively. The detailed procedure is
similar to the above module.
Reserving open experiments module: after a student user
views experiment schedules, he can reserve open experiments
through this module. The flow chart is shown in Fig. 3.
Get the reservation request
Is available credit hours number greater
than reservation credit hours number
Submit information to
Is reserved class full
Give the suggestion that his
credit hour is not enough
Suggest student applying
Figure 3. The flow chart of reserving open experiment
Reserving self-drafted experiments module：According to
his requirements, the student user can draft experiment
reservation himself, and then submit the experiment content,
necessary device, applied credit hours to the system. After
reasonably organizing, a self-drafted experiment reserving
table will submit to the laboratory technician.
Querying experiments result module: a student user can
query his experiment results after logging in the system, and
the system will search the classes and remarks according to his
user name and then show the result to the user.
Managing users’ information module: through this module,
administrator can add new users, query users’ information,
delete users and update users’ information. On receiving user
requests, the system will search in relevant tables and then
update them accordingly.
Dealing with reservation request module: on receiving
reservation request, the laboratory technician can approve or
refuse it. Once approved, the student’s available credit hours
will be decreased by the requested credit hours. On the other
hand, if refused, the laboratory technician will be prompted to
input the reason that will be sent to the student later. The flow
chart is shown in Fig. 4.
Get the reservation request
Sugget “reservation succeeds”
Display the reason to applier
Input refusing reasons
Figure 4. The flow chart of dealing with reservation request
Managing experiment courses module: the laboratory
technician can add, remove and modify experiment courses.
The system will update relevant tables and report the
prompting message to the laboratory technician.
Grading experiments module: the laboratory technician
selects a student by course, class or student name, grades him
according to his performance and related criteria. The system
stores the results in the experiment result table.
Publishing messages module: the laboratory technician can
publish experiment notices and other messages, and the system
will display them in the login page.
D. Key problems and solutions
1 Tomcat web server
Problem: Tomcat web server’s poor support to Chinese
Solution: set the character set of each page to GB2312.
<% @page charset=”GB2312” %>. In each Servlet, set the
character set of request and response objects to GB2312. for
example: response.setCharacterEncoding(“gb2312”); request.-
setCharacterEncoding(“gb2312”); as in .
2 Servlet determining among multiple forms
Problem: when a servlet has to process multiple forms, it
needs to decide which form it should process.
Solution: append parameters after links, for example,
3 special characters in URL
Problem: when viewing experiment projects, if experiment
course c++ is clicked, ‘+’ can never be received from its URL.
Solution: use the encode() function in URLEncoder class to
convert URL, for example String url = URLEncoder.encode(),
as in .
4 some fields which is not necessary in display but
necessary for processing in website backstage.
Problem: when viewing laboratory device, lab id is not
displayed but it is useful to process in website backstage.
Solution: when the user submits a form, the system uses the
hidden field, such as .
As the number of student grows continuously, traditional
teaching method of experiment courses no longer meet
students’ needs. So in order to increase the utilization ratio of
laboratories, this system is designed and implemented. After
unit test and integration test, the system is proved to have
realized anticipated functions and requirements, and it is
suitable to be popularized in college laboratories.
 Liu, Chien-Hung, “Data flow analysis and testing of JSP based Web
applications,” Information and Software Technology, vol. 48, pp.1137-
1147, December 2006.
 John O'Donahue, Java Database Programming Bible, Wiley Publishing
Inc. , pp. 1-240, 2002.
 Huang, M.Y., Lin, Y.J, Hu Xu, “A framework for Web-based product
data management using J2EE,” International Journal of Advanced
Manufacturing Technology, vol. 24, pp.847-52, November 2004.
 Geng Xiangyi, Zhang Yueping, The practical course of JSP, Beijing:
Qinghua University Press, pp. 1-403, 2007.
 Kenneth C.Laudon, Jane P. Laudon, Management Information System,
America: Prentice Hall, pp. 27-28,2006.