project blog responsive ads

Free download management system project documentation with JAVA, PHP AND ASP.NET source code. In all project report you will get introduction and objective of the project, system analysis, feasibility study, project planning, DFD diagram, system design, database design, complete project coding, and ER diagram of the project. These project reports and synopsis are useful for BCA, MCA BSC CS, MSC IT B.TECH, M.TECH and BE computer science last year students IGNOU, SMU university final year projects

Sponsored Links

VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT REPORT

PROJECT REPORT


PROJECT SOURCE CODE


VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT SOURCE CODE

VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT REPORT


The aim of this project was to develop an information system that would help the user manage his
business. The system needs to include normal technical features such as the facilitation of DVD
Rentals/Returns, business features such as the calculation of sales figures and customer-oriented
features such as the calculation of the average customer rating for a movie. The system produced
needs to overcome current problems such as a poor user interface, lack of a structure and ineffective
time consuming processes.
Background reading identified Java and MySQL to be the most appropriate technologies to use to
implement the system. Research into the different methodologies to help me manage the project
showed that the Prototyping methodology was the most appropriate model to follow.
This report steps through all of the development process; from the initial analysis, through the design
and implementation to the evaluation of how successful the prototype was seen to be.


CHAPTER 1 : INTRODUCTION

1.1 Problem Definition
Information management is a major issue for businesses nowadays and the use of an information
system can contribute significantly to the achievement of a business’ goals. Small organisations tend
to lack the finances to acquire an information system tailored to their needs.
Mount Video Centre is a video library shop situated in Batley, West Yorkshire. They have been open
for about three years and are a small business that tends to have a local clientele. They have recently
expanded by moving to a slightly larger location. Originally the owner lacked the necessary
resources/finances to have a fully developed information system and so would note down all
information regarding Asian or English video/DVD rentals on paper. As this started getting untidy, he
purchased a computer and would instead note down the same information on an excel spreadsheet.
Now he feels that as he is expanding and will be hiring staff, it will be in his best interests to have a
suitable computerised desktop system, to assist in running the business. The current spreadsheet
system is seen as unprofessional, has no proper structure to it, and is unproductive. He would like the
new system to be efficient and easy to use as he has a basic level of computer literacy.
The owner has specified the application to specifically be desktop-based instead of on the internet. He
feels that the majority of his clientele have very limited internet experience which would make it
impractical for them to use the internet and he is also worried it would have an impact on his profits.
He currently has no internet connection and has made it clear that he doesn’t want the system to be
based online.
There are a number of different off-the-shelf desktop systems available for purchase such as Video
Forecasting and SoftStore. These systems have a variety of complexity and functionality issues as
discussed in section 2.2.
1.2 Project Aim
The aim of this project is to analyse the information needs and the business processes regarding video
rentals and implement a system that will computerise this process and help the user manage the
business.

1.3 Project Objectives - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

The objectives for this project are:
1. To research the business process/problems behind the video/DVD rentals with the
user
2. To research the different types of methodologies that can be used for this project
3. To research the different types of technologies to use to implement the system
4. To research other different video library systems
5. To ascertain a list of requirements from the user
6. To research HCI so an easy to use interface can be implemented
7. To design a desktop based application to incorporate the requirements of the user
8. To Implement the application
9. To evaluate the application in terms of usability and user requirements
1.4 Minimum Requirements
The minimum requirements for this project and new proposed information system to be developed
must have the ability to do the following:
• Manage video/DVD stock control (add, view, and edit video/DVDs)
• Manage customer information (add, view and edit customers)
• Store and process details of a member renting and returning a video (or DVD)
• Calculate Movie Rating based on customer reviews
1.5 Extended Requirements
Further work that can be carried out on the system, time allowing will include:
• To be able to reserve a video if out of stock
• Search for movies starring a certain actor
• Calculate sales figures in terms of most popular movies/genres being sold
• Separate logins for separate employees
• Manage the sales of DVD’s/audio cassettes
• Find out what video rentals have gone past their due date (i.e. overdue movies)
• Import the users current videos into the system
• Easy to use and navigate
• A printed user guide for a non-technical person
• Administration
Mount Video Library Information System
3

1.6 Deliverable

The deliverable to be produced for this project include:
1. A final year project report
2. An information system for Mount Video Centre
1.7 Project Scheduling
A more detailed project schedule than below has been provided in Appendix B.
Tasks Dates
Background Research/Mid Project Report 16/10/2006 – 08/12/2006
Analysis 08/12/2006 – 22/12/2006
Iteration 1 (Design/Implementation/Testing of
the Minimum Requirements
22/01/2007 – 19/02/2007
Iteration 2 (Design/Implementation/Testing of
the Minimum Requirements
20/02/2007 – 18/03/2007
Evaluation 19/03/2007 – 15/04/2007
Complete Report Writing 15/04/2007 – 23/04/2007
As can be seen, each phase has been divided up into a number of tasks that need to be completed in the
fixed time period. The January exams have been taken into account as well as other courseworks and
the majority of the report is to be written during the Easter holidays.
1.8 Relevance to Degree Programme
This project will make use of a variety of skills I have developed during my BSc Computing course as
well as experience gained from my placement year. It is important that at least one type of
methodology is followed, which have previously been covered in IS11 (Introduction to Information
systems) and IS33 (People-centred Information Systems Development). To help gather user
requirements and apply different analysis techniques, knowledge gained from the IS11 and SE20
(Object Oriented Software Engineering) modules will be called upon. To assist on an implementation
based on these user requirements, the GI11 (Introduction to Human Computer Interaction) module will
help in the implementation of the user interface aspect of the system, whilst the SE24 (Practical
Software Development) module will help on the programming aspect. My database skills have been
significantly enhanced during the DB11 (Introduction to databases) and DB21 (Database Principles
and practice) modules and what was learned during my placement and the SE24 module can be
utilised to manage the whole project effectively.
Mount Video Library Information System
4

CHAPTER 2: BACKGROUND RESEARCH - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

2.1 Introduction
This chapter looks into what type of background research needed to be done to help solve the user’s
problem. Initially the different video library systems out there at the moment needed to be researched
to help establish specific functionality. This was then be followed by research into the different types
of methodologies that could be used as a framework for the whole project. The chapter will also
include an examination of the relevant different technologies that can be used and factors that help
decide a good user interface, including the benefits and weaknesses.
2.2 Existing Solutions
There are numerous companies that offer a piece of software to facilitate in the rental of videos. The
following two have been evaluated which typify the common software approaches and why it is not
appropriate to the owner:
• SoftStore [1] provide software that will facilitate the rental of videos and DVD’s. When
compared to the user’s requirements, it provides the typical type of functionality that would be
needed when renting and returning a video. The system allows searches of videos to be made,
and possesses the ability to handle overdue videos and reserve videos if they are not available
at the time. The system also provides business functions such as the option to view the rental
performance of a viewed title and daily sales figures. There are though a number of problems
that come with this product. Firstly, it is too complicated for the computer illiterate owner, as
it has too many screens to switch through for simple tasks such as renting a video. The user
interface (as can be seen in Appendix B) is also difficult to manage as there is too much
redundant information/functionality which the owner would not want to use and it would
therefore most likely discourage him from using the system.
• Video Forecasting [2] provide a POS solution that allows video stores to run and monitor their
business. The system provides functionality similar to the users needs. It allows the rental and
returns of a DVD and calculates stock. It also possesses a good user interface (as can also be
seen in Appendix B) for the owner to interact with. The problem the owner faces with this
system is the lack of business management functionality. The system doesn’t possess the
ability to calculate video popularity or calculate sales figures for video genres. Another
problem with this product is that it costs about £450, which is increased by a further £150 if
Mount Video Library Information System
5
the user ever acquires a second computer and intends to install the system on that computer as
well. This price is outside of the budget of the owner especially as it doesn’t fully fulfil his
requirements, making it inappropriate for purchase.
2.3 Information Systems Development Methodology
2.3.1 The Need for a methodology
Avison & Fitzgerald [3] describe an information systems development methodology
as “A collection of procedures, techniques, tools and documentation aids which will help the systems
developers in their efforts to implement a new information system”. Methodologies are needed as they
help the developer produce a product of higher quality of which the user is most likely to accept as
well as help avoid schedule delays. It is imperative that the project made use of at least one
methodology and the following section will examine a variety of different methodologies available.
2.3.2 The Waterfall Model
This methodology divides the development into 6 distinct steps; Feasibility study,
Systems Analysis, Systems Design, Implementation, Testing and Evaluation. Each phase must be
completed before the next phase can begin and within every phase, lies sub tasks and processes [4].
The advantage of using this model is that the user is involved before and after the implementation by
gathering requirements and testing the system. Also there is a greater degree of control because each
stage in the development is divided into evident manageable tasks.
The disadvantage is that real projects phases tend to overlap and iterations are inevitable because of
inadequacies in the requirements analysis which may become more evident during the design or
implementation. Because the waterfall method is sequential with a ‘no going back’ strategy, it is
difficult to change technology or requirements once the systems engineering is under way.
The model can be manipulated to overcome its drawbacks by becoming an iterative process with
feedback. It allows the prospect of returning to any previous stage to review work, and would
therefore accommodate any changes in user requirements. The drawback of using this is that it can
become costly, if for example a deficiency is found in the requirements analysis whilst implementing
the system, then iterating back to analysis could mean a majority of the design process has to be
redone.
Mount Video Library Information System
6
2.3.3 Prototyping
The main stages to this methodology are to perform an initial analysis, define the
objectives, specify and construct the prototype, and then evaluate it and recommend changes. The last
three steps are repeated until the objectives have been achieved. Bennett et al [5] describe a prototype
as a “partially complete system that is built quickly to explore some aspect of the system requirements
and that is not intended as the final working system”. The methodology addresses user dissatisfaction
that they only get to see the system after implementation, by which it is too late to make any changes.
There are two main types of prototype; throw-away and evolutionary.
The Prototyping methodology is beneficial as it constantly involves the input of the user (more so than
the waterfall method) so any misunderstandings between the developer and user can be identified and
any missed requirements can be recognised quickly. The feasibility and usefulness of the system can
also be tested as sometimes there can be a conflict between the user and developer as to how feasible a
system is. This reduces the chances of a project failing.
The drawback of using this type of methodology is that because it is iterative and requires significant
user involvement, the prototype can become difficult to manage and control and there is a danger of
constantly going round in circles implementing it due to minor changes that need to be made. In
addition, a problem can occur when managing expectations as developing a prototype can take a short
time whilst it takes much longer developing a fully functioning application.
2.3.4 Rapid Application Development (RAD)
RAD is an iterative process that can be used to address the problems that are usually
associated with the changing and evolving of requirements during the development process. It divides
up the system to be developed into a number of timeboxes, with the first timebox quickly being
developed based on the most important requirements. The next timebox will then focus on the more
detailed requirements and so on. Each timebox has a fixed period of time in which it develops the
functionality of the system as much as it can accord the requirements [4].
The advantage of using RAD is that it provides the user with a quick and hopefully a useful part of
system within a short timescale, which helps build credibility and user enthusiasm. The user is also
involved at the end of each timebox and any change in user requirements can easily be implemented as
the total system has not been completed.
The disadvantage of using RAD is that even though the time of each timebox is fixed, which helps to
prevent project overruns, the functionality could be reduced as there is not enough time, thereby
providing a system which satisfies a limited number of total requirements. Also due to the focus on
speed of delivery, the system tends to have missing functionality as well as a flawed design.
Mount Video Library Information System
7
2.3.5 Chosen Methodology
After a thorough analysis of the methodologies, it would be most appropriate to use
the Evolutionary Prototyping methodology during the project. The RAD methodology was first
discounted as it could easily lead to a flawed design and because it is constructed in a short timescale,
it could also lead to functionality being missed out which could be essential to the user. The Waterfall
Model has not been used as it can be seen as “costly, time consuming and inflexible” [6]. It also
doesn’t confront any problems with the user requirements until the system has been fully
implemented, after which it becomes difficult and time consuming to make changes. Coad and
Yourdon [7] feel that “prototyping should be used for all object-oriented projects”. It is best to use the
Prototyping methodology as it will continuously utilise the user’s views, thereby ensuring the user’s
requirements are completely met and increase the likelihood of the acceptance of the system. This will
assist in the successful completion of the project.
2.4 Usability
2.4.1 The Need for Usability
The usability aspect of the project looks at ways to ensure the finished system is what
the user wants. Lindgaard [8] states that a “major indicator of usability is whether a system is being
used”. It is a very important feature in the development of the system as the user must be able to
operate the application without any problems or else they will decide to stop using it.
2.4.2 Nielsen’s Usability Dimensions
Nielsen [9] originally defined five usability dimensions which enabled the possibility
of systematic studies of the system to take place and helped draw heuristics for assessing the system
usability. These heuristics were specified for websites but the versatility of it means that they can be
used for any GUI based application. They are:-
1. Learnability – the user can rapidly start getting work done. Processes such as rental of videos
and adding new members should be simple and quick to learn
2. Efficiency – once the user has learned the system, a high level of productivity is possible
3. Memorability – a casual user should be able to return to the system without having to learn
everything all over again
4. Errors – Few errors should be made and it should be easy recovering from errors. Validation
needs to be included such as the telephone number not exceeding 11 characters.
5. Satisfaction – users are subjectively satisfied and they like the system
Mount Video Library Information System
8
2.5 Human-Computer Interaction (HCI)
HCI is one of the extended requirements as the user needs to be able to interact with the
system without having any problems. As the user is non technical, it is important that this issue is
addressed. The most popular method of evaluating HCI is to use Shneiderman’s rules for interface
design. This can be manipulated to provide three main areas to help design the system and ensure an
effective user interface. They are:-
1. Navigation – the system should allow easy navigation between the different functionality.
2. Data Entry - the system reduces unnecessary inputs and risk of error as well as speeds up data
entry.
3. Consistency - consistent sequences of actions should be required in similar situations as well
as identical terminology used in prompts, menus etc.
2.6 Technologies
2.6.1 Dimensions of Technologies
The system can be implemented using a number of different technologies. In order for
this system to be completed, there will need to be a user interface to the application with an underlying
database. As the owner has specifically stated that he would not like a web based application,
technologies such as PHP, ASP and Apache will be discounted. The technology will therefore
specifically focus on a desktop based application.
2.6.2 Application Technologies
There are a number of different application based technologies that can be used to
implement the core functionality. The three application technologies that will be evaluated are; Java,
C#, and Visual Basic. All three languages are object oriented as that is said to be the most efficient
approach in implementing a software engineering product.

2.6.2.1 Java - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

Java is more than just a programming language; it is also a platform. It is one of the
most popular object oriented languages as it has features for GUI-building and the program written is
executable on multiple operating systems. Java includes functionality to ensure it can be connected to
a database for data retrieval/update purposes. Wigglesworth et al state that “any java program can use
a relational database” [10].
The main advantage of using Java is that it is object oriented which provides greater
flexibility and modularity; therefore programs are easier to read and write. Java also includes
Mount Video Library Information System
9
functionality such as automatic garbage collection which makes it more efficient to code in than other
languages such as C/C++. The portability of Java ensures that it can run on any platform without
having to be recompiled which makes it advantageous if the owner ever wants to use the application
on a different operating system such as Linux. Java programs are also reliable and secure as they do
not support pointers, which eliminate the possibility of overwriting memory and corrupting data.
The disadvantage of using Java is that because it runs on a virtual machine (VM), it runs
somewhat slower compared to other programming languages, but recent versions of VM use dynamic
compilation which decreases the time to compile and run.
2.6.2.2 C#
C# is intended to be more of a modern object oriented programming language,
developed by Microsoft as part of their .NET initiative and syntax is similar to Java as it is also based
on C++. It also provides strong support for software engineering principles such as type checking,
database connection, arrays and detection of variables that have not been initialised.
The advantages of using C# are similar to Java as it also provides functionality such as
automatic garbage collection, flexibility, reliability and security [11]. An additional advantage it has is
that C#.NET is implemented by Microsoft and therefore works much better on a Microsoft Windows
platform because of its compatibility. This also becomes a disadvantage of using C# as it would not be
possible for the owner to ever switch operating systems as the application would not run on it.
2.6.2.3 Visual Basic
VB is an event driven programming language that now works in conjunction with the
.NET framework. It provides the facility to create a GUI application as well as integrate with a
database. It is highly recommended when using the RAD methodology as it enables applications to be
built quickly with simple code [12]. Programming in VB usually involves arranging components on a
form using drag and drop tools.
VB has a simple structure and is an easy to program language. This provides the
opportunity to implement the system quickly in terms of the functionality and GUI, which makes it
advantageous as there is a limited period of time to create the application. Another strong point of VB
is that it has a comprehensive set of debugging tools, so it has the functionality of breakpoints as well
as the ability to modify code whilst paused.
The disadvantage of using VB is that it will also only run on the Windows operating
system. This again will cause a lot of problems for the owner if he ever decides to switch operating
systems. VB also does not have exception handling with the same capability of Java.
Mount Video Library Information System
10
2.6.2.4 Conclusion - 
After evaluating the above technologies, Java was selected as the most suitable
technology to use to implement the functionality and GUI of the application. It can be used efficiently
with the prototyping methodology. As the methodology used is evolutionary, the owner will get to
review the system after the implementation stage, so if there are any changes in user requirements,
these can be implemented easily as Java provides great flexibility and reusability of code. It is also
portable as it can be run on different operating systems whilst C# and VB are Windows platform
specific. This means that the user would not have any problems if he ever chooses to switch platforms.
I also think that Java is the most appropriate programming language to use as I have
previous experience in this although C# has similar syntax and would not be difficult to learn due to
both of them being an object oriented language based on C++.
2.6.3 Database Technologies
There are a variety of database technologies that can be used for the underlying
database that will hold all the core data. The three database technologies that will be evaluated are;
Microsoft Access, SQL Server and MySQL. Evaluation will need to include if it would be suitable for
importing data as currently the user has a list of videos stored on Microsoft Excel.
2.6.3.1 Microsoft Access
MS Access is a popular relational database management system that is part of the
Microsoft Office software package which is usually running on most PC’s with a Windows operating
system. An important feature that MS Access provides as well as a database is a graphical user
interface. This means a relatively unskilled programmer can easily implement a GUI using forms, and
drag and drop tools and then implement a query which is automatically generated based on the user’s
selection. These queries can then be manipulated further if required.
MS Access would be beneficial as it is suitable to small scale projects which have a
limited number of tables and a database size of less than 2GB. One of its main assets is its
compatibility as it has the ability to import data from a spreadsheet file such as MS Excel.
The disadvantage of using MS Access is that it is not as secure as the database can
usually be copied locally which can allow a relatively inexperienced hacker to find out any passwords
to get into the system. Another disadvantage is that it doesn’t allow concurrent access which can cause
major problems when the intended system is duplicated onto a different machine. Also, MS Access
can cost up to £200 per machine, making it an unattractive option.
Mount Video Library Information System
11

2.6.3.2 Microsoft SQL Server - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

SQL Server is a platform dependent relational database management system. It is
commonly used by businesses for medium-large sized databases and handles database queries
efficiently. It is more secure than MS Access as it is integrated with Windows NT security but is
expensive to purchase. SQL server also provides the opportunity to import data directly from MS
Excel. SQL Server can cost anything from £1,000 upwards depending on the version bought.
2.6.3.3 MySQL
MySQL is an open source database management system that allows a number of
programming languages (including Java) to access it. It can work on many different platforms
including Windows, Linux and Mac. Using MySQL would be advantageous as it has a good technical
support (has forums and mailing lists), is free, and provides security through user authorisation and
access privileges. The disadvantage is that it is more difficult to import data from a MS Excel
spreadsheet.
2.6.3.4 Conclusion
After evaluating the above three database technologies, MySQL was decided as
best technology to use as the underlying database to Java. MS SQL server was first discounted as the
owner would need to purchase it and it is out of his budget. There is also no need to purchase it as
MySQL provides similar functionality for this project at no cost to the business. MySQL is more
appropriate than Ms Access as it has an additional layer of security. In MS Access, data is stored in a
local machine which could allow a foreigner to steal data by copying it onto disk. This means that
personal information for a member that is the owner’s responsibility can be stolen.
MySQL is also the preferred database technology as it is platform independent,
which would allow the owner to be able to use the system if he switches operating systems.
2.6.4 Data Import Technologies
As has previously been stated, the user currently has a list of his members, DVD’s and
rentals on three separate worksheets. Because the user has a high volume of customers and
DVD/videos, it would be a time consuming and error prone process for him to manually copy the data
from the spreadsheet file into the intended system one record at a time. This could instead act as a
source of discouragement in using the intended system. It is therefore in the best interests of the user
that functionality is put in place with the intention of this process being computerised so that the
application automatically retrieves data from the MS Excel spreadsheet and transfers it to the MySQL
database so that it can be used. Extensive research shows that this functionality can be implemented in
a variety of ways which have been discussed.
Mount Video Library Information System
12
2.6.4.1 Data Import 2007 for MySQL [13] /Navicat [14]
Both of these tools will import data quickly from a number of applications such as MS
Excel, MS Access, and CSV to MySQL tables. They both include a wizard that guides the user
through a number of steps which includes adjustable import parameters, number of records to skip,
and data formats of source or destination.
The advantage is that both are very quick and powerful tools with a user friendly
interface and they allow you to be selective with the records that you want to import. The disadvantage
of both tools is that they cost about £40 to purchase and the import functionality would be external to
the intended system. It would also be an overcomplicated process for a simple data import.
2.6.4.2 POI (HSSF)
POI stands for Poor Obfuscation Implementation and is the Apache Java API for
”manipulating various file formats based upon Microsoft’s OLE 2 Compound Document format using
pure Java” [15]. HSSF is POI Project’s implementation and provides a way to read MS Excel
spreadsheets using java code.
The advantage of this is that the developer of the system will be writing code that will
be specifically adapted to handle the Customer/DVD spreadsheet file and this whole process would be
part of the functionality of the application rather than an external system. Another advantage is that
there will be no costs associated with this as the HSSF API is open source. The disadvantage is that
the application will not be able to import any other type of data apart from Customer/DVD related
information.
2.6.4.3 Conclusion
After evaluating the previous technologies mentioned, it would be best to make use of
the HSSF functionality within POI to import the customer/DVD data from the spreadsheet to the
intended system. This is because it will be customised to the specific data and there are no additional
costs associated with this. There does not appear to be a necessity to purchase a piece of software
which will most likely be only used twice (i.e. once for the customer data and once for the DVD/video
data). The reason for this is that the user will only need to import the data when he initially receives
the system and has no data in the database.
Mount Video Library Information System

CHAPTER 3 : SYSTEMS ANALYSIS - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

3.1 Introduction
Systems Analysis is essential as it is used to analyse the current system in detail to determine the
requirements of the new system (Bennett et al) [5]. This phase must be completed before commencing
onto the first iteration stage. This chapter will include a feasibility study to determine whether it is
feasible to carry out the project given the available resources, followed by a discussion on the data
gathering techniques that could be used to collect the data for analysis purposes. Furthermore, a
detailed examination of the current user practices will fully utilise the requirements gathering
techniques to help establish the exact needs of the proposed system.
3.2 Why do Systems fail?
A number of projects fail at the analysis stage of software development and it is important to look at
these causes of failures so that the analyst can learn from these mistakes. One of the common
problems that occur is the lack of resources such as time and money. This results in the objectives and
requirements not being defined fully. This is usually applicable in large scale projects and so it is not
as relevant when building a small scale project for a relatively small company by a single analyst.
Another common problem is the lack of user involvement which results in a lack of communication
between the analyst and user, thus an inaccurate definition of business needs of the user can occur. The
analyst must ensure that the user is involved at the beginning and ending of each stage (as is possible
during the Prototyping methodology). Communication must be frequent to ensure that requirements
are accurate and are met. A further problem that can occur is the lack of training which means that the
user will be unable to use the system properly. This can be resolved by the analyst by providing
training as well as a user guide with a troubleshooting section.
3.3 Requirements Gathering Technique
There are five main fact finding techniques used by analysts to capture and investigate user
requirements. They are collectively referred to as SQIRO and are described in the following sections
as well as if/how they will be utilised for the proposed information system.
3.3.1 Sampling
3.3.1.1 Introduction
This approach refers to the collection of blank and completed documents
during the course of interviews or observation sessions. They are useful in investigating the
Mount Video Library Information System
14
information that is processed within the current system. This will then help determine information
flow processes within the proposed system.
3.3.1.2 Method of Appliance
Sampling has been used to collect formal documentation the company
provides. As can be seen in the appendix, a membership form has been provided which a new member
must fill in if he/she is to rent out a DVD and the corresponding membership card that is then provided
to the new member. This will help determine data that will have to be input into the proposed system.
3.3.2 Questionnaires
3.3.2.1 Introduction
This technique will “allow analysts to study attitudes, beliefs, behaviour and
characteristics of several key people in the organisation who may be affected by the current and
proposed systems (Kendall and Kendall [16]). Questionnaires consist of open ended, multiple choice
or closed questions and the use of it depends on the nature of gathering the requirements.
Questionnaires are an economical way of gathering data from a large number of people but a good
questionnaire can be difficult to construct.
3.3.2.2 Method of Appliance
Questionnaires were not used as it is designed to gather and analyse data from a
larger number of people and Mount Video Centre consists of only two people (i.e. the owner and an
employee).
3.3.3 Interviews
3.3.3.1 Introduction
Interviewing is probably the most widely used fact finding techniques known
to analysts. It involves a structured meeting between an analyst and interviewee that can involve a set
of fixed questions or the interview can be designed to cover a certain number of topics with open
ended questions used. The information from interviews tends to be of high quality as the analyst can
be responsive to answers and can probe in greater depth on certain topics of interest. Interviews can be
setup quickly and can be used as part of user feedback at the end of each stage of the waterfall method
to gain information. The only potential problem is that it can be time consuming and costly for the
interviewee.
Mount Video Library Information System
15
3.3.3.2 Method of Appliance
Interviewing is another technique that has been used to gather data as it will
provide much more information than questionnaires because of the fact it is a face to face based
contact which gives a better opportunity to ask open ended questions. The owner preferred conducting
interviews during working periods and was always available for any other queries. As can be seen in
the Appendix D, there were a number of interviews conducted. Each interview has a transcript
provided with it which describes the information relevant to the system (i.e. doesn’t include personal
information, greetings etc). The initial interview as well as the requirements interview helped establish
the problems the owner faces with the current system. It also helped define the requirements he would
like in the proposed system. The information gathered from the interview has been discussed further in
Section 3.4.
3.3.4 Research
3.3.4.1 Introduction
This involves reading up on the background of the company and is most
practical when the analyst has a limited understanding of the organisation. The types of documents
suitable for background reading are company reports, existing systems documentation and policies.
3.3.4.2 Method of Appliance
This technique mainly provides information about the current system and
therefore was not needed as the interview has already covered this. Also as Mount Video Centre is a
small company, the analyst is already aware of the background of the organisation.
3.3.5 Observation
3.3.5.1 Introduction
This involves watching people carry out their day to day work in a natural
setting. It helps to see the flow of information from start to finish as well as the normal aspect of the
job carried out by employees. Using observation as a technique can surface information that was not
known during the interviewing stage. The advantage of using observation is that the analyst is
provided with first hand experience of the way the current system operates but a potential drawback is
that some people behave differently when they know they are being watched.
Mount Video Library Information System
16
3.3.5.2 Method of Appliance
This technique was employed as it allowed the different business processes
the organisation supports to be viewed via first hand experience. This meant the whole process of
renting the DVD and returning it were observed, as well as extra information which was not
mentioned during the interview stage. One of the extra observations made was that the owner
sometimes allows members to make a payment for the DVD when it is returned rather than when the
rental takes place. As the owner did not mention it in the interview, he was questioned about it later on
in which he pointed out that some people tend to forget to bring money with them when making a
rental. This was a very useful combination of utilising the observation and interview techniques to
gather data.
3.4 Current System
The SQIRO techniques helped gather information regarding the existing system. The main business
function of Mount Video Centre is to rent out videos and DVD’s.
As described in the interview (see Appendix D), the current system can best be described as a
predominantly ‘computer-spreadsheet centred’ system. As the owner explained during the interview,
at present he has “one spreadsheet file that has details of all the customers and another spreadsheet file
with details of all the videos and then a third with video rental details”. He collects the member details
via a membership form which needs to be filled in and signed. Then there needs to be a verification of
name (with a picture) and address when becoming a member, such as a passport. The DVD/video
information he inputs into the spreadsheet is based on details provided on the DVD cover as well as a
specially assigned ID. Whenever a customer wants to rent out a video or DVD, he notes down the
unique ID/name of the DVD, the membership number/name of the customer and the return date which
is then entered into the Video Rental details spreadsheet. Then when a customer returns the DVD, he
looks up the code for it in ‘Video Rentals’ and deletes that row in the system so that shows that the
videos been returned. If the movie is returned late, then there is an additional penalty for the customer.
The owner charges £2/3 per day per DVD and charges a further £2/3 per day for overdue movies. This
whole process covers the main business aspect of renting a video within the organisation.
The current system has no functionality to process movie related queries or calculate sales figures. If
the owner is asked about any types of ratings for a particular movie, then his answer is based solely on
Mount Video Library Information System
17
recollection of other customer opinions. If he is queried about movies in stock that include a certain
character, then again his answer is based solely on memory.
Using the System Modelling technique, Appendix D includes activity diagrams (to show transition
between activities).
3.4.1 Problems with the current system
The current system has the following drawbacks:-
• User Interface; this is because the system simply consists of three different spreadsheets
put together which holds all the data. The lack of a user interface makes the system and
organisation look amateurish to customers and employees.
• Data integrity; this regards the accuracy and correctness of the data. Omissions are
usually caused by data being input into the system incorrectly. If for example, the DVD
rental information is input into the system, and the user forgets to input the membership
ID due to a lack of validation, then that can cause problems later on if the customer
doesn’t return the DVD.
• Inadequate technical functionality; due to the system being so basic, it is practically just
held as a data store instead of the information being utilised. Functionality such as the
ability to find out the most popular videos, or reserve a video is unavailable.
• No business functionality; there is no functionality that assists the owner in running his
organisation. This relates to how the business is run in terms of the commercial aspect.
For example, there is no way of being able to find out sales figures for the past month.
• Time consuming processes; simple processes such as retrieving the details of the DVD
rental so that the rental can be marked as returned takes longer than necessary. The user
has to search through a whole list of DVD’s to match the DVD taken out. He then deletes
the row in the system. This is a time consuming process and can be tiresome for the
customer especially if he is in a hurry.
• No security; anyone could easily gain access by opening the MS Excel spreadsheet file.
They would then be able to view other people’s personal details or delete any DVD rentals
information.
Mount Video Library Information System
18
3.5 Feasibility Study
Before designing and implementing the proposed system, it was imperative that the proposed system
was practical for Mount Video Centre. The aim of the feasibility study was to investigate the
information needs of the users and determine if the choice of system (and technology) being proposed
was a viable business proposition. Avison and Shah [17] feel it is a “crucial stage in the information
systems development life cycle” as “it is the last stage before a considerable amount of resources are
invested in a project, and therefore needs to be handled very carefully”. There are four relevant
sections to the Feasibility Study; Technical, Economical, Legal and Organisational.
3.5.1 Technical
This section focuses on the question “Does current technology support the proposed
system?” (Avgerou and Cornford [18]). It deals with technology issues such as hardware, software and
security. It is important that the chosen technology met the requirements of the user and the technical
decisions took into account any restrictions to the development.
In this project, Java and MySQL was selected as the technology to apply in implementing the system.
The proposed system is feasible as the database can cope with the storage requirements when holding
the video/member/rental details whilst the application can manage a number of different daily
transactions passing through the system (as data). This is important as it will ensure that any querying
or modifications to the database will be done efficiently via the graphical user interface of the java
application, therefore preventing problems for the user. Both technologies are viewed as being
compatible with each other and possess the ability to function across different platforms. The owner
currently does not have Java or MySQL (i.e. software) installed on his system but will have no
problems in having it installed on his computer as both can be downloaded at no cost. His PC (i.e.
hardware) was bought fairly recently and therefore there will be no need to purchase a different
machine which again results in no additional costs.
Another technical issue is regarding the security of the system. Even though security is not as a big
issue as the system is offline, there is still a threat where an individual can gain physical access to the
system. It is important that there is a good security measure in place to prevent access to customer
details as an individual could access personal customer information, thereby compromising the
organisation. Security can be achieved by a password login into the system as well as using the
password protection functionality within MySQL.
Mount Video Library Information System
19
3.5.2 Economical
This section concentrates on “whether a proposed information system is financially
affordable and if it is going to lead to economic benefits” [17]. Heathcote [19] states that “if the
benefits do not outweigh the costs, then it is not worth going ahead with”.
In this instance, a cost-benefit analysis was used to investigate the costs of the proposed system.
Software costs such as the use of Java and MySQL are virtually nothing as both are open source. The
analyst designing, developing and testing the system will not be charging any fees as the proposed
system is part of his final year project. He will also train the staff for free and will develop the system
using Eclipse as a framework which will not require any additional development costs. These minimal
costs will be extremely beneficial to the user as he will gain a system that efficiently rent outs a video,
searches for DVD’s etc without the need for any paperwork to be done.
3.5.3 Legal
This section involves the consideration of “externally imposed requirements or
conditions that an information system must meet” [17]. This is crucial as the system should not be
developed if it is not legally feasible, even though the system may be technologically and
economically feasible.
The implementation of the proposed system will pose no legal implications. The Data Protection Act
protecting the privacy of individuals will be maintained by Mount Video Centre. This will include the
use of a log in for employees to ensure individuals are not able to view other individual records. The
software to be installed will be legally feasible as it will be open source and therefore available to
anyone.
3.5.4 Organisational
This refers to how Mount Video Centre will need to adapt to the proposed information
system. It will cover any changes in the structure, procedures and decision making processes.
The proposed system needed to be built from scratch and tailored to the requirements of the owner,
which would help eliminate the current problems faced by the owner. If the organisation was unable to
manage the change that the proposed system would bring, then this would result in the information
system not being effectively utilised. The planned information system would efficiently computerise
the whole video rental system and transform the current work practice into a computer oriented
Mount Video Library Information System
20
structure. As the owner currently has a computer desktop, there are no problems expected in adapting
to the new system as long as training is provided. The procedure around the video rental would simply
change from a basic excel spreadsheet into a more advanced system. As the owner currently only has
one employee, there will be no need for any decision making or structural processes to alter.
3.6 Requirements Analysis
The most influential factor for the success of this project is whether the proposed system will fulfil its
users’ requirements as “the downstream costs of not capturing, omitting or misinterpreting customer
requirements may prove unsustainable later in the process” Maciaszek [20]. After having collected the
user requirements using the interviews, observation and sampling techniques, the exact requirements
of the proposed system needed to be defined. This was done by classifying them as either functional
requirements or non functional requirements.
3.6.1 Functional Requirements
These “describe what a system does or is expected to do, often referred to as its
functionality” Bennett et al [5].
The functional requirements are as follows:-
• Manage video/DVD stock control – Add, view, and edit video/DVD information
• Manage customer information - Add, view and edit customer details
• Manage the sales of DVD’s and audio cassettes
• Store and process details of a video/DVD rentals and returns
• Calculate Movie Rating – a scoring system where a customer gives the movie a rating out of
10 after watching it.
• Find out what video rentals have gone past their due date
• Separate logins for separate employees
• Administration – Allows new usernames to be created / passwords to be changed
• Search for videos/DVD’s which stars a certain actor/actress and is in stock – User can search
for all the movies that he currently has in stock that stars “Jennifer Love Hewitt”
• Search for most popular videos/DVDs being rented according to genre – User can search for
the most popular movie being taken out nowadays.
• To be able to reserve a video if out of stock
• Search and generate past sales – Work out the most popular movies and genres and help the
user decide on what genres he should increase his stock in
Mount Video Library Information System
21
• Import the users current videos into the system (further discussed in section 3.6.3)
• A printed user guide for a non-technical person
3.6.2 Non Functional Requirements
These “describe aspects of the system that are concerned with how well it provides the
functional requirements” Bennett et al [5]. This aspect of the requirements is more concerned with the
quality of the system. The following non functional requirements have been identified for the
proposed system:-
• Security – the use of a login will help prevent people gaining access to personal information of
customers.
• Usability – the user is able to use the system without any problems which will help ensure
they carry on using the system.
• User Interface – it needs to look professional but at the same time be very simple to use and
navigate especially as the user has low levels of computer literacy.
• Consistent procedures – so the procedure to add a new DVD would be very similar to when
adding a new customer.
• Performance – search results are bought up quickly as customers will get impatient if it takes
too long.
3.6.3 Import Requirement
As discussed in section 2.6.4, as there are high volumes of members and
DVD/Videos, it would be a time consuming and error prone process for the owner to manually
transfer the data from the spreadsheet file into the intended system one record at a time. Currently the
spreadsheet files have limited data inside so it has been decided that in order to make it easier for the
owner to switch to the intended system immediately, it would be best if he updated the Customer and
DVD spreadsheets with the full relevant details so the migration of data can be successful. The
following details are required:-
• Customer – Membership Number, Forename, Surname, Address, Town, Postcode, DOB
• DVD – DVD Number, Movie Name, Origin, Genre, “DVD” or “Video”, Main Actor, 2nd main
actor, Certificate, Rental Price



CHAPTER 4 : DESIGN AND IMPLEMENTATION
OF PROTOTYPE 1 - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

4.1 Introduction
After having gathered the user requirements for the intended system, this chapter will
concentrate on the design and implementation of the prototype. As the evolutionary Prototyping
methodology is being employed, there will be two iterations; the first will satisfy the minimum
requirements (this chapter) whilst the second will fulfil the extended requirements (chapter 5).
4.2 Database Design
In order to effectively utilise the intended information system, it is imperative that the
database is designed to overcome the problems of the current system. The database must also align
with the current business processes of Mount Video Centre; this will enable the owner to adapt to the
system.
4.2.1 Normalisation
The main purpose of normalisation is that it “effectively produces a set of data
groupings, which are known to be free of problems as well as providing a flexible and robust basis for
data design” Skidmore & Eva [21]. The database needs to be normalised to ensure data consistency,
which is done by removing data redundancy. Once this occurs, data will be more reliable and easier to
access. There are five normal forms of normalised data but Robinson and Prior [22] state that
“normalising data to the Third Normal Form is regarded to be sufficient” for an Information System.
In the Third Normal Form, the database will incorporate the First and Second Normal Form and
therefore be free of any non-trivial or functional dependencies. The initial schema is as shown below:-
Customer (CustomerID, Firstname, Surname, Address, Town, Postcode, HomePhone,
Mobilephone, DOB, Contactfullname)
DVD (DVDID, Name, Genre1, Genre2, Actor1, Actor2, Actor3, Type, Certificate,
Stock, TotalStock, Nationality, AdditionalInfo, Price, NumberofReviews,
TotalRating)
Rental (RentalID, CustomerID, DVDID, DateRented, DateDue, Paid)
HistoryRental (HistoryRentalID, CustomerID, DVDID, DateRented, DateReturned,
AmountPaid)
Login (LoginName, LoginPassword)
(KEY : Primary key = Underlined, Foreign key = Italic )
Mount Video Library Information System
23
4.2.2 Integrity Constraints and Data Types
As can be seen from the initial schema on the previous page, the database has been
normalised into five separate tables; each table containing a primary key to ensure that each record can
be uniquely identified. The functionality of each table is:-
• Customer – store all information regarding members
• DVD – store all information regarding DVD/videos
• Rental – store information regarding current DVD/Video rentals
• HistoryRental – store information regarding past rentals (will not be used until the second
prototype i.e. chapter 5)
• Login – store a username and password for users that are allowed access to the system (will
not be used until the second prototype i.e. chapter 5)
The Rental (and HistoryRental) table make use of two foreign keys; CustomerID and DVDID. Each
time a rental takes place, there will need to be a customer that will be taking out the rental who will be
referenced to his/her details via the Customer table. This means the CustomerID foreign key needs to
be placed in the Rental table. For each rental, there must also be a DVD that the customer is renting
out which is referenced to the DVD table via the DVDID foreign key. Foreign keys have therefore
been used to link the three tables together and enforce referential integrity.
Each attribute of the tables within the database schema need to have a data type assigned to it. The
CustomerID has specifically been set of type VARCHAR. This is because the owner currently has
membership cards with a six digit code, which are not in sequential order, thereby making it
ineffective to use AutoNumber as the data type.
4.2.3 Entity – Relationship Diagram
An Entity Relationship (ER) diagram helps to simplify the design of the database by
illustrating it as entities, attributes and relationships. An entity is defined as “any object about which
someone chooses to collect data on” [20]. An attribute is “a characteristic of an entity” [20] and a
relationship represents the associations between entities. There are three different types of
relationships that can be modelled; One-to-One (1:1), One-to-Many (1:M) and Many-to-Many (N:M).
The ER diagram for the intended database has been modelled on the following page.
Mount Video Library Information System
24
As can be seen above, there are five different entities, each of which are associated with another via a
relationship apart from Login. The Customer table is related to the Rental table as a 1:M relationship
because a single customer can make multiple rentals. The DVD table is related to the Rental table as a
1:M relationship because one DVD can be rented out multiple times. The same applies to the 1:M
relationships made between the Customer/DVD tables and the Past Rental table. The Customer table is
linked to the DVD table via a 1:M relationship as a customer can rate as many DVD’s as he wants to.
4.3 Human Computer Interaction
The proposed system needs to be efficiently designed to hide the complex system architecture,
and replace it with understandable information that is relevant to the user. From the owner’s point of
view, the interface represents the system and as he has a very basic level of computer literacy, the
human–computer interaction becomes an essential part of the design phase. The overall goal of the
interface is to “Reduce visual work, intellectual work, memory work, motor work and eliminate the
burden imposed by technology”, as stated by Dix et al [23]. This can then be used in conjunction with
the HCI issues highlighted by Shneiderman and Nielsen to specify the most significant areas of the
design that need to be followed (as mentioned in section 2.4 and 2.5). These are:-
• Data Entry
• Navigation
• Consistency
• Usability

4.3.1 Data Entry 
This is an important aspect of the intended information system as the system will
sometimes require a relatively large amount of information to be input; hence the user interface needs
to be setup to make the process as simple as possible. The best way of doing this is to allow the owner
to only select a choice from a number of different options for certain data elements. For example, the
use of radio buttons to allow the owner to select the £2 or the £3 rental price option. The complexity of
the system will be reduced and it will be much quicker for the user to select an option rather than
manually type 2 or 3. The main benefit will be that “redundant data entry will be avoided”
Shneiderman [24], and therefore the likelihood of committing an error will be significantly reduced.
The simplification of data entry is very important, especially when the user performs a Rental
transaction which needs to be done as quickly and efficiently as possible to avoid any customer
impatience.
Dix et al [23] recommend that the interface is designed so that it “relies on recognition rather than
recall”. By having easier methods of data entry, such as combo boxes, tick boxes, and default values,
the owner doesn’t have to rely as much on recollecting what specific information needs to go in there,
and can instead be more confident that the data entered (i.e. selected) is correct.
4.3.2 Navigation
Shneiderman [24] states that an effective navigation system “allows users to perform
tasks in the same sequence and manner across similar conditions”, so for example, the process for
adding a new customer would be similar to when adding a new DVD (i.e. fill in relevant information
and click on the ‘Add’ button).
Research has found that difficulties with the navigation can result in users becoming “frustrated with
it’s use” Shneiderman [24], which can then lead to a limited use of the application. The intended
Video Library Management application is a type of information system that will function optimally
when it is used for all transactions; therefore it is imperative that it is easy for the user to navigate
around the system.
In order to meet this design rule, the system will be designed so that after login, the user will arrive at
the main menu, which will contain all the buttons that will represent the different functionality that
will be available to the user at that point. Shneiderman [24] recommends that “complex sequences
should be avoided”, so therefore it would be best to structure the navigation system hierarchically.
Mount Video Library Information System
26
This would mean that there would only be one way of navigating to certain functionality, thereby
removing the option of the owner making an incorrect navigational choice. The use of a “Return to
Main Menu” button at each screen would help the owner return to the main menu if he accidentally
proceeds into an incorrect screen.
4.3.3 Consistency
Shneiderman [24] advises that an effective GUI will “Strive for Consistency”. This is
gained through using a consistent sequence of actions in similar situations as well as identical
terminology used in prompts, menus etc. This then helps users to learn the application and apply what
they know across different parts of that application. An example of this would be that fields that are
highlighted compulsory when adding a new customer are highlighted in the exact same way when
adding a new DVD.
There also needs to be a consistency within the layout of similar functionality. The layout of the
system will be designed around a form-fill interface [16]. This layout represents an onscreen form
which is set up to show what information needs to be put into the system and where. The reason for
this choice is that the interface needs to be easy to learn and quick to use as an interview with the
owner revealed that he does not consider himself to be technically advanced. Kendall & Kendall [16]
support this type of layout as they feel it is “ideal for inexperienced users” as “no special skills are
required”.
4.3.4 Usability
Nielsen’s usability dimensions (as mentioned in section 2.4) can help identify aspects of the
system that can enhance usability, thus increase the probability of the application being employed
fully rather than partially. The system needs to be designed so that it is easy to use, has a high
productivity and produces relatively few errors.
Usability can be achieved by making the complexity of the system seem as simple as possible to the
user. This can partly be done by validation as it will reduce the possibility of an error popping up,
especially when data is being entered manually. There needs to be validation checks such as character
lengths and the data entry within compulsory fields. An example would be the ‘Membership Number’
which must have data entered into it or else when the owner attempts to add a new customer, he will
receive an error message. The error message must therefore be informative, so it helps the owner
pinpoint the source of the error and correct it.
Mount Video Library Information System
27
4.4 Application Design
The application was designed using the relational tables mentioned in section 4.2 and in
accordance to the interface principles highlighted in section 4.3. The aim of the first prototype is to
implement an application that satisfies the minimum requirements. These are:-
• Manage customer information (add, view and edit customers)
• Manage video/DVD stock control (add, view, and edit video/DVDs)
• Store and process details of a member renting and returning a video (or DVD)
• Calculate Movie Rating based on customer reviews
There will also need to be an initial ‘Main Menu’ page which will allow a user to navigate to the
specific functionality he would like to use by clicking on a button. The system is required to be as
simple as possible as the owner lacks computer skills; hence any difficulties can contribute to a limited
use of the application. There is also a need for validation to prevent user errors. Appendix E includes a
brief description and a diagram of the functionality that will be available to satisfy the requirements as
above. Please note Appendix E includes the design for prototypes 1 and 2.
This functionality was next to be implemented. It is very similar to the Customer class
in that it also allows the user to add a new DVD (or video), edit details or delete a current DVD. It is
again similar in validating data input, but additionally makes use of combo boxes and radio buttons, as
the example shows below:-
This makes it easier and quicker to input data. Also, errors are prevented as the user is restricted to
selecting only valid options (e.g. U, PG, 12A, 15 or 18).
4.5.3 Rental and Return of a DVD/Video (Includes Stock taking)
Both functionalities had to be aligned with the business processes. The Rental
functionality was implemented to facilitate the rental of a DVD by a customer. The Member ID and
DVD ID must be input into the relevant fields. The user must then click on the ‘Verify’ button, which
will automatically update the ‘Amount Due’ field so the user can inform the customer whether the
rental price is £2 or £3. The owner previously mentioned in an interview that members sometimes
forget their money or insist on paying for the DVD on returning it. This has been incorporated into the
system by the owner having to select an option from the radio buttons to confirm whether the rental
amount has been paid or not, as can be seen below:-
Automatically
updated fields
Need manual
data entry
Mount Video Library Information System
30
The Return functionality works by entering the DVD ID which updates a table of people who have
rented out that specific DVD. The corresponding row from the table which includes the customer
name can then be highlighted to be marked as returned. The user can then optionally add the
customer’s opinion of the movie as a rating out of 10 and click on ‘Return DVD’. This will then make
three checks;
1. Was the rental price originally paid? If no, then a message will pop up informing the owner
that the rental amount of £2/3 is owed.
2. Has the DVD been returned after its due date? If yes, it will calculate the number of days it
was overdue, then whether the rental price is £2 or £3 and multiply the two figures together
and inform the owner of the amount owed due to number of days overdue. For example, 3
days overdue on a £3 rental per day DVD would result in a £9 fee expected.
3. Do both of the conditions as above apply? i.e. rental amount not paid and the DVD was
handed in late. If yes, then the amount expected is informed via a pop up message.
An example of a return is as show below:-
The implementation does also stock take when renting (i.e. deduct 1 from current stock) or returning a
movie (i.e. add 1 to current stock).
4.5.4 Calculate Movie Rating
This functionality was implemented so that the owner could find out the average
customer rating for any DVD. This can be done by:-
1. Entering the DVD ID – by doing this and clicking on ‘Verify’, the name of the DVD will
appear in a text field. This acts as a validation technique to ensure the DVD ID is entered
correctly and corresponds to the name. This can only be used when the owner knows the
DVD ID.
Mount Video Library Information System
31
2. Selecting the DVD Name from a combo box list – this is made easier as the list has been
sorted alphabetically. This can especially be used, for example, if the owner is asked by a
member for a rating based on a movie, for which he does not have the DVD in front of
him and therefore does not know the DVD number.
Both functionalities result in a pop up box (as shown below) giving the average rating for a DVD and
how many people have rated it. If there are no ratings, a message comes up to confirm this.
4.6 Application Testing
The application can be tested in a variety of ways but it was most appropriate to utilise the Unit
Testing method followed by User Acceptance. This chapter discusses the testing carried out and the
issues identified during this stage.
4.6.1 Unit Testing
Unit Testing involves each component of the system being tested separately to ensure
that it works. An example would be to test the validation/data input etc when “Adding a new
customer”. It is important to note that the majority of errors found in the system were discovered and
fixed in the implementation stage. This was because the java code was fresh in the developers mind,
thereby producing a corrective action easier and quicker. Results of these tests have been included in
Appendix G (Please note that Appendix G includes test results from the full working system, i.e.
prototypes 1 & 2).
4.6.2 User Acceptance Testing
This involves the system being tested by the user, using ‘real world’ data and
situations. This method of testing is essential as it will help in satisfying the user requirements. The
results from User testing have been incorporated in the following section.
Mount Video Library Information System
32
4.6.3 Evaluation of Test Results
After collating the results from both tests, it was decided that the following features
would need to be added into the second iteration:-
• Print Member Details - Currently the user has a membership form which needs to be filled out
every time there is a new member. This form basically contains details such as name, address and
signature. The user would like the system to produce a print out of this.
• Add Manual Customer Review Rating – Currently the only way to add a rating within the system
is when a DVD is returned. The owner has requested that there be an option for him to add a
manual rating, especially as he likes to watch a lot of movies himself. This would mean that he
could rate a movie, rather than going through the whole process of rental/return.
• Member Lock – The user has requested that the system allows him to put a lock on a member. He
mentioned that sometimes a member does not return a movie, and when he tries to contact them,
they don’t return his phone calls. The user would therefore prefer functionality to be set so that a
customer can be locked. IF he then tries to make a DVD rental, the user would be notified of this
(whether the user is the owner or an employee).
The system could be further improved by making the following enhancements:-
• Check Age of Renter – The user feels that it would be helpful to him if the system was able to
notify him if a renter wants to rent a DVD but is too young to do so.
• Name of Renter Added – This is applied during the Rental stage. The user would prefer to have an
option where the contact (e.g. wife of member) is able to rent out a DVD, which is recorded within
the system. The age of the contact must also be checked.
• Rental Validation – Both user and unit testing indicate the need for some type of validation of the
customer ID and the DVD ID. This will help prevent human errors. For example, a DVD ID could
accidentally be input as ‘12344’ instead of ‘12345’, and without confirmation of the DVD name,
there would be a record saying the member rented out that movie when they haven’t. This could
then later cause problems, leading to customer dissatisfaction.
• “Main Menu” button – This needs to be placed in the corner so that the user can’t accidentally
click on it. The current prototype has located it with the other buttons, so the user could
accidentally click on “Main Menu” instead of “Add customer”.
• Compulsory fields – There should be a small note saying that * represents compulsory fields.
• General problems – Results from the Unit testing showed that validation of some fields was not
working. These problems have been discussed further in Appendix G.
Mount Video Library Information System
33

CHAPTER 5 : DESIGN AND IMPLEMENTATION
OF PROTOTYPE 2


5.1 Introduction
During the second stage of the evolutionary prototyping methodology, the system was
enhanced to include the extended requirements and incorporate the additional features requested by the
user. This chapter will first describe how the implementation of the database and application was
modified to integrate the requested additional functionality. This will then be followed by the design,
implementation and testing of the extended requirements. Annotated screenshots of the full system as
well as snippets of code can be found in Appendix F.

The age is then verified against the certificate. A prompt is presented if the user is too young:-
• Name of Renter – By entering the Customer ID and clicking on “Verify”, the user can now choose
the name of the renter (i.e. member/contact) from a drop down box. As shown below, this will
help validate the Customer ID input.
• DVD ID – By entering the DVD ID and clicking on “Verify”, the title of the DVD will be
presented on the screen. The user can then match the title to the DVD cover to confirm the correct
input, thereby making this a form of validation.
5.3.2 Print Customer Details
The Customer class was customised so that the user can print out the member details
either when a new member is added, or by searching for the member and then clicking on the
“View/Print Details” button. Both actions will result in a Customer.html file being written on to the
desktop, which can then be viewed and printed. This means that the user will no longer need to
manually fill in the membership form, but instead he can print out the details which can then be signed
by the member.
5.3.3 Manual Customer Review Rating
After navigating through to the Rating section from the Main Menu, the user can
search for a DVD by either entering the DVD ID or by selecting the movie name from a combo box
list (as detailed in section 4.5.4). The rating is then added for that selected movie by choosing a score
from 1 to 10 from the combo box, and then clicking on “Add User Rating”.
5.3.4 Member Lock
This functionality has been incorporated within the Member screen. The owner is
able to lock a member by checking the tick box. This has also been integrated within the rental screen
by informing the user if the locked member tries to rent out a DVD on that account.
Mount Video Library Information System
35
5.3.5 Other improvements
The GUI of the application has been further improved by placing the “Main Menu”
button in the bottom right corner, outside of the tabbed screen. This makes it clearer and decreases the
likelihood of the user accidentally clicking on it. Other general errors recognised during the unit
testing have also been resolved such as validation of compulsory fields.
5.4 Design of Extended Requirements
These were designed taking in to account the design factors as mentioned in section 4.3. The
following extended requirements were designed and completed during this prototype:-
• User Login
• View overdue Rentals
• Import current Member/DVD details
• Customise search for a movie
• Search by Actor
• Calculate Sales Figures
• Administration
Please refer to Appendix E which includes a description and a diagram for the functionalities.
5.5 Implementation of Extended Requirements
Full annotated screenshots of these functionalities can be seen in Appendix F. The following
section will describe how the extended functionality was implemented, with supporting snippets of
code and screenshots.
5.5.1 User Login
This is the initial screen when starting up the application and will only allow access
into the system if the correct username and password has been supplied. It therefore acts as a measure
of security. A security feature of the login includes an * representing each character of the password.
This has been coded using: - Password = new JPasswordField();
The login has also been implemented to prevent SQL injection. A potential hacker would get an error

5.5.2 View Overdue Rentals
This can be viewed by clicking on the “Rent/Return/Overdue DVD” button. The
system will internally search for all overdue movies from the database. An investigation into a JTableMount
37
The data is then retrieved from the Array List and input into the corresponding fields within the
database table. The completion of the transaction is marked via a confirmation message. Validation is
included to check the membership ID does not already exist.
5.5.4 Customise Search / Search by Actor
Both functionalities are designed to help a member in deciding what DVD to rent according
to specific criteria. The “Search by Actor” functionality works by the user selecting an Actor / Actress
from a combo box, whilst the “Customise Search” functionality works similarly but it additionally
provides more criteria as can be seen below:-
Both result in a JList being updated according to the results of the criteria.
As the Actor/Actress combo box is based on the Actor1, Actor2, and Actor3 fields within the DVD
table, the system must retrieve data from all of them. The following query does this:-
“SELECT DISTINCT Actor1 FROM DVD UNION SELECT DISTINCT Actor2 FROM DVD UNION
SELECT DISTINCT Actor3 FROM DVD ORDER BY Actor1”
5.5.5 Calculate Sales Figures
This business functionality will help the user calculate the total revenue generated within a
certain time period as well as the areas from where most of this revenue has come from. By entering
two dates or selecting pre defined dates (such as past month), the user can view the revenue figures as
the following screenshot:-
Could show the user
that it may be best to
increase his stock for
this movie
Shows whether most of the
revenue is coming from English
or Indian movies. The user can
then purchase more DVD’s in
the more popular origin.
Shows what genre of
movies is most popular
within his members.
He can target those
genres more for future
purchases
Shows Total
Revenue. Could
be used for
accounts
Mount Video Library Information System
38
5.6 Application Testing
The issues identified for improvement during the Unit Testing and User Acceptance testing is
as follows:-
• Lock functionality – Currently a member can be locked only via the “Customer” screen. The user
would prefer it if this functionality is implemented at the “Overdue” screen as well. This means he
could just select the renter from the table and lock him, rather than trying to remember his ID and
going to the “Customer” screen.
• Import DVD/Member Details– Currently the user needs to place the MS Excel workbook in the
correct place and type in the correct filename for it to work successfully. It has been decided that it
would be best if the user could search for the workbook via a directory window.
• Date format – The user would prefer to have an English formatting of the date i.e. For March 23rd
2007; he would prefer to enter 23-03-2007 rather than 2007-03-23.
Mount Video Library Information System
39
• Search Actor – the user would sometimes prefer if he could manually enter the name of an actor
when searching for it rather than having to look through a large list within a combo box.
• Tool tips – Sometimes it is not very clear what the functionality of a button actually is.


CHAPTER 6 : EVALUATION - VIDEO LIBRARY MANAGEMENT SYSTEM PROJECT

6.1 Introduction
This chapter evaluates the system to determine if it has been a success or not. It first discusses
the success of the application in comparison to the requirements specified by the user. It then
considers the usability aspect of the system and finally performs an assessment against alternative
solutions.
6.2 Evaluation Criteria
These are used to measure how successful the system actually is. Dix et al [23] state that the
“Evaluation has three main goals: to assess the extent and accessibility of the system’s functionality to
assess users’ experience of the interaction and to identify any specific problems with the system”.
Bearing this in mind, the evaluation focuses on the following five criteria:-
• Methodology – this covers how effective this was in managing the different stages of the
project
• Technology – this covers how practical Java and MySQL were in developing the system
• User Requirements – this involves the evaluation of the functionality in comparison to what
the user required.
• Usability – this assesses the “user’s experience of the interaction and its impact upon him”
[23].
• Alternative Solutions – this evaluates how successful the system is against other products out
there at the moment.
6.3 Effectiveness of Methodology
The methodology followed during the project was evolutionary prototyping. This was an
alteration from the original methodology selected as that was the Waterfall Model with iterative
feedback. It was originally felt that the Waterfall Model would sufficiently allow the full project to be
completed with any user requested alterations to be made after the user testing stage. As the project
proceeded into the end of the analysis stage, it was decided that it would be best to utilise the
prototyping methodology. This was because the owner indicated that he would be available for
interviews more frequently and the developer realised that it was best to involve the owner as much as
possible, rather than near the end. This meant that it would be easier to adjust the system to include
Mount Video Library Information System
41
any requirements that were additionally requested by the user midway through the implementation
rather than after completing it.
The alteration in methodology was proved to be justified as there were numerous changes made to the
system and they were completed because of the flexibility provided. There were still some issues
regarding the use of this methodology as there was a waiting period for the evaluation of the prototype
by the user. Another issue was the addition of new user requirements which resulted in changes having
to be made to the system and the database.
6.4 Effectiveness of Technology
There were two different technologies used to implement the system; Java for the user
interface and MySQL for data storage purposes. After completing the system, it is still felt that the
choice of technologies was correct. The developer had previous experience in Java which meant that
he could immediately start implementing the system after the design stage as opposed to C# or VB
which would need to be learnt before development. This was beneficial as more time was spent on the
development of the system. One of the good features of Java was its ability to incorporate
functionality to interact with MS Excel (i.e. POI/HSSF). MySQL was also a very good technology as
the developer was experienced in SQL, it was efficient for data retrieval/manipulation purposes and it
bore no cost to the owner.
6.5 User Requirements
These are the functionalities that the user wants to be included within the system. They were
agreed early on (section 3.6) and needed to be incorporated within the application for the system to be
fully considered as a success. The nature of the methodology used mean that preliminary evaluation of
the prototype had been taken twice already (as detailed in sections 4.6 and 5.6). The final evaluation of
the functionality was undertaken by two users; an employee and the owner. Both participants provide
a representative sample as they are the only people who are able to make a comparison of the
prototype to the requirements. Both received extensive training to ensure they could thoroughly
evaluate the functionality.
The evaluation stage involved the prototype being installed with the underlying database on the
owner’s machine at Mount Video Centre. The current member and DVD details were input into the
database via the Import functionality. This entailed a MS Excel Workbook that had been updated with
all the relevant member/DVD details by the owner, in accordance to the developer’s request (as stated
in section 3.6.3). The system imported all of these details into the database, which meant that the user
could run the prototype within a ‘real world’ situation, rather than using test data. He was asked to run
Mount Video Library Information System
42
this in parallel to his current system for 10 days and produce a diary of the problems he faced. The
evaluation forms (Appendix H) were used to gather user opinions and document the dairy comments.
The users were asked to give a score of 1-5, with 1 representing very good and 5 representing poor.
The following is a summary of their responses for the user requirements.
The ability to Manage Customer Information:
This was generally a success as the user felt it was easy to add, edit or delete member details. The user
was impressed with the use of an html file to display the details of a member, as this allowed him to
open up the file and show the screen to the member just to confirm that the details were correct. The
only concern he had was with a lack of professionalism in the print out. He felt that it was very plain
with a lack of any distinct features. The developer felt that there was no real need for there to be a
number of different features to be included in this, but instead a simple print out could be signed and
stored away. There was no appropriate clarification on this as this became a user requirement after the
first prototype had been completed, and the user made no additional remarks after the second iteration.
The ability to Manage DVD/Video Information:
This was also deemed as a success as none of the users had any problems in adding, editing or deleting
DVD/Video information. One of the users commented that they were more than happy with the
confirmation message when trying to delete a member. This prevented any accidental mistakes which
would result in the lengthy process of searching for a hard copy of the member details.
The ability to Rent out a DVD/Video
This user requirement was fully achieved as both users gave it a score of 1 in regards to how good the
functionality is. Both also commented on how happy they were with the age of the renter being
checked every time someone tried to rent out a movie.
The ability to Return a DVD/Video
This user requirement was deemed as a success as both users rated it highly when scoring it between 1
and 5. The owner was extremely happy with the way this was setup as it took the following three
factors into account:-
1. Whether the rental had been paid for already or not
2. Whether the rental was being returned late
3. Whether both of the above conditions applied
Mount Video Library Information System
43
The owner felt this would be very beneficial as it would prevent him losing any money during rental
transactions. The employee was also satisfied with this functionality but felt the process of the member
having to wait around as the user enters the DVD ID and selects a row from the table is unnecessary.
He would have preferred it if the member could simply drop off the DVD and leave. In response to
this concern, it is not possible for the system to handle this unless the business process is altered and
each single DVD (instead of movie) can be uniquely identified. The employee further commented that
the process for a member returning multiple DVD’s was repetitive. This was not implemented as the
developer was not aware of the problem. Unfortunately the user was also unaware as the User
Acceptance Testing performed after both iterations did not involve the use of the system in a ‘real
world’ situation but instead with test data. With this in mind, the developer will be incorporating this
feature into the system after the completion of the project. This will allow the user to search via the
Customer ID rather than just DVD ID.
The ability to View/Add a Customer Rating
This user requirement was deemed as a success up to a certain extent. The employee was satisfied
especially as it provided information on the number of member reviews rather than just the average
rating.
The owner was not as content as he noticed that the “Search by Movie Name” bought up a full list of
movies, which had a repetition (i.e. The Italian Job was present twice). This was due to two reasons.
The first reason is that there are two different ID’s of the same movie; one is a DVD, the other is a
Video. The second reason was that some movies are a remake (e.g. the 2003 was a remake of the 1969
version with the same movie name). This was not taken into account as the repetition does not occur
frequently. The system will therefore be modified so that each DVD has a date associated with it and
movies with the same date would have their ratings combined. The other difficulty the owner realised
was with the “Add Rating” functionality. This could have been improved by having an option to rate
in halves (i.e. 1.5, 2.5, 3.5…..etc).
The ability to View Overdue Rentals
This user requirement was deemed fully as a success as both users were satisfied with it. The owner
was impressed with the contact details displayed which allowed him to contact members if the rental
was overdue by a few days.
Mount Video Library Information System
44
The ability to Lock a Member Account
This user requirement was completed successfully but the owner feels it was only half completed. The
system is able to lock a member, but the difficulty arises in unlocking him because the user is unable
to identify the exact reason why he was locked in the first place. This functionality was not
implemented due to a lack of clarification which came about because it was added after the first
prototype had been completed. This could be added by simply having an extra field that allows a note
to be added to a member’s account, which can detail the locking reason.
User Login
This user requirement was deemed as a success up to a certain extent. The main functionality of it has
been completed in respect to the need for a valid username and password to gain entry into the
application, which provides a security feature. The user feels that it would have been better if there
were user levels which meant that the owner would be able to gain access to certain functionality
which the employee would not be able to. This was not implemented due to it being lower priority as
there is only one employee working there at the moment. The developer intends to add this
functionality after the project has been completed.
The ability to Import current DVD/Member Information
This user requirement was deemed as a success as both users were extremely satisfied with it. The
employee praised how easy it is to find the file using a Windows style directory rather than having to
place the file in the appropriate folder and then type in the name of the workbook.
The ability to Customise a Search or Search by Actor
This functionality was completed and considered to be fully satisfactory. The owner was
complimentary of the clear list of movies that are displayed in accordance to the criteria. He also felt
there was room for improvement; where he could simply click on one of the movies and it would go
straight to the Rental screen, with the relevant fields automatically being filled in.
The ability to Calculate Sales Figures
This functionality was completed and considered to be fully satisfactory. As the owner was the main
person who uses this functionality, he was the only one that could fully comment on it. He was happy
with the option of either entering his own two dates or using the pre-defined ones. He felt all the
figures would be useful to him apart from the “Total Stock” field. He thought this was not sufficient
by itself as it didn’t tell him whether there is a need for an increase in stock. It would have been better
Mount Video Library Information System
45
served if there was also a figure informing the owner as to the number of times an individual has tried
and failed to rent the specific movie because it was out of stock.
The ability to Change User Details
This functionality was fully completed and accepted but considered to be only partially satisfactory as
the user scored it 3 out of 5. The owner noticed that it is possible for the employee to change the
password of the owner if he is aware of his username. There is also no formal method of retrieving a
forgotten password and again there are no specific user levels which would allow only the owner to
add new users to the system. This would be added by the resetting of the password which could only
be done by the administrator and there would be validation to ensure a user can only change his own
password.
The ability to Change Rental Price
This functionality was completed and considered to be fully satisfactory. As the owner was the main
person who uses this functionality, he was the only one that could fully comment on it. The user
scored this functionality as a 1 as he was impressed with the rental price automatically updating all the
DVD’s and Videos with the relevant prices.
6.6 HCI and Usability
It is imperative that the prototype given to the user is seen to be usable. Lindgaard [8] states
that a “major indicator of usability is whether a system is being used”. If the users find difficulties,
they will avoid using those parts of the system which will significantly decrease the effectiveness of
the system as all of the functionalities are dependent on one another. Background research (Section
2.4) showed that the usability of the system could sufficiently be measured using Nielsen’s Usability
Principles [9] and three additional HCI features. To get a more thorough evaluation, it was decided
that three users would be asked to use the system and fill out a corresponding evaluation form
(Appendix H), as well as briefly be interviewed. The first user was again the owner of Mount Video
Centre, the second was the employee working there at the moment and the third (D.A. Bam)
represented someone that is outside of the company and therefore unconnected to the project. The
owner and employee commented on the usability according to the 10 days they had the prototype,
whilst the third user, was given the majority of a day to get used to the system. The prototype
evaluated by all three users is summarised as follows:-
Mount Video Library Information System
46
Learnability
This was deemed as very successful as all the users felt that the system can be learnt within a day or
two with the appropriate training. The users commented that the simple procedures implemented and
the assistance provided for the input of data was essential in ensuring that it was not difficult to learn.
The employee and owner of the company were especially complimentary of how easy it is to rent out a
DVD to a customer, as all it requires is the Customer ID and the DVD ID. They also liked the system
being aligned with the business. The only concern was the confusion when learning how to “Add a
Rating” of a movie manually. This was because there were two options of selecting a movie (i.e. via a
combo box or by entering the DVD ID) and it became a bit confusing as only one was allowed to be
used when adding a rating.
Efficiency
This was also deemed to be successful as the users were able to perform their tasks more efficiently
that what the current system allows.
The most common processes within the company are the rental and return of a DVD or Video.
Therefore the time taken to perform these tasks will need to be measured and compared to the current
system. Also, as the business is customer-oriented, it has also been considered appropriate to measure
the time taken to view the average rating for a movie and to obtain a list of movies according to
specific criteria. The results of these are as shown below:-
Time Taken (Secs)
Task User 1 (Owner) User 2 (Employee) User 3 (External)
Rental of a movie (Current System) 70 45 N/A
Rental of a movie (Prototype) 50 30 25
Return of a movie (Current System) <30 div="" n="">
Return of a movie (Prototype) 75 50 40
View Average Rating for a movie 45 30 25
View movies based on criteria 70 50 35
It took the users a shorter time (compared to the current system) to rent out a DVD using the
prototype, as only the Customer and DVD ID were needed to be input, whilst the current system needs
manual entry of the renter name, DVD name and whether the rental has been paid or not.
For the return of a DVD, the current system processes it quicker as it only requires the users to find the
relevant row from the Rental worksheet and delete it. The users still feel though that the prototype is
Mount Video Library Information System
47
much more productive as it allows the recording of a customer based rating as well as an automatic
calculation of money owed.
The successfulness of the average rating and a list of criteria based movies being produced were
judged on the customer response of the question “Do you feel it took too long to complete your
requests”. All five people replied “No” to the answer. The major criticism directed for the efficiency
of the system was regarding the Return of multiple DVD’s by a single member. This required the
return process to be repeated for each of the DVD’s that was being returned.
Errors
This was also deemed to be very successful as the users received informative confirmation/error
messages. Confirmation messages such as when a new member was added to the system were
provided to prevent the user in repeating the same action. Error messages such as when a compulsory
field had been missed out were also provided informing the user of the exact field. All three users
commented on how clear the messages were. They also stated that it was difficult to make errors
because of the internal validation of the system. The main criticism was that it was sometimes a bit
difficult to recover from errors. An example given by the owner was for the ‘Member Lock’
functionality. To recover from accidentally locking a member would require the user to return back to
the customer screen, search for that specific member and then manually unlock his account.
User Satisfaction
This questions how pleasant it is to use the prototype. The overall opinion from all three users was that
the system was easy to use. They also consider the prototype to have helped them a great deal in
performing all the day to day tasks as well as other tasks in an efficient and effective manner.
Data Entry
This was an important part of the GUI of the system as the data input needed to be condensed as much
as possible, thereby making the process as simple as possible. The users commented that this was done
successfully especially as there is only a need to manually enter the Customer ID and the DVD ID
when undertaking the rental transaction as the system does the rest. The use of combo boxes, radio
buttons and default values ensured validation as well as increased efficiency. The only concern the
user had was the “Search by Movie Name” for the Customer Rating section. This was because it made
use of a combo box but as there are a large number of movies, there would be a need for significant
scrolling through the list. The user felt this was rectified up to a certain extent with it being in
alphabetical order and the option to “Search by DVD ID”.
Mount Video Library Information System
48
Navigation
This was also deemed to be successful according to the users as they felt they had no problems in
navigating through the main menu and returning back to it from the functionality screens. The main
problem as highlighted by the external user was that there was no connection between different
functionalities. So for example, it was not possible for a user to view the average customer rating for a
movie and then automatically go to the Rental screen with the details for that movie having already
been filled. He would instead need to navigate back to the main menu first.
Consistency
The users felt that this had been successfully completed up to a certain extent. The owner mentioned
that he got confused with the use of Member in some instances and the user of Customer in others.
Otherwise he felt date formats, buttons, labels etc were consistent throughout the system.
6.7 Comparison to Other Products
Two other solutions that also facilitate in the rental of DVD’s were analysed in section 2.2. It only
seems appropriate for there to be a comparison between both alternatives and the implemented system.
The comparison takes into account a number of features including usability, HCI and functionality.
Both were downloaded and installed as a free trial version. Unfortunately, the users were unable to
evaluate the software themselves as they were not available for this task.
6.7.1 SoftStore [1]
One of the main problems with this application was a poor GUI and usability. This
criticism was very important and the prototype was implemented to ensure that it would not share the
same problem. The GUI of SoftStore’s application (as can be seen in Appendix C) displays a lot of
redundant information such as the tax, Credit used and Invoice Total. None of these values would be
of use to the user. The application also includes cluttered information as highlighted in the appendix,
which makes it extremely difficult to use. Another disadvantage of the GUI is its overcomplicated
layout with a lack of separation between sections. All of these make the application very difficult to
learn and would most likely result in the owner not employing it. The prototype developed by the user
overcomes these problems as the user has stated that it is easy to learn, the layout makes it easy to
understand, and all information is relevant. One of the benefits of SoftStore’s application is its
advanced functionality as it allows DVD rentals, calculation of sales figures and rental prices
alteration. This has been incorporated into the prototype.
The only concern was highlighted by the third user (external) who commented that the system is a bit
too simple in terms of its user interface and it could become a bit frustrating for advanced users.
Mount Video Library Information System
49
6.7.2 Video Forecasting [2]
The main problem with this application was the lack of business functionality to help
the owner and a lack of general functionality that would help a customer. The application didn’t
include business functionality such as the calculation of total revenue in the past month, or the 3 most
popular movies rented out between two dates. It also didn’t include any type of specific customeroriented
functionality such as the use of the average rating functionality which is based on other
customer reviews of a DVD. Both functionalities have been implemented successfully into the
prototype.
One of the main benefits of the system is its excellent GUI which enhances the usability of the system.
The GUI of Video Forecasting’s application includes features such as images instead of names for
functionalities, an appropriate use of colour, and a professional looking interface. It is then further
enhanced by the use of a menu bar which provides more of a Windows application feel to it. It is
apparent that the GUI of Video Forecasting is superior to the prototype implemented, but the usability
of the prototype is deemed to be very successful by the user as the basic concepts to make a good GUI
were performed.
6.8 Possible Further Enhancements
The prototype could be further enhanced by including a number of extra functionalities:
• To be able to reserve a DVD/Video if out of stock
• The Lock Member functionality includes the reason for locking
• Identical movie names are effectively handled
• Interconnected functionality so that by clicking on a movie from the list, the rental screen
would appear with the relevant details having been filled out already
• The password is encrypted in the database to enhance security
• User Levels so the owner can be set as administrator and have full rights whilst the employee
doesn’t have certain rights, such as viewing Sales Figures
• Incorporation of the system with a website for renewals, viewing personal customer accounts
etc
• Appropriate user security to ensure a user can only change his own password and passwords
can be reset if forgotten (possibly the administrator could only do that?)
• Improve the GUI further
Mount Video Library Information System
50
CHAPTER 7 : CONCLUSION
The aim of this project was to produce a video library management information system for Mount
Video Centre. The system needed to include normal technical features such as the facilitation of DVD
Rentals/Returns and business features such as the calculation of sales figures. As the company is
solely customer oriented, it was best to also include additional features such as the calculation of the
average rating for DVD’s. The system produced needed to overcome current problems such as a poor
user interface, lack of a structure and ineffective time consuming processes. The Owner originally
made it clear that he lacks computer skills, so there needed to be extensive functionality within the
system, which was easy to use at the same time. This meant that there needed to be a clear focus on the
HCI and usability aspects of the system.
The evaluation of the solution highlighted that the system had been implemented successfully and
accepted according to the user requirements. The users were extremely satisfied with the usability as it
allowed them to effectively utilise the functional requirements. The owner commented that he was
more than happy in deploying the system on to the machine at Mount Video Centre. He said that he
has full confidence that the system can fulfil its potential and in the process, help increase customer
satisfaction, which should then lead to an increase in revenue and profits.
The evaluation did also bring up some concerns, which mainly concentrated around the duplication of
movies and the lack of user access levels. A comparison against other similar products showed that the
system effectively made use of the different functionality, but it could still not match up to the superior
looking GUI’s that are available at the moment. However, this would be a perfect example of an area
that can be enhanced in the future to make the system even more satisfactory to the user. In
conclusion, only time will tell on how successful the system actually is as it is utilised on a full time
basis at Mount Video Centre.

2 comments:

kathleen whittington said...

Really thanks for sharing this useful post !! This post is very informative and I have got very good information.
online subscription billing software

MednetLabs said...

Thanks for sharing!!!
Your blog is very nice and we hope you are providing more information in future times.

Want Best Hospital Software in India?
Then Visit us
Best Hospital Management Software in India
Best Hospital Software in India

G+

Pages