E-suggustion box
-
Upload
morash-khalid -
Category
Documents
-
view
12 -
download
0
description
Transcript of E-suggustion box
i
DECLARATION
We Maboja Richard.H, Temu Peter.A, Salum Mrisho and Allen Isanga together declare that this thesis
is our own work and has not been submitted for a degree or advanced diploma and even diploma at any
other University or Higher learning Institution.
Candidate Signature………………………….. Date………………………..
Richard H. Maboja
Candidate Signature……………………………Date………………………
Peter A.Temu
Candidate Signature……………………………..Date………………………….
Mrisho Salum
Candidate Signature……………………………..Date…………………….
Isanga Allen
Supervisors Signature……………………………Date…………………….
Hussein Abubakari
ii
ABSTRACT The project report of our system was undertaken at the Institute of Finance Management (IFM)
Our report consists of actual work of the system developed (e-suggestion box) which includes all steps
of software development, duties, activities and professional experiences. The software was developed
for about 10 weeks from May to July at IFM.
This report is perquisite for students at the Institute of Finance Management (IFM) pursuing a Bachelor
of Science in Information Technology academic year 2010/2011.
The purpose of this project is to find out how we have managed to gain the lectures from the start of the
course. It measures the capabilities of students. Also to prepare students as well trained and competent
in the field of Information Technology and Computer Science.
These report explains about the step which we followed during the development of the system.Thise
report will explain in details the Problem Statement, Analysis and Requirements gathering, System
Design,Implementation,Testing ,Evaluation and Literature review of other similar works.Thise report
consists of eight chapters as explained in the guidelines of writing and doing the project.
First chapter contains the introduction of the overall project. Second chapter contains the Literature
review. Third chapter contains Analysis and Design. Fourth chapter contains information‘s of the user
interface. Fifth chapter contains the actual coding (implementation).Chapter six has information
concerning system testing. Chapter seven has information of the system evaluation and the last chapter
eight has the conclusion and recommendation with References at the last part.
iii
ACKNOWLEDGEMENTS If it was not God‘s grace this work could not have been accomplished. First and foremost our
heartfelt thanks go to “GOD” Almighty and His Glorious guidance. Our special thanks are given to
our project supervisor Mr. Abubakari Hussein, who gave us a great cooperation from the beginning to
the end of this work. We would like to acknowledge all lectures and colleagues of Computing and
Information Technology Department of the Institute of Finance Management for their assistance,
advice and cooperation, which made the first and second phase of this project, is successful.
We also give thanks to our Parents and fellow students for their tireless effort and constructive
advice they provided to us whenever we needed. We are deeply indebted to all people for their advice
and encouragement of a significant importance to the project.
iv
Contents
DECLARATION .................................................................................................................................. i
ABSTRACT ........................................................................................................................................ ii
ACKNOWLEDGEMENTS ................................................................................................................ iii
LIST OF ACRONYMS/ABBREVIATIONS....................................................................................... vi
CHAPTER ONE: ................................................................................................................................. 1
1 INTRODUCTION ...................................................................................................................... 1
1.1 STATEMENT OF THE PROBLEM ................................................................................... 1
1.2 PURPOSE .......................................................................................................................... 1
1.3 OBJECTIVES .................................................................................................................... 1
1.4 GOALS .............................................................................................................................. 2
1.5 SCOPE ................................................................................................................................ 2
1.6 PROPOSED SOLUTION: ................................................................................................... 2
1.7 DEVELOPMENT METHODOLOGY ................................................................................ 3
1.8 SIGNIFICANCE OF THE PROJECT ................................................................................. 3
1.9 THINGS TO BE COVERED IN OTHER CHAPTERS. ......................................................... 3
CHAPTER TWO ................................................................................................................................. 4
2.0 LITERATURE REVIEW ........................................................................................................... 4
CHAPTER THREE: .......................................................................................................................... 13
3.0 METHODOLOGIES ................................................................................................................ 13
3.1 PRELIMINARY INVESTIGATION: ................................................................................... 13
3.2 REQUIREMENT AND ANALYSIS .................................................................................... 14
3.3 USER REQUIREMENTS .................................................................................................. 15
3.4 SYSTEM REQUIREMENTS ............................................................................................. 16
3.5 SYSTEM ANALYSIS ......................................................................................................... 18
3.6 THE USE CASE MODEL. ................................................................................................. 19
3.7 SYSTEM DESIGNING. .................................................................................................... 23
3.7.1 LOGICAL DESIGNING .................................................................................................. 23
3.7.2 PHYSICAL DESIGNING ............................................................................................... 25
CHAPTER FOUR.............................................................................................................................. 26
4.0 USER INTERFACE DESIGN. ................................................................................................ 26
CHAPTER FIVE: .............................................................................................................................. 35
5.0 IMPLEMENTATION .............................................................................................................. 35
5.1 CONNECTION TO THE DATABASE. ................................................................................... 38
CHAPTER SIX:................................................................................................................................. 40
6.0 TESTING ................................................................................................................................. 40
v
6.0.1 VERIFICATION AND VALIDATION ............................................................................. 40
6.0.2 VALIDATION .................................................................................................................. 41
6.0.3 TEST DATA ..................................................................................................................... 41
6.0.4 TEST EVALUATION SUMMARIES ............................................................................... 41
6.0.5 TEST CASES RESULT .................................................................................................... 41
CHAPTER SEVEN: .......................................................................................................................... 43
7.0 EVALUATION ........................................................................................................................ 43
7.0.1 FUNCTIONALITY ........................................................................................................... 43
7.0.2 SUPPORT ......................................................................................................................... 43
7.0.3 MAINTENANCE .............................................................................................................. 43
7.0.4 RELIABILITY .................................................................................................................. 43
7.0.5 PERFORMANCE.............................................................................................................. 43
7.0.6 SCALABILITY ................................................................................................................. 44
7.0.7 USABILITY ...................................................................................................................... 44
7.0.8 SECURITY ....................................................................................................................... 44
7.0.9 FLEXIBILITY/CUSTOMERIZABILITY. ........................................................................ 44
CHAPTER EIGHT: ........................................................................................................................... 45
8.1 CONCLUSION AND RECOMMENDATION ......................................................................... 45
8.2 PROBLEMS......................................................................................................................... 45
8.3 RECOMMENDATIONS .......................................................................................................... 46
8.4 REFERENCES. ........................................................................................................................ 47
vi
LIST OF ACRONYMS/ABBREVIATIONS
SDLC…………………………..System Development Life Cycle
BIT……………………………..Bachelor of Information Technology
E-Suggestion……………………Electronic Suggestion
IFMSO………………………….Institute of Finance Management Student Organisation
IFM……………………………..Institute of Finance Management
DFD‘S………………………….Data Flow Diagrams
HTML………………………….HyperText Makeup Language
RAM…………………………...Random Access Memory
MB…………………………….Mega Bite
ICT…………………………….Information Communication Technology
HRM………………………….Human Resource Management
BA…………………………….Bussiness Administration
ACC…………………………..Accounts
BF……………………………Banking and Finance
IRM……………………………Insurance and Risk Management
SP………………………………Social Protection
TAX……………………………Taxation
HCI……………………………Human Computer Interface
1
1
CHAPTER ONE:
1 INTRODUCTION
E-suggestion box is a system that allows students tom make problems and suggestions online. The
system is a wed based application that can be accessed any place at any time. The student is suppose to
select a department from the list of departments available then just write the problem and suggestion
1.1 STATEMENT OF THE PROBLEM
The consequences of the old manual system at the Institute of Finance Management have lead to the
idea of this project of constructing on E-suggestion box.
The problem with the old system, I mean the manual filling of evaluation form and lacks of a proper
mechanism that can make students express the problems and suggestion to the upper management.
The evaluation forms that were being given to students we not help full because they were given at the
end of the semester. The system allows student to give comments any time they see problem with a
certain lecture or tutorial assistant.
Other problems are the involvement of IFMSO in the decisions of various activities which the do not
effectively involve their fellow students, by implementing these system the management can put an
announcement in the notice board on any changes they think they are about to do and the students can
comment using the system, so by implementing this system the management can be aware of what to
do in respect to the response of the students.
1.2 PURPOSE
The purpose of this document is to outline the requirements and to give the design overview of the
ELECTRONIC SUGGESTION BOX SYSTEM. It specifies user, functional and non-functional
requirements as well as logical and physical design of the system.
1.3 OBJECTIVES
To asses the extent to which the proposed project remedies the problems noted above, it will be
necessary to quantify the results to measure the project‘s effectiveness. The following are the project
objectives
To reduce students demonstrations.
By implementing the system, the institute of Finance Management will manage to reduce the
demonstrations of students to a big extent due to the availability of problem of students.
2
To create a direct link between student and the Department.
By implementing the system the students will be able to communicate direct with the departments. This
allows students present their problems direct to the upper management.
1.4 GOALS
The system is very important to the management since it will improve the information flow, which is
the problem of the existing information system.
To reduce the communication gap (information break down) between the students and their
departments.
To have a system that provides a direct link between students and the upper management.
1.5 SCOPE
This document covers the requirements to support ELECTRONIC SUGGESTION BOX operations
1.6 PROPOSED SOLUTION:
The IFM E-Suggestion box system should be the web based application technology through which
management of various operations are conducted. It should control all by information in the most
effective and efficient manner. This may be accomplished by using the following tools PHP (Pre
Hypertext Processor), this is the server side script language which allow interactivity between user and
database by using forms. We prefer PHP because it is open source software that runs under different
operating systems, MySql; this is the database management system in which all information of IFM‘S
E-Suggestion is recorded. It manages operations such as delete, modify, add, or create. We prefer this
tool because it has both graphical interface and command lines. Wamp server; this is the Web server
software that is used to link the generated codes from the browser (client tier) and the database tier.
Macromedia Dream weaver 8, Macromedia Dream weaver is the profession choice that will help the
developers in the activity of building Web-driven databases applications. The developer can use it for
quick creation of table and forms which will allow users to submit their inputs, It provide a powerful
combination of visual layout tools, application development features, and code editing support,
enabling developers and designers at every skill level to create visually appealing, standards-based sites
and applications quickly
3
1.7 DEVELOPMENT METHODOLOGY
The methodology used to develop the ELECTRONIC SUGGESTION BOX is the Traditional Systems
Development Lifecycle (SDLC).
There are various kinds of SDLC.In our analysis we use waterfall. Waterfall is characterized by an
orderly, separate and sequential flow of tasks performed in discrete phases from initial concept to
Design, Development, Testing. Implementation, Maintenance and Revision.
1.8 SIGNIFICANCE OF THE PROJECT
To have a system with high efficiency and utilization of the student services. It's easy to send
personalized letters, emails & text message.
To provide easy sharing of information because each member can ask anything concerning the
academic issues.
To minimize loss of information and time. Member can log to the system and get direct answer
from administrator through the archives link.
1.9 THINGS TO BE COVERED IN OTHER CHAPTERS.
In other chapters will cover the following in chapter two we describe other Author in the world
what they discuss and what software they use in e-suggestion systems. In chapter three we describe
about the logical and physical designing of the system as well as user requirement and system
requirement. In chapter four we also discuss the interaction between user and the system. In chapter
five we discuss about the technical documentation the of the project as well as how various software
and hardware where used. In chapter six we discuss about testing of the entire system if it work
properly. In chapter seven we made critical discussion of the project result. And in last chapter we
discuss what we have archived and weakness of the system.
4
CHAPTER TWO:
2.0 LITERATURE REVIEW
This literature review looks at design pattern as a software engineering process .A brief description of
what design patterns of the e-suugestion box are ,their applicable area during process, logging of the
administrator
The e-suggestion box system design and are the outcome of data collection from user(client)
established data relationship as refers to the entity use case diagrams they should be kept in mind
during designing and developing a database of an organization ,it includes the time period which lead
to the reference publication on design patterns called Design Pattern Element of Reusable Object
Oriented
Software as well as impact on the software developer community since then which is described in
the conclusion. Abstraction on how design pattern are applied in practice and what refinements it has
received since then. Some thought on how to improve the current documentation on design patterns
and critique.
The motivation to the designing and development of this program is a product of personal interest and
desire to develop software solution to Tanzania Small and Medium Enterprises after realizing that there
is little usage of software in SME‘s the main reasons being that :there is no proper package specifically
designed to suit them ,un affordable packages. None English language problems to some unfamiliarity
to computer programs and usage.
e-suggestion box,a web-based management system, helps dynamic institutions of any size or
denomination become more effective in the information flow from top to down and down to top, more
efficient in administration, with the essential information to make decisions.
Reach out to your department head online by creating a powerful 2-way communication experience,
manage directories easily, accept online suggestions and give your students alternatives to state their
problems,
This chapter explain views of different sources on the activities that we performed in our project.
5
2.1. SOFTWARE DEVELOPMENT MODEL
There are many model used in the software development process but in our project we used System
development Life cycles or sometimes called waterfall model.
Systems Development Life Cycle, which has been used in this project, has been described as the
common methodology for systems development in many organizations. It identifies the phases of
information system Development.
SDLC has flexibility advantage. Every organization can use a slightly different life cycle model to
model the steps, with anywhere from three to almost twenty identifiable phases. For example SDLC
would be modelled to four stages as four stages as follows:
a) Planning and Selection,
b) Analysis,
c) Design,
d) Implementation and Operation.
Moreover, the SDLC was found to have another advantage that the sequence of the steps of the
methodology is subject to the convenience of the project. ―…in any given SDLC phase, the project can
return to an earlier phase if necessary‖.
GUSTAFSON DAVID A. Computing and Information Sciences Department, Kansas State
University, Schaum’s Outline Series
2.1.1 Planning and Selection
Generally this is the first phase where by choosing which project should start among many project
which are on the table is taking place also is the problem definition area phase which produce written
statement of current problem and Objective of expected system.
2.1.2 Feasibility
It never pays to jump into developing a system. Usually, it is a good idea to conduct a feasibility study
first. The easiest part of the feasibility study is determining whether the system is technically feasible
this means investigates whether the practical solution to the problem is existing. Sometimes, however,
it might not be feasible because the company does not have the technical expertise to do the job. A
6
good systems analyst will go one step further and see if it is feasible to outsource (i.e., let someone else
do it) the project to people who can do the job. Once it has been determined that the project is feasible,
a project plan is created that plots out the course for the entire systems development effort — i.e.,
budget, resources, schedule, etc.
O’Docherty Mike, Object oriented analysis and design, 2005.
2.1.3 Analysis
This is the fact finding phase, investigates business process and the current system. Mainly deal with
requirements capture, is about discovering what we are going to achieve with our new piece of
software and has different aspects like, Business modelling involves understanding the context in
which our software will operate – if we don‘t understand the context, we have little chance of
producing something to enhance that context.
The goal of the requirements phase is to elicit the requirements from the user. This is usually achieved
by the development of diagrams and the requirement specification after discussions with the user.
There are two types of the requirement during system development project.
a) Functional requirement
b) Non Functional requirement
Functional requirement
Mean deciding what capabilities the new software will have and writing down those capabilities. We
need to be clear about what our software will do and what it won‘t do, so that the development doesn‘t
veer off into irrelevant areas and we know both when we have finished and whether we have been
successful.
Non-Functional requirement
These are the attributes of the system as it perform its function, this include.
Performance
Security
Usability
Reliability
Robustness
Luckey Teresa and Joseph Phillips, Software project development for dummies, 2006
7
2.1.4 Design
Design is ‗‗the process of applying various techniques and principles for the purpose of defining a
device, a process, or a system in sufficient detail to permit its physical realization.‘‘1 Design is also the
most artistic or creative part of the software development process. The design of the system includes
both graphical user interface and database design.
The database design is categorized into several steps. One of the steps is the logical database model
which describes data using the notation that corresponds to data organization used by a database
management system. This system is responsible for storing, retrieving, and protecting data such as
Mysql
MySQL is an open source that mostly used in environment as a typical database based Database
Management System (DBMS).
Churcher Clare, Beginning Database design from novice to professionals, 2007
2.1.5 Code and Unit testing
Coding means programming those system components, transform those components to instructions
where can de executed by the computer.
Software testing is the execution of the software with actual test data, for smaller systems, there are
often fewer distinct stages in the testing process.
There are two fundamental testing activities to which File tracking System is going to be tested. These
are:
a) “Component testing- Testing the parts of the system‖
b) ―System testing- Testing the system as whole‖ ‖
(Somerville Ian, Software Engineering, version 7, page 538)
Also, Somerville suggests that the purpose of doing component testing is to discover defects by testing
individual program parts. Such parts may be functions, objects or reusable components.
During the system testing, the components are integrated to form sub systems or a complete system. At
this stage, a system testing should focus on establishing that, the system meets its functional and non
functional requirements, so that it does not work on unreturned way.
The following are the purposes of software testing:
To give an assurance to the developer(s) and customer(s) that the system meets the
specified user requirements.
8
To discover various faults or defects of the software, where software performance is
incorrect, hence does not conform to the user requirements.
Defect testing is geared to root out all types of unwanted system performance, including system
crashes, undesired interactions with other system, data corruption and incorrect data computations.
System testing is based on integrating various parts forming a complete system, and then testing the
integrated system. This involves the two stages which are integration testing and release testing.
Integration testing is based on finding defects in the system. Whenever a problem arises, the integration
team works to find the source of the problem/defect and identify the component(s) that need to be
debugged.
Release testing is concerned on testing the version of the system to be released to the users.
It is mainly concerned on demonstrating if user requirements are met or not. If the customers find that
their requirements are met successfully, they accept the system, otherwise it is rejected.
(Somerville Ian, Software Engineering, version 7)
2.1.6 Implementation and Maintenance
Are the last two phases of the system development life cycles. The purpose of implementation is to
build properly working system, install it in the organization, replace old systems and work methods,
finalize system and user documentation, train users, and prepare support systems to assist users.
Implementation also involves closedown of the project, including evaluating personnel, reassigning
staff, assessing the success of the project, and turning all resources over to those who will support and
maintain the system.
The purpose of the maintenance is to fix and enhance the system to respond to the problems and
Changing business conditions. Maintenance includes activities from all system development
phases. Maintenance also involves responding to request to change the system, transforming requests
into changes, designing the changes and implement them. There are four kind of maintenance,
corrective, adaptive, perfective and preventive.
(Jeffrey A. Hoffer, Joey F. George, Joseph S. Valacich, Modern system analysis and design.)
9
2.2 Data, Data Integrity and Information
The concept of data, Data is composed of unique, specifically formatted items of information.
Unique data item values are stored in slots in a database, processed as individual values by coded
programs, and transmitted across networks of wires, or even communicated with electromagnetic
signals to and from satellites (all over the world, and beyond).
The concept of information, Information is knowledge or the communication of knowledge.
Knowledge is accumulated and derived by processes including those of experience, events, or static
information (such as a set of statistical values). In computer jargon, information is data that is stored in
a database, processed by programs, or even transmitted over a network such as the Internet (between
multiple users).
The concept of data integrity, the integrity of data is the validity of data. Possible compromises to data
integrity include human error at data entry, network transmission errors, software bugs and virus
infections, hardware malfunction, disk errors, and natural disasters. Countering compromises to data
integrity is mostly a pre-emptive process, rather than a re-active process. In other words, the best
solution is to attempt to prevent data integrity loss. The most significant prevention mechanisms are
database backups (regularly), computer security (in all forms), and properly designed interfaces
restricting how data is entered by data entry users. Solving the problem after the fact often utilizes
something called a parity check (such as when transmitting over a network), which is simply a check of
something, of itself.
(Gavin Powell, Beginning Database Design, 2006)
2.3 Database
Database has been defined by number of authors as an ―organized collection of logically related data‖
(Hoffer, Jeffrey 1996)
Similar defined ―a database as a collection of data that is organized so that its contents can easily be
accessed, managed and updated‖ (Rajash N, 2000)
Also database consists of some collection of persistent data that is used by the application systems of
some given enterprise and managed by a database - management system.
More over Lans says database server is a collection of programs that enables users to create and
maintain a database. ( Lans, Rick F. van der, MySQL developers,2007
10
The advantages of database
The advantage of database has been identified by the number of authors‘ as
Program data independent
The separation of data description from the application program that users that data. This enables the
data to evolve without changing the application program
Minimal data redundancy
The data file are integrated into single logical structure
Improve data consistency
Improve data sharing
Increase productivity of application development
This reduce the cost of developing new business application
Improve data quality
(Hoffer, Jeffrey, 1996)
The database provide a number of tools and process to improve data quality
Similarly explained the same advantage but added the following:
Security can be enforced
Integrity can be kept intact
(Rajesh, N 2000)
―File and database design occurs in two steps. You begin by developing a logical database model,
which describes data using a notation that corresponds to a data organization used by a database
management system. This system software is responsible for storing, retrieving, and protecting data
(such as Microsoft Access, Oracle or SQL Server). The most common style for a logical database
model is the relational database model. Once you develop a clear and precise logical database model,
you are ready to prescribe the technical specifications for computer files and database in which to store
data. A physical database design provides these specifications.
According to Jeffrey A. Hoffer, Joey F. George and Joseph S. Valacich (2005, 2002) (Morden
Systems Analysis and Design 4th
Edition chapter 10 page 329)
2.4 How to Store and Secure Data
2.4.1 File-Based Systems
11
File-based system is a collection of application programs that perform services for the end-users such
as production of reports.
Connolly said, File-based systems were an early attempt to computerize the manual filing system that
we are all familiar with. For example, in an organization, a manual file is set up to hold all external and
internal correspondence relating to a project, product, task, client or employee. Usually there are many
such files and for safety they are labeled and stored in one or more cabinets. For security, the cabinets
may have locks or may be located in secure areas of the building. In our own home, we probably have
some sort of filing system, which contains receipts, guarantees, invoices, bank statements, and such
like.
When we act to look something up, we go to the filing system and search through the system starting
from the first entry until we find what we want. Alternatively, we may have an indexing system that
helps locate what we want more quickly. For example, we may have divisions in the filing system or
separate folders for different types of item that are in some way logically related.
The manual filing system works well while the number of items to be stored is small. It even works
quite adequately when there are large numbers of items and we have only to store and retrieve them.
However, the manual filing system breaks down when we have to cross-reference or process the
information in the file. (Thomas M, 2002)
2.4.2 Security
Logins, Users, Roles, and Groups
Logins, users, roles, and groups are the foundation for the security mechanisms of Server.
Users that connect to Server must identify themselves using a specific login identifier (ID). Users can
then only see the tables and views they are authorized to see, and can only execute the stored
procedures and administrative functions they are authorized to execute. This system of security is based
on the IDs used to identify users.
A login ID is the account identifier that controls access to any Server system. Server does not complete
a connection unless it has first verified that the login ID specified is valid. Verification of *the login is
called authentication.
One of the properties of a login is the default database. When a login connects to Server, this default
database becomes the current database for the connection, unless the connection request specifies that
another database be made the current database. (Paul Bertucci et al, 1998)
12
Also Data in a database should be protected against incorrect use and misuse. In other words, not
everyone should have access to all the data in the database. MySQL recognizes the concept of user and
privilege. Users need to make
2.5. Creating table in MySQL
MySQL provide facilities for adding constraints to a table through the field properties section of the
table design view. Each field has a set of properties that are used to customize how data in a field is
stored, managed, or displayed. The data type determines the properties that are available for that field.
Setting design view in ensures that the fields have consistent settings when used at a later stage to build
forms and reports.
Examples of field properties
a) Formal property. Is used to customize the way numbers, dates, times and texts are
displayed and printed. Mysql provides a range of formats for the different data types.
Example Date/time can displayed in various formats including short date, medium date
and long date.
b) Validation rule/Validation text property. Validation rule properties are used to specify
constraints for data entered into a field. When data is entered that violates the validation
rule setting the validation text property is used to specify the warning message that is
displayed. This reduces the amount of errors that may occur when records are being
entered into the table.
c) Default value property. This is used to speed up and reduce possible errors in data
entry. We can assign default values to specify a value that is automatically entered in
afield when a new record is created.
(Wiley John and Sons, MySQL Enterprise Solution)
13
CHAPTER THREE:
3.0 METHODOLOGIES
There exist number of frameworks for structuring, controlling and planning the development of an
information system (methodologies).In this project,the system development life cycle(SDLC)
methodology employed due to the following reasons:-
Team members are not fully experienced in software development.
Project requirements are not likely to change during the course of system development.
This project has clear objectives and solution.
Pressure does not exist for immediate implementations.
Project requirements can be stated unambiguously and comprehensively.
With waterfall methodology,a project is divided into sequential phases with some overlap and splash
back acceptable between phases. These phases includes:-
3.1 PRELIMINARY INVESTIGATION:
This is the first activity which identifies needs or requirements of students of the institute of finance
management prior to further selection, assessments and project planning for the new proposed
Information System. After thoroughly investigations from formalized conducted interview and
observations based on learning environment of IFM, the following are the findings of initial activity:-
The need for fast and most-reliable means of getting information.
The easy way of getting problems and suggestions to the department
The need of computer system to replace human.
The need of more timely services response to target searched tasks.
Awareness of campus information in a timely way
Thus, the problem to the students and heads of department on how to access the system accurate,
timely and specific information as well as training of the basic software skills.
There, computerized information System must be found in order to resolve the problems and
reaching the desired objectives.
14
3.2 REQUIREMENT AND ANALYSIS
Feasibility study
This part contains the detailed explanation about requirement and its specification for system, the user
requirement, the proposed solution for the system as well as the data sources of the system, it also
explain both the functional and non functional requirement for the system, apart from that it contains
the use case model, class diagram and the test case for the system requirement.
3.2.1 REQUIREMENTS ELICITATION AND ANALYSIS
In every software design the first thing is to determine the requirements of the system.
Requirement analysis phase identifies the parameters for building a system by defining the
Business requirements of the system
It‘s number of user & clarify the potential user of the system
Types of data
Required output
To critically evaluate the required Hardware as well as the available software platform
and tools
This defines what the system is supposed to do, by providing high-level statements of system
functionality.
Electronic Suggestion Box system can be applied in any organization depending on the business
operations. This is best applied in service organizations.
An important task in defining requirements for any system is to determining who its users are.
Specifying the users helps determine key project scope issues and design considerations.
Requirement analysis is the process of establishing the services that customer requires from a system
and the constraints under which it operates and is developed. The requirements them selves are the
description of the system services and constraints of the system services and constraints that are
generated during the requirements engineering process.
15
Types of requirements are
User requirements
System requirements
Software requirements
The requirements are further broken down into
Functional requirements
Non-Functional requirements
External requirements
3.2.2 REQUIREMENTS ELICITATION AND ANALYSIS TECHNIQUES
User requirements as well as functional requirements were obtained by interviewing the user of the
system.Data is modeled by using DFD‘S and use case diagrams
3.3 USER REQUIREMENTS
User requirements are defined by the users which are the client‘s needs and wishes. To the Electronic
Suggestion Box system is to make suggestions and problems direct from the IFM web site to the
department or via the system administration.
The user requirements are of two types. These are Functional and Non-Functional user requirements.
Functional user requirements
Functional requirements is all about what the system will do
The system should provide ability of writing problems and suggestions of student‘s based on
their department forms
The system should provide administrative ability to the administrator of tracking the records
and taking them to the respective departments
The system should be able to keep records of problems and suggestions made for future
records
The system should provide information on various issues that have been solved as a result of
the problem and suggestions stated by student
For system administrator should be able to login to system with different privileges. Example
views the database and technical works
16
Non functional user requirements
System should be web based.
The system should be able to be accessed by various browsers such as Internet Explore 5.0
or above and Mozilla Fire fox.
System should be able to run in different Windows environments such as Windows-XP with
any Service Park, Windows 2000/2003 server
3.4 SYSTEM REQUIREMENTS
Software requirements are understood by the developers. This is software, hardware design methods
Functional system requirements
Provide students with their respective department forms
Provide form area to make suggestions and state problems
The system should keep the suggestions and problems in form of departments
Using input the system should able to categorize users in the following groups.
USER TYPE PRIVILEGES
System Administrator -Set privilege for other type of
users.
-Manage system settings and
configuration
Heads of Departments - view problems and suggestions
records through mail or had copy
given by system administrator
Students -View achieves, departments and
Mission
-write problem and suggestion
17
ON ADDITION
System administrator should use password to login to a database when viewing student‘s
problems and suggestions (records).
Students will just access the system with out any password to view Archieves, Mission, and
Departments and to make Problems and Suggestion.
Heads of departments will not be directly accessing the system. They will be receiving mail
from the system or had copies from the administrator.
All up dates of any solutions or problems solved by the heads of departments will be given to
the system administrator, so as to be uploaded to the archives for students to view
non-functional requirements
It is quite easy to see that use cases are a very good way of capturing functional requirements on a system
but not the non-functional requirements. Non-functional requirements are often categorized as follows;
Non functional requirements are those requirements which are not directly concerned with the specific
functions delivered by the system. They may relate to emergent system properties such as reliability,
response time and store occupancy. The Non functional requirements for IFM E-Suggestion box are:
Storage – All details of Employees and their records including their roles should stored in the
database
Design Constraints – The system is designed in object oriented model. This makes the system
portable due to modeling technique used.
Maintainability – The system should be easy to maintain.
Security – The system should protect itself from external attacks that may be accidental or
deliberate such as unauthorized use of system and unauthorized modification of the system or its
data.
Accessibility – The system should allow concurrently access without any performance
degradation.
User friendliness – The system should have a good user interface to provide a friendly
environment for user to facilitate his/her work.
24 hours system availability.
18
The user interface for Electronic Suggestion Box System shall be implemented as
simple HTML and php.
Disk space at least 100MB.
128MB of RAM.
Support for Intel Pentium (I, II, III & IV) and all new versions of operating systems
MySql server (Wamp-Server).
PHP Application Server, HTML.
3.5 SYSTEM ANALYSIS
Introduction
This section describes high-level requirements for the ELECTRONIC SUGGESTION BOX. This
section will focus on defining end user requirements independent of the implementation method.
―What‖ should be enforced rather than ―How‖. It provides a detailed description of the functional and
informational aspects of the system. Assumptions and constraints are identified, and the interaction and
interfaces with the system components are described. This section also forms the basis for the Design
Stage.
The system has been analyzed using Use Case and Sequence diagrams as detailed below.
Use Case
Discovery of all system processes and how the actors communicate with the system are identified using
Use Cases as shown on figure below that shows general Use Case.
The following is Use Case of different interactions between different actors and the system. Here the
actors on a system are ADMINISTRATOR, STUDENTS AND HEADS OF DEPARTMENTS. In
order for the Administretor to do anything with the system, he/she should involve LOGIN.
19
3.6 THE USE CASE MODEL.
The use-case model is a model of the system's intended functions and its environment, and serves as a
contract between the customer and the developers. The use-case model is used as an essential input to
activities in analysis, design, and test or it simply outlining the system's functionality and delimiting the
system; for example, establishing what actors and use cases exist, and how they interact. There are
many ways to model a system, each of which may serve a different purpose. However, the most
important purpose of a use-case model is to communicate the system's behavior to the customer or end
user. Consequently, the model must be easy to understand. The users and any other system that may
interact with the system are the actors. Because they represent system users, actors help delimit the
system and give a clearer picture of what it is supposed to do. Use cases are developed on the basis of
the actors' needs. This ensures that the system will turn out to be what the users expected.
20
ADMINISTRATO
R
DEPARTMENT
HEADS
Figure 1
STUDENT A user case of the ifm e-suggestion box
Add department, delect and edite
records vacancies
View problem
and suggestion records
Prepair departments
document
set
Login
System
configuration
View mails of problem &
suggestions/ document
View department
& select
Write problem & suggestion
View archives
21
Actors are the users and any other system that may interact with the system. Actors communicate with
the system by sending signals. To fully understand the role of the actor, you must know which use
cases the actor is involved in. This is shown by communicate-associations between the actor and the
use cases. Use cases and actors interact by sending signals to one another. To indicate such interactions
we use a communicate-association between use-case and actor. A use-case has at most one
communicate-association to a specific actor, and an actor has at most one communicate-association to a
specific use-case, no matter how many signal transmissions there are. The complete network of such
associations is a static picture of the communication between the system and its environment.
Communicate-associations are not given names. Because there can be only one communicate-
association between a use-case and an actor, you need only specify the start and end points to identify a
particular communicate-association.
Actors for Electronic Suggestion Box system.
(i) System administrator.
(ii) Students.
(iii) Heads of Departments.
(i) System administrator this is the one who has the responsibility of viewing all information in the
system update information, Respond any errors, compile files of specific departments, , Update the
archives.
(ii)Students is responsible for sending problems, suggestions and view the archives page to know what
issues have been solved.
(iii)Heads of department are the one who receive problems and suggestions of their respective
departments through the admin or E-mail from the system, all update are take to the administrator to be
posted on the archives.
22
The Use Case for IFM E-Suggestion Box System is:
Login
Add department, delete and edit
View problem and suggestion
Prepare departments document
View mails of problem & suggestions/ document
View department & select
Write problem & suggestion
View archives
Login i.e. administrator must log in with the ID to enter its file or to access information from
database.
Add department,delete and edit, Here the system administrators can add department, delete
and edit
View problem & Suggestion, the admin can view all problems and suggestions in the system.
Prepare departmental document, the admin prepares a department document that contains
problems and suggestions
View mails of problem & suggestions/document, heads of department receive mail from the
system and written document from the admin
View department and select, the student views the department and select one department
Write problem & suggestion, the student writes problem and suggestions to the system
View archives, the students are able to view the information‘s that have been solved
23
3.7 SYSTEM DESIGNING.
After converting the user requirements into the desired technical form, then a new system is designed
to reflect the user requirements and, therefore, meet the organizational goals.
This part includes logical and physical system design.
3.7.1 LOGICAL DESIGNING
It specifies input to be used, data/information flow and output of the system. This will be described by
the use of data flow diagrams (DFD).It also suggests the technology to be used, for example, web
based or not.
PROCESS MODELING:
This involves the graphical representation of all the processes that capture, manipulate, store and
distribute information between a system and its environment and between components within an E-
Suggestion Box information system.
(A) C ONTEXT DIAGRAM:
This is a data flow diagram of scope of E-Suggestion Box system which shows Students, head of
departments and System administrator.
SELECT DEPARTMENT
PROBLEM/SUGGESTION
VIEW ARCHIVES requested services
VIEW PROBLEM/SUGGESTION
Updated and uploaded
Information
Figure 2
The Context Diagram of E-Suggestion Box system
0
ELECTRONIC
SUGGESTION
BOX SYSTEM
System
Administator Students/H
eads of
department
24
Services requested
PROBLEM/SUGGESTION FILE
Figure 3
Level- 0 Diagram of E-Suggestion Box System:
1.0
Select
Department
3.0
Department
Form
5.0
Record
Management
Report
4.0
Update,delete
& upload
2.0
Write
problem/suggestion
Student
System
Administrator
Heads of
department/student
s
25
3.7.2 PHYSICAL DESIGNING
It specifies the hardware and software to be used. Database and Graphical User Interface are designed.
Database table fields
The table below shows the data types and descriptions of the fields that will be used to create database
tables.
Table 1: Table Fields for department tables
ID Department Suggestions Problems
1 ICT Hallow Test data
2 HRM Hallow Test data
3 BA Hallow Test data
4 ACC Hallow Test data
5 BF Hallow Test data
6 IRM Hallow Test data
7 SP Hallow Test data
8 TAX Hallow Test data
Table 2:Table for administrator log in
Username
Pasword
26
CHAPTER FOUR
4.0 USER INTERFACE DESIGN.
User interface is the system for most users. The user interface is designed to help users get the
information they need in and out of the system by
Matching the user interface to the task.
Making the user inter face efficient.
Provide appropriate feedback to the user.
Generating useable queries.
According to Kendal, user interface has two components which are presentation language and action
language.
Types of user interface involved in the e-suggestion box system are:
Form fill inter face.
Form fill interface consists of onscreen form or web based form displaying field containing data items
or parameters that need to be communicated to the user. The figure below shows a form fill interface
when a student has a part fill his or her suggestions and problems based on departments
Figure 4
27
Menu interface.
These allow navigation from one page to another. It provides the user with an on screen list of available
selections. In responding to menu a user is limited to the options displayed. In response to our system,
user is provided with links such as Home.Department, Archives, about us and mission. Also we have a
menu bar that allows you to select your department.
The design of the user interface has taken into account what we call user friendliness or usability by
ensuring the following attributes considered in designing human computer interface (HCI).
Learnarbility.
Efficiency.
Memorability.
Error free.
In designing user interface there are three stages which are:
Design state, thise is all about collection of information about user needs.
Implementation/Prototyping stage, thise is prototype system is implemented based on the information
gathered.
Evaluation stage, thise is to evaluate the prototype through user feedback before the final system is
developed
This section provides the detailed design of the system and subsystem inputs and outputs relative to the
user/operator. A computer user directs the function of computer with instructions called input. A
Human Computer Interface is good very critical to the overall success of the system and a bad design
will cause difficulties in its usage; the design can be accomplished through user interface design that
allows faster and easy usage.User interface has much to do with the study of people as it does with
technology. The following are key question to consider before designing the user interface of the e-
suggestion box system:
28
What will the user expect from the system
How does the user perceive the information provided by the system?
How does the user learn to interact with a new computer based system? The group
of users is found.
Who is the user? The kind of the user.
In order to write suggestion and problem,Click button name as Department.Its a link that will direct
you to a department page were you will be able to write problems and suggestion.Click the button
down so as to have options of selecting your department form.
figure 5
29
After clicking the above button a user will see a page called departments in which there will be a GO
MENU that says select your department.
Figure 6
30
Then you can click the go menu to select your department so as to have a department form.The
following are the available departments in the go menu.
Figure 7
31
After selecting your respective department you will be given a department form that will have space for
problem and suggestion.
Figure 8
32
After filling in the form you press the button comment so as to take the form to the respective
department.
Figure 9
After click the comment button you will receive a message telling you that your information has be
received
Figure 10
33
ADMINISTRATOR
Admistrator also he can login by selecting its status; he will be given the form to inputs user name and
password.
Note: This page is only for administrator!
Figure11
34
This is the administrator home page. While in these page he is able to select any department and view
all the data in the data base that are sent by students. Also he is able to navigate to the rest of the pages
like any other user of the system
Figure 12
35
CHAPTER FIVE:
5.0 IMPLEMENTATION
The instruction and accessibility of administrator to the system
This is block of code which allow administrator to view information from the database and to retrieve
information from the database .Administrator can be able also to delete a member as well as to add
another new member to the database and if there is no connection the message of ― can‘t connect to the
database will display‖
<?php
session_start();
$u=$_POST['username'];
$p=$_POST['password'];
$_SESSION['logged']=0;
if(isset($_POST['login']))
{
if(empty($_POST['username']))
{
$mu='<font color="red">username required</font>';
include'home.php';
exit;
}
else
{
$u=$_POST['username'];
}
if(empty($_POST['password']))
{
$mu='<font color="red">password required</font>';
include'home.php';
exit;
}
else
36
{
$p=$_POST['password'];
}
}
if($u&&$p)
{
include'connect.php';
$select=mysql_select_db("e-suggestion",$con);
if($select)
{
$query=mysql_query("SELECT username,password FROM admin WHERE username='".$u."'"."
AND password='".$p."'");
}
if(mysql_num_rows($query)>0)
{
while($row=mysql_fetch_object($query))
{
$id=$row->id;
$_SESSION['logged']=1;
$_SESSION['password']=$id;
}
include'deptadmin.php';
}
else
{
$mu='<font color="red">Username and password do not match</font>';
include'home.php';
exit;
}
}
?>
37
Also the following block of code can provide information of invalid username and password in case
administrator enter wrong password and username
<?php
if(isset($_POST["Submit"]))
{
include("connect.php");
$sql=mysql_query("select * from mwongozaji where Username='".$_POST['user1']."' and
Password='".$_POST['pass']."'");
$count1=mysql_num_rows($sql);
if($count1==0)
{
echo ("Invalid Username and Password!!!");
}
}
?>
<?php
38
5.1 CONNECTION TO THE DATABASE.
The below block of code show the syntax of how a web pages can be connect to the database The php
as a server side script is the one we use to connect our web pages and our database so as to facilitate
the whole system to be Dynamic web pages.
<?php
$host="localhost";
$dbname="e-suggestion";
$dbuser="root";
$dbpass="";
$con = mysql_connect("$host","$dbuser","$dbpass");
if (!$con)
{
echo "<p>Error: Could not connect to database server</p>";
}
else
//select database to access.
if(!mysql_select_db($dbname)){
echo "<p>Error: Could not access the database, please try again later.</p>";
}
?>
The following are codes that process the form to the database.
<?php
if(isset($_POST['submit']))
{
$problem=$_POST['problem'];
$suggestion=$_POST['suggestion'];
39
include"connect.php";
mysql_select_db("e-suggestion") or die("can not connect to the database");
$insert="insert into irm(problem,suggestion)
values('".$problem."','".$suggestion."')";
$query=mysql_query($insert) or die(mysql_error());
if($query)
{
include'SHOW.php';
}
else
{
echo'no';
}
}
?>
40
CHAPTER SIX:
6.0 TESTING
6.0.1 VERIFICATION AND VALIDATION In performing verification, comparison of the initial stated system requirement with the functionality of
the real working system was performed to see if the requirements were met in system development
which yield a particular system.
To ensure the final product satisfies its initial specifications we pass through evaluation phase. On this
phase we review our initial system specification so that we can compare them with the final product
features (real working system features). As our main aim was to ease the manual work done at the
Institute of Finance Management done online by introduction of the web based system. Our main
system features (requirements) were accessed to ensure consistency functional of the system which
could solve the initial stated problem using the system requirements specified in design and
requirement specification documents.
The problem was manual processing of information between students and heads of department. Our
system designed and implemented with a well normalized database. Data entry in the departments are
simplified and there will be almost no manual data processing as any modification of data in the system
only simple system entry, any other modification and error prone arithmetic‘s are done by the system to
avoid any human error which were problem and cost lots of time during manual error of the system. So
our system is in a capacity to eliminate all the manual work to a great extent and avoid any process
which may cause error to be done by a human in any case. Due to this erroneous actions were reduced
to great extent and time consumed to perform particular duties is going to be reduced by this system.
41
6.0.2 VALIDATION In performing validation various taste procedure are done so as to see if the system features implement
the required functionalities without errors
System testing was necessary to check for functional and non functional requirements of the system.
Different scenarios were assumed for the system to check whether the system can accommodate them.
Login the system using invalid username for administrator.
Login the system using invalid password for administrator.
Incomplete set of information being sent to the database.
Logging out of the system
Entering incorrect data type in the database through the entry form
6.0.3 TEST DATA
All the tables were felt with different test data. These data were used to check the functionality of the
system by performing different queries. Upon doing that most of the result was as were expected and
those which return unexpected results were reviewed and corrected so as to conform to the specified
requirements in the system design.
6.0.4 TEST EVALUATION SUMMARIES
For each test executed, a test result form will be created. This shall include the ID of the Colum, the
problem and suggestion.
6.0.5 TEST CASES RESULT
In this part the result obtain in the test case that has been describing in the analysis are filled in the table
below. The tables are nine (9) and they all look similar to each other in structure, the only difference is
the contents
42
Department table
ID PROBLEM SUGGESTION
1 Hollow Test.
2 Hollow Test.
3 Hollow Test.
4 Hollow Test.
5 Hollow Test.
6 Hollow Test.
7 Hollow Test.
Table 3
Administrator log in table
Username
Password
Table 4
43
CHAPTER SEVEN:
7.0 EVALUATION
The System evaluated according to the following important attributes Functionality, support,
maintenance, reliability, performance, scalability, usability, security and
flexibility/customization. The benefits, drawbacks, and risks of using system can be determined
from examining these attributes.
7.0.1 FUNCTIONALITY
The system is able to perform what it was supposed to do and with recommendable
efficient during testing of the final system.
The system is also compatible with the stated software and hardware requirements stated
in the requirement specification document.
7.0.2 SUPPORT
In case needed training to user on how to use the product, installing the product, and answers to
users who have specific problems may be provided. User guide for the system also provided for
user to gain knowledge on using the system.
7.0.3 MAINTENANCE
As any useful programs are always dynamic, Needs change, new uses are continuously created,
and no program of any kind is perfect. It's important that a program is being maintained, and that
it will be maintained far into the future. Our system is also made easy to maintain and can easily
accommodate changes so as to fit with any changes needed.
7.0.4 RELIABILITY
Through number of testing procedure performed on the system developed, it was made perfect as
possible and it produce appropriate answers. However correction might be necessary in case of
any errors which were not observed during the testing period.
7.0.5 PERFORMANCE
We try to subject the system into kind of real work situation using stated hardware and software
conditions and the system performance was very impressive.
44
7.0.6 SCALABILITY
As far as the amount, the system is capable of handling all possible data and processes them with
in very efficient manner. Apache server and Mysql DBMS can handle vast amount of data that a
client can never exceed in the near future.
7.0.7 USABILITY
The system is easy to use and its pages are interactive which have no complication for an end
user with basic computer skills of just entering some data and simply follow simple instructions
which will guide him/her through out the system application.
7.0.8 SECURITY
The system was made so that only those valid users are allowed to access it, and perform duties
which are within their range of their permission; this was done through implementation of user
password and user groups. Operating system user password is another way through which system
users are going to experience security implementation where computers with the system
functionality are going to be imposed with user names and passwords.
7.0.9 FLEXIBILITY/CUSTOMERIZABILITY.
With moderate technical know how the system can be customized to work in different
environments which were not originally designed to and thus fit into other specific environment.
45
CHAPTER EIGHT:
8.1 CONCLUSION AND RECOMMENDATION
This Chapter gives summary of how successful in achieving the aims of the project, indicating
problems which arose in the project duration which could not be solved in the available time, and
we suggest enhancements that could be made in the future to improve the work.
The new system solves most of the stated problems or weakness as follows: It receives problems,
suggestions, keeps records of all information‘s using the administrator, processes the information
and is forwarded to the department head for processing.
The system provides the security that no users will be allowed to access the interior of the
system or any information kept by the system without being registered first as administrator.
Once a user want to login has to select his department and continue to make suggestions and
problem. User will be directed to the department form according to his/her department. If he /she
are Administrator: will be able to perform all functions offered by the system.
8.2 PROBLEMS
During the project duration, there were some constraints and problems, which in one way or
another add some difficulties. The following are the problems faced by the group.
Project activities depended much on accessing the Internet searching for relevant
materials, but the availability of Internet services is still the problem, because there so
many students who need Internet service and the number of computers which have
Internet access in the laboratory is not proportional with the number of students who are
in need of the service.
First was lack of computers in the laboratory. There were so many students who required
time on the computers for their assignments, and hence whenever the group member were
free and wanted to do some project work, they failed as there were other students who
were using computers.
When the group got a chance to have computer for project activities in the computer
laboratory, they sometimes encountered with the problem of electricity fluctuations.
Regularly the power went off.
Another problem was time limit, the project activities started in second semester, and
goes on until the start of institute examination, but time was still a problem .Therefore
46
group members were concentrating with studies and hence less time was devoted to the
project activities.
8.3 RECOMMENDATIONS
After studying and developing the project the group found it wise to recommend on what have
been learn throughout the project, and therefore this section includes suggestions that will be of
beneficial to someone who is going to develop a related system (project). It also includes
conclusion for the studied system.
The time allocated for the project is too small compared to the actual project work required.
Although it is allocated in two semesters for the project completion and student have many other
courses that take most of the time. The recommendation is that, courses taken by a third year
student should be reduced, at least three courses for the second semester to give students enough
time and they can be able to start the project from the feasibility study to implementation.
The ratio of students to number of computers in the laboratory do not favor the completion of
project, the number of computers should be increased so that students can do their project
without queuing of waiting for a computer.Thise includes giving out special laboratories for
project activities, so as students with no laptops can work and finish the project on time.
With Internet services, the recommendation is that, the number of computers with Internet
connection in the laboratory also should be increased, and if possible every computer in the
laboratory should have Internet access. This will help students not to line up waiting for the
computer with Internet connection.
47
8.4 REFERENCES.
The following is the list of books and sites were used as references during development of
Electronic Suggestion Box System.
Books:
1. CORE WEB APPLICATION DEVELOPMENT WITH PHP AND MYSQL, By: Marc
Wandschneider
2. ESSENTIAL OF SYSTEM ANALYSIS AND DESIGN, Third Edition, By: Valacich George
Hoffer.
3. PROJECT MANAGEMENT, NCC Education Services Limited, 1998
SYSTEMS ANALYSIS AND DESIGN METHODS, fifth edition, Mc Graw- Hill, 2001
Internet sites:
1.http://www.developer.com/
2.http://www.w3schools.com/php/default.asp
3.http://www.w3schools.com/php/php_ref_mysql.asp
4.http://www.mysql.com/training.html