You are on page 1of 52

Dynamic Data Deployment System with a MIS

i


COVENTRY UNIVERSITY

FACULTY OF ENGINEERING & COMPUTING


BACHELOR OF ENGINEERING (HONS) IN COMPUTER NETWORKING AND
COMMUNICATIONS TECHNOLOGY

A303EC FINAL PROJECT REPORT


Dynamic Data Deployment System with a MIS


STUDENT NAME : Geeshapathi Perera
STUDENT ID NUMBER : X
SUPERVISOR : x


Dynamic Data Deployment System with a MIS

ii

Acknowledgement

There were many that contributed to complete this project in a variety of ways. Their guidance
and encouragement helped me to successfully complete this project.
First, I would like to thank my supervisor for guiding and helping me throughout the project and
for giving the maximum support to find solutions to my many problems.
I would like to give my special thanks to my loving family for their support and encouragement,
and to all my friends who encouraged me to complete this.
Dynamic Data Deployment System with a MIS

iii

Abstract

This project dissertation has been written to fulfill the requirements of the individual project.
The aim of the project is to develop a dynamic data deployment system that would allow an
entity to publish information either within an intranet system or on the Internet via a website
wish customizable content layouts thereby providing full control of the information that is being
published.
Comprehensive analysis and design was carried out, and the final system was developed using an
open source platform consisting of PHP and mySQL for the server-side programming together
with HTML, CSS and JavaScript for the front-end.
The end result has been the development and implementation of a comprehensive system that
satisfied both the requirements of the client as well as the requirements of the final year Project
of this Degree programme.




Dynamic Data Deployment System with a MIS

iv

Executive Summary

The project was initiated with a detailed review of the customer requirements, thereby leading to
the development of a system specification report together with a feasibility report for the
implementation aspects.
Fact gathering was carried out primarily by using Interviews and Observations, and these
findings were then analysed in order to elicit the functional requirements and prepare the
requirements specification. These requirements were then converted into system designs using
modeling tools which were eventually developed into working modules by using PHP.


Dynamic Data Deployment System with a MIS

v

Table of Contents
Acknowledgement .......................................................................................................................... ii
Abstract .......................................................................................................................................... iii
Executive Summary ....................................................................................................................... iv
List of Figures ................................................................................................................................ ix
List of Acronyms ........................................................................................................................... xi
1 Chapter 01 Introduction ........................................................................................................ 1
1.1 Project Overview .............................................................................................................. 1
1.2 Aims and Objectives ........................................................................................................ 1
1.3 Deliverables of this project .............................................................................................. 2
1.4 Document Structure.......................................................................................................... 2
1.5 Similar Systems ................................................................................................................ 3
2 Chapter 2 - Background ........................................................................................................... 4
2.1 Introduction ...................................................................................................................... 4
2.2 What is a Dynamic Data Deployment System? ............................................................... 4
2.3 Components of the Dynamic Data Deployment System .................................................. 4
2.4 Development Process ....................................................................................................... 4
2.5 Off the Shelf (OTS) or Custom Development? ................................................................ 5
2.6 Objectives for the development of this project ................................................................ 5
2.7 Timeframe ........................................................................................................................ 5
2.8 Project Management ......................................................................................................... 5
3 Chapter 3 Analysis and Design ............................................................................................ 7
3.1 Overview of the System ................................................................................................... 7
3.2 SSADM ............................................................................................................................ 7
3.3 Suitability of SSADM for this project.............................................................................. 8
Dynamic Data Deployment System with a MIS

vi

3.4 Fact Finding...................................................................................................................... 9
3.4.1 Interviewing .............................................................................................................. 9
3.4.2 Research .................................................................................................................. 10
3.5 Drawbacks in Existing Manual Process ......................................................................... 11
3.6 High end requirements of the management .................................................................... 11
3.7 Feasibility Study ............................................................................................................. 11
Operational Feasibility .......................................................................................................... 11
Technical Feasibility .............................................................................................................. 11
Schedule Feasibility ............................................................................................................... 12
Economic Feasibility ............................................................................................................. 12
Legal Feasibility .................................................................................................................... 12
3.8 System Design ................................................................................................................ 12
3.8.1 Context Diagram ..................................................................................................... 12
3.9 Level 1 DFD ................................................................................................................... 13
Process symbol ...................................................................................................................... 13
Data flow symbol - ................................................................................................................ 13
Data store symbol .................................................................................................................. 14
External entity symbol ........................................................................................................... 14
3.10 Entity Relationship Diagram (ERD) .............................................................................. 15
3.11 Entity Life History (ELH) .............................................................................................. 16
3.12 Functional Requirements................................................................................................ 16
3.13 Non Functional Requirements ........................................................................................ 18
3.14 Users of the System ........................................................................................................ 19
3.15 User Interfaces................................................................................................................ 20
3.16 Acceptance Criteria ........................................................................................................ 20
Dynamic Data Deployment System with a MIS

vii

4 Chapter 4 The Database ...................................................................................................... 21
5 Chapter 5 Interfaces ............................................................................................................ 23
5.1 What is Human Computer Interfacing / Interaction ....................................................... 23
5.2 Goals of HCI .................................................................................................................. 24
5.3 Key points in developing the HCI .................................................................................. 25
5.4 HCI Design Strategy ...................................................................................................... 25
5.5 Interface Examples ......................................................................................................... 26
6 Chapter 6 Implementation .................................................................................................. 29
6.1 The environment ............................................................................................................ 29
6.2 Hardware Requirements ................................................................................................. 30
6.3 Software Requirements .................................................................................................. 30
6.4 Security Implementation ................................................................................................ 31
6.5 Code Implementation ..................................................................................................... 31
7 Chapter 7 Testing................................................................................................................ 31
7.1 Overview ........................................................................................................................ 32
7.2 Testing Types ................................................................................................................. 33
7.2.1 Unit Testing ............................................................................................................ 33
7.2.2 Integration Testing .................................................................................................. 34
7.2.3 System Testing ........................................................................................................ 35
Black box ............................................................................................................................... 36
White box Testing ................................................................................................................. 36
7.3 What is a test case?......................................................................................................... 36
8 Chapter 8 Conclusion ......................................................................................................... 38
8.1 Results of the Project...................................................................................................... 38
8.2 Objectives Vs Achievements ......................................................................................... 38
Dynamic Data Deployment System with a MIS

viii

8.3 Lessons Learnt & Critical Appraisal .............................................................................. 39
9 References ............................................................................................................................. 40
10 Appendix A Database Samples ....................................................................................... 41
11 Appendix B User Documentation .................................................................................... 41



Dynamic Data Deployment System with a MIS

ix

List of Figures

Figure 1 - Context Level DFD ...................................................................................................... 12
Figure 2 - DFD Process Symbol ................................................................................................... 13
Figure 3 - DFD Data Flow Symbol............................................................................................... 13
Figure 4 - DFD Data Store Symbol .............................................................................................. 14
Figure 5 - DFD External Entity Symbol ....................................................................................... 14
Figure 6 - Level 1 DFD for Front End .......................................................................................... 14
Figure 7 - ERD Diagram ............................................................................................................... 15
Figure 8 - ELH .............................................................................................................................. 16
Figure 9 Front end of the system .................................................................................................. 20
Figure 10 - Database view ............................................................................................................ 21
Figure 11 Table 2 ....................................................................................................................... 21
Figure 12 - Table 3 ........................................................................................................................ 21
Figure 13 Table 4 ....................................................................................................................... 21
Figure 14 Table 5 ....................................................................................................................... 22
Figure 15 Table 6 ........................................................................................................................ 22
Figure 16 Table 7 ....................................................................................................................... 22
Figure 17 - Login Screen .............................................................................................................. 26
Figure 18 - Main Interface ............................................................................................................ 26
Figure 19 Available Users ......................................................................................................... 26
Figure 20 User details ................................................................................................................ 27
Figure 21 - Data maintenance screen ............................................................................................ 27
Figure 22 - More Detailed Data Maintenance Screen .................................................................. 27
Figure 23 - Sample Report ............................................................................................................ 28
Dynamic Data Deployment System with a MIS

x

Figure 24 - The testing process ..................................................................................................... 32
Figure 25 - Unit test types ............................................................................................................. 34
Figure 26 - Integration testing ....................................................................................................... 35
Figure 27 - Testing Process........................................................................................................... 35


Dynamic Data Deployment System with a MIS

xi

List of Acronyms

SSADM Structured Systems Analysis and Design Methodology
DFD Data Flow Diagram
OTS Off the Shelf
ERD Entity Relationship Model
ELH Entity Life History
CBIS Computer Based Information System
HCI Human Computer Interaction
Dynamic Data Deployment System with a MIS

1

1 Chapter 01 Introduction
1.1 Project Overview

This is a dynamic data deployment system with a MIS. Once you decide on the type of content
(news events, calendaring events, etc), you can decide on the record structures and table
structures for the database. Then the design of the RDB can be done and then implemented and
tested. There will be other data as well such as what you would keep for tracking user locations,
user authentication, user preferences, user profiling, audit logs, etc. This is the back-end part.
The front-end part is the web application. You should first do requirements analysis to determine
the functional and non-functional requirements. For example, the functional requirements will
include user account management including maintaining the preferences (as given by the user),
profiles (as determined by the system), audit reporting, identification & authentication, access
permission management, etc. Other functionalities will include dynamic content presentation
based on user identity, location of access, time-of-day, and any other parameter used for creating
the dynamic content layout schemes.
1.2 Aims and Objectives
The objectives for undertaking this project were varied, but they can be summarized as follows:
To identify the appropriate implementation technologies.
To produce a requirements specification.
To analyze and design a suitable system.
To implement a system covering the core functions of the system.
To evaluate the suitability of modules for designing the system.
To evaluate the suitability of structured methods for designing the system.


Dynamic Data Deployment System with a MIS

2

1.3 Deliverables of this project
The end deliverables that are the outcome of this project are as follows:
Requirements specification
Functional specification
Data model
Database design
Completed System and User guide
1.4 Document Structure
Chapter 1 of the dissertation serves as an introduction to the project. The balance of this
dissertation has been arranged according to the following structure
Chapter 2 Background
o Provides background information for the development of this project
Chapter 3 Analysis and Design
o Provides an overview of the system together with various results of the analysis as
well as the design
Chapter 4 Interfaces
o Provides samples of the interfaces that were used along with the reasons for doing
do, from a theoretical to practical mapping
Chapter 5 Implementation
o Explains the implementation environment both in software and hardware and
provides information about how the implementation was carried out
Chapter 6 Testing
o Provides information about the need for testing, how testing was carried out, and
sample test cases
Chapter 7 Conclusion
o Provides information about the end result and status of the project along with an
analysis of future work along with a critical appraisal
Dynamic Data Deployment System with a MIS

3

Appendix
o Supplementary information generated as a result of proceeding with the chosen
methodology.
1.5 Similar Systems

As the requirement is to develop a dynamic data deployment system, there are many working
examples available online which can be used to develop an understanding of the features that
must be present in such a system.

However, compared with a traditional social networking websites, this System would be better
adapted for a corporate environment.

Systems that were studied as part of this exercise include:

1. Facebook.com
2. Hi5.com
3. Myspace.com

Dynamic Data Deployment System with a MIS

4

2 Chapter 2 - Background
2.1 Introduction

This chapter focuses on the background information about the technologies and concepts that are
behind this project.

2.2 What is a Dynamic Data Deployment System?

Add more content here.

2.3 Components of the Dynamic Data Deployment System

Add more content here.

2.4 Development Process
Development of a Web Based Information System is a time consuming process as it has to
evolve with the evolution of the organization for which it was developed.
Developing an automated system from scratch can be done using the steps outlined below:
Step 1: Requirements analysis
Step 2: Sub-system selection
Step 3: Prototype development
Step 4: GUI development
Step 5: Integration and system test
This design process begins by gathering user requirements and building a general model of the
System. An analysis is then done of how the new system will integrate into the current business
practices. The new system design is then divided into modules, which are developed separately.
A prototype of the system is produced in the early stages of development to give stakeholders a
feel of what the final system will be like. The fourth step of the process involves developing the
Dynamic Data Deployment System with a MIS

5

GUI for the front-end of the system. The final step in the development process is the testing of
the various modules and components of the system and the integration of the system into the
business environment.

2.5 Off the Shelf (OTS) or Custom Development?

One major decision that had to be taken was as to whether a complete custom development
would be done, or whether an existing product can be customized, or whether an Off The Shelf
(OTS) application could be used. The final decision was to develop the system from scratch due
to the unique requirements that existed within the organization.
2.6 Objectives for the development of this project
The objectives of developing this system are two fold:
1. Satisfy the requirements for the final year project by developing and submitting a project
that meets the requirements of the academic board.
2. Develop a web based Dynamic Data Deployment System that provides the following:
a. Allow the user to manage the content layout via the back-end, including an MIS
component.
b. The front-end web module for displaying content.
2.7 Timeframe
A total of 6 months has been allocated to complete the project, implement it, and provide the
necessary implementation support to the organization.
This dissertation is being written to document the process that was followed in the
implementation of this project.
2.8 Project Management
Project management is very important for the success of the software project. The main goal of
the software project management is to work efficiently to a successful completion of the project.
The following two categories are main items in project management.
Dynamic Data Deployment System with a MIS

6


Project planning and scheduling
Project monitoring and reviews
To develop this project, project supervisors are the most important support resources. They help
in acting as project management consultants and advisers.
The project plan should be produced at the start of the project and viewed as a working
document.
Scheduling is an important activity. In order to schedule a project following identification is
helpful.
The tasks needed to complete the project.
Dependency among different tasks.
The tasks to be ordered in a logical sequence.
Tactics for managing the time.
Decide which tasks can take place in parallel.
To schedule meetings with supervisors as early as possible.
This involves allocating the time required to complete the separated sub activities. Schedules
were reviewed with progress of project. Each phase defined has to be accomplished according to
a time or date scheduled. Discussions were made with the management for the approval of the
schedule.

Dynamic Data Deployment System with a MIS

7

3 Chapter 3 Analysis and Design
3.1 Overview of the System
This web based system is to allow the user to dynamically generate a content layout dependant
on the type of information that is being presented. Front-end and back-end components should
be developed as part of the work. This chapter highlights the requirements of the said system
and how the features will be implemented.
3.2 SSADM
SSADM uses three viewpoints when analyzing and developing systems. This gives the
developers a clear understanding of the business requirements and help to remove errors. These
viewpoints are based on
Functions
Events
Data
Functions represent the users view of the processing that takes place in response to an event.
This is shown using data flow modeling these could be as simple as the process of registering
on the system as a customer.
Events can be anything that has an effect on the business system, such as a receipt of a
document. This views user entity and event modeling through entity life histories in this case,
an event can be the requesting of an item by placing a confirmed order for it.
Data is the raw material of any processing system and represented by the logical data model in
this case, the details about categories, sub categories, products, customers, etc
The lifecycle model that was used for this project is represented as:
Dynamic Data Deployment System with a MIS

8


Waterfall design model- (extracted from http://students.mimuw.edu.pl/SR/prace-mgr/jawaharlal)
3.3 Suitability of SSADM for this project
SSADM was selected due to the ease with which it could be used in this project. Additionally:
It is widely used and understood (even though it is considered to be an outdated
methodology from todays viewpoint, it is still widely used for small scale systems).
It is mature and stable (requirements are relatively stable).
It is used for data centric projects especially.
It is well adapted to project management, and has a large degree of technology
independence.
It consists of Post implementation feedback (hence the dual direction of the arrows in the
above diagram).


Dynamic Data Deployment System with a MIS

9


3.4 Fact Finding
There are five main fact finding techniques that are used by analysts to investigate requirements:

1. Background Reading
a. Documents that belong to the organization can be read and researched to obtain
an idea about the requirements of the organisation
2. Interviewing
a. Interviewing is probably the most widely used fact finding technique; it is also the
one that requires the most skill and sensitivity key people should be identified,
and they should be interviewed in a tactful manner.
3. Observation
a. Watching people carrying out their work in a natural setting can provide the
analyst with a better understanding of the job than interviews.
4. Document sampling
a. The analyst can collect copies of documents and forms during the course of
interviews and observation. These will then be used to determine the information
that is used by people in their work, and the inputs to and outputs from processes
can be identified.
5. Questionnaires
a. Questionnaires are a research instrument that can be applied to fact finding in
system development projects. They consist of a series of written questions, where
the designer limits the range of replies by giving them a choice of options so as to
enable easier understanding and analysis of the results

The primary mechanism that was used in this project was to use interviews and background-
reading.

3.4.1 Interviewing
An interview is a planned meeting during which the analyst obtains the information from another
person. Normally this consists of several steps as follows.
Determine the people to interview
Dynamic Data Deployment System with a MIS

10

Establish objectives for the interview
Develop the interviews questions.
Preparation for the interview
Schedule the interview
Conducting the interview
Documentation of the interview
Evaluation of the interview

Below are the some of the questions that were asked at the interview
o What type of information do you deal with?
o How many publishes do you handle within a specific period?
o Do you wish to highlight any specific types of messages?
o Are there any time restrictions for information that is published?

Interviews were carried out by scheduling them at convenient times for the people concerned.
The Author first interviewed the head of the organization as it is considered to be the right place
to start, and it also shows the other employees about the top management commitment.

Interviews were then scheduled with the balance employees to identify the requirements that
were expected from the new system. It was critical that the author had an understanding of the
critical problems that they were facing in the existing manual system, so as to overcome these in
the new system.


3.4.2 Research

Research has been done as another fact-finding technique. This mainly helps to get the
theoretical knowledge when developing the system. Similar systems were looked at, and this was
a considerably easier action to do than most others due to the choice of systems available online
that employ dynamic information management.

Dynamic Data Deployment System with a MIS

11

3.5 Drawbacks in Existing Manual Process

Add more content here this would be dependent on whoever used manual publishing of
information.
3.6 High end requirements of the management

The main requirement is to provide easy deployment of information via a web-based interface.
The system should allow the management to make decisions more efficiently as all information
could be looked at in a summarized manner.

3.7 Feasibility Study
A Feasibility study was done before developing the system. The primary areas on which the
author had to focus on were as follows:
Operational Feasibility Whether the project can be put into action or operation. This
includes considering motivational, logistical and acceptance considerations. (Such as resistance
by users and other ethical considerations). As an example, there needs to be a person who will
monitor the system so that objectionable content is removed.
Technical Feasibility Whether hardware, software and other system components can be
acquired or developed to solve the problems. For this system following technical requirements
are needed.

Hardware
1. As this is a web based system, we require a hosting platform. It was decided to
outsource this requirement and to use the web hosting facilities of a shared host.
2. If the demand on the website increases, the client can opt to have an inhouse hosting
solution, thereby providing added capacity and security.

Dynamic Data Deployment System with a MIS

12

Software
1. Development language is PHP 5
2. The database system that was used was mySQL
3. Additional tools were used for designing the graphics and animations.
Schedule Feasibility Whether the project can be completed in a reasonable amount of time.
For the purpose of this project, it was decided that the six month time scale was easily
achievable.
Economic Feasibility Whether the project is financially viable. Whether the predicted
benefits offset the costs and time needed to obtain them. As this project is being developed as
part of the requirements for satisfying the final year project, the costs of the system are
considerably less for the client.
Legal Feasibility whether there are laws and regulations that may prevent or limit the
system development project. As this system does not seem to break or contravene any rules,
there does not seem to be any legal obstacles for proceeding.
Based on these aspects, it was decided to go ahead with the development of the system as a
custom development.

3.8 System Design
3.8.1 Context Diagram
During requirements modeling many techniques have been used to gather facts about the system
and how the various people, departments, data and process fit together to support business
operations. A context diagram is drawn to show the entire system as a single process surrounded
by the external entities. In other words, it is a top-level view of an information system that
shows the system boundaries and the scope. The major inputs and outputs are represented as data
flows.
x
Figure 1 - Context Level DFD
Dynamic Data Deployment System with a MIS

13






3.9 Level 1 DFD

DFDs have been used as the preferred modeling tool as it suits the requirement of this system.
The notations that are used for the DFD are as follows:
Process symbol-A process receives input data and produces output that has a different
content, form, or both. A Process can be simple or very complex. But processing details are not
shown in DFD. The symbol for a process is a rectangle and the name of the process appears
inside the rectangle as shown below

Figure 2 - DFD Process Symbol

Data flow symbol - A data flow is a path for data to move from one part of the information
system to another. A data flow represents one or more data items. The symbol for a data flow is a
line with a single arrowhead and the name of it appears above, below or alongside the line as
shown below


Figure 3 - DFD Data Flow
Symbol
Dynamic Data Deployment System with a MIS

14

Data store symbol-A data store, or a data repository, is used in a DFD to represent a situation
in which the system must retain data. The symbol for a data store is a flat rectangle that is open
on the right side and closed on the left side

Figure 4 - DFD Data Store Symbol
External entity symbol-An external entity is a person, departments, outside organization, or
other information systems that provides data to the system or receives output from the system.
The symbol for an external entity is an oval as shown below

Figure 5 - DFD External Entity Symbol
x
Figure 6 - Level 1 DFD for Front End


Dynamic Data Deployment System with a MIS

15


3.10 Entity Relationship Diagram (ERD)
In software engineering, an entity-relationship model (ERM) is an abstract and conceptual
representation of data. Entity-relationship modeling is a database modeling method, used to
produce a type of conceptual schema or semantic data model of a system, often a relational
database, and its requirements in a top-down fashion. Diagrams created by this process are called
entity-relationship diagrams, ER diagrams, or ERDs. (Wikipedia - ERD)
ER analysis uses three important abstractions to describe data as follows
Entities - Which are distinct things in the enterprise.
Relationships - Which are meaningful interactions between the objects.
Attributes - Which are the properties of the entities and relationships.
x
Figure 7 - ERD Diagram

Dynamic Data Deployment System with a MIS

16


3.11 Entity Life History (ELH)
An Entity Life History diagram is used to show the sequencing, iteration or timing of an entity.
For example take a supporter of a charity for example. A supporter is an Entity within a charity
and therefore real world events cans happen to this supporter such as change of address
(Database Services)
x
Figure 8 - ELH

3.12 Functional Requirements
Functional requirements describe in some detail what the system needs to do. The main
requirements of the system are divided depending on the two following user logins.
System will allow to perform the following functions.
Users
1. Should be able to create a login for the system.
2. Can see basic website without having to login.
3. Users should be able to view complete pages.
4. Users should be able to view additional details.
5. Users should be able to upload content and establish parameters regarding the
dynamic deployment
6. Should be able to make requests for resolution by Administrators
Manager login
This user has all the authority to handle the addition and modification of data within the system.
1. User should be able to add / edit / delete categories
2. User should be able to add / edit / delete sub categories
3. User should be able to add / edit / delete pages into sub categories
4. User should be able to see page details
5. User should be able to fulfill requests placed by normal users
Dynamic Data Deployment System with a MIS

17

6. User should be able to obtain detailed reports
7. User should be able to see pending publications.
8. User should be able to see completed publications.
9. User should be able to approve / reject requests for creation of accounts
10. User should be able to categorise users into the relevant groups for special features

Dynamic Data Deployment System with a MIS

18


3.13 Non Functional Requirements
In systems engineering and requirements engineering, a non-functional requirement is a
requirement that specifies criteria that can be used to judge the operation of a system, rather than
specific behaviors. This should be contrasted with functional requirements that define specific
behavior or functions. (Wikipedia - Non Functional Requirements)
According to (Cunningham & Cunningham, Inc) Non Functional Requirements have also been
called the 'ilities' because they are most simply expressed like this:
usability
reliability
interoperability
scalability
security
There are others as well, which can be regarded as:
Time to market
Cost
Speed
From a system point of view, the following requirements can be identified:
Capacity - Function or database components are designed from the ground up for the volume of
data, number of users, and the frequency of access or updates. The system should support for
thousands of orders.
Speed - When placing orders via the system, the customer should not perceive any delays in the
process
Usability - Interfaces will need to be easy to use without any formal training; there should be
possibility to enter the data with less number of keystrokes. Most users will be new customers
who are accessing the website for the first time. The interface should therefore be very simple to
use
Dynamic Data Deployment System with a MIS

19

Availability - The availability of the system should be high. As the hosting is outsourced to a
professional in this field, this should not be a major concern
Access - There are some restrictions for certain types of users. All information in the system
should not be accessible to those that are only fulfilling orders. Managers on the other hand
should have access to all areas.
Technical constraints and requirements as most commercial hosting organizations are using
open source technologies this means that PHP mysql is the popular platform for hosting these
types of systems. This will also help to ensure that operating costs are kept to a minimum.
Design constraints - This should include design standards, training materials, operating
instructions.
Project constraints - There are mainly two factors concerned with project constraints. They are
time and cost which are already discussed in the feasibility study.
Transitional requirements - As there is no existing computer based system at this organization,
this is not a major consideration. The new system can be implemented with ease.
Security and back-up - It is an essential requirement to protect the data from unauthorized
accessing. In addition it is important to build in system for backing up and storing the system and
its data for use in an event of system failure or data corruption. The hosting platform that is being
used has automated backup capabilities allowing the critical data to be backed up and offloaded
automatically, thereby easing the process.

3.14 Users of the System

The main types of users of this system will be
1. Customers
2. Non customers who simply browse the front-end information
3. Data entry operators
4. Managers
Dynamic Data Deployment System with a MIS

20


The system should therefore cater to the requirements of all of these types of users, some of
whom are technically capable, whilst others may be considered simply as beginners or novice
users.

3.15 User Interfaces

The interfaces should be designed in a simplistic manner to enable fast and easy use of the
system. Further details of this are highlighted in the following chapter.
A sampling of the user interface is given here:
x
Figure 9 Front end of the system
3.16 Acceptance Criteria

The basic requirements for acceptance of this system can be outlined as:
1. All functional requirements should be incorporated.
2. System should be installed using the existing infrastructure, meaning that it should be
hosted online.
3. User training should be conducted.
4. Customers of the organization should be able to complete a sample transaction via the
system.
5. Customer should sign a document confirming that the system has been implemented as
expected.






Dynamic Data Deployment System with a MIS

21

4 Chapter 4 The Database

The database is the main store that is used for the purpose of storing, retrieving, and managing
the data that is used within this system.
MySQL DBMS has been used for the deployment of the database, which is an open source
solution that pairs well with the implementation language that was used for the development of
this system, which is namely PHP.
The definition of a database is a structured collection of records or data that is stored in a
computer system. In order for a database to be truly functional, it must not only store large
amounts of records well, but be accessed easily. In addition, new information and changes
should also be fairly easy to input. In order to have a highly efficient database system, you need
to incorporate a program that manages the queries and information stored on the system. This is
usually referred to as DBMS or a Database Management System. Besides these features, all
databases that are created should be built with high data integrity and the ability to recover data
if hardware fails. (TopBits.com)
The model of the database can be presented as follows
x
Figure 10 - Database view
A sample representation of the data tables within the database is as follows:
x
Figure 11 Table 2

x
Figure 12 - Table 3

x
Figure 13 Table 4
Dynamic Data Deployment System with a MIS

22


x
Figure 14 Table 5

x
Figure 15 Table 6

x
Figure 16 Table 7

Dynamic Data Deployment System with a MIS

23

5 Chapter 5 Interfaces

5.1 What is Human Computer Interfacing / Interaction
Human-Computer Interface Design seeks to discover the most efficient way to design
understandable electronic messages. Research in this area is voluminous; a complete branch of
computer science is devoted to this topic, with recommendations for the proper design of menus,
icons, forms, as well as data display and entry screens (Skaalid)
According to Schneiderman you should use the Eight Golden Rules of interface design:
1. Strive for consistency
a. Consistent sequences of actions should be required in similar situations
b. Identical terminology should be used in prompts, menus, and help screens
c. Consistent color, layout, capitalization, fonts, and so on should be employed
throughout.

2. Enable frequent users to use shortcuts
a. To increase the pace of interaction use abbreviations, special keys, hidden
commands, and macros

3. Offer informative feedback
a. For every user action, the system should respond in some way (in web design, this
can be accomplished by DHTML - for example, a button will make a clicking
sound or change color when clicked to show the user something has happened)

4. Design dialogs to yield closure
a. Sequences of actions should be organized into groups with a beginning, middle,
and end. The informative feedback at the completion of a group of actions shows
the user their activity has completed successfully

5. Offer error prevention and simple error handling
Dynamic Data Deployment System with a MIS

24

a. Design the form so that users cannot make a serious error; for example, prefer
menu selection to form fill-in and do not allow alphabetic characters in numeric
entry fields
b. If users make an error, instructions should be written to detect the error and offer
simple, constructive, and specific instructions for recovery
c. Segment long forms and send sections separately so that the user is not penalized
by having to fill the form in again - but make sure you inform the user that
multiple sections are coming up

6. Permit easy reversal of actions
7. Support internal locus of control
a. Experienced users want to be in charge. Surprising system actions, tedious
sequences of data entries, inability or difficulty in obtaining necessary
information, and inability to produce the action desired all build anxiety and
dissatisfaction

8. Reduce short-term memory load
a. A famous study suggests that humans can store only 7 (plus or minus 2) pieces of
information in their short term memory. You can reduce short term memory load
by designing screens where options are clearly visible, or using pull-down menus
and icons

5.2 Goals of HCI

According to (NationMaster.com), A basic goal of HCI is to improve interaction between user
and computers, by making computers more user-friendly and easier to use. More broadly, HCI is
also concerned with :
Methodologies and processes for designing interfaces (i.e., given a task and a class of
users, design the best possible interface within given constraints, optimizing for a desired
property such as learnability or efficiency of use)
Dynamic Data Deployment System with a MIS

25

Methods for implementing interfaces (e.g. software toolkits and libraries; efficient
algorithms)
Techniques for evaluating and comparing interfaces
Developing new interfaces and interaction techniques
Developing descriptive and predictive models and theories of interaction

5.3 Key points in developing the HCI
The HCI development and prototyping was done in parallel to the development of the
other modules. Therefore, any changes made to these models can also be introduced into
the interface.
The HCI design should be portable to suit multiple user platforms.
The HCI of a system should be made independent of the other components of the system.
This helps to minimize unnecessary complications that may arise.
Sometimes, it is recommended that CASE tools are used to design the HCI. The reason
for that is the interface designed for a system will often have to be modified during the
development or prototyping of a system.


5.4 HCI Design Strategy

Given below are the steps that need to be followed to design an effective interface for a
system
The designer should identify what each user will do with the system, and should design it
in such a way that the tasks can be accomplished quickly and easily.
Users should be classified according to their skills levels and their positions within an
organization.
Tasks should be completed by a sequence of commands if needed.
The system and user will have to interact with each other in order to accomplish the tasks.
Dynamic Data Deployment System with a MIS

26

The information of the system should be presented to the user in a way that is easy to
understand.
A prototype can be built to implement the interface design features so that they can be
tested with the participation of users where the potential problems can be avoided
In this specific instance, prototype interfaces were developed and shown to the customer in
order to obtain feedback which was then incorporated into the designs. This enabled the
development of a high quality interface that satisfied the requirements of all those
concerned.

5.5 Interface Examples

The entry into the administration system is via the login screen
x
Figure 17 - Login Screen

The main interface is developed via a combination of HTML, CSS, graphics, and PHP
x
Figure 18 - Main Interface



Pages that are used to administer the system have been developed with icons to enable easy
navigation
x
Figure 19 Available Users
Dynamic Data Deployment System with a MIS

27

Clicking on the magnifying glass icon reveals the detailed information about that specific
account
x
Figure 20 User details
Data maintenance screens have been developed to enable quick entry
Interfaces that are used for updating and managing information within the system have simple
field descriptions to enable easy operation.
x
Figure 21 - Data maintenance screen

x
Figure 22 - More Detailed Data Maintenance Screen


Dynamic Data Deployment System with a MIS

28

Reports have also been designed to be simple to read and understand by the users and the
management as well.
x
Figure 23 - Sample Report

Dynamic Data Deployment System with a MIS

29

6 Chapter 6 Implementation

In the previous Chapter the development of User Interfaces and their functionalities were
described. In this Chapter the Implementation of other components of the System will be
described
The purpose is to successfully produce a product, deliver the software to its end users and test a
functional system that fulfils the business and design requirements and to implement the
interfaces between the new system. This covers the implementation of the suggested design
using programming language and database management system. Translating the design in to
program code, is relatively a straightforward process.
It covers a wide range of activities including:
Converting the design into program code.
Testing the program code.
Developing Database.
Packaging the software.
Distributing the software.
Providing help and assistance to users.
Producing a complete document.
Providing a fully tested system.
6.1 The environment
Implementation architecture of the system has been divided into five main categories.
Implementation of Development environment
Implementation of Database
Security implementation
Code implementation
Documentation

Dynamic Data Deployment System with a MIS

30


6.2 Hardware Requirements
The basic requirements for the implementation of this system can be given as:
1. A web server that can handle the data volumes that would be created by the
customers. A commercial hosting service is being used for this purpose.
2. Clients need to have a basic configuration which is a Pentium III or similar
configuration with high color graphics and an internet connection. No special
components are required.
6.3 Software Requirements
The following development requirements were chosen for this project due to the requirements
stated below.
1. PHP
Platform neutral implementation language that is very popular on the web.
Compatible with a majority of web servers and also has native support for the
mySQL database server.
2. MySQL 5 Database Server
Chosen due to not requiring licensing, and being compatible with the chosen
development platform and the hosting platform.
3. Any compatible browser
This project has been developed to be compatible with any major browser
including Microsoft Internet Explorer and Mozilla FireFox
Care has been taken to ensure compatibility with systems that would be used by potential
customers around the world.



Dynamic Data Deployment System with a MIS

31

6.4 Security Implementation

The system has been developed with user logins for controlling access to different areas of the
system. A certain amount of data encryption is also used.
In addition, the server security is ensured by the hosting partner thereby alleviating some of the
work from the company point of view.
All information regarding client accounts is verified before the customer is given the option of
completing a transaction.

6.5 Code Implementation

All code was implemented using either Notepad or Adobe DreamWeaver. Auto generated code
was not used. Standard naming conventions were used and the code was implemented via
structured coding methodologies.
The following code is highlighted as a representative sample.

7 Chapter 7 Testing

There's no other industry where shoddy products are sold to a public that expects regular
problems, and where consumers are the ones who have to learn how to fix them. If an
automobile manufacturer has a problem with a car and issues a recall notice, it's a rare
occurrence and a big deal and you can take you car in and get it fixed for free. Computers are
the only mass-market consumer item that pushes this burden onto the consumer, requiring him to
have a high level of technical sophistication just to survive.
- Bruce Schneier -
Dynamic Data Deployment System with a MIS

32

7.1 Overview
Testing is a process aimed at finding defects that demonstrates the lack of quality and difference
between the specifications and the developed system establishes confidence in the product offers
advice regarding the quality and risks.

Figure 24 - The testing process
(Extracted from www.siritech.com)
There should be a test plan to meet the success of the working system for the customer. Test plan
should carry out as step by step process as follows.
At first - list the things that need to test with objectives
Decide what test data need to setup in order to test all the relevant conditions.
Produce a script/steps to carry out
Define the expected results
Document the actual results
Dynamic Data Deployment System with a MIS

33

Main objective of test plan is to guide in the testing process, highlight the resources, find the
time requirements for testing and, to explain the nature and extent of each test that is carried out.
The technical effort required during testing depends on many factors such as:
The number of logical paths
Number of computation
Nature of input data
Robustness of algorithms

Due to complexity in the internal structure and the logic of the program, White box testing was
used with black box testing.
It should also be noted that the overall purpose of testing is to deliver the system that meets all
user requirements. The System has been tested in the users environment and also usability of the
system was considered during testing. This required the system to be hosted on a web server and
being accessed from remote locations via the web.

7.2 Testing Types
There are several types of testing that are conducted during the life of this project. This is
essential for the purpose of producing a well performing system
7.2.1 Unit Testing
In computer programming, unit testing is procedures used to validate the individual units of
source code are working properly. A unit is the smallest testable part of an application. Unit
testing falls within the scope of white box testing
Dynamic Data Deployment System with a MIS

34


Figure 25 - Unit test types
(Extracted from IBM.com)
7.2.2 Integration Testing
One of the most significant aspects of a software development project is the integration
strategy. Integration may be performed all at once, top-down, bottom-up, critical piece first, or
by first integrating functional subsystems and then integrating the subsystems in separate phases
using any of the basic strategies. In general, the larger the project, the more important the
integration strategy.
National Institute of Standards and Technology
This is the phase of software testing in which individual software modules are combined and
tested as a group. It follows unit testing and precedes system testing.
Integration testing takes as its input modules that have been unit tested, groups them in larger
aggregates, applies tests defined in an integration test plan to those aggregates and delivers as its
output the integrated system for ready for the system testing
Dynamic Data Deployment System with a MIS

35


Figure 26 - Integration testing
(Extracted from nist.org)
7.2.3 System Testing
System testing is testing conducted on a complete, integrated system to evaluate the system's
compliance with its specified requirements. System testing falls within the scope of black box
testing, and as such, should require no knowledge of the inner design of the code or logic

Figure 27 - Testing Process
Dynamic Data Deployment System with a MIS

36

Black box testing takes an external perspective of the test object to derive test cases. These
tests can be functional or non-functional, usually functional. The test designer selects valid and
invalid input and determines the correct output.
White box Testing uses an internal perspective of the system to design test cases based on
internal structure. It requires programming skills to identify all paths through the software. The
tester chooses test case inputs to exercise paths through the code and determines the appropriate
outputs
The following types of performance tests have been carried out in the system.
Time testing To evaluate the requirements dealing with time, to find out the time to
perform a function by the user.
Quality test To evaluate system reliability, maintainability and availability.
Environmental test To look at the systems ability to work at the installation site.
Recovery test To evaluate the system response to the loss of data, power, devices or
services.
Documentation test To ensure required documentation are written.
Human factor test To investigate requirements dealing with the user interfaces to the
system.
The final level of testing is the acceptance testing that is carried out by the end users of the
system to ensure that all required features have been incorporated into the system.
7.3 What is a test case?

Test case is a set of test inputs, execution conditions, and expected results developed for a
particular objective, such as to exercise a particular program path or to verify compliance with a
specific requirement.

Dynamic Data Deployment System with a MIS

37


A sample of a test case format is given below
Test Case
No
Test Case Expected Result Actual Result Test
Status
1
2
3
4
5

Dynamic Data Deployment System with a MIS

38

8 Chapter 8 Conclusion

How the System is evaluated from the Clients perspective and the developers perspective are
discussed in this chapter. Ideally, the best persons to do this are the designer and the author of the
system. Whereas the developer knows exactly what has been done in the lifetime of the project
and what has been avoided, the users should ideally be interviewed to obtain their views.
However, this is out of the scope of this project and hence the feedback of only the Author is
included.
8.1 Results of the Project

The major goals and objectives were achieved by the system, and the system has been
implemented in the real environment to make its function. Users are getting familiar to the
system as user manual and training was provided. Ultimately, the project can be termed as a
success, due to the fact that the system has already started to generate additional users /
customers for the company.
8.2 Objectives Vs Achievements

In general the total project happened to be an own work. Specifically the requirement analysis,
system design and implementation had been the main area of the work. It gives the opportunity
to learn a great deal of information about the business area and helped to obtain hands-on
experience of developing a business solution by making use of the available resources and
technologies. There had been enough difficulties of performing activities and achieving targets in
relation to the time scale and the budget.
Most objectives were implemented without great difficulty, although there were certain areas
where underestimation had been done. These were generally overcome with planning and
perseverance.

Dynamic Data Deployment System with a MIS

39

8.3 Lessons Learnt & Critical Appraisal

There were several lessons that were learnt, and a basic understanding of them is as follows:
1. X
2. X
3. x
Ultimately, the project can be termed as a success as all areas have been addressed, and the
theory that was learnt during the course work was successfully incorporated into real life via the
practical development of this Information System.

Dynamic Data Deployment System with a MIS

40

9 References

1. Wikipedia, Entity-relationship model,http://en.wikipedia.org/wiki/Entity-
relationship_model
2. Database Services, Corporate Website, http://www.databaseservice.co.uk/elh.php
3. Wikipedia, Non Functional Requirements,http://en.wikipedia.org/wiki/Non-
functional_requirement
4. TopBits, What is a Database,http://www.topbits.com/what-is-a-database.html
5. University of Washington Faculty Pages, Shneiderman's Eight Golden Rules of
Interface Design",
http://faculty.washington.edu/jtenenbg/courses/360/f04/sessions/schneidermanGoldenRul
es.html
6. Nationmaster, Human computer interaction,
http://www.statemaster.com/encyclopedia/Human-computer-interaction
7. National Institute of Standards and Technology, Integration testing,
http://hissa.nist.gov/HHRFdata/Artifacts/ITLdoc/235
8. Strategic Management and Business Policy Ninth Edition, Thomas L. Wheelen et al,
Pearson Education, 2006
9. Information Systems Management in Practice Sixth Edition, Barbara McNurlin &
Ralph Sprague, Pearson Education, 2004


Dynamic Data Deployment System with a MIS

41

10 Appendix A Database Samples

Details of the database structures were presented in the main chapters. This area provides a
sampling of the data that is stored within the system

11 Appendix B User Documentation

The objective of preparing the user documentation is to enable the user to perform the
operations that are required for the effective operation of the system. Given below is a
representation of the type of documentation that was provided to the end user, as the
entire manual is too large to include here.

You might also like