Graduation Project Online Management System ALHOSN

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/228569489

Graduation project online management system ALHOSN university case study

Article · January 2011

CITATION READS

1 5,491

4 authors, including:

Adel Khelifi
Abu Dhabi University
65 PUBLICATIONS   629 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Enhancing Entrepreneurship in Engineering Education (4E) View project

Software Measurement Etalons View project

All content following this page was uploaded by Adel Khelifi on 10 April 2017.

The user has requested enhancement of the downloaded file.


Recent Researches in Software Engineering, Parallel and Distributed Systems

Graduation Project Online Management System


ALHOSN University Case Study
ADEL KHELIFI, MURAD AL-RAJAB, SARA KAREM, LAMIA SUBHI
Software Engineering Department
ALHOSN University
Abu Dhabi
UNITED ARAB EMIRATES
[email protected], [email protected], [email protected],
[email protected]

Abstract: - The graduation project is a cornerstone of the academic life, and professional career, of many students, and
so whatever time is invested in such a project is truly worthwhile. Furthermore, students’ extending themselves beyond
their limitations in this endeavor is essential to enhancing the concepts they learned in previous courses. However,
managing these projects poses real challenges for them, their supervisors, and the members of the graduation project
committee. The purpose of this paper is to improve the ability of all these parties to manage the projects through the
use of software that will allow students to organize their tasks and deadlines with minimum effort, enable supervisors
to easily keep track of students and their progress, and ultimately permit graduation project committee members to
monitor all transactions taking place to ensure that all is well.

Key-Words: - Graduation project, Online management, Software, Capstone project, Web application, Case study.

1 Introduction graduate, and they are usually written in the students’


Often, senior students struggle with their graduation senior year. The ideas for these projects may be
projects throughout their college years, trying to manage provided by university faculty, or the students can
their deliverables and their progress to meet deadlines. develop their own. A graduation project must address a
To ensure that they complete their projects, supervisors real-world problem, and students are expected to present
must become more involved, and what is needed to logical and applicable solutions to that problem. The
make this possible is an online application that would project can be viewed as the sum total of the student’s
facilitate the whole process of creating and managing the education and skills gained throughout their years of
project, which includes tasks, documentation, schooling [1].
correspondence, and other related activities.
This paper describes all the system requirements of the 2.2. Significance of the Graduation project
Graduation Project Manager, and expands on the
technical details of the application by presenting some of Generally, prior to their senior year, students have not
the designs. It also includes a detailed description of the tackled projects of the magnitude of the graduation
system’s high level design, along with implementation project. They are accustomed to short-term projects and
plans for that design. assignments that do not involve deep analysis or the
The paper is organized as follows: Section 2 presents a need to address real-world problems. Moreover, they
literature review of graduation project online typically aren’t used to being limited by tight schedules,
applications. Section 3 describes the methodology as previously they had worked with long-term deadlines
adopted to develop the online management system. and could start working on the assignments and projects
Section 4 presents the requirements analysis for the quite close to those deadlines. So, why is the graduation
application. The implementation steps for the project significant?
application are given in section 5. Finally, section 6 Perhaps for the first time, students are forced to break
provides our conclusion and suggestions for future work. the habits they have acquired, and learn what it is like to
be in an environment similar to a corporate one, and
2 Literature Review participate in group projects on a larger scale. As a
result, they acquire new skills, and, if they perform well,
2.1 Definition of the Graduation they produce a result which has great potential and
significance to businesses. So, it can be said that the
Graduation projects, also referred to as capstone graduation project can benefit students who work hard at
projects, are papers that students must submit in order to

ISBN: 978-960-474-277-6 130


Recent Researches in Software Engineering, Parallel and Distributed Systems

their projects by giving them foundational skills to help 3.2 Technology and tools used
them transition to their professional careers [2, 3, 4].
In order to model the software requirements, the
3. Application Development developers used the Unified Modeling Language
(UML). UML is a language or notation specifying,
Methodology visualizing, and documenting models of object oriented
software systems. The following UML models were
To the best of our knowledge, software for managing used:
graduation projects is a relatively new idea. A great deal Use Case Diagrams: show actors (people or other users
of research of an exploratory and descriptive nature is of the system), use cases (the scenarios in which they
needed, and any research method chosen should reflect use the system), and their relationships.
this. Class Diagrams: show classes and the relationships
between them.
3.1 Methodology adopted in this research Sequence Diagrams: show objects and a sequence of
method calls they make to other objects [8, 9].
A combination of the case study and the personal Microsoft Office Project 2003 was used to manage the
interview is deemed appropriate for this research. The development phases of the software. It is a project
case study is an in-depth examination of a behavior, management tool that enables project teams to be more
concept, or phenomenon. Complementary aspects of the productive. Microsoft Office Visio 2003 allowed the
case study are experiments and surveys. This research developers to visualize the requirements analysis and
approach can be helpful in analyzing a real situation, and design of the software. RFFlow is software for
can serve as a strong basis for debate. However, since presenting ideas with charts and diagrams, and is a tool
the information collected is about a real situation, the for drawing and producing flowcharts. In this paper,
results may not be generic [5]. For this case study, the RFFLOW was used to draw the entity relationship
graduation projects undertaken in the faculty of diagram, as this couldn't be done with Microsoft Visio.
engineering of ALHOSN University and at the College Visual Paradigm for UML is a design tool that supports
of Information Technology of Zayed University were all UML diagrams and entity relationship diagrams [10].
examined. Although the results might not be entirely In this paper, Visual Paradigm was used to draw the
applicable to other faculties, the software will be flexible Database Schema model. In this research, the team also
enough to be deployed in other environments. used Eclipse, which is a multi-language software
The purpose of the personal interview is to encourage development environment comprising an integrated
the interviewee to relate experiences and attitudes development environment (IDE) and an extensible plug-
relevant to the research problem [6]. It is a flexible in system [11]. Dreamweaver is Haverford's supported
technique, in that the interviewer can probe into any Web editor. It has features for both beginner and
interesting details that emerge during the interview, and advanced Web page creators [12]. In this paper,
focus on particular aspects. It should be noted that a Dreamweaver was used to create some parts of the Web
spontaneous approach was deliberately allowed in the page interfaces. Adobe Photoshop, or simply Photoshop,
interview phase adopted in this study. Responses to is a graphics editing program developed and published
certain questions can stimulate new awareness and by Adobe Systems. It is commercial bitmap and image
interest in particular issues, which may then require manipulation software [13]. In this research, Photoshop
additional probing [7]. was used to draw the graphical components of the
In this research, a series of formal and informal application’s interface (such as the logo, the banner,
interviews was conducted over a two-month period with etc.). The system, which is deployed on ALHOSN
students and supervisors from ALHOSN and Zayed University servers, runs on a Windows 2003 server
Universities in the UAE. The interviews generally lasted platform.
one hour. Informal interviews were used to clarify and
refine issues as they emerged [7]. Subsequently, the
stakeholders in this research were identified, as were
4. Requirements Analysis
their impacts and responsibilities. Then, the system
The purpose of the analysis phase is to determine the
deployment environment was defined and the tools
needs of businesses and users. “The requirements for a
needed to develop the system were described.
system are the descriptions of the services provided by
the system and its operational constraints” [14]. In other
words, the functional requirements describe what the
system must do.

ISBN: 978-960-474-277-6 131


Recent Researches in Software Engineering, Parallel and Distributed Systems

4.1 Requirements Gathering Process

The following is a summary of the requirements that


were gathered to implement the Graduation Project
Manager software. They were collected using two
methods.
First, some of the requirements were derived through an
assessment of the general needs of ALHOSN University
and Zayed University with regard to graduation projects.
The assessment was based on the conclusions of a study
of the graduation project process and how it is managed
in the Faculty of Engineering at ALHOSN University
and at the College of Information Technology at Zayed
University.
Second, a set of questions was drawn up aimed at
revealing the difficulties faced throughout the graduation
process, and the needs of the professors to help the
projects progress smoothly. Subsequently, meetings
were held involving professors from different
departments, such as Architectural Engineering,
Software Engineering, and Urban Planning, of ALHOSN Fig. 1: Use Case Diagram (Department chair / Dean of faculty)
University and of the College of Information
Technology at Zayed University. During the meetings,
interviewees filled out a questionnaire and their
responses were collected. Those responses expressed the
needs and demands of the professors, and also
highlighted the issues that had to be addressed.
An analysis of the responses revealed some of the
software requirements. In addition, graduate students
were surveyed to learn about the difficulties they had
faced while working on their graduation projects.

4.2 System Requirements

The system requirements set out the system's functions,


services, and operational constraints in detail, and they
should be precisely expressed, and define exactly what is
to be implemented. They are often classified as
functional requirements and non-functional
requirements.

4.2.1 Functional Requirements

"These are statements of services the system should


provide, how the system should react to particular inputs
and how the system should behave in particular
situations. In some cases, the functional requirements
state what the system shouldn't do" [14]. The use case
diagrams below (Fig. 1, 2, and 3) illustrate the
system’s functional requirements:

Fig.2: Use Case Diagram of Graduation Project Manager,


continued (Student / Supervisor)

ISBN: 978-960-474-277-6 132


Recent Researches in Software Engineering, Parallel and Distributed Systems

backgrounds and levels of computer knowledge, the


system needs to provide users with a simple and easy
interface to allow for this variation.
• Privacy and security requirements: concerned
with the need for data confidentiality and integrity.
The Graduation Project Manager is required to keep
all the data, transactions, and communications
within each group away from the public and hidden
from other groups, and ensure that only the direct
supervisor of each group has access to this
information. The system also needs to ensure that
only authorized users can gain access to group
pages and prohibit any unauthorized access (system
needs to check for authenticity).
• Reliability requirements: constraints on the run-
time behavior of the system. They usually relate to
the amount of time the system has been running
without failures.
Students will use the Graduation Project Manager
very frequently to communicate with their
supervisor and with each other within their groups.
They also expect the system to be available serve
their needs at any time.
This means that there is a demand for the system to
be continuously available, and have a minimum
failure rate, as that might affect the students’
productivity and progress.
• Portability requirements: a requirement which
states that the system being developed should be
capable of running on different platforms. A
Graduation Project Manager must be portable,
because it is an online application that will be used
by many users with different machines/browsers.
This can be achieved through constant testing for
portability of the application relative to the most
Fig. 3: Use Case diagram, continued (Administrator/ Head of common browsers, such as Firefox, Internet
Graduation Committee / Handler subsystem)
Explorer, and Safari.
• Flexibility: “The ease with which a system or
4.2.2 Non-Functional Requirements
component can be modified for use in applications or
"These are constraints on the services or functions offered environments other than those for which it was
by the system. They include timing constraints, constraints specifically designed” [15]. This means that flexibility
on the development process and standards. Non-functional allows the system to be tailored according to the needs of
requirements often apply to the system as a whole. They different users, rather than being specific to a particular
do not usually apply to individual system features and user group. Faculty members from different departments
services" [14]. might be interested in using the system. So the system
needs to be flexible to allow new features to be readily
4.2.3 Specification of Non-Functional requirements added [16].

The following non-functional requirements are applied for 5. Implementation


the Graduation Project Manager:
Prior to embarking on the implementation phase, the
• Usability requirements: concerned with the ease of developers accorded high significance to the design
use of a system. Since the Graduation Project Manager phase, which is aimed at modeling the system
will be used by students with different educational requirements for the users in a simple way so that they

ISBN: 978-960-474-277-6 133


Recent Researches in Software Engineering, Parallel and Distributed Systems

can easily understand the system’s functions. The Entity languages, such as JavaScript, while the server handles
relationship and the UML diagrams (Use case and the application logic, the data access logic, and storage.
Sequence diagrams) are examples of modeling standards The benefits of a client-server architecture are threefold.
which are used to refine the requirements and present First, it allows scalability, which means that it is easy to
them in a readable style and with more detail than those increase or decrease the server’s storage and processing
described at the requirements analysis phase. The designs capabilities. If one server becomes overloaded, another
are created to aid the developers in the transition from the server is simply added, so that many servers can be used
requirements analysis phase to the implementation phase, to perform the application logic, data access logic, or data
while keeping the user involved [17]. storage. Second, it can support many different types of
The goal of the implementation phase is to implement a clients and servers, which means that it is possible to
system correctly on a particular set or range of computers connect computers that use different operating systems.
using particular tools and programming languages. This Third, for a thin client server architecture (one containing
stage is primarily environmental, and works with the a small portion of the application logic) that uses Internet
realities of the particular machines, systems, language standards, it is a simple matter to clearly separate the
compilers, tools, developers, and clients necessary to presentation logic, application logic, and data access
translate a design into working code. Just as the design logic, and design each to be somewhat independent. This
phase may include some analysis effort approached from means that the interface can be changed without affecting
a computational standpoint, the implementation phase the application logic, and vice versa. For these reasons,
always includes design effort. Implementation-level the concept of the client-server architecture was
design is a reconciliation activity, where, in principle, implemented as the Graduation Project Manager’s
executable models, implementation languages and tools, architecture, as shown in Figure 4 below.
performance requirements, and delivery schedules must
ultimately be combined, while at the same time
maintaining correctness, reliability, extensibility,
maintainability, and related criteria.
Software developers take the design documents, plans,
and development tools, such as editors, compilers, and
debuggers, and then start writing software. This is usually
the longest phase in the product life cycle. So far, in this
implementation, version 1.0 of the system has been
completed. This version incorporates the core functions
of the Graduation Project Manager, and is the result of the
first iteration in the software development cycle followed
in this paper. However, the complete system design has
been created, which means that all the requirements and Fig. 4: CPM Main Architecture
functions have been identified, and not just the designs
for the current release. Therefore, the later iterations in 5.2 Model View Controller (MVC)
the software’s life can be commenced as soon as a release
is completed [18]. In this Web application, the MVC architecture is used for
subdividing the system logic, where JSP is used as the
5.1 Graduation Project Manager Architecture view, servlets as the controller, and JavaBeans as the
model [19].
An architectural design is a plan for how the system will The MVC, as shown in Figure 5, is a software
be distributed across the computers (network architectural pattern used in software engineering,
environment), and what hardware and software will be commonly with Java-based Web systems. It is the product
used for each computer. There are three principle of a desire to separate the code that creates and
application architectures in use today: server-based manipulates the data from the code that presents the data.
architectures, client-based architectures, and client-server Model: the domain-specific representation of data upon
architectures. The client-server architecture attempts to which the application operates. The MVC doesn’t
balance the processing or workloads between the client specifically mention the data access layer, because it is
and the server. This is a popular option, because it understood to be underneath the model, or encapsulated
involves lower overhead and easier maintenance. Web- by it.
based systems usually follow this architecture, with the View: what renders the model in a form suitable for
Web browser (the client) performing presentation and interaction, typically a User Interface element. Multiple
only minimal application logic using programming

ISBN: 978-960-474-277-6 134


Recent Researches in Software Engineering, Parallel and Distributed Systems

views can exist for a single model for different purposes.


Controller: the component that receives input and initiates
a response by making calls on the model object. The goal
of the MVC model is to reduce the complexity of the
architectural design and increase the flexibility and
maintainability of the code by decoupling models and
views. It is also responsible for invoking the business
logic and data access code.

Fig. 5: MVC Architectural Pattern

5.3 Java Technology and JSP Selection


Fig. 6: Heading of the Capstone Committee’s Home Page
Java technology is used because it is highly portable, as
Java-based applications can be run on any machine
regardless of the underlying operating system. Java Web
technology (JSP and Java servlets) is very compatible
with different browsers, as opposed to asp.net, for
instance, which is usually error-prone on browsers other
than Internet Explorer. Sun developed JSP technology
using the Java Community Process (Open Source). The
JSP application programming interface (API) has
undoubtedly benefited from the input of this extensive
community, and will likely continue to do so.
Java Web technology is used in many of today’s popular
Web applications, such as PayPal, eBay, Yahoo, and
YouTube [19].

5.4 Interface design

Interface design is the process of defining how the system


will interact with the external entities (system users or
other systems). It describes the layout of the pages and the
flow of events, and is also concerned with where and how
data are represented on the pages.
However, in a User Interface Design, the needs, Fig. 7: Administrator’s Create User page
experience, and capabilities of the system users must be 6. Conclusion and Future Work
taken into account. In addition, the designers should be
aware of users’ physical and mental limitations (e.g. The concept on which the Graduation Project Manager is
limited short-term memory) and should recognize that built has noticeable potential, and the opportunity to grow
people make mistakes [14]. Figures (6-7) below illustrate and improve. Below are examples of future
some of the system’s graphical interfaces. improvements that can be made to the Graduation Project
Manager software:
• Have a tips section for students, where professors can
post hints and tips over time (these could be accessed
by all students, and not just a specific group);

ISBN: 978-960-474-277-6 135


Recent Researches in Software Engineering, Parallel and Distributed Systems

• Allow students to exchange deliverables before they and Java Servlets are run on an Apache Tomcat server.
submit (this could provide a backup facility for all The system utilizes a relational Oracle Database.
their files, and provide accessibility to them as In conclusion, we believe that this Graduation Project
required); Manager software can significantly enhance graduation
• Allow supervisors to create one list of tasks, which project management for all the parties concerned.
could be used as a template for many different
projects;
• Implement more authentication controls, for example References:
by hashing the password before sending it off to the [1] EssayTown. (2009). Term Paper Help. Retrieved
server, or by applying SSL to enhance the security Dec. 4, 2009, from http://www.essaytown.com:
level of the system; http://www.essaytown.com/writing/capstone-projects
• Have a news bar, where the Head of the Graduation [2] Spolsky, J. (2009, 10 26). Retrieved Dec. 7, 2009,
Committee could, for example, post updates regarding from http://www.joelonsoftware.com:
new regulations, or changes to the project timeline, http://www.joelonsoftware.com/items/2009/10/26.ht
etc.; ml
• Introduce new requirements through conducting more [3] keeai. (2009, 7 23). Retrieved Dec. 5, 2009, from
meetings with stakeholders, which we believe would http://keeai.wordpress.com:
be possible; http://keeai.wordpress.com/2009/07/23/the-meaning-
• Provide students with a calendar for memos, of-a-capstone-project/
reminders, appointments, etc.; [4] Duke University School of Law. (2009). Ad Hoc
Seminars, Capstone Projects & Independent Studies.
• Allow the Head of Graduation Committee to post
Retrieved Dec. 4, 2009, from Duke Law:
progress reports for students and supervisors to fill out
http://www.law.duke.edu/curriculum/capstone/
and send back over the system;
[5] Fitzgerald, B. &Kenny, T. (2003).
• Implement the automated event handler subsystem.
http://www.netproject.com/online.html. Retrieved
from http://www.netproject.com:
In summary, the graduation project is a cornerstone of
http://www.netproject.com/docs/Beaumont.pdf
students’ academic learning, and of their future
[6] Walker, R. (1988). Applied Qualitative Research.
professional career as well. This paper brought a solution
Hampshire: Gower.
to improve the organization of graduation project tasks,
[7] Eisenhardt, K. (1989). Building theory from case
for everyone involved, through software that allows
study research. Academy of Management Review
students to manage their tasks and deadlines with
14, 4, pp. 532-550.
minimum effort, enables supervisors to easily keep track
[8] Wikipedia. (2009). Unified Modeling Language.
of students’ work and progress, and ultimately permits
Retrieved Dec. 9, 2009, from Wikipedia:
graduation project committee members to monitor all
http://en.wikipedia.org/wiki/Unified_Modeling_Lan
transactions taking place to ensure that all is well.
guage
In order to analyze the requirements of this research, a
[9] Webmaster, K. (2009). Welcome. Retrieved Dec. 8,
combination of the case study and the personal interview
2009, from KDE Documentation:
was deemed an appropriate approach to follow in this
http://docs.kde.org/stable/en/kdesdk/umbrello/uml-
paper. In addition, a series of formal and informal
basics.html
interviews was conducted over a two-month period with
[10] Visual Paradigm. (2010, 4 18). http://www.visual-
students and supervisors from ALHOSN University and
paradigm.com/product/vpuml/. Retrieved from
Zayed University. The developed software enables
http://www.visual-paradigm.com: http://www.visual-
students to select topics, obtain resources from their
paradigm.com/product/vpuml/
supervisor, upload deliverables to their supervisor, fill in
[11] Wikipedia. (2010, 4 18).
a calendar with a to-do list, and view their project plan
http://en.wikipedia.org/wiki/Eclipse_(software).
and the percentage of work completed. Moreover,
Retrieved from http://en.wikipedia.org:
supervisors can post resources for their students, create a
http://en.wikipedia.org/wiki/Eclipse_(software)
list of tasks along with their deadlines, obtain
[12] Center Haverford, C. a. (2010, 4 19).
deliverables, provide feedback by posting remarks or
http://www.haverford.edu/acc/docs/software/dreamw
uploading updated documents, and view the percentage of
eaver/welcome.htm. Retrieved from
work completed. The web-based application is
http://www.haverford.edu:
implemented using JSP and Java Servlets, as part of the
http://www.haverford.edu/acc/docs/software/dreamw
J2EE platform to dynamically generate Web pages. JSP
eaver/welcome.htm

ISBN: 978-960-474-277-6 136


Recent Researches in Software Engineering, Parallel and Distributed Systems

[13] Wikipedia. (2010, 4 19).


http://en.wikipedia.org/wiki/Adobe_Photoshop.
Retrieved from http://en.wikipedia.org:
http://en.wikipedia.org/wiki/Adobe_Photoshop
[14] Sommerville, I. (2007). Software Engineering (8th
Edition ed.). London, United Kingdom: Person
Education.
[15] IEEE. (1999). IEEE Standard Glossary of Software
Engineering Terminology 610.12-1990. IEEE
Standards Software Engineering, 1999 Edition,
Volume One: Customer and Terminology Standards.
[16] Eden, A. H. & Mens, T. M. (June 2006). Measuring
Software Flexibility. IEEE Software, vol. 153, no. 3,
113-126.
[17] Dennis, Alan, Wixom, Barbara Haley, Roth,
Roberta M. (2006). Systems Analysis & Design (3rd
Edition ed.). Hoboken, NJ, USA: John Wiley &
Sons, Inc.
[18] Essays Example. (n.d.).
http://www.exampleessays.com/viewpaper/8491.html
Retrieved 4 25, 2010, from
http://www.exampleessays.com:
http://www.exampleessays.com/viewpaper/8491.htm
l
[19] Hall, Marty & Brown, Larry. Core Servlets and
Javaserver Pages: Core Technologies, Vol. 1. (2nd,
Ed.) Prentice Hall and Sun Microsystems Press.

ISBN: 978-960-474-277-6 137

View publication stats

You might also like