Professional Documents
Culture Documents
Cafeteria MGMT System
Cafeteria MGMT System
HARAMAYA UNIVIRSITY
COLLEGE OF
COMPUTING
AND
INFORMATIC
S
Developed By:
Group Name: ID NO
Advisor:
DR.BANOTH RAJKUMAR
Haramaya University
ACKNOLEGMENT
First of all I would like to express our special thanks to Almighty Allah who helped me a
lot in all our life. Next we would like to express our deepest gratitude to our Department
SOFTWARE ENGINEERING for his all way help and kind assistance in our project.
Last but not the least we would like to give our best gratitude from bottom of my heart to
our advisor Dr. BANOTH RAJKUMAR for his valuableadvice and comments.
Figure pages
Figure: 1……………………………………………………………………….12
Figure: 2……………………………………………………………………….17
Figure: 3……………………………………………………………………….19
Figure: 4……………………………………………………………………….24
Figure: 5……………………………………………………………………….28
Figure: 6……………………………………………………………………….29
Figure: 7……………………………………………………………………….30
Figure: 8……………………………………………………………………….31
Figure: 9……………………………………………………………………….32
Figure: 10……………………………………………………………………….34
Figure: 11……………………………………………………………………….35
Figure: 12……………………………………………………………………….36
Figure: 13……………………………………………………………………….37
Figure: 14……………………………………………………………………….45
Figure: 15……………………………………………………………………….47
Figure: 16……………………………………………………………………….50
1. INTRODUCTION..................................................................................................................7
CHAPTER 2.................................................................................................................................11
2. OVERALL DESCRIPTION...............................................................................................11
The main function that our system can provide includes the following....................................13
2.3.2. Tickers.....................................................................................................................14
2.3.3. Students....................................................................................................................14
CHAPTER 3.................................................................................................................................17
3. SPECIFIC REQUIREMENTS...............................................................................................17
a. Behavior Requirements......................................................................................................22
CHAPTER 4.................................................................................................................................25
4.4. Reliability........................................................................................................................26
4.5. Availability......................................................................................................................26
4.6. Maintainability................................................................................................................26
4.7. Portability........................................................................................................................26
CHAPTER 5.................................................................................................................................27
5. ANALYSIS MODELS.........................................................................................................27
CHAPTER 6.................................................................................................................................38
6. DESIGN CONSIDERATIONS...........................................................................................38
Assumptions...........................................................................................................................39
Dependencies..........................................................................................................................40
CHAPTER 7.................................................................................................................................43
7. SYSTEM DECOMPOSITION............................................................................................43
CHAPTER 8.................................................................................................................................46
9. APPENDIX...........................................................................................................................51
10. REFERENCE.......................................................................................................................52
CHAPTER 1
INTRODUCTION
The present Haramaya University can be traced back to the agreement made in 1952 between
the governments of Ethiopia and the United States of America which resulted in the
establishment of the Imperial College of Agriculture and Mechanical Arts. Oklahoma State
University in the USA embarked on establishing physical plants and staff to run the college’s
academic, research and extension programs. The four-year B.Scs. in Agriculture was started at
Haramaya campus in 1954 with both limited staff and facilities available. The College became a
chartered member of Addis Ababa University following the contractual termination of Oklahoma
Stat e University in 1967. Consequently, it was re-named the Alemaya College of Agriculture in
1989. In the last few years, the University has witnessed tremendous expansion in the number of
faculties, departments, students, staff and physical infrastructure. Apart from undergraduate
programs, the university has widely been engaged in the expansion and diversification of
graduate programs at Masters and PhD level.
The cafeteria management system of Haramaya University which was the main subsystem of
the University was constructed at that time to give food services only for 300 students. The
manager of the cafeteria at that time was also American. The services that was given at that time
was very unique from today’s services because of the resource was more enough and the
numbers of users or student at that time was very limited; compared today’s services given by
the cafeteria to the students. For instance, according to the information we can get from the
workers that have many experience in the cafeteria the student can fetch the milk from the pump
where now they can fetch water from. The cafeteria hall that was constructed for giving services
for 300 students was give services for more than 1000 student; unfortunately, as the university
intended to expand its capacity to take many students in many fields of study the additional
cafeteria’s hall that can give food services for more than 6000 (senior cafeteria hall) was
constructed. Later on in 1996 E.C the fresh cafeteria hall which was give food services for more
than 5500 was constructed. Accordingly, at this time the cafeteria management system was
giving food services for more than 15,000 students which beyond its capacity at main campus.
To give food services in more sophisticated way to all these students, under the condition of
limited resource and many number of uses, for cafeteria management system of Haramaya
University (CMSHU)there must be a good and powerful computerized system, Since up to now
the this subsystem has no a well-structured add computerize system at all. This is why we can
select this project to develop the system that hopefully decreases the problem that was related to
cafeteria management system of the university.
Among those constraints time, budget, and information accessing are the major ones. We
select the activity that can be done by the managers & automating ticking system of the
subsystem of the cafeteria management system of Haramaya University.
The activity of the manager of the cafeteria is the general managerial work done by the
managers. These activities are managing the resources that are needed for the cafeteria for giving
services to the students.The manager is responsible for giving meal card for student; control
whether services of foods and water ready on time, control whether the students are managed
properly while they are getting service, take a corrective action when the student make unethical
work and manage other worker of the cafeteria. It is also responsible for the management of
material that can play a great role to give the service to the cafeteria. Those materials are cups,
plate, that can student use directly and many other material that can used indirectly by the
student.
The atomization of the ticking system is the subsystem of the cafeteria management system
that can focus on the managing of the student while they are getting the food services from the
cafeteria.
HU=>Haramaya University
In general this document describes all about process in through our project is developed.
CHAPTER 2
2. OVERALL DESCRIPTION
The organizational structure of the existing system is shown below and the location of the
system we are going to automate is also presented there in the hierarchy of the organization
structure.
Head of cafeteria
Assistant chief
Junior shift
The ticking system the CMSHU is using now is first they can print the meal card that has
its unique numbers for each student and distribute it for all students. This need much manpower
and many effort of that manpower and approximately takes up to two weeds. This meal card is
only used only for one semester and the process is continuous in the second semester. These can
take much time, much manpower effort and many losses of printed papers every semester. After
that when the student use the cafeteria service the Ticker can tick for all students for breakfast,
lunch and dinner three times a day. This is a difficult work to control those much student
properly.
The main function that our system can provide includes the following.
Our system can:
2.3.
Economically the meal card printed on paper once in semester is reduced and one student
can use one ID’s barcode during all the life of his campus.
Work load can be reduced for the managers. We can explain these in many ways like;
the printing and distributing the meal card to the student is stopped, controlling the case
of students that related meal card can be easily handled by the system, the report of
students that done unethical behavior are generated for managers by the system and
disciple of the punishments is also given by the system.
The management of workers and the generation of workers report are also easy for the
managers.
The managers can thick for how to improve the services given by CMS since the
difficulties that was facing the CMS solved by implementing this system.
2.4.2. Tickers
Tickers are persons that can tick the students’ meal card in the existing system of the CMSHU at
current time. Its work is also very difficult our system can provides those benefits to them.
They can supervise the students only by looking them whether they checking their
Id’s barcode or not.
Since they have no difficult work they can done their work properly.
2.4.3. Students
Students are the mainly benefited users from this system in directly to use the cafeteria
services as:
The problem of getting the meal card in each semester that takes many of their time is
solved.
The ID’s barcode is used for their entire life their campus when they properly handle it.
When they enter the cafeteria hall they can easily check their ID’s barcode to get the
services.
Since the numbers of unethical practice is reduced all students get fairly get the services.
And
When the system launched and the managers start to use the system, since the workloads
of the managers are reduced, the manager works for improving their service giving.
Because of this the services that the cafeteria give to the student is improved.
In general there are many possible kinds of owners for a constraint. Owning element
must have access to the constrained elements to verify constraint. The owner of the constraint
will be determining when the constraint is evaluated. For example, operation can have pre-
condition and/or a post-condition constraint.
UML specification does not restrict languages which could be used to express
constraint.Frameworks are designed to speed up development and of course they each have their
own limitations. I personally develop sites using whatever makes sense to develop them with,
which could be anything from ASP.NET!
Web developers are essentially solution developers, so it is our job to pick the right tools
for the job. If you want to hand code sites using javascript and ignoring the abstractions that you
could use by implementing frameworks, then good luck to you, it sounds like an epic endeavor,
and I hope your client is willing to finance your voyage!
As we mentioned above the internet access is very necessary for our projects to be
successfully developed. And when there are problem with internet access it is difficult to our
project to be successful. Other constraints are shortage of time, difficulties to get information, the
problem of resource.
HTTP is the short form for Hyper Text Transfer Protocol, the underlying protocol used
by the World Wide Web. HTTP defines how messages are formatted and transmitted, and what
actions Web servers and browsers should take in response to various commands. For example,
when you enter a URL in your browser, this actually sends an HTTP command to the Web server
directing it to fetch and transmit the requested Web page.
FTP is an acronym for File Transfer Protocol. As the name suggests, FTP is used to
transfer files between computers on a network. You can use FTP to exchange files between
computer accounts, transfer files between an account and a desktop computer, or access online
software archives. Keep in mind, however, that many FTP sites are heavily used and require
several attempts before connecting.
The system can be interconnect with the database of the students that were found in the
register and also work with the website of Haramaya University to give some information to the
students about the cafeteria.
CHAPTER 3
3. SPECIFIC REQUIREMENTS
b. Documentation
This system will provide three types of systems documentations. They are Internal
Documentation, User Documentation, and External Documentation.
i. Internal documentation:
When we say user’s side, we mean the tickers that can control the student
whether they are following the instruction or not and the students that can
check his Id’s barcode to entering the cafeteria for getting services.
Database server: located inside the cafeteria managers office and used to store the
whole data under the cafeteria manager office related to students that getting services from the
cafeteria.
Personal computer and barcode readers can be presented near the entering door of
the cafeteria hall to check the studentsId’s barcode to enter the cafeteria.
Another communication way is how the system administrator allows the data accessing
permission to his co-worker. This includes the way of creating an account to that co-worker and
allowing some data permission to access it. To protect their data security the system allows the
security mechanisms to protect their data from an allowed person to access the data.
The system store student record and information related to the Id’s barcode and the
process how to distribute to the student and should retrieve the information when necessary. The
Retrieval of information should be easy and data should be saved properly in a well-organized
database server so that the process of data retrieving would be simple and faster.
The functional requirement of the system is to reduce the degree of occurrence of the above
mentioned problems. So it is very crucial to identify the input and output requirements of the
proposed system.
The functional requirements of the giving Id’s barcode and scanning system are the inputs
and outputs necessary for this subsystem.
4. Input Requirements
When we say the input requirements of the system, we mean the process or the preconditions
that should be fulfilled to produce the desired output: that is the inputs starting from students
registered to this campus and getting the services of the cafeteria, and the inputs and output
requirements are listed below.
It should assign system generated unique number for each Id’s barcode
It must handle detail of student information like name, photo, id number, dept.,
and year.
It should check the Id’s barcode of the student while he/she use the cafeteria food
services.
a. Behavior Requirements
An actor makes use of a system in different ways. Each of these ways is known as a use-
case. Use-case is “a behaviorally related sequence of transactions (performed by a user/actor) in
a dialogue with the system”. A use-case may involve a number of actors, just as an individual
actor may make use of several use-cases. We represent use-case diagrammatically by ovals and
actors by stick men.
In our system we have three actors. Those are:
1. managers
2. tickers and
3. students
The cafeteria managers have many interactions within the systems. Among this the major one
is seeing the report of the student and the workers. By looking this report when he see unethical
student or worker which break the principles of the cafeteria management system for the first
time he can advise them. If the worker or student can do the same thing for the second time, for
the purpose of correcting them he can punish them by using the principles of the cafeteria.
Another actor of the cafeteria management system is the tickers. His/her responsibility in the
existing system is to control and tick the meal card of the student while they come to use the
food service from cafeteria. After this system is implemented the role of the ticker can be
controlling the student, ready the system to use for student and reporting the student that can
done unethical work when the system is not get student’s Id’s barcode.
Students are the most benefited and the mean actor of this system. They can get their Id’s
barcode easily.
After getting the Id’s barcode one’s they can use it while the entire life of theiruniversity.
Even if the Id’s barcode will be lost from them regaining their Id’s barcode is not difficult to
them since the system reduce this activity.
Use case: Supervise the students while they are entering the
cafeteria
An actor represents anything that needs to interact with the system to exchange
information. An actor is a user, a role, which could be an external system as well as a person. An
actor initiates the system activity, a use case, for the purpose of completing the some business
task.
CHAPTER 4
4. OTHER NON-FUNCTIONAL REQUIREMENTS
Response time, the speed imposed on the system. The system should
responsive maximum number of tasks with minimum times.
3. Technical issues: E.g. pseudo code, user friendly pages, layouts, conventions
etc.
4.4. Reliability
That’s no system error so far from testing, therefore the system is reliable. All
information modified or uploaded by user didn’t lead to any conflict or error to the system.
4.5. Availability
In computer systems and networking, availability is a general term that is used to
describe the amount of time over a one-year period that the system resource is available in the
wake of component failures in the system. Our system can also available to give services and as
it needed it can be maintained.
4.6. Maintainability
Maintainability is characteristic of designand installation which determines the
probability that a failed equipment, machine or system can be restored to its normal operable
state within a given timeframe, using the prescribed practices and procedures. Its two main
components are serviceability (ease of conducting scheduled inspections and servicing) and
reparability (ease of restoring service after a failure).
4.7. Portability
The system is able to run on different platform as long as operating system is installed.
CHAPTER 5
5. ANALYSIS MODELS
Our system design needs many sequence diagrams to simplify the development the system
throughout this project. Among those sequence diagrams the most needed in our project is
illustrated below.
Figure: 5 sequence diagram that show how cafeteria manager login to the system
Figure: 7 sequence diagram show how the manager give special food userId for student
A DFD provides no information about the timing or ordering of processes, or about whether
processes will operate in sequence or in parallel. It is therefore quite different from a flowchart,
which shows the flow of control through an algorithm, allowing a reader to determine what
operations will be performed, in what order, and under what circumstances, but not what kinds of
data will be input to and output from the system, nor where the data will come from and go to,
nor where the data will be stored (all of which are shown on a DFD).
When it comes to conveying how information data flows through systems (and how that data
is transformed in the process), data flow diagrams (DFDs) are the method of choice over
technical descriptions for three principal reasons.
DFDs help us the system designers and others during initial analysis stages visualize a
current system or one that may be necessary to meet new requirements. Systems analysts prefer
working with DFDs, particularly when they require a clear understanding of the boundary
between existing systems and postulated systems. DFDs represent the following:
Among the data flow diagram we are presented here the flow of the information how the
system check for login processes during the login time. When the manager or users want login
the system ask username and password to be entered. After that the system can check from
database for username and password. This is illustrates below by data flow diagram.
CHAPTER 6
6. DESIGN CONSIDERATIONS
The analysis model describes the system completely from the actors’ point of view and
serves as the basis of communication between the client and the developers. The analysis model,
however, does not contain information about the internal structure of the system, its hardware
configuration or more generally, how the system should be realized. System design is the first
step in this direction. System design results in the following products:
List of design goals, describing the qualities of the system that developers should
optimize.
In this documentation we have represented the basic design of our system through two basic
UML models sequence diagram, state diagram, class diagram, data flow diagram, user interface
design and entity relationship diagrams.
Developers in turn make decisions regarding design and implementation details. An example
is when software architects try to balance the quality attributes of the system. A balance of
functional as well as quality requirements has to be achieved so that the intended users of the
system will find it useful.
Assumptions
During a workshop, someone asked me what she should do if she doesn’t get all the
information that she needs to complete her requirements. I told her that assumptions were the
best way to cover these unknowns, and make the client responsible for saying if the assumptions
are correct or not. It’d be great to have the client look at these before you finalize the
requirements. However, we both know that we don’t live in a perfect world.
Assumptions are circumstances that you are assuming to be true in order for the project to
be successful. For instance, there was one project where the client would not tell us the hours of
operation (I still don’t get why). Therefore, we wrote an assumption to cover this, so that the
client couldn’t come back later saying that we should be operating 24/7. It read like this “We
assume that the hours of operation are between 7:00 a.m. and 9:00 p.m.”
Dependencies
Dependencies are relationships between requirements. A linkage that shows that one
requirement is dependent on another. A great example that I found online is:
Assumptions and dependencies are usually put in the same document section. The reason is
that they usually correlate because your dependencies are usually dependent on your
assumptions.
Project limitations may influence how you manage your project and may even determine
whether or not you (and your project’s drivers and supporters) decide to proceed with your
project. Project limitations typically fall into several categories. By recognizing these categories,
you can focus your investigations and thereby increase the chances that you’ll discover all
limitations affecting your project.
Your project’s drivers and supporters may have preset expectations or requirements in one or
more of the following categories:
Activity performance: The strategies for performing different tasks. For example,
you’re told that you must use your organization’s printing department to reproduce the
new users’ manuals for the system you’re developing. You don’t know what the manual
will look like, how many pages it’ll be, the number of copies you’ll need, or when you’ll
need them. Therefore, you can’t know whether your organization’s printing department is
up to the task. But at this point, you do know that someone expects you to have the
printing department do the work.
Be careful of vague limitations; they provide poor guidance for what you can or can’t do, and
they can demoralize people who have to deal with them. Here are some examples of vague
limitations and how you can improve them:
Determining limitations is a fact-finding mission, so your job is to identify and examine all
possible sources of information. You don’t want to miss anything, and you want to clarify any
conflicting information. After you know what people expect, you can determine how (or
whether) you can meet those expectations. Try the following approaches:
Consult your audiences. Check with drivers about limitations regarding desired results;
check with supporters about limitations concerning activity performance and resources.
Review relevant written materials. These materials may include long-range plans,
annual budgets and capital appropriations plans, benefit-cost analyses, feasibility studies,
reports of related projects, minutes of meetings, and individuals’ performance objectives.
When you identify a limitation, be sure to note its source. Confirming a limitation
from different sources increases your confidence in its accuracy. Resolve conflicting
opinions about a limitation as soon as possible
CHAPTER 7
7. SYSTEM DECOMPOSITION
1. integration technologies for legacy and custom subsystems that provide an understanding
of the interaction of subsystems;
2. scalable composition mechanisms for system-of-systems architectures;
3. interface formalisms through which compatibility of subsystems can be checked and
properties of compositions can be determined from properties of the subsystems;
4. Ontology models for the organization of components together with a semantic type
system for the data on which they operate; and
5. Hybrid models for designing and analyzing the dynamics of subsystem interactions with
their physical environment. We assume that subsystems have arbitrary granularity, and
can range from simple software components to entire legacy systems appropriately
wrapped.
transaction services, and distributed file systems. OO mechanisms focus instead on concurrent
semantics with disciplined, well-founded concurrency and communication mechanisms.
One major outcome of this project has been a model transformation technology that has
applications to model optimization, scalable model construction, joint management of product
families, design refactoring, and workflow automation. In the mechanisms that we have
developed, models construct models. The same modeling languages are used to specify a
scalable composition of components as are used to specify the component interactions.
Potential applications include large complex software systems, distributed systems, and
scalable parallel programming.
CHAPTER 8
8. USER INTERFACE DESIGN
A class model is comprised of one or more class diagrams and the supporting
specifications that describe model elements including classes, relationships between classes, and
interfaces. Classes are shown as boxes with three sections – the top for the name of the class,
the middle for the attributes, and the bottom for the operations. Associations between classes are
depicted as lines between classes. Associations should include multiplicity indicators at each
end.
The detailed design refines the system document. Hence first applicable document here is
system design. Also we are referring the data structure. Hence second applicable document is
database design.
The manager of the cafeteria management system has the overall data access permission and
the authority to give permission to the coworkers managed below its authority. The manager can
add or register new student to the database as it is needed, delete the students from the database
when the student finish getting service from the cafeteria service and update as necessary.
The ticker of the cafeteria has the responsibility to prepare the system for use when the time
of the service will on and control the student while they have getting the food service from the
cafeteria. The ticker can also help the students that have lost their ID’s barcode by entering their
ID No number to the system from the paper which have the signature of cafeteria managers and
allow them to get the food service until they get the ID’s barcode.
The students have the user of this product directly by checking their ID’s barcode to get the
food service from the cafeteria.
Theentity is a person, object, place or event for which data is collected. For example, if
we consider the information system for a cafeteria management system, entities would
include not only student, but the student's ID’s barcode,name other information as well.
The entity is represented by a rectangle and labeled with a singular noun.
The relationship is the interaction between the entities. A relationship may be
represented by a diamond shape, or more simply, by the line connecting the entities. In
either case, verbs are used to label the relationships.
The cardinalitydefines the relationship between the entities in terms of numbers. An
entity may be optional:
The overall description of our entity relationship diagram is described below which contain
their relationship and their attributes.
Mname
Fname Lname
Status
Access permission
Position
ID No
Name
Fname
Mname
Lname
MANAGER
Name
ID No
MANAGES
MANAGES
TICKER
Position
Status
CONTROLSLS
ID No
STUDENT Year
Lname
Name
Mname
Branch
9. APPENDIX
A: actor
assistance
B: boiler operator
E: entity
G: guard
H: head of cafeteria
I: Injera
J: javascript
M: manager
R: Resource leader
S: Student,store men
T: ticker
10. REFERENCE
www.haramaya.edu.et
www.freestudentprojects.com