Escolar Documentos
Profissional Documentos
Cultura Documentos
NAKAYENGA IRENE
2009-M132-20014
September, 2011
UGANDA MARTYRS UNIVERSITY
SCHOOL OF POST GRADUATE STUDIES
Master’s Dissertation
Declaration
I have read the rules of Uganda Martyrs University on plagiarism and hereby state that this
work is my own.
It has not been submitted to any other Institution for another degree or qualification, either in
full or in part.
Throughout the work I have acknowledged all sources used in its completion.
ii
DEDICATION
I dedicate this book to the Almighty God for everything He has made possible throughout this
I also dedicate this book to my children Patience, Phillip, Paul and Patrice; mummy’s
iii
ACKNOWLEDGEMENTS
I would like to thank the Almighty God who has enabled me complete this course, for the
I owe deep indebtedness to all who have combined efforts with me in order to complete this
Justine, Sarah, and colleague Lugajju Oswald for the support given to me during this project.
place, for its academic discipline that has enabled me progress through academics and work
successfully, University staff especially Lecturers and Library staff without whose
The staff of Segofer Technical Services thanks for supporting me and for willingly
participating in the study. Without your information, the research would be impossible.
I also acknowledge my parents the Late Nakibinge Charles, you laid a good foundation for
my education career, my mother Mrs. Nakibinge Gertrude for the prayers, encouragement and
phone calls just to say how are you, and to my sisters Vivian, Suzan and Roy.
Lastly I acknowledge my family especially dear Husband Mr. Sserunjogi Godfrey for the
support, encouragement, advice, and tolerance. To my sweet little angels Patience, Phillip,
Paul and Patrice, thank you for bearing with my tight schedules and for those beautiful
Nakayenga Irene.
iv
ABSTRACT
In principle, inventory management is crucial to a company in order for it to realize its goals
and objectives. At Segofer Technical Services, there are challenges the company is
experiencing such as uncoordinated business processes that lead to duplication of records and
data redundancy, delays in serving customers, too much paper work that consumes a lot of
space, poor decision making on restocking products, and inability to track available stock.
The goal of this study was to address the above problems by designing and implementing a
prototype inventory management system capable of product registration, sales and profits
maximization, and stock control. The study was qualitative using the SDLC, interviews and
document reviews were effectively used to gather data and the system was designed using the
prototypying methodology.
The need to computerize the business processes in order to maximize sales and profits, realize
customer satisfaction, control and monitor stock, keep track of customers and their contacts,
and compete favourably in the competitive market were identified and recommended.
The research achieved almost all the objectives set and the prototype designed could further
be developed into a full working system that could be used by the company or any other
threats identified in this study could also be used to build on the company’s competence,
boost its presence in the market, attract more customers, and thus realize the company goals
and objectives.
v
Table of Contents
Declaration ...............................................................................................................................................ii
DEDICATION ............................................................................................................................................iii
ACKNOWLEDGEMENTS ........................................................................................................................... iv
ABSTRACT .................................................................................................................................................v
BACKGROUND ......................................................................................................................................... 1
vi
2.4 Modern Inventory Management Systems................................................................................... 12
METHODOLOGY..................................................................................................................................... 20
vii
3.3.2.1 Unified Modeling Language (UML).................................................................................... 26
SYSTEM ANALYSIS.................................................................................................................................... 1
4.4.2 Actors...................................................................................................................................... 3
4.5 Business Process Model for the Segofer Automated Inventory Management System .............. 17
viii
4.6 Security Requirements ................................................................................................................ 20
SYSTEM IMPLEMENTATION................................................................................................................... 55
ix
6.1 INTRODUCTION ........................................................................................................................... 55
REFERENCES ............................................................................................................................................ 1
APPENDICES............................................................................................................................................. 3
Appendix Four: Major/Sample PHP files and codes used in designing the system ............................ 9
x
List of Abbreviations
RFID: ……………………Radio-Frequency Identification
xi
LIST OF FIGURES
Figure 2.1 Functions of Inventory Management Systems.......................................................11
Figure 3.1 The prototyping process for SAIMS.......................................................................20
Figure 4.1 Showing current IT infrastructure at Segofer Technical Services company...........33
Figure 4.2 Showing the Proposed Organizational Structure.....................................................34
Figure 4.3 showing the Coordination Model............................................................................38
Figure 4.3.1 Business Process Models......................................................................................39
Figure 4.4 Process Flow of the SAIMS....................................................................................41
Figure 4.5 Showing the Network Diagram for Segofer Technical Services Company............43
Figure 4.6.1 Use-case Diagram for the Executive Director......................................................44
Figure 4.6.2 Use-case Diagram for the General Manger..........................................................45
Figure 4.7.3 Use-Case diagram for the Company Secretary.....................................................46
Figure 4.7.4 Use-Case diagram for Salesperson.......................................................................47
Figure 4.7.5 Use-Case diagram for the Purchasing Officer......................................................48
Figure 4.7.6 Use-Case diagram for Information Technology Supervisor.................................49
Figure 4.7.7 Use-Case diagram for Database Administrator....................................................50
Figure 4.8 Use Case Diagram of Segofer Automated Inventory Management System............52
Figure 4.9 Showing the Conceptual Class Diagram for SAIMS..............................................53
Figure 4.10 Showing the Specification Diagram for SAIMS...................................................54
Figure 4.11 Showing the Activity Diagram for SAIMS...........................................................56
Figure 4.12 showing the Conceptual Data Model for SAIMS..................................................57
Figure 5.1 showing the Entity Relationship Diagram...............................................................64
Figure 5.2 Showing the Log on Interface.................................................................................70
Figure 5.3 Showing the Administrator Interface......................................................................70
Figure 5.4 Showing the Salesperson Interface..........................................................................71
Figure 5.5 Showing the registration of Item categories............................................................71
Figure 5.6 Showing the Interface for User Registration...........................................................72
Figure 5.7 Showing the Item/Product Registration Interface...................................................72
Figure 5.8 Showing the Customer Registration Interface.........................................................73
Figure 5.9 Showing a report of the available stock...................................................................73
Figure 5.9 Showing sales report...............................................................................................74
Figure 5.11 Showing Items/Products registered in the company database...............................74
Figure 5.12 Showing the report for the Customer List.............................................................75
xii
Figure 5.13 Showing the products available for shopping........................................................75
Figure 5.14 Showing the Proposed Network Sub-Diagram for SAIMS...................................77
Figure 6.1 showing the index.php page....................................................................................83
xiii
LIST OF TABLES
Table 4.1 Requirements gathered on product data, Product , and Sales Order forms..............28
xiv
CHAPTER ONE
BACKGROUND
1.1 INTRODUCTION
Inventories are part of the strengths of any business and can be applied as the firm’s own
strategy in building its competencies. Through their application of the traditional counting,
weighing, and recording systems, the inventory has never been the same in the intervention of
technologies that can provide additional competency. However, it should be noted that
earliest humans kept caches of food and stone tools. Readers familiar with the bible will recall
that Joseph was, among other things, a remarkably proficient inventory manager.
Returning to here and now, the person who runs a business that involves selling products has
a different viewpoint on inventories. This operation may serve about 70 busy, demanding
people, and provides several dozen types, colors, and sizes of products, as well as hundreds of
other kinds of supplies. It takes a serious, conscious effort to monitor all these items, to
estimate their usages, to order new supplies from wholesalers at appropriate times, to decide
when to discontinue rarely bought items and when to add attractive new ones, and so forth.
These are the typical concerns of inventory management at the retail level; the operators of
most retail businesses face basically the same set of problems (Zipkin, 2000).
The basic, essential function of inventory management system is the ability to perform the
main business transactions. Such transactions include product registration, customer and
vendor tracking, tracking payment processes, purchase and order processing, and the ultimate
goal of maximising sales and profits. An example; the order processing is used to provide
1
management information on stock, sales, delivery notes, invoices, and so on. Such data or
In order for businesses to have relevant and adequate information for proper management and
systems. These systems perform many activities among which is processing data into
information that involve activities such as calculating, comparing, sorting, classifying, and
summarizing data. These activities organize, analyze, and manipulate data, thus converting
them into information for end users including managers who need it for decision making
(O’brien, 2003).
There are basically three fundamental reasons for all businesses to acquire or implement the
use of inventory management systems. According to (O’brien, 2003) these are found in the
three vital roles that these systems can perform for a business enterprise. These roles include
support for its business processes and operations, support for decision making by its
employees and managers, and support of its strategies for competitive advantage.
In Uganda, the business sector is flourishing and many companies are dealing in the sale of
various goods and products including electronics, electricals, and their accessories. Such
companies include Appliance World Limited, New Master Electronics Ltd, Cellular Service
Logistics, Anisuma Traders Ltd, Segofer Technical Services which is the case study, and so
on (Uganda Business Directory 2008-2010). All the above companies have or need to invest
customer needs, and maximize pofits which is the ultimate goal of every business/company.
2
1.1.1 Background to case study
Segofer Technical Services is a company that was established in 2007 as a business enterprise
that deals in the sale of electrical, electronics, and hardware materials. Located at Plot 57
Hoima road Namungoona, it has since progressed and registered as a private limited liability
company incorporated in Uganda on 21st May 2007. According to the Company profile, “the
mission statement is to supply the company’s customers with quality products and services
which meet their expectations; ensure safety, quality, and schedule in all projects for clients’
works; and to conduct businesses with integrity and responsibility” (Segofer Company
Profile, 2007).
According to research carried out, the company just like most businesses in Uganda operating
on small scale basis, is facing challenges especially those related to controlling stock,
identifying unpopular products and those that are essential or those that should not miss from
the stock so that appropriate decisions are made while purchasing, etc. All these are inventory
management related and basing on this, this study believed that the development of such a
system would help the company solve half if not all of its problems related to inventory.
The company currently has no automated inventory management system it is using. Rather
products are registered with reference to the purchasing receipts that the Purchasing Officer
delivers with the products. Sales are recorded on a daily basis in a specially designed black
book with columns designed to capture relevant data such as product name, selling price,
profits, total sales, and so on. Other information such as customers’ and vendors’ payments
and contacts are also recorded in company receipts and box files respectively.
Company incomes, costs, daily and general expenses are recorded on specially designed
forms which are then filed for reference purposes for the business managers. In general, the
3
current system being used at the company is purely manual and paper based and this is prone
to challenges such as natural disasters like fires, floods, molds, and mishandling by the
employees. Still there are no reports that can be automatically generated for all the business
transactions that go on in the company and this is posing a big challenge and set back to the
company as expressed by the company managers. All the above mentioned business processes
and procedures are practically manual and according to results from the interview conducted,
documents reviewed, and observations made, people expressed difficulty in tracing required
For any one company that wishes to stay for long in business, one has to implement / use
Unfortunately at Segofer Technical Services, the system being used is not automated. The
company is faced with challenges including delays in serving customers as more time is spent
on one customer in recording items that are being bought which records later consume alot of
storage space; poor decision making especially on restocking products as there are no
statistics to show the most/or least demanded products and also when duplicate or double
entry of records occur; uncordinated business processes that lead to duplication and data
redudancy, alot of paper that needs storage space, miscalculations especially on sales and
profits; and the inability to track available stock as there is no physical record of what is in
and out of stock at specified times and also wrong projections as a result of using wrong
records (General Manager’s interview responses, 2011). In addition the current system being
used is more less a manual system as all their data are stored in paper files and in case of need
for generating reports, the end users have no means of manipulating the system to have the
4
reports generated automatically. Furthermore, the system being used is more vulnerable to
natural disasters like fires and floods for paper files, and even consumes a lot of storage space.
inventory management system that is capable of performing the main functions of registering
products and materials purchased, maximizing sales and profits, ensuring customer
its strengths and weaknesses and identify opportunities for strategic automated inventory
management interventions.
ii. To determine the requirements that would enable the design of an appropriate inventory
management system.
i. What are the strengths and weaknesses of the current inventory management system used by
Segofer Technical Services Company? What opportunities exist for strategic automated
5
ii. What are the requirements for designing an appropriate inventory management system for
iii. What are the design features of a reliable and secure automated inventory management
iv. To what extent does the prototype inventory management system meet the inventory
sections that is electronics, electricals and hardware. It also dealt with one other branch
affiliated to the main branch. The processes that were emphasized while implementing the
purchases, tracking sales and available stock, and registering staff. Departments which were
involved or whose staff contributed in data collection were sales, marketing, human resources,
gathered data, the Information system had three (3) main modules developed which had
functionalities grouped under each. The developed modules would inter-relate to support the
Inventory/stock Management:
Under inventory management, the following functionalities were developed and implemented;
6
• Register product categories, products within the categories, and system users while
• Calculate profits after the sale of products and also provide the projected profits for the
• Control stock by automatically deducting items at the time of selling and showing the
remaining stock.
• Enable the sale of products to customers within the shortest time possible.
• Generate reports such as sales per salesperson, available stock, loyal customers,
Under this module, the following functionalities were developed and implemented;
• Assigning the users priviledges according to the different roles they would perform
Customer Management:
In the customer management module, functionalities such as the ones described below were
containing vital data such as the estimated profits to be accrued from the available stock. The system
can also easily give details such the name of the product, quantities sold and the quantities in store.
7
Such information is needed when making decisions on what items are reducing in stock and thus need
to be purchased.
The automated inventory management system will improve the process of selling products to
customers that is quantities for sale will be identified against that customer and the system will
automatically calculate the total costs for each thus saving on time spent while serving a customer.
The system will enable the managers track transactions and total sales made by specific salesperson
per day and also view reports of the loyal customers which information would later be useful for
decision making.
1.8 Conclusion
With regard to the introduction given above, incorporating an inventory management system in any
business, would help it succeed especially in planning, executing, and controlling the supply chain
network. In addition there would be increased business value, customer satisfaction, and full
maximization of sales and profits. Therefore this research intends to analyze, develop, and design a
working prototype of an automated inventory managament system that would perform the mentioned
functions above and also recommend it to Segofer Technical Services the case study.
8
CHAPTER TWO
LITERATURE REVIEW
2.1 INTRODUCTION
An inventory is the stock of goods that a business has on hand; in an electronics and electrical
sales company, it is the stock of electronics and electrical materials that the company has.
Each style, size, color, shape, of material that the company stocks, is called an item in the
keeps track of information about the items that the business stocks. The quantity of each item
that the business has on hand is an example of the information it tracks. Nickerson goes on to
explain that the inventory management system provides information for the daily operations
of the business. For example, a salesperson can check the system to see if an item of a
particular style is available in stock. The system also provides information to help in the
management of the business. For example, periodically the system reports on the quantity on
hand of each style of item. This information helps the business managers decide whether to
increase inventory by ordering more items / goods (if stock is low) or to reduce inventory,
perhaps by having a sale (if stock is high). Thus, the inventory management system helps in
According to (O’Brien, 2003), inventory management systems process data reflecting changes
to items in the inventory. Once data about a customer orders are received for an order
inventory levels and prepares appropriate delivery documents. Then it may notify managers
about items that need re-ordering and provide them with a variety of inventory status reports.
9
Inventory management systems thus help a business provide high-quality service to customers
From the two writers above, it is clearly explained that keeping track of a business’ inventory
is important so that customer demand is met and inventory can be reordered when it is low.
Therefore, inventory management systems provide and support information needs and
operations. They make information readily available to help in decision making thus enabling
managers make informed decisions. Still, the inventory management systems improve the
efficiency and effectiveness of information processing activities, and are used in all functions
of all types and sizes of businesses and organizations. So, in order to survive in this
satisfy the growing needs of customers and also establish a fair ground for competition. This
requires automation of key functions in the company like product registration and thus stock
control.
of some of the available inventory management systems monitoring tools, and will
recommend plausible implementation mechanisms for the system designed. Lastly, this
chapter will look at or review the methodology that was used in the research like the research
10
2.2 Inventory Management Overview
Good inventory management is essential to the successful operation of most organizations.
This is basically due to the amount of money inventory represents and the impact that
that captures, classifies, stores, maintains, updates, and retrieves transaction data for record
keeping and for input to other information systems. These other systems being talked about
include the management information system whose main task is to provide information to
managers to support the operations and decision making within an organization. With the
above definition, synthesized from the works of Kroeber, inventory management systems are
as a result of or a combination of both the transaction processing systems and the management
information systems.
Although managers have had and used inventory / business management systems for
centuries, there has been a marked increase in interest in inventory management systems in
recent years. The primary reason for this increased interest is the introduction of computer
technology into information systems; the complexity of modern organizations, the demands of
the legal and social environment, other advances in technology, and the expanding role of
11
2.4 Modern Inventory Management Systems
According to (O’Brien, 2003) computer-based inventory management systems are highly
being used in businesses to provide high quality service. In the recent years, other promising
technologies have emerged for tracking inventory. For example the Radio Frequency
manufacturer, type, and serial number to a scanner or other data collection device. This new
technology is superior to bar codes in several ways. For instance, a scanner reads the
information from an RFID from several yards away, making it ideal for tracking items stacked
It is therefore relevant that in a business, some of the vital resources needed for its smooth
operation is the presence and use of inventory management systems. This is because they are
relevant for providing information vital for maintaining appropriate stock, decision making,
customer satisfaction, and for the ultimate goal of every business; maximizing sales and
profits.
track of the business’s inventory, to indicate when inventory should be reordered, and to
compute the value of the inventory. The figure below summarises the functions of this
system. The inputs to the system are the sales order data and the recieving notice data giving
the quantity of items recieved from suppliers. The outputs from the system are the inventory
reorder report, which lists the items that should be reordered, and the inventory value report,
12
Nickerson goes on to say that the stored data needed in this system is the inventory master
data, which is also used in the order entry and billing systems. For the inventory management
system, the fields needed in each record of this data are the item number, item description,
unit cost, quantity on hand, reorder point, and reorder quantity. These fields are used to
produce the output in the reports, The unit cost, which is the cost per item, and the quantity on
hand are multiplied to compute the inventory value for the inventory value report. The reorder
point is the quantity below which the business does not want the inventory to fall. If the
quantity on hand is less than or equal to the reorder point, the item should be reordered, and
this fact is printed in the inventory reorder report. The reorder quantity for the item is also
printed in the report and indicates the quantity of the item that should be ordered.
From the discussion above, processing in the inventory management system first involves
updating the quantity on hand in the inventory master data from data in the sales orders and
recieving notices. The quantity delivered of an item from each sales order is subtracted from
the item’s quantity on hand, and the quantity recieved for the item from each recieving notice
is added to determine the new quantity on hand. Depending on the procedures of the business,
once or twice a month, or perphaps more often, the inventory reorder report is prepared from
the inventory master data, listing all items which should be reordered. Also once a month, the
13
Figure 2.1 Functions of Inventory Management Systems
• Compute inventory
value
Storage function:
• Update inventory
master data
• Access inventory
master date
assumptions to research design and data collection (Myers, 2002). It is believed that the
choice of research method influences the way in which the researcher collects data.
Researchers also believe that specific research methods also imply different skills,
assumptions, and research practices. However, of the four research methods available, this
research study used the qualitative research approach which according to (Baker, 1999)
involves the fact that the findings of such a study are presented not in numbers but solely in
words. Qualitative research methods often form the basis of different types of social research
including interviewing, participant observation, interpretive analysis, case studies, etc and
since this research is using a case study, the qualitative approach was certainly the most
14
appropriate. According to (Baker, 1999), case study is a research strategy which focuses on a
single organization, institution, event, decision, policy, or group (or possibly a multiple set). A
case study often seeks an explanation, as an experiment might. They may be largely
exploratory, or they may be descriptive. But often the main reason to study a particular case is
to try to figure out why a certain situation prevails or how an organization or group has
information system. According to O’Brien ( 2002) this step is one of the most difficult. You
may need to work as a team with information systems analysts and other end users to
determine your specific business information needs. For example, first you need to determine
what type of information each business activity requires; what its format, volume, and
frequency should be; and what responce times are necessary. Second, you must try to
determine the information processing capabilities required for each system activity (input,
Finally, O’Brien (2002) specifies that you should try to develop functional requirements
which are end user information requirements that are not tied to the hardware, software,
network, data, and the people resources that end users presently use or might use in the new
system. In conclusion, literature reviewed indicates that for an information system project to
be successful, a clear set of stakeholders’ requirements are necessary to determine the purpose
15
2.6.1 Research Techniques
Interviews: An interview is literally an interchange of views between two persons conversing
about a theme of common interest (Kvale, 2007). This author goes on to say that systematic
literature on research interviewing is a new phenomenon of the last few decades. According to
respondent in which the interviewer has a general plan of inquiry, including the topic to be
covered. The qualitative interviewer, Babbie goes on to say that, must be familiar with the
questions to be asked. In this research, qualitative interviews were conducted where the
researcher with the assistance of some research assistants and an interview schedule, was able
to collect data on the various aspects of interest for the topic in question. Basing on these data
collected, the research was able to design a prototype of an automated inventory management
Document Analysis: Document analysis according to (May, 2001), is one of the modern
techniques used in research but emphazises that there are four indispensable points that
always have to be considered in assessing the quality of the documentary sources. They are
authenticity, credibility, representativeness, and meaning. The analysis of documents like the
other research techniques required the flexibility of the researcher for instance to verify the
validity and reliability of those documents. Documents analyzised included the company
profile, sales books, purchasing order books, files for reciepts, company bronchures, and
minutes. The information obtained from the documents analysed was used to supplement
information obtained by other methods. (Bell, 2005) says that information obtained from the
documents reviewed can be particularly useful when access to the subjects of research is
difficult or impossible.
16
Observation: Bell (2005) points out that observation can be useful in discovering whether
people do what they say they do, or behave in the way they claim to behave. It also depends
on the way people percieve what is being said or done. However Bell emphasizes that once
which would have been impossible to discover by other means. But the greatest care has to be
taken to ensure that you get the most out of the periods of observation. Bell emphasises that
one has to be clear about the purpose of the observation and why you are observing that
particular group or individual. If one’s main interest is a process, then methods of recording
the process have to be found. As methods are selected, Bell points out that some questions
have to be kept in mind such as: ‘what do I need to know?’, ‘why do I need to know it?’ and
‘what shall I do with this information when I have it?’ Some of the processes that were
observed included recording the sale of items/ products in the sales book, registration of
customers for instance MTN Mobile Money customers because the company has those
services offered, and the process of recording of items/products that have just been purchased.
performance, platform independent, reliable, easy to use, considered to be more stable, takes
little storage space on disk, and is highly secure (Welling and Thompson, 2003). The system
was designed using UML a modelling language technique and programming languages such
as PHP an HTML-embedded script language which easily intergrate with MySQL. These are
17
2.7.1 Review of Unified Modelling Language Technique
UML is an effective standard diagramming notation for all object-oriented developments. It is
a technique used in the analysis and design stages of systems development by both
information systems professionals and software developers for modeling software systems of
varying complexities, Dennis (2002). This research used it in designing the SAIMS. It was
supplemented by CRC cards, which are a simple means of identifying and organizing classes.
Other UML models included the Use Case, which is the primary modeling tool for defining
the behavior of the system (Dennis, 2002). It describes how the user interacts with the system
to perform some activity, such as placing an order, registering products, etc. Class diagrams
were also used to model class structures at the conceptual and specification levels. Class
diagrams according to (Lunn, 2003), are the internal wiring diagrams for a system. They are
sometimes called static models, as they define the static and unchanging structure of the
cards that represent classes, was used as a means of identifying and organizing classes (Rubin,
1998). It was used to extract candidate classes, identify attributes and methods, and define a
class hierarchy for the SAIMS (Oldfield, 2002). Classes and objects are extracted from Use
Case narratives by doing grammatical parse for nouns. Activity diagrams as their name
suggests were modeled to describe activities and the flow between the activities of the
diagram which is very similar to a class diagram, was viewed as a subset of a class diagram.
These diagrams aid in model definition, and can produce a database schema for
Pinfield, 2001). According to Gardner and Pinfield, PHP is available as an Apache module,
18
and is therefore very efficient, and works well with MySQL (as well as a variety of other
databases). It is very easy to integrate with HTML. Blocks of PHP code can simply be
inserted in a standard HTML document as required. (Gardner and Pinfield, 2001) go on to say
that one of the most useful features of PHP is the way it handles HTML forms. Any form
element automatically results in a variable with the same name being created on the target
page. PHP can perform mathematical calculations, manipulate strings of data and query the
database.
2.8 Conclusion
In this chapter, various aspects including inventory management systems, the history, the
modern inventory systems, their functions, and the methodology; SDLC (that is planning,
requirements, design, and implementation) have been reviewed. Thus preliminary evidence
suggests that businesses need to invest in and implement inventory management systems. The
selected methodologies, techniques and tools have been reviewed and deemed relevant for use
19
CHAPTER THREE
METHODOLOGY
3.1 INTRODUCTION
In this chapter the study described the methodology both research and development
methodologies used basing on the research objectives. The research methodology included the
data collection tools used while the development methodologies included the system
development techniques and tools used in gathering requirements. Also included in this
chapter is a finalized detailed project schedule with deliverables to be achieved at the end of
this case, the approach used was case study research. A case study is a research strategy
which focuses on a single organization, institution, event, decision, policy, etc. This is
because a case study provides the research an opportunity for one aspect of a problem to be
studied in some depth. It also identifies organizational features which identify the processes at
work and these show how such features affect the implementation of systems and how they
customers who offered to provide information at the time data was being collected. These
included staff such as the Executive Director, General Manager, Salespersons, Company
Secretary, and Customers. Thus, this research used a census study because data was collected
20
3.2.3 Sample size
The research had a projected number of people to gather information from of about 30 people
sampling in which the subjects selected seem to meet the study’s needs. It was used because
the company under study had a small population and was well conversant with the current
system and provided data required for the design of a new system.
Other sources of data included; sales invoices, sales orders, financial data like expenditures,
sales books, company invoices and receipts, purchase order books, etc.
research, and analysis of current business processes. Interviews were conducted with key
stakeholders including management and staff of the company, and were geared towards
understanding the business processes in the current system. Using an interview schedule
(Appendix One), the questions were administered to all the potential SAIMS users,
documents were reviewed, and observation was used as a mechanism to establish the daily
activities/ processes, to see what systems were being used and how they used them for the
different processes at the company. The interviews were conducted in such a way that would
help gather data not only about what is already captured but also to include what the intended
system users would want incorporated in the new system. These were divided into functional
Reliability: this will be implemented by designing the back-end database using MySQL
software which is virus free, and also the network will be required to be protected from
programming language that is very easy to integrate with HTML. Still blocks of PHP code
flexibility.
Manageability: this will be implemented by organizing user training in both use and
operation of the SAIMS, user and system manuals prepared for training and guidance.
Usability: this requirement will be implemented by designing the system using PHP
3.2.7.1 Interviews
Interviews were held with the staff of Segofer Company and these involved the researcher
with the assistance of one research assistant having a one-on-one appointment. Using the
interview schedule, the interviewees were asked questions and answers were filled in by the
interviewer herself. The study used structured interviews because; with the structured
interviews, the interviewer asked questions as written on the form and recorded answers as
given, it reduced the bias that would have resulted when the interviewer has license to ask
questions as they choose, the answers from the structured interviews were also much easily
22
compared, measured and summarized, and questions were ordered and the respondent were
The Tool
An interview schedule was the tool used to collect data. It was a set of structured questions
that were ordered and with instructions on how to conduct the interview, worded questions
were read out by the interviewer, and the respondents gave answers as the interviewer
recorded them down. The respondents were easily engaged in the interview and often asked
statements, sales books, purchase order books, sales receipts, etc were used to supplement
information obtained by other methods that is interviews and observation. The document
reviews provided a broad coverage and helped collect all the necessary information available
and which information was required for the designing of a new system. It also provided actual
records that had data that was required or would be referred to in designing the new system.
This technique also provided information that would not easily be availed by staff for instance
3.2.7.3 Observation
Observation was carried out at the company especially the processes to determine how the
products, customers, etc were received, registered, stored, and how the records were managed.
Four observation visits were made before the final conclusion was made and this helped
provide first hand information about the procedures, processes, and events that occur at the
company, and to remove any biases in the daily work that would have been caused due to the
researcher’s presence. This method was used to help in verifying statements that were made
23
during the interviews, to determine if processes and procedures mentioned were followed as
specified in the documents and interviews. The observation also helped obtain unbiased data
that greatly supplemented the interviews conducted. It was also greatly useful in gathering
information especially on how the current system inputs and outputs data.
system. This methodology helped improve the management and control of the system
development process, simplifying, and structuring the process, standardizing the development
process by specifying activities to be done and techniques to be used. This method involved
major activities such as Planning, Analysis, Design, testing, and Implementation. Within these
activities were specific activities under each and all these were fully followed in the
development process as will be seen in the project schedule attached. However, the System
Development Life Cycle (SDLC) model was used together with the prototyping approach and
this was because SDLC follows a sequential flow of activities and so may not be practical to
be used alone as some requirements would not be completely specified. Prototyping is always
necessary when some requirements cannot easily be specified, or when some functionality is
Prototyping
and implementation phases concurrently, and all three phases are performed repeatedly in a
cycle until the system is completed. He goes on to say that with these methodologies, the
basics of analysis and design are performed, and work begins immediately on a system
shown to the users and project sponsor who provided comments, which were used to re-
analyze, re-design, and re-implement a second prototype that provided a few more features.
The process continued in a cylce until the users, sponsor, and analysts agreed that the
prototype provided enough functionality to be installed and used in the company. The
diagram below is an illustration of the cycle or process of prototyping that the research
underwent.
Planning
Analysis
Design System
Implementation
The research used this prototyping-based methodology because it very quickly provided a
system for the users to interact with, even if it was not ready for wide-spread organizational
use at first. It also reassured the users that the project team was working on the system, and it
helped to more quickly refine real system requirements. Rather than attempting to understand
a system specification on paper, the users were able to interact with the prototype and got a
better understanding of what it could and could not do.The methodology also helped in
minimizing development costs, and exposed the developer to future system enhancements.
25
3.3.2 Design and modeling tools
software systems, as well as for business modeling and other non-software systems (Larman
2002). The UML was used in modeling most if not all of the diagrams needed in the system
development process. These included; use-case diagrams, class diagrams, activity diagrams,
entity-relationship diagrams, and the conceptual data model. All these diagrams were
Word and Ms Visio. Ms Word was used to type out all the documentation including the
report, interview schedule, and the Ms Visio was used to design the UML diagrams.
PHP; this is an HTML-embedded script language that assisted in the development of dynamic
pages. It was used to connect the interfaces to the database, creating forms, user interfaces,
Dreamweaver: This research intends to use Dreamweaver because it is easy and efficient in
use, has the ability to create consistent looking web pages, and is available for use on
software, and can run on many operating systems. It is also easy to use, fast, and is scalable
26
and hence accommodates large amounts of data thus providing high level security for the
stored information.
3.3.3.5 Hardware
These included; windows vista, 2.0+ GHzs processor, 2 GB system RAM, and 3 GB free hard
drive space.
risks that would be associated with the project. At this phase, the study identified the need and
determined the scope of the entire project. Also a detailed work plan was drawn and time
models which models would be used at the design phase and these included the business
transaction lists, the cordination model, Business Process Model (BPM), the process flows at
Segofer Company, sequence diagrams that, inturn, were used to produce collaboration
diagrams and class diagrams, activity diagrams, conceptual data model, and functional and
non-functional requirements.
This included selecting the preferred database software and building the design using the
software. This provided inputs for the implementation phase of the system and included;
functional design, logical design of the database, Entity Relationship Diagram, physical
27
design of the database, User interface designs, report templates, systems architecture, network
actual system. The interfaces were developed and programmed using software selected and
linked to the database. The system was then tested, planned for the installation of the system,
and organized for training users on how to use the system. Another activity that was
considered important was the documentation which is useful throughout the implementation
phase. Documents such as installation, training, user, and entire system manuals were all
compiled at this stage and would be needed for the system designed to work as desired.
architecture considers the computers, and networks that are used to construct the overall
system. According to Lunn (2003) architecture involves the software tools that are used to
construct the system, such as compilers, modelling tools, databases, and packages. He goes on
to say that decisions need to be made earlier on in a project and these are often determined by
the environment that an organization already has and is commonly known as the technical
architecture. Within the technical architecture, the software can be broken down into major
components that cover items such as the user interface (computer screens), detailed
The architectural design in this study involved the gross details of architecture and the fine
detail of how individual components of a system were constructed. This research followed an
object-oriented approach to design and used the different notations in the Unified Modelling
28
3.5 CONCLUSION
The research methodology chapter was basically explaining the methods both research and
development and the development process that the research adopted in the designing and
Services. It also gave an overview of the next phases, the deliverables and a detailed schedule
29
CHAPTER FOUR
SYSTEM ANALYSIS
4.1 INTRODUCTION
The systems analysis sometimes called the requirements analysis is the process of gathering
information about the current system (called the As-Is system), which may or may not be
computerized, identifying its strengths and problems, and analyzing them to produce a
concept for the new system (called the To-Be system). According to (Dennis, 2002), the goal
of the analysis phase is to truly understand the requirements for the new system and develop a
system concept that addresses them-or decide that a new system is needed or not. Therefore
the major objective of this chapter is to define/refine analysis models that were looked at in
the previous chapter, into design models by empharsizing the problem statement and
including system details such as systems architectural design, user interfaces, the database
MISSION STATEMENT
The company mission is to ensure customer satisfaction at the same time maximise sales and
control stock using the available resources. The automated inventory management system we
hope will enable the management of the company realize the above mentioned mission.
the following are the business goals that the company would want to achieve;
1. To maximise sales by reducing on the time that is taken to serve a customer and make
1
2. To ensure stock control that is at any one time the management should be able to know
stock, identifying loyal customers, and reports for daily/ or monthly sales.
replaced (if there is one). You need to analyse how this system uses hardware, software,
network, and people resources to convert data resources, such as transactions data, into
information products, such as reports and displays (O’Brien, 2002). However, from the
information gathered from this study it was realized that there was almost no business process
involving use of information technology and its euipment. All would-be information system
activities of input, processing, output, storage, and control are done manually. Below are
The current system is experiencing problems in executing the business processes such as;
• There is too much paper work that takes ernomous time on the side of the salesperson
• There is a challenge in information retrieval because the records are many and not well
labeled.
• There is a lot of data redudancy as every time products are purchased, a new record is
of profits acrued from the sale of products, recording of prices, total sales, etc.
• Some vital information may be missing from the company records such as customer
information including contacts, addresses, etc which at certain times may urgently be
required.
2
• There is a challenge of generating report since the processes are purely manual.
• The other challenge is poor control of stock that is the management of the company
can not easily project what is in and out of stock at a given time.
the daily operations of Segofer company and this would involve procedures/ or transactions
such as
o Recording daily and weekly sales, and compiling regulated reports from such sales for
o Recording purchases
o Calculating profits
o Stock control for this is the main cause for the inventory management system that is
4.4.2 Actors
The above mentioned transactions were involving different roles/actors such as
Purchasing Officer.
the new actors introduced in the system to ensure its smooth operation and availability
3
o Customers and Vendors who are specifically concerned with making purchase orders
4.4.3 Hardware
In addition to the existing computers, more microcomputers since there is computerization,
are required for the users of the SAIMS system to accomplish the day-to-day operations.
Servers are also required to provide storage and back end services for the different business
processes at the company. Below are some of the hardware requirements needed:
o File server for hosting file folders for all the actors and for the file sharing services.
o Networked printers for all print jobs that may be located at different points.
o Uninterruptible Power Supply (UPS) units for ensuring un interrupted power supply.
4.4.4 Software
The system must have softwares installed on PCs that will enable the complete operation of
o Application software tools such as Ms Word for report writing, data storage and
o Database Management System software that is MySQL for running the company
database.
o Programming languages that is PHP, Java scripts, etc for enabling the design of
interfaces, data entry and report forms, and back end operations.
4
4.4.5 Network
The Network requirements included the following;
o Local Area network: this was needed so that the system can be housed on the different
computers so that system users are able to use it concurrently. Also all users can share
4.4.6 Data
These included data on various aspects such as data on products that the company deals in,
purchase order data, sales order data, customer details, vendor details, company data, etc.
specifications for the new system and data obtained was categorized and analyzed in the
tables below.
Table 4.1 Requirements gathered on product data, Product registration, and Sales
Order forms
Questions Requirements / Present situation Conclusions
Kind of data recorded/ - Unit cost and unit selling prices - Need standardized calculation of
captured when products are - Quantity of products prices.
purchased - Total amount
- Total profits for a particular item
- Product type and manufacturer
Kind of data to be captured for - Branding and Packaging information - In addition to data captured in
products in new system - Changes in unit cost and selling prices current system, there is more data
- Product size, type, durability, and expiry to be included in the new system.
date
Use of sales order forms and - Types of item - Incorporate sales order form in
data captured on them - Quantity of items new system.
- Prices of items
- Total amount of items to purchase
Use of Sales order forms at the - Is needed for comparison in prices - Incorporate sales order form in
time of purchasing - Is good in identifying cost prices new system
5
Table 4.2 Requirements gathered on Supplier/ Vendor Information Management
Questions Requirements / Present situation Conclusions
Data captured on partner - Supplier names - To be captured in new system.
/specific suppliers to the - Telephone contact
company - Business / or physical location
- List of products available
- Payment terms
- Cost price of products
Challenges faced in capturing - Provision for changes in locations and - To include provision for updating of
supplier’s data telephone contacts contacts.
- Suppliers not well established and can fall - Need to deal with well established
any time suppliers
Incidences where Products are - Need to capture data on payment invoices - In addition to payment receipts,
supplied without immediate - Need to create fields for tracking need to include recording of
payments payments made on receipts paid in purchase days so that suppliers are
installments. paid in time.
Company debtors from supply - Use of financial controller with help of - Need to incorporate such details
of goods/products and tracking invoices and receipts like records of bank cheques, in the
their payments. - Physicall visiting the suppliers new system.
- Use of banking cheques and recording
payment dates, amounts paid, and
balances to clear.
Information to be captured in - Telephone contacts and physical To capture all the mentioned
the new system about addresses. requirements in new system.
suppliers - Tpes of products they deal in and mode
of payment.
- Updates in case of new products, Prices
and discounts to offer.
7
Table 4.5 Requirements gathered for the new system
Questions Requirements / Present situation Conclusions
What functions would they - One that is able to auto- calculate profits. - To incorporate all the specified
want to be seen in the new - One that can do stock taking/ stock requirements in the new system.
system? balancing
- Fast and efficient system that records
daily, weekly, and monthly records
- A system that is able to produce various
reports on request.
Information or data about the -Quantities purchased, lists of product -All these will be incorporated into
items that would be captured categories, the new system.
in the new system. - Purchase orders and sales orders.
-Capture cost of purchases and sale.
-Printing of receipts.
-Recording customers and suppliers.
Anything not mentioned -Improved method of tracking the daily, -Company staff are having great
above which the interviewees weekly, and monthly expenses of the expectat ions and look forward to
would wish to add. company. using the system.
-Request for user identification and
aunthetication before using the system.
-Request that a reliable system be
implemented so that they reduce on paper
work.
General Manager • Oversees all activities at the company that include; customer satisfaction,
products’ availability, supervision of staff, etc
• Looks for new clients
Company Secretary • Organizes meetings
• Prepares reports
• Does banking for the company
• Is concerned with staff welfare and renumerations
Salespersons • Is concerned with selling products/ items at the company
• Writes down items requested for by customers
• Fixes prices for purchased products/items
• Compiles daily and weekly reports of sales made
• Calculates profits accrued on the sale of products
• Carries out stocktaking
Purchasing Officer • Compile a list of products/ items to be purchased and doing the purchasing
• Prepare selling prices for the products
• Does selling of products when available at the company
• Assists in the stocktaking exercise
8
Description of current business processes at Segofer company
There were many different processes that were being carried out at Segofer company such as
Recording purchases
When products come in, they are recorded in the acquisitions register with such details as; the
item name and type, quantity, cost price, selling price, and the projected profits for that item.
These records are later referred to when selling the item in case the salesperson is doubtful of
the selling prices. The same register would be useful when doing the stocktaking exercise
because it would give the quantities per item bought and what is remaining in the stock.
However, there is alot of duplication and data redudancy associated with it.
In this process, new products that have just been bought are recorded in a specially designed
register book, customers, and vendors are also registered especially their contacts both
telephone and physical, resulting in the fact that a certain product, customer, and vendor is
now recorded in the company books. However, this is prone to misplacement of such relevant
records, alot of paper is involved meaning wastage of storage space, and also retrieval of
Recording sales
After sales have been made, these are recorded on both a daily and weekly basis, they record
the item, quantity, cost and selling prices, and the profits accrued from the sales. The resulting
fact is that the selling transaction has been completed and the product is out of the stock
inventory. However, there is alot of writing involved thus time consuming and also storage
9
Calculating profits
When products are sold, they are recorded in the sales book with details including the profits
accrued on each item sold. Later at the end of the day, the total profits are calculated and then
summed up at the end of the week or even end of the month. This transaction leads to a
resulting fact that total profits are recorded per item sold. Although this usually poses a
Stock control
For every business to realise its goals and objectives especially of making profits, there has to
be stock control otherwise it will either make losses or cheat customer into making abnormal
profits. In this process, the stock is calculated to balance the existing stock against the sales
records available. This process results in a fact that the company is able to know what is out
of stock or over stocked so that important decisions can be made while purchasing other
products. However, this process can easily mislead decision makers when double entries were
Currently the IT infrastrusture at Segofer is inadequate with only three computers which are
not networked and are being used for general typing that is Ms Word and Ms Excel. These
packages are used for typing out documents and compiling daily sales and reports
respectively. However, one computer is connected to the Internet using a Modem and files
can only be shared if they were saved on the mail service. There is also a printer that is
connected to one computer which is used to print reports, minutes, Ms Excel templates, and
so on. However, the existing network does not serve current needs of the company because
there is no simultaneous sharing of data, auto generation of profits and/or reports, no existing
10
Figure 4.1 Showing the current IT infrastructure at Segofer Technical Services
company
11
New Organizational Structure
12
New Roles at Segofer Technical Services Company
IT/IS Supervisor • Oversee implementation, maintenance and use of SAIMS and its IT infrastructures.
• Overall supervision of IT personnel and enhancing new technology.
• Make recommendations, develop and maintain policies and procedures concerning
the IT infrastructure.
• Ensure annual disaster recovery, testing, and backing up of the company database.
•
Database • Develop and design the database.
Administrator • Assigning user access levels to the staff of the company.
• Monitoring and improving database performance and capacity.
• Install security features to safeguard the database.
• Ensure database accessibility.
• Design the graphical user interfaces and links of SAIMS to the database
• Design the database schema and create any necessary database
• Backup and recovery of database
• Install and configure software
The new process of creating categories of products at the time of registration is the first step
in recording products and involves the creation of these categories. Steps include; filling in a
category, the system autogenerated the category ID, specifying the name of the item, and
including some comments on that item. These categories will later be used in the process of
registering new products and also when updating the stock that is only the quantities will be
changed to reflect the new products purchased and may be the Manufacturers if they differ.
Registration of products
The new process of registering products will involve; having major categories of products
listed and then different types, specifications, etc of that category being registered under it so
that when new products come in, the product is already in the database and details such as
quantity, will be updated and if there is any new changes to the product, this will be the same
In this new business process, system users are categorised into three groups that is
administrators, salespersons, and the company customers. These will have separate roles with
the system that is the Administrators will have the right to register the salespersons who will
later be responsible for registering customers. The Administrators will view various reports
that is available stock, sales made, and the loyal customers for the company. They will add,
update, and search items, categories, and the Salespersons. On the other hand the customers
will view their details, and access a link that will enable them with the assistance of
Salespersons fill in the purchase order forms so that the company can purchase products that
Recording sales
In the new business processes, sales are recorded as the selling business goes on that is once
the item is bought, the details of the item are recorded such as the purchase and selling price,
quantity bought, total cost of items, etc. At the end of the day, the system should be able to
show a full list of items sold and the total sales and profits for the day. The system then
Calculating profits
This business process involves filling in the purchase and selling prices, the quantities, and
using this basic information and instructions picked from code written by the programmer, the
system is able to auto-calculate the profits accrued after the sale of items and the projected
Stock control
The ultimate reason for stock controlling is to enable the company hold just enough to meet
the customer’s demand, while avoiding over costly overstocking. At Segofer Technical
Services company, with the new automated inventory system, after feeding in items and their
14
quantities, at the time of selling, the system will automatically deduct the item from the main
stock and show the remaining stock. If the users want to look at the available stock, the
system is able to provide a report of items, the original stock and the available stock.
In this new business process, the Salesperson identifies the customer and selects the shopping
option which takes them to the products available for shopping. Here the Salesperson feeds in
the quantities to be sold per item/product while adding them on to the cart. After identifying
all that is to be sold to a particular customer, the system should have calculated the total cost
to be paid. The customer is given the receipt with the bill to be paid .
Analysizing the business system begun with identifying the main business transactions and
their resulting facts from the business processes. There were seven (7) major transactions
identified from the processes and these are summarised in the table below:
T6 Sales recording Product X (Sales E, Quantity Q, Selling price R, Sales date D, Total
cost L) is recorded
T7 Calculating profits Product X (Purchasing price U, Selling price R, Quantity Q, Sales date
D) is calculated
15
T8 Stock control Product X (ID P, Details T, Quantity In Q, Quantity Out O, Salesperson
S, ) stock is controlled
16
4.5 Business Process Model for the Segofer Automated Inventory
Management System
Business Process 1
O E R
O E R
T 4: Order processing
O E R
Business Process 2
O E R
O R
17
Business Process 3
Business Process 4
O E R
O E R
18
New Process Flow for Segofer Automated Inventory Management System
19
4.6 Security Requirements
The network was designed to ensure installation of a number of security features such as;
Provide both user and administrative secure computer services to Segofer company
All system users were assigned usernames and passwords that would give limited
access.
All system users will be classified and given priority levels that is some will be given
top priority (have access to all data), medium priority (for administrators), and low
Figure 4.5 Showing the Proposed high-level Network Diagram for Segofer Technical
Services Company
20
4.7 UML Use-case Diagrams for the SAIMS
The Use-Case diagrams are the system views describing the behavior as described by the
users. The Use-Cases are divided into two categories; the detailed roles of each user and the
Description:
He generates and reviews reports.
Identifies products that are reducing in stock so as to make arrangements for new purchases.
The General Manager registers new customers into the system.
22
Figure 4.7.3 Use-Case diagram for the Company Secretary
Description:
The Company secretary prepares and compiles sales reports on a weekly and monthly basis.
Communicates meetings, and writes minutes.
The Company secretary prepares reports, does editing, and submits them to the Executive
Director and General Manager.
Ensures customers are registered and given access rights.
23
Figure 4.7.4 Use-Case diagram for Salesperson
Actor: Salesperson
Description:
The Salesperson registers products/items into the database.
Recording daily and weekly sales in the database.
Registering customers giving them access rights.
Recording purchase orders, and corresponding receipts.
Compiling sales order items for payments.
Liaises with purchasing officer to ensure prices are determined for the products to be sold.
Carries out and verifies available stock at regulated intervals.
24
Figure 4.7.5 Use-Case diagram for the Inventory Manager
Description
Monitor stoci in and stock out and ensures products on high demand are available.
Determines the selling prices of products/ items.
Purchases products for the company.
Views reports especially stock and sales reports and compares with the actual inventory.
Assists in the stocktaking and verification exercise whenever necessary.
Can view purchase orders made and make follow-ups of the same.
25
Figure 4.7.6 Use-Case diagram for Information Technology Supervisor
Description
Oversee the maintenance of the new system..
Trains staff in the use of the new system.
Backs up company database.
26
Figure 4.7.7 Use-Case diagram for Database Administrator
Description
• Develop and design the database.
• Assign user access levels to the staff.
• Monitor and improve database performance and capacity.
• Install security features to safeguard the database.
• Ensure database accessibility
27
Figure 4.8 Use Case Diagram of the Segofer Automated Inventory Management System
28
Class Diagram for Segofer Automated Inventory Management System
Class diagrams were used to describe the static nature/ structure of the SAIMS. These
The conceptual diagrams depicts the core business entities and the relationships between them
that are of interest to the company (Figure 4.9). This conceptual class diagram was further
used to come up with the specification class diagram (Figure 4.10) which had entities and
their attributes.
Category
Administrator Products
1..1 1..*
0..*
1..1
Customer Purchase orders
29
Figure 4.10 Showing the Specification Diagram for SAIMS
30
Activity Diagram for the SAIMS
The activity diagram was used to describe the business and its operational step-by-step
workflows of components in the SAIMS. It was also used to show the overall flow of control
of the SAIMS.
31
Conceptual Data Model
The conceptual data model (Figure 4.12) was used to show the relationships between the
proposed entities in the SAIMS. This would later provide a sketch of what would be used in
the design phase to come up with the actual Entity Relationship Diagram.
that included: gathering requirements that described the functional, non-functional, and data
32
requirements obtained from the information collected using the data collection instruments.
The system should be able to list products/items being purchased by a customer and
The system should have login functionality that will allow users authorized access.
The system should be able to allow the authorized users to update, search, insert,
The system should be able to record sales and purchases made per day and also avail
The system should be able to auto-calculate profits accrued from the sale of products.
The system should be able to show the current/available stock when such information
The system should be able to auto-generate all Identity numbers on registering the
different entities for example the category ID, product ID, user ID, customer ID, etc.
requirements have a significant effect on the capability of the system in terms of scalability,
reliability, security, flexibility, manageable, and usability. This can be further explained
below:
33
Scalability
The system should allow or accomadate concurrent usage. That is the system should have the
potential to accomodate atleast ten (10) users and the technology should be able to advance to
newer versions or upgrade to modified versions that may be new on the market.
Reliability
The system should be able to store large amounts of data and it should have minimal
breakdown and if at all it occurs, the system users should be able to put it right without calling
for external support. This has been achieved by designing a MySQL database which is able to
Security
The security functionality that is emphasis to login using assigned details has been achieved
in that the system is able to validate the username and password and if such information is
wrong, them the system denies further access and requests for another login attempt.
Flexibility
The system has been designed to be platform independent. Using PHP an HTML-embedded
script programming language, enabled the research achieve this functionality because this
programming language is used on various operating systems including the most common;
Manageable
The system will not require many IT/IS specialists to maintain it rather it has been designed
and its users trained on the basic maintenance that it may require. Such basic information
included a well documented manual on system installation and maintenance that has been
written, and one user was identified and taken through the system design and maintenance
34
Usability
The system was designed using PHP with HTML embedded within which is good in
ensuring quality of data, and data being used for important business decision-making, and
Data storage
The system should be able to handle large volumes of company data and also accomodate a
Data Security
The system should be secure from unauthorised access and also ensure security of its data.
Data Quality
Data Transfer
The system should allow for easy transfer of data or movement of data between its different
users.
The system should ensure data is accurate, available and refered to when making important
company decisions.
Key Assumptions
• Availability of trusted servers and a LAN for development, testing and deployment.
35
• The company will work closely with the implementation team to ensure proper
• Ensure that the right business processes are properly defined and understood.
• The system functionality mentioned but not completed will be defined, contained, and
managed.
Risk Assessment
2. Inability of the company to employ on full time the IT personnel needed to implement the
SAIMS system.
4.9 CONCLUSION
This chapter described the scope of the new automated inventory management system, the
process of determining and analyzing the gathered requirements, the business process
reengineering using DEMO, designing models that would be used, the suggested/proposed
Network diagram, determining the actors using use-cases, restructuring the organization’s
organogram, and business processes, Information System’s modeling using UML, functional,
non- functional and data requirements all as inputs for the next phase which is the systems
design.
36
CHAPTER FIVE
SYSTEM DESIGN
5.1 INTRODUCTION
This chapter is basically providing the solutions to the problems identified during the previous
phase and provides detailed system specifications and the acquisition plan for the proposed
technology to be used. The models designed in the analysis phase are used to build the
different designs that is the functional design, logical design, physical design, software
specification, network model, user interface, and report templates that were used in the
There should be a process that enables the generation of a list of products/items being
There should be a process to ensure proper functioning of the login functionality that
There should be a process that enables the authorized users to update records in the
database.
There should be a process that enables the authorised users to perform other functions
There should be a process that enables the recording of sales and purchases made per
day and also a process to enable the display of such information on regulated time
intervals.
37
There should be a process that enables the auto-calculation of profits accrued from the
sale of products.
There should be a process that allows the display of the current/available stock when
There should be a process to allow users to track the most sold products/items so that
There should a process that enables the system to auto-generate all Identity numbers
on registering the different entities for example the category ID, product ID, user ID,
There should be a process to store and retrieve all reports in the system.
There should be a process to report results in a format that best suits the users.
There should be a process that supports searching and editing of system users.
There should be a process that allows the system to upgrade from old to new/updated
software versions.
There should be a process that enables the system to run with minimal breakdown and
failures.
There should be a process that protects the system from virus attacks and unauthorised
access.
There should be a process that enables the system to run on different operating
systems.
38
There should be a process that enables the system to be user-friendly and easy to learn.
There should be a process that ensures maintenance of data quality and integrity.
There should be a process that allows east transfer and movement of data between
different users.
There should be a process that ensures data accurancy and availability for reference
purposes.
Administrator/Users (date, fname, lname, gender, date of birth, email, physical address, telephone
Products (date, category name, item ID, item name, quantity, purchase price, sales price,
Customer(date, customer_ID, fname, lname, gender, email, physical address, telephone address, )
Purchase Order (id, order ID, order name, quantity, order date, due date, manufacturer, salesperson,
customer, status)
entities in the database. The entities were picked from the conceptual data model described in
39
the previous chapter. The Entity Relationship Diagram as shown in Figure 12 below was also
MySQL for data storage. MySQL is a Relational Database Management System (RDBMS) that uses
SQL statements to send requests between a client and the server. Below is the query that was used to
build the database and the tables for the SAIMS and the data dictionary.
USE cartz
40
Table structure for table ‘cartz_category’
`cat_comment` text,
41
Table structure for table ‘cartz_user’
42
`cdate` date default NULL,
) ENGINE=InnoDB;
43
itdate date Item date YES NULL
manufacturer varchar(25) Manufacturer YES NULL
sales_per varchar(50) Sales person YES NULL
address varchar(50) Address YES NULL
telephone varchar(50) Telephone Address YES NULL
itsale double Item YES NULL
44
Data access methods
The script below has the function that connects to the database.
<?php
$server = 'localhost';
$username = 'root';
$password = '';
$database = 'cartz';
?>
The screens were designed using Microsoft Office Visio 2003 to come up with prototypes
based on the requirements collected from the potential SAIMS users (figures ). Once the user
interface was agreed upon, the system was developed using PHP as the web development tool
Log on Interfaces
This will be the initial interface that the users will use to log into the SAIMS. The prototype
shows the interface for the Administrator log in and the other users (sales persons) log in.
These are distinguished using the access levels that were assigned by the system designer.
45
Figure 5.2 Showing the Log on Interface
Administrator Interface
The Administrator interface has various links including system user registration, viewing of
various reports, adding categories of products, and adding items/products to the various
categories. The Administrator alone has the right to add salespersons who also have other
specified rights. The figure below shows the Administrator’s interface and what he/she is able
to do with the system.
46
The System User Interface
This interface shows the rights the salespersons have with the system. They basically add categories,
customers, add and view items/products, and view loyal customers.
The category registration interface is part of the registration process. The form template below
(figure 5.5) shows the required information for registering categories of the items/products
sold by the company.
47
User Registration Interface
The user registration interface should only be accessible to specified users who will be
responsible for registering users that is the salesperson. The form template below (Figure 5.6)
shows the required entry fields.
The item/product registration interface should be accessible to both the Administrator and
other specified users who will be responsible for registering items/products in the database.
The form template below (Figure 5.7) shows the required entry fields.
48
Customer Registration Interface
The customer registration interface should be accessible to the specified users (Salesperson)
who will be responsible for registering customers in the database. The form template below
(Figure 5.8) shows the required entry fields.
This report will be accessible to specified system users that is the Administrators. This report
is generated by the Administrator to show the available stock, total costs and the projected
49
Figure 5.9 Showing a report of the available stock
Segofer Automated Inventory Management System
Estimated Profits in stock in store as at 2011-09-05
Logout Home
Sales Report
This report is also only accessible to the Administrator and it shows the sales that have been
made and the total costs and accrued profits from the sales.
Logout Home
50
5.6 Operating System
The SAIMS uses established and non-proprietary computer operating systems for both clients
and servers. The operating system recommended for SAIMS as the client personal computers
Network Model
Hardware
In addition to the hardware already in place, additional computers that will be used for the
smooth operation of SAIMS, and networked printers will be required. For the efficient
operation of the SAIMS and running of the company, Universal Power Supply units for each
of the equipment, backup hard disks and CDs, high-speed internet connectivity, Firewall
System to block spam, computer viruses and unwanted websites, and Servers for providing
storage and back-end services will be at the Company. An upgraded LAN (Figure 5.14)
should also be in place to support the entire IT infrastructure. Servers required include:
• Email Server: For hosting email server software for local email hosting.
• File Server: For hosting home folders for all actors and file sharing services.
• Application and Database server: For hosting the database and server end applications.
51
Figure 5.14 Showing the Proposed Network Sub-Diagram for SAIMS
The pseudocode was used to represent the instructions of some sections in the SAIMS. The
pseudocode algorithms provided the blueprint for programming of the entire system. The
pseudocode below shows the Log in process and restriction to the SAIMS based on user roles
<?php
52
if form submitted then
else
if recordset is empty
?>
into the system when implementing it. The following security features were considered while
User Authentication: Every user registered into the system was assigned a username and
password to protect the system against non-authenticated users from accessing it.
User Authorization: Different system users were granted different priviledges, and would
perform differing functionalities with the system. They will have different interfaces with
differing features.
Network configuration: A firewall was installed to protect the server from unwanted spam,
and websites that would attack the system from the internet.
53
Virus Protection: Antivirus software was installed on all computers to provide regulated
5.9 Conclusion
This chapter described the detailed specifications of the system elements of the SAIMS, based
on the functional, logical, physical, network and program designs. An Entity Relationship
Diagram was drawn; data dictionary established from the physical design, as well as the User
interface design and report templates. The designs provided inputs for the actual
54
CHAPTER SIX
SYSTEM IMPLEMENTATION
6.1 INTRODUCTION
This chapter describes how the SAIMS will be deployed, tested, installed, and ensure its
transition into an operational system using the models described in the previous chapters. By
converting the physical system specifications into a working and reliable system and
documenting the work that has been implemented, help was provided to the current and future
system users. The system designs were translated into code and the physical realization of the
database and the application designs to interface the user with the database was completed.
Other things included in this chapter are the overall implementation plan, the code used, the
user guide, training plan, and the maintenance plan of the system. The deliverables or outputs
included a user’s manual, training plan, implementation plan, and the actual working system
(SAIMS).
hardware and software of the system. It should however be noted that the training,
deployment, support and maintenance of the SAIMS was beyond the scope of this project. So,
55
Table 6.1 Shows the Implementation Plan of the SAIMS
Activity Deliverables Tools
Coding - Implement components of system design PHP, MySQL, Macromedia
- Connect the user interfaces to the database Dreamweaver 8
Testing Implement the test plan PHP, MySQL, Macromedia
- Review of code for error correction Dreamweaver 8, Ms Word
- System review
- Security testing, authentication
Installation plan Hardware installation Network Servers, Installation
- Installing new hardware & upgrading others CDs, Ms Word, PHP scripts
- Backup and Recovery plan for migration, Hard drives
Software installation
- Installation of Dreamweaver version
- Installation of PHP and MySQL
- Installation of WampServer 2.0
- Installation documentation (Procedures)
Documentation - System documentation Ms Word, NotePad
-
Training plan - User training manuals Ms Word, Ms PowerPoint,
- Technical reference guide CDs
Support plan - Online Help Emails, Phones
- Help Desk and use of Emails
Security plan - Authentication and Authorization Security Gateway
- Firewall
- Router
Maintenance plan - Gathering requests Email, Help Desk, Hardware
- Implementing changes upgrades
- Documenting changes
Project - New features to be added to the system Ms Word
Evaluation plan - Documentation of system successes and failures
- Final report
6.3 Coding
In this activity, the physical design specifications and models designed in the previous chapter are
the interfaces to the database. The PHP was embedded in HTML to enhance desirable interfaces.
Macromedia Dreamweaver version 8.0 was the web page program editor used for coding and de-
bugging the PHP functions. The front end was built using PHP and also used to connect the interfaces
56
to the backend. Java script was used for validating all data to be fed into the different forms.
Database Implementation
The database management system was designed using MySQL and a script was run to build the database,
the necessary tables, the relationships between those tables, and their constraints as depicted in the
systems’ design phase. The primary keys were identified in all tables, the relationship between the
primary keys and foreign keys of the different tables which were useful in linking the related tables. The
database system was built basing on the Entity Relationship Diagram created in the system design phase.
In order to test the database integrity, the database was populated with data by the developer to ensure that
whenever certain queries were run, the results produced matched those expected. Attempts were also
made to enter erroneous data into the database to ensure that the correct data types were recognized.
PHP files
The PHP files are all located in the default folder C:\wamp\www\arc while the SAIMS program files are
located in the C:\wamp\www\arc\Admin. Sample code of the various files is in the appendix.
Index.php
This script is the home or welcome page of the SAIMS and PHP by default looks at this filename as the
57
Figure 6.1 showing the index.php page
admin.php
This script is used for the log in of the administrator, it queries the database and authenticates the log in
request. While at the index.php page, the administrator signs in using the assigned details and the figure
below shows the admin.php page (http://localhost/arc/admin/admin.php)
58
admin2.php
This script is used to query the database and authenticate the log in of the salesperson. It is also used to
display the different functions that the salesperson is able to do with the system. Running the admin2.php
link will display the page shown below.
cat.php
This script is used to query the database and authenticate the salesperson to register categories of products
into the database. The link (http://localhost/arc/admin/cat.php) will open the page displayed below
59
usr.php
This script is used to query the database and allow the administrator to register system users
(salespersons) and assign them login details. The figure below shows the user registration interface.
item.php
This script is used to query the database and allow the administrator add items to the categories described
in the database. The figure below shows the interface for registration of items/products.
60
usr.php
This is a script that is used to query the database and authenticate it to display a page to register customers
into the system. The link (http://localhost/arc/sales/usr.php) displays the interface for customer
registration.
61
Figure 6.8 showing the report interface for dispalying the available stock
report2.php
This script is used to query the database and allow the administrator to view reports of the
transactions made by a particular salesperson and the total amounts they have sold.
62
6.4 System Installation
This activity will involve the transition from the old system (manual system) to the new system
(SAIMS). It is however advisable to have both systems running at the same time until management of
the company decides the old system can be completely stut down. The advantage for having both
systems running at the same time is that in case the new system runs into problems, there is a back up
However, the challenge of running both systems is that there will be need for double work for those
users involved in both systems. This is because the same data will be fed into both systems and both
One is required to follow the instruction/or procedures as shown in the installation above for
Macromedia Dreamweaver and Wamp5 Server. The installation of the above enables the system to
have PHP and MyQSL installed in the directory; C:\Wamp directory and all other program files.
1. Copy the folder containing the project and paste it in the folder named www directory found
in WampServer. This is the default publishing folder i.e. C:\Wamp\www for all systems
2. Once the project files are pasted into the www directory, open the folder that is in there which
3. Go to the WampServer start icon and select the MySQL Console folder, this will take you to a
named “cartz”.
4. After identifying the database, go back to the WampServer start icon, click on localhost which
63
will take you to http://localhost, scroll down under Your Projects and click on a folder arc.
5. Clicking this folder will take you to the systems Homepage with a url: http://localhost/arc/
Username: i.nakayenga
Password: yahoo
This System Administrator can then create other system users and assign them access details.
functional, non-functional and seurity requirements that it was and was not able to achieve. These are
Strengths
o The system is able to inform/ highlight the user about items that are out of stock. Here at the
page where the salesperson picks items for sale, if the item is out of stock, it indicates ‘out of
stock’.
o The system allows users especially the salespersons to track the status of purchase orders
made; that is what purchase order came in first and if it has been followed or is still pending.
o The system is able to deny access if the user logs in using wrong information in the form of
usernames and passwords. This is good because it helps protect the system’s information
o The system was designed with user-friendly interfaces and is easy to understand, use, and the
research was able to come up with user training manuals that make the system even much
64
o The system was designed to run on platform independent PCs that is it can run on both
Weaknesses
o When deleting a record, the system does not ask for confirmation or whether you are sure you
want to delete the record. Sometimes when asked to confirm, one is able to think twice about
the action he/or she is about to make. This is necessary to avoid unforecasted actions.
o The auto-generated Identity Numbers for products, customers, purchase orders, and categories
are not sequential or are not following each other and so are not easy to track in case there is
need to do so.
o The system does not have pre-entered data for example data having selections to pick from
drop-down menus which if available makes data entry and manipulation more easy,
o When displaying information concerning the customer, some vital information is left out such
as the contact information yet it would be proper to have such information retrieved easily
SAIMS Functionalities
Category Registration; - Register category names for products/items and comments into the system
to create groupings of the products based on types, specifications, manufacturer, etc of the same
Product/item Registration; - Register products as they come in after purchses by recording their
details such as Item ID (autogenerated), Item Name, Quantity, Purchase price, Sales price,
65
User Registration; - The Administrator has the responsibility of adding new users that is
salespersons into the system and assign them usernames and passwords. These Salespersons later
Reports; - Reports such as sales reports, sales per Salesperson reports, purchase order reports, loyal
customers, stock brief, etc are generated for statistics, analysis, and decision-making.
6.7 CONCLUSION
In this chapter, the detailed implementation plan was clearly laid out which included designing a user
manual for new and old SAIMS users. Also included in this chapter were system coding, system
testing, the installation plan, training plan, documentations, support plan, security plan, maintenance
plan, and the Project management plan. All these were cleared laid down and the research believes if
66
CHAPTER SEVEN
to achieve, it gives the recommendations, future plans, and challenges faced for the entire
project. It also discusses issues experienced and addressed during the planning, designing and
7.2 CONCLUSIONS
The research was able to develop a working prototype of an automated inventory management
system that would perform business functions such as registration of products, customers, and
system users; generating various reports; and maximising sales through ensuring product
availability.
The study analyzed the current system being used by the company and was able to identify
the strengths, weaknesses, and opportunities for strategic automated inventory management
interventions. These were later used to identify features and functionalities that would be
recommended at the time of designing the system. The system design requirements were
determined and using these a prototype of an automated inventory management system was
developed. The designed system was tested, evaluated and recommended to the management
of the company.
The installation of SAIMS will generally improve overall business processes at the company,
provide customer satisfaction through spending less time serving the customer and ensuring
that all products are available, it will also improve stock control, reporting mechanisms,
tracking of transactions made per day, and the different activities done by specific system
users. So, to remain competitive in the business world and the ever-changing information
67
technologies, Segofer Technical Services Company needs to embrace the inventory system
that has been designed so that it can compete favourably in the business world.
system into a fully working system so that it can be installed and used in their day-to-day
business processes. According to the responses received from the top Managers, in regard to
this prototype, the company is very much interested in having other core functions
incorporated into the system. So this will help have it taken to another level so that it can be a
Payments Functionality
The system should have the functionality of monitoring the payment processes incorporated
into it for the next subsequent version. This will help the company and its management have
controls over the payment processes which as expressed in the interview was a challenge in
tracking who made full payments and those that were still owing the company some monies.
Other Functionalities
There are other functionalities that the researcher recommended earlier as part of the system
but were not implemented such as receipting sales, vendor registration, and sales order
processing. All these will be included in the next version which will be developed into a
7.4 RECOMMENDATIONS
To ensure a smooth implementation of the SAIMS at the company, all stakeholders must be
committed to seeing that this system operates as the intentions were set initially by the
company management. It should however be noted that there is need for training to the staff
especially those that have to use it on a daily basis for example the salespersons. This is
68
because the system involves aspects of new technology that may not be familiar to every
body.
According to the interviews that conducted with the Executive Director, the company and its
management have always wanted to automate the business processes so that there is minimal
supervision required form the management. So the design and implementation of the SAIMS
was a welcome idea to the top management. A thorough needs assessment in the early stages
provide automation recommendations and allow all stackholders inolved to have an input, will
uncover any potential project implementation risks and provide a strong foundation for the
This research and its findings can be a good source of information to future research in the
this era, information systems are the way to go and every business or enterprise that wishes to
compete favourably in the business world can not afford to undermine the great importance
7.5 Conclusion
In conclusion, the importance of information management in all aspects of life including the
competitive advantage and massive improvements in all areas. Business processes without
information technology support are becoming more and more unpopular and the products and
69
technology and its infrastructure. Therefore, it is becoming an obligation that all businesses
70
REFERENCES
Uganda Businesss Directory 2008-2010. Retrieved January 17th, 2011, from http://www.yellowpages-
uganda.com/
O’brien, James A. (2003). Introduction to Information Systems: essentials for the e-business
enterprise, 11th ed. Boston: McGraw-Hill.
Welling L. and Thompson L. (2003). PHP and MYSQL Web Development, 2nd ed. Sams
Publishing.
Steven, William J. (1986). Production Operations Management 2nd ed. Rochester: Rochester Instituto
of Technology.
O’Neill, Peter and Sohal, Amrik S. (1998). Business Process Reengineering: application and success –
an Australian study, International Journal of Operations and Production Management Vol. 18 No.
9/10, Pages 832 – 864. ISSN 0144-3577.
Myers, Michael D. & Avison D.E. (eds.) (2002). Qualitative research in Information Systems: a
reader, Sage Publications, London
Kaye, Morris. (2010). How to Implement Inventory Management Systems: a journal article in the
eHow Contributor, Bellevue Washington D.C.: eHow,Inc.
Hammer, Michael and Champy, James (1993). Reengineering the Corporation: A Manifesto for
Business Revolution, Harper Business.
Lunn, Ken. (2003). Software Development with UML, New York: Palgrave Macmillan.
Dennis, Alan ET...al (2002). Systems Analysis and design: an object-oriented approach with UML,
New York: John Wiley & Sons, Inc.
1
Holsti, Ole R. (1969). Content Analysis for the Social Sciences and the Humanities Manchester:
Addison-Wesley, Reading.
Gardner, Mike and Pinfield, Stephen (2001). Program: electronic library and information
systems. Vol. 35, Issue 1 Pages 33-42.
Oldfield P. (2002). Domain Modelling. Appropriate Process Movement. Mentors of Cally Ltd.
http://www.aptprocess.com (Accessed on 24th May, 2011).
Pigott, Diarmuid J. & Hobbs, Valarie J. (2011). VINE: The Journal of Information Knowledge
Management Systems Vol.41, No.2 Pages 193-195.
Baker, Therese L. (1999). Doing Social Research 3rd ed. Boston: McGraw-Hill.
Kvale, Steinar. (2009). InterViews: Learning the Craft of Qualitative Research Interviewing, 2nd ed.
Los Angels: Sage.
Bell, Judith. (2005). doing your Research Project: a guide for first-time researchers in education,
health and social science, 4th Ed. New York: Open University Press.
Larman, Craig. (2002). Applying UML and patterns: an introduction to Object-Oriented Analysis and
Design and the Unified Process, 2nd Ed. New Jersey: Prentice Hall PTR.
George, Joey, Jeffrey A. Hoffer, and Joseph Valacich. (2007). Modern Systems Analysis and Design,
5th ed. Alexandria, VA: Prentice Hall.
Mimbe Derrick. (2010). Laboratory Information Management System for the Accessing, Tracking,
and Storage of Specimens in an Influenza Research Laboratory: case study: Makerere University
Walter Reed Project, Influenza Research Laboratory, Nkozi: Uganda Martyrs University.
2
APPENDICES
Appendix One: Interview Schedule
UGANDA MARTYRS UNIVERSITY
Faculty of Science
Dear Respondent,
General Information:
II. For how long have you been working for the company?
Product Registration:
I. What are some of the products/ or services being sold/ or offered at the company?
II. What kind of data is being recorded/ captured when the products have just been
purchased?
III. If a new system is designed, what information would you like to be captured for the
product registration?
IV. Do you ever use a sales order form? If yes, what kind of data do you capture on such a
form?
3
V. Do you ever refer to or use the sales order form especially when it is time for the
I. Does the company have partners or specific suppliers who supply it on a regular basis?
III. Are there any challenges faced in capturing such data about the Suppliers?
IV. Do you keep a detailed record or information about those suppliers and their contacts / or
physical addresses?
V. Is there any incidence where products are supplied and payment is made later on?
VI. If yes, are there any procedures being followed to monitor the payment processes?
VII. Does the company have any debtors from supply of goods and offering of services and if
VIII. If a new system is designed, what information would you like to be captured about the
I. Usually companies have their royal/ daily customers and they keep a record of their
names, companies, contacts/addresses, etc, what is the case with your company?
II. Any challenges faced as you record such data about your customers?
III. With registered or daily customers, some companies have a tendency to supply them with
IV. Any procedures in place to track customers who owe the company money?
4
V. Are there any measures followed to recover such debts?
VI. If a new system is designed, what information would you like to be captured about the
II. What methods and tools do you use to perform your daily tasks?
III. What are the strengths/ advantages/benefits of the current methods that you use to record
IV. Do you face any challenges/weaknesses in performing your tasks using those methods?
VI. If current method is paper-based, do you think using the computer would speed up the
VII. If given the opportunity, would you recommend a new system for the company that would
probably ease your tasks and at the same time serve to achieve the company’s goals and
mission statement?
Systems Requirements
I. In case a new computerized information management system is designed for the company,
what are some of the functions you would want the system to be able to provide?
II. Identify some of the information or data about the items that you would want captured in
5
III. Are there any more things you would want to say before we end the interview?
6
Appendix Two: Training Plan
Training Plan
After the installation of the system and necessary documentation put in place, training will be
implemented for the system users. The management and staff of Segofer together with the
development team will come up with the training plan which will include training
requirements and schedules. This will enable the staff and other users to use and maintain the
SAIMS after implementation. The training schedule below was identified and recommended
for use to enable the management achieve the goals that were initially set that is the
7
Appendix Three: Support Plan
Support Plan
inevitable to the users because it is assumed that they would need it to feel more comfortable
in using the system and would also contribute to user satisfaction. On-going support would be
the responsibility of both the developer and the IT team where they will be responsible for
providing continued system support, maintenance and upgrades, and also the day-to-day
running of the system respectively. The support will be provided in the following ways;
• Help desk
• Recorded tutorials
8
Appendix Four: Major/Sample PHP files and codes used in designing the
system
Index.php code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<head>
</head>
<body>
<div id="wrapper">
<div id="nav">
<!--
<a href="#">Services</a>
<a href="#">Solutions</a>
<a href="#">Projects</a>
-->
</div>
<div id="body">
<div id="body-top">
<div id="body-top-2"></div>
<div id="body-bot">
<div id="welcome">
9
<h2>Login</h2>
<p>
<tr>
<td width="36%"
class="body1">UserName:</td>
</tr>
<tr>
<td class="body">Password:</td>
</tr>
<tr>
</td>
</tr>
</table>
</form>
</p>
<p>
<?php
$code = $_GET['code'];
if($code == 0)
10
}
else if($code == 1)
else if($code == 2)
else if($code == 3)
else
?>
</p>
</div>
<div id="content">
<p>We believe that the customer is KING. And our main objective is to deliver Services to the
customer's expectation, which makes us the leading Electrical vendors.</p>
<div class="fineline"></div>
<h2>Important Notes</h2>
-->
11
<div class="fineline-flat"></div>
<div class="fineline-flat"></div>
<div id="planer">
<h2>Purchase Orders</h2>
<p>
</p>
</div>
<div id="stories">
</div>
<div class="clear-flat"></div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
12
Admin.php code
<?php
session_start();
require_once('../greetings.php');
function check_auth_admin()
global $_SESSION;
if (isset($_SESSION["admin"]))
return true;
else
return false;
include_once('index.php');
else
$server = 'localhost';
$username = 'root';
$password = '';
$database = 'cartz';
13
//picking customer and sales details
$sql ="select * from cartz_category where cat_name is not null and cat_name is not
null";
$num = @mysql_num_rows($result);
if ($num < 1)
else
$cat_id = $row['cat_id'];
$cat_name = $row['cat_name'];
<select name='cat_id'>
$option_block
</select>
14
</form>";
?>
<head>
<title>Admin-Home</title>
</head>
<body>
<div id="wrapper">
<div id="nav">
<!--
<a href="#">Services</a>
<a href="#">Solutions</a>
<a href="#">Projects</a>
-->
</div>
<div id="body">
<div id="body-top">
<div id="body-top-2"></div>
<div id="body-bot">
<div id="welcome">
15
<?php
echo '<h3>';
timegreeting();
echo"</h3><br/>";
?>
<br /><br/>
<br />
</div>
<div id="content">
<h2>Note..</h2>
<p>
Make sure before you add an item, its category type is existant.
Otherwise proceed to Add Item_type.
</p>
<p>
<?php
$code = $_GET['code'];
if($code == 3)
else
echo '<font>Please contact the Administrator if you have problems using the
system . Thank you.</font><br/><br/>';
}
16
?>
</p>
<div class="fineline-flat"></div>
<div id="planer">
<h2>Category</h2>
<div class="fineborder"></div>
<p>
</p>
</div>
<div id="stories">
<div class="fineborder"></div>
<p>
</div>
<div class="clear-flat"></div>
<div class="clear"></div>
<div class="fineline-flat"></div>
<div id="planer">
<h2>Users</h2>
<div class="fineborder"></div>
<p>
</p>
</div>
17
<div id="stories">
<h2>Reports</h2>
<p>
<ul>
</ul>
</p>
</div>
<div class="clear-flat"></div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
<?php
18
?>
Admin2.php code
<?php
session_start();
require_once('../greetings.php');
function check_auth_admin()
global $_SESSION;
if (isset($_SESSION["sales"]))
return true;
else
return false;
include_once('index.php');
else
$server = 'localhost';
$username = 'root';
$password = '';
$database = 'cartz';
19
mysql_select_db($database, $connection) or die('Cannot select the database');
$sql ="select * from cartz_category where cat_name is not null and cat_name is not
null";
$num = @mysql_num_rows($result);
if ($num < 1)
else
$cat_id = $row['cat_id'];
$cat_name = $row['cat_name'];
<select name='cat_id'>
$option_block
</select>
20
</form>";
?>
<head>
<title>Admin-Home</title>
</head>
<body>
<div id="wrapper">
<div id="nav">
<!--
<a href="#">Services</a>
<a href="#">Solutions</a>
<a href="#">Projects</a>
-->
</div>
<div id="body">
<div id="body-top">
<div id="body-top-2"></div>
<div id="body-bot">
<div id="welcome">
<?php
21
echo '<h3>';
timegreeting();
echo"</h3><br/>"
?>
<br /><br/>
<br />
</div>
<div id="content">
<h2>Note..</h2>
<p>
Make sure before you add an item, its category type is existant. Otherwise proceed to
Add Item_type.
</p>
<p>
<?php
$code = $_GET['code'];
if($code == 3)
else
?>
22
</p>
<div class="fineline-flat"></div>
<div id="planer">
<h2>Category</h2>
<p>
</p>
</div>
<div id="stories">
<p>
</div>
<div class="clear-flat"></div>
<div class="clear"></div>
<div class="fineline-flat"></div>
<div id="planer">
<p>
</p>
</div>
<div id="stories">
23
<h2>Loyal Customers as at <?php echo date("Y-m-d")?></h2>
<table width="100%">
<tr bgcolor="#ffffff">
<th style="width:80px;">NAME</th>
<th style="width:auto;">TRANSACTIONS</th>
</tr>
<?php
$sql9 ="select distinct customer from cats where customer is not null and att_person is not null";
$num9 = @mysql_num_rows($result9);
if ($num9 < 1)
else
$num91 = mysql_num_rows($result91);
$rr=$r['cas'];
24
$t=$p['count(customer)'];
echo $p['count(customer)'];
$u=count($t);
$cus_id = $row9['customer'];
{
$fname10 = $row10['fname'];
$lname10 = $row10['lname'];
//echo "$fname10 $lname10 ($num9) $t";
if($i%2){
$color = "#FFFFFF";
else {
$color = "#f9f6da";
$i++;
ECHO '
'.$row10['fname'].' '.$row10['lname'].'
</td>';
echo '
echo $t;
echo'
</td>
';
?></tr></table>
</div>
<div class="clear-flat"></div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
<div id="footer">
</div>
</div>
</body>
</html>
<?php
?>
26
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<head>
</head>
<body>
<div id="wrapper">
<div id="body">
<div id="body-top">
<div id="body-top-2"></div>
<div id="body-bot">
<div id="welcome">
<?php
echo '<h3>';
timegreeting();
echo"</h3><br/>"
?>
<br /><br/>
<br />
27
<br /><br />
</div>
<div id="content">
<h2>Note..</h2>
<p>
<?php
$code = $_GET['code'];
if($code == 3)
else if($code == 1)
else if($code == 2)
else
?>
</p>
28
<div class="fineline-flat"></div>
<tr>
<font color="778bc3">
<b>
<u>
Category Registration
</u>
</b>
</font>
</td>
</tr>
<tr>
<td>
Date
</td>
<td>
</td>
</tr>
<tr>
<td>
Category Name
</td>
29
<td>
</td>
</tr>
<tr>
<td valign="top">
Comment
</td>
<td>
</tr>
<tr>
</tr>
<tr>
</tr>
</table>
</form>
<div class="clear-flat"></div>
</div>
<div class="clear"></div>
</div>
</div>
30
</div>
<div id="footer">
</div>
</div>
</body>
</html>
<?php
?>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<head>
</head>
<body>
<div id="wrapper">
<div id="body">
<div id="body-top">
<div id="body-top-2"></div>
<div id="body-bot">
31
<div id="welcome">
<?php
echo '<h3>';
timegreeting();
echo"</h3><br/>"
?>
<br /><br/>
<br />
</div>
<div id="content">
<h2>
&nb
sp; &
nbsp;
&nbs
p;
<?php
echo'
if (VERSION > 3)
32
document.write(\'<a href = "#" onClick
= "printit()"><image border = "0" src = "../images/print.gif"></image></a>\');
</script>';
?>
</h2>
<p>
</p>
<div class="fineline-flat"></div>
<table width="100%">
<tr bgcolor="#ffffff">
<th style="width:20px;">ID</th>
<th style="width:80px;">NAME</th>
<th style="width:auto;">NOTE</th>
<!--<th style="width:auto;"></th>
<th style="width:auto;">DEL</th>-->
</tr>
<?php
if ($row['qty']<=0)
else
33
{
if($row != 0)
if($i%2){
$color = "#FFFFFF";
else {
$color = "#f9f6da";
$i++;
echo '
</td>
'.$row['itname'] .' '.'
</td>
</td>
'.$row['qty'].'
</td>
'.$st.'
34
</td>
</tr>
';
else if($row == 0)
</td>
</tr>';
else
</td>
</tr>';
?>
<tr>
</tr>
</table>
<div class="clear-flat"></div>
</div>
<div class="clear"></div>
</div>
</div>
35
</div>
<div id="footer">
</div>
</div>
</body>
</html>
<?php
?>
36