You are on page 1of 115

WOLLO UNIVERSITY

KOMBOLCHA INSTITUTE OF TECHNOLOGY


COLLEGE OF INFORMATICS
DEPARTMENT OF COMPUTER SCIENCE
PROJECT TITTLE: AUTOMATION OF AL-JEEZIRA
ELECTRONICS SHOP
Proposed by:

Name Id no_

1. Betselot Yewulu……….1555/04

2. Helen Abebe……………1565/04

3. Muna Mohammed……..1575/04

Advisor: Daniel Bekele (MSC)

June, 2007 E.C


Automation of Al-Jeezira Electronics shop

Acknowledgment
In completing this final project we have been fortunate to have help, support and encouragement
from many people. We would like to acknowledge them for their support.

First, We would like to thank Mr. Daniel Bekele(MSC) , our project advisor, for guiding
us through each and every step of the process with knowledge and support. Thank you for your
advice, guidance and assistance.

Second, we would like to thank Mr. Jemal Hassen(MSC),department head of computer science,
who provided suggestions and support throughout the project.

We would also like to thank Mr. Habtamu Mohammed (MSC) and Dr.Ahmedin Mohammed
(PHD), they help us by giving suggestion and encouragement about the project.

Finally, we would like to thank Al-Jeezira Electronics shop employees and owner, for their help
in terms of willingness to provide detail information of the shop.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page i


Automation of Al-Jeezira Electronics shop

Abstract
There are a lot of problems using manual shopping such as product are not easily managed, there
is no customer satisfaction, the customer wait in line for a lot of time, and there is no written
discretion on items for customers. Such problems make the system tedious and consume time. To
overcome these problems we are developed web based application for Al-Jeezira Electronics.
Since using computer system the work is easy and fast. The system has different attractive
graphical user interface. As a result the customer can able to order products online using the
system. Store manager can able to register and update product details. Sales person can able to
sale products and view order. And also system administrator can able to register and delete users.
Similarly owner can able to view report. The system is developed using object oriented
methodology and it also encompass software development life cycle of the five phases namely
planning, analysis, design, implementation and testing. In planning phase we identified the
problem and we formulate alternative solution. In analysis phase we used the different UML
diagram to draw the interaction between the actors and the system, the existing system were
described with their problem and also the new system proposed based on the problem. In system
design phase the system designed using different UML diagram like deployment diagram, how
the system interact to the hardware-installation and the system designed based on the analysis
phase. Similarly in implementation phase the physical design changed into computer code based
on the design specified. The system developed using PHP programming language as front end
and MYSQL database as backend. Lastly the system tested using different testing strategies
based on the specified functionality.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page ii


Automation of Al-Jeezira Electronics shop

Table of contents
List of tables ............................................................................................................................... vi

List of figures............................................................................................................................. vii

List of abbreviations ................................................................................................................... ix

Chapter 1 : INTRODUCTION........................................................................................................ 1

1.1 Back ground of the organization ........................................................................................... 1

1.1.1 Mission ......................................................................................................................... 2

1.1.2 Vision............................................................................................................................ 2

1.2 Statement of the problem ................................................................................................. 2

1.3 Objective of the project .................................................................................................... 3

1.3.1 General objective of the project.................................................................................... 3

1.3.2 Specific objective of the project ................................................................................... 3

1.4 Scope and limitation of the project .................................................................................. 4

1.5 Methodology .................................................................................................................... 4

1.5.1 Data collection .............................................................................................................. 4

1.5.2 System analysis and design .......................................................................................... 6

1.5.3 System development and implementation tools ........................................................... 8

1.6 Significance and beneficiaries of the project ................................................................... 9

1.6.1 Target beneficiaries of the system .............................................................................. 10

1.7 Feasibility analysis ......................................................................................................... 10

1.7.1 Operational feasibility ................................................................................................ 11

1.7.2 Technical feasibility ................................................................................................... 11

1.7.3 Economical feasibility (cost benefit analysis) ............................................................ 11

1.7.4 Schedule feasibility..................................................................................................... 15

1.8 Project organization........................................................................................................ 16

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page iii
Automation of Al-Jeezira Electronics shop

1.9 Communication plane .................................................................................................... 16

1.10 Project schedule.............................................................................................................. 17

1.11 Risk and contingency ..................................................................................................... 17

Chapter 2 : ANALYSIS ................................................................................................................ 18

2.1 Introduction .................................................................................................................... 18

2.2 Existing system .............................................................................................................. 18

2.2.1 Describing the existing system ................................................................................... 18

2.2.2 Problem of the existing system ................................................................................... 19

2.2.3 Supplementary requirements ...................................................................................... 20

2.3 Alternative options to address the problems of existing system .................................... 21

2.4 New system .................................................................................................................... 22

2.4.1 Software requirement of the new system ................................................................... 23

2.4.2 Essential use case diagram ......................................................................................... 25

2.4.3 System use case diagram ............................................................................................ 27

2.4.4 Key abstraction with CRC analysis ............................................................................ 36

2.4.5 Sequence diagram ....................................................................................................... 39

2.4.6 Activity diagram ......................................................................................................... 45

2.4.7 Conceptual modeling: class diagram .......................................................................... 51

2.4.8 User interface prototyping .......................................................................................... 52

2.4.9 User interface flow diagram ....................................................................................... 57

Chapter 3 : SYSTEM DESIGN .................................................................................................... 58

3.1 Purpose and goals of design ........................................................................................... 58

3.2 Class modeling diagram ................................................................................................. 59

3.3 Current software architecture ......................................................................................... 61

3.4 Proposed software architecture ...................................................................................... 61

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page iv


Automation of Al-Jeezira Electronics shop

3.4.1 Subsystem decomposition .......................................................................................... 62

3.4.2 Component diagram ................................................................................................... 62

3.4.3 Deployment diagram .................................................................................................. 63

3.4.4 Persistence modeling for object oriented database ..................................................... 64

3.4.5 Access control and security ........................................................................................ 66

3.4.6 Boundary conditions and exception handling ............................................................ 66

3.5 User-interface design...................................................................................................... 67

Chapter 4 : SYSTEMIMPLMENTATION AND TESTING ....................................................... 71

4.1 System implementation .................................................................................................. 71

4.1.1 Coding ........................................................................................................................ 71

4.2 Testing ............................................................................................................................ 77

4.2.1 Unit testing ................................................................................................................. 77

4.2.2 Integration testing ....................................................................................................... 78

Chapter 5 : CONCLUSION AND RECOMMENDATION ......................................................... 79

1.1 Conclusion...................................................................................................................... 79

1.2 Recommendation ............................................................................................................ 79

References ................................................................................................................................. 80

Annexes ..................................................................................................................................... 81

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page v


Automation of Al-Jeezira Electronics shop

List of tables
TABLE 1. 1 SOFTWARE DEVELOPMENT COST ................................................................................... 13
TABLE 1. 2 MISCELLANEOUS AND HARDWARE DEVELOPMENT COST ............................................... 13
TABLE 1. 3 MAN POWER COST ......................................................................................................... 14
TABLE 1. 4 TANGIBLE BENEFIT ....................................................................................................... 15
TABLE 1. 5 NNET BENEFIT .............................................................................................................. 15
TABLE 1. 7 COMMUNICATION PLAN ................................................................................................ 17
TABLE 2. 1 CRC FOR USER ............................................................................................................... 37
TABLE 2. 2 CRC FOR ORDER ............................................................................................................ 38
TABLE 2. 3 CRC FOR PRODUCT ........................................................................................................ 38
TABLE 2. 4 CRC FOR CUSTOMER ...................................................................................................... 39

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page vi


Automation of Al-Jeezira Electronics shop

List of figures
FIGURE 1. 2 PROJECT SCHEDULE ..................................................................................................... 17
FIGURE 2. 1 EESSENTIAL USE CASE DIAGRAM................................................................................. 26
FIGURE 2. 2 SYSTEM US CASE DIAGRAM ......................................................................................... 27
FIGURE 2. 3 SEQUENCE DIAGRAM FOR LOGIN USE CASE .................................................................. 40
FIGURE 2. 4 SEQUENCE DIAGRAM FOR REGISTER PRODUCT USE CASE ............................................. 41
FIGURE 2. 5 SEQUENCE DIAGRAM FOR VIEW REPORT USE CASE ....................................................... 42
FIGURE 2. 6 SEQUENCE DIAGRAM FOR ORDER PRODUCT USE CASE.................................................. 43
FIGURE 2. 7 SEQUENCE DIAGRAM FOR UPDATE PRODUCT USE CASE ................................................ 44
FIGURE 2. 8 SEQUENCE DIAGRAM FOR SEARCH PRODUCT USE CASE ................................................ 45
FIGURE 2. 9 ACTIVITY DIAGRAM FOR LOGIN USE CASE.................................................................... 46
FIGURE 2. 10 ACTIVITY DIAGRAM FOR REGISTER PRODUCT USE CASE ............................................. 47
FIGURE 2. 11 ACTIVITY DIAGRAM FOR VIEW REPORT USE CASE ...................................................... 48
FIGURE 2. 12 ACTIVITY DIAGRAM FOR UPDATE PRODUCT USE CASE ............................................... 49
FIGURE 2. 13 ACTIVITY DIAGRAM FOR SEARCH PRODUCT USE CASE ............................................... 50
FIGURE 2. 14 ACTIVITY DIAGRAM FOR PLACE ORDER USE CASE ...................................................... 51
FIGURE 2. 15 CONCEPTUAL LASS DIAGRAM .................................................................................... 52
FIGURE 2. 16 USER INTERFACE PROTOTYPING FOR LOGIN ............................................................... 53
FIGURE 2. 17 USER INTERFACE PROTOTYPING FOR PRODUCT REGISTER .......................................... 54
FIGURE 2. 18 USER INTERFACE PROTOTYPING FOR CREATE ACCOUNT ............................................ 55
FIGURE 2. 19 USER INTERFACE PROTOTYPING FOR COMMENT ......................................................... 56
FIGURE 2. 20 USER INTERFACE FLOW DIAGRAM .............................................................................. 57
FIGURE 3. 1 CLASS MODELING DIAGRAM ........................................................................................ 60
FIGURE 3. 2 SYSTEM ARCHITECTURE FOR THE SYSTEM .................................................................. 62
FIGURE 3. 3 COMPONENT DIAGRAM ................................................................................................ 63
FIGURE 3. 4 DEPLOYMENT DIAGRAM .............................................................................................. 64
FIGURE 3. 5 PERSISTENCE MODELING FOR OBJECT ORIENTED DATABASE ........................................ 65
FIGURE 3. 6 USER INTERFACE DESIGN FOR LOGIN ........................................................................... 68
FIGURE 3. 7 USER INTERFACE DESIGN FOR PRODUCT REGISTRATION ............................................... 68
FIGURE 3. 8 USER INTERFACE DESIGN FOR CREATE ACCOUNT ......................................................... 69
FIGURE 3. 9 USER INTERFACE DESIGN FOR COMMENT ..................................................................... 70
FIGURE 4. 1 CUSTOMER HOME PAGE UI ........................................................................................... 71
FIGURE 4. 2 SEARCH UI FOR PRODUCT DELETION ............................................................................ 72
FIGURE 4. 3 CREATE ACCOUNT UI .................................................................................................. 73
FIGURE 4. 4 CUSTOMER ORDER DETAILS UI ..................................................................................... 74
FIGURE 4. 5 PRODUCT REGISTRATION UI ........................................................................................ 75
FIGURE 4. 6 SYSTEM ADMINISTRATOR UPDATE ACCOUNT UI ........................................................... 76
FIGURE 4. 7 CUSTOMER SHOPPING CART UI ..................................................................................... 77
FIGURE 5. 1 QUESTIONS INTERVIEWED FROM QUESTION 1-16 ......................................................... 81
FIGURE 5. 2 QUESTIONS INTERVIEWED FROM QUESTION 17-30 ....................................................... 82

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page vii
Automation of Al-Jeezira Electronics shop

FIGURE 5. 3 WARRANTY CERTIFICATE ............................................................................................ 83


FIGURE 5. 4 RECEIPT FORM ............................................................................................................. 84

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page viii
Automation of Al-Jeezira Electronics shop

List of abbreviations

AAES: Automation of Al-Jeezira Electronics shop

AES: Al-Jeezira Electronics shop

Php: hypertext processing

Html: Hypertext markup language

UML: Unified Modeling Language

UI: User Interface

GVA: Graphics, Visualization, and Usability

DB: database

SQL: Structural Query Language

UC: Use Case

ID: Identification number

SW/HW: Software and Hardware

CRC: Class Responsibility Collaboration

BR: Business Rule

KIOT: Kombolcha Institute Of Technology

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page ix


Automation of Al-Jeezira Electronics shop

CHAPTER 1 : INTRODUCTION

Shopping is one of the essential parts of our daily life. We're using different types of shops to
buy different kind of things every day. As we know using internet we can do everything like
playing, banking, education etc. Shopping is one of the activities performed online using
internet. Shopping online is important for the development of one country. Now a day shopping
online has increased and become one part of development of technology. Before the invention
technology it is difficult to handle sophisticated and large amount data easily. So human being
tries to find the best solution for the difficulty. Technology has impact to develop social,
economical and cultural aspect of human being. After some years computer technology invented
to minimize the work load of human being and different tasks that is not easily performed within
short period of time by human. As a result we are intended to develop computerized system for
Al-Jeezira electronics shopping management system to handle sophisticated process. We will try
the best way to make the complicated process of Al-Jeezira electronics shopping management
system as simple as possible using Structured and modular technique and menu oriented
interface. We are going to design the website in such a way that customer may not have any
difficulty in using this system and further expansion is possible without much effort. Our system
is user friendly and easily managed .To use the system it doesn’t require any programming
knowledge. Our system used by different people like customer, store manager, system
administrator, owner and salesperson, but the system fully accessed by the authorized user
having password and user name.

1.1 Back ground of the organization

Al-Jeezira electronics shop found at the town of Dessie-which is found in the north western parts
of Addis Ababa at 400kilometers.The shop was established in 2003 E.C to give services for
people lives around Dessie and Kombolcha. Al-Jeezira electronics shopping center is one of the
well-known electronic shops in Dessie town that highly used by customer like organization,
merchant and individual person. The shop has three employees –two employees are work full-
time and else work part-time. Mr. Anwar Ibrahim the owner of the shop, and the shop name is
Al-Jeezira electronics. The shop name derived from the name of Al-Jeezira broadcasting media.
Because Al-Jeezira broadcasting media is known throughout the world and the largest media in

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 1


Automation of Al-Jeezira Electronics shop

the world, as result the owner of the shop want to make the shop known by anyone. The initial
capital was 300,000 in Ethiopian birr, but the current capital is 1,000000 in Ethiopian birr. The
shop gives service 12 hours with limited time. The current activity of the shop is manual system.
The shop owner buy the product from Addis Ababa with appropriate price, do not have fixed
supplier. The customer physically going to the shop by choosing products, asking the price, and
take the product. Similarly the sales person provides choice for customer, telling the price, the
products detail description and calculate the payment, prepare bill for customer and generate bill
information to the owner. The owner of the shop work as a manager, he controls the activity of
the shop. The shop gives services for customers by selling electronics material such as
refrigerators, laptop, television, receiver, DVD, caste player, dish, video camera, mobile and
other. There are many problems in the shop: Doesn’t give two or more customers at the same
time, the user of the system do not have privilege, the sales person fraud the bill, it use more time
to processes transaction, working hours are short, the customer do not have idea about the price
and quality of products-there is no written description on products for customers, and there is no
guaranty for customer. Those problems make the shop unprofitable. The solution of those
problems by automating the manual system into computerized system to make the shop
profitable by increasing performance of the shop, by maximizing the working hour, by
increasing the security of the shop and by designing user friendly interface.

1.1.1 Mission
To provide the customer with the best value, quality products, accurate information, balanced
price and excellent services. It also provides love, respect and good services for the customer.

1.1.2 Vision
The shop intended to increase the profit and competitive with other shop to become well known
by giving satisfaction, honest and providing excellent services for customers.

1.2 Statement of the problem

Al-Jeezira electronics shop has currently many problems that motivate the team to develop
automated system. These problem are, the current system uses manually to give service- it

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 2


Automation of Al-Jeezira Electronics shop

consume time and the customer wait in line when another customer served, the shop gives
service with limited time and current working hour is short, it uses manual transaction which
takes more time, guaranty of the shop is not accurate there is no means of checking guaranty
paper since the shop has no persistence data storage, shop owner doesn’t control products easily-
simply registered using paper ,as we know customer has no idea about item rating which means
customer can’t vote their favorites item and review frequently used products, and manger of the
store does not easily know how many product exit and how many of them sold. Not only store
manager the sales person doesn’t search the product easily even the product exist in the catalog
or store he or she said there is no such product. And also the product does not exist in the catalog
or store they search the product which means they kill time. When the sales person search
product from store or catalog it takes a lot of time as a result the customer unsatisfied. Current
system is low performance which does not give service with fast response for customer.

1.3 Objective of the project

1.3.1 General objective of the project

The main aim of this project is to design and developing dynamic website for Al-Jeezira
electronics Shop.

1.3.2 Specific objective of the project

The following are specific objective to achieve the general objective of the system

 To identifying problem of the current system


 To analyze of the existing system
 To design different web page based on privilege
 To design different artifacts of the new system
 To design database to keep the overall records associated with the management process.
 Prepare documentation
 Implement and test the system

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 3


Automation of Al-Jeezira Electronics shop

1.4 Scope and limitation of the project

Scope of the project:

 Automate the process of manual shopping system for Al-Jeezira electronics shop
 Order products
 Store management system of the shop-record, delete, update product details
 Generate and view report

Limitation of the project

Because of the different reasons like shortage of time, lack of materials (hardware and software)
and others, our system do not implement the whole services.

 The transaction takes place using on cash because our country is not familiar with credit
card and online banking
 The system will be limited to users who have internet access and devices that are able to
access internet.
 Calculating of employees salary is not include in our scope
 Shipping is not include

1.5 Methodology

1.5.1 Data collection

Data collection is the process of gathering information required to accomplish the proposed
system from the existing system. It is important to determining and analyzing the existing
system. To gather data from the customers, employees, owner of the shop and other, the team
will use the following techniques.

a. Interview

To get the basic information, the team interviewed individuals informed about the operation and
issues of the current system and needs for systems in future organizational activities.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 4


Automation of Al-Jeezira Electronics shop

We ask different questions:

 What is the current problem of the shop?


 How do you work currently? Or
 How to process the current system?
b. Observation

We have also used the other methodology of data collection that is called observation. We have
observed physically by going to the place and by observing the actual work being done. The
team also has seen that there is no automated system and the shop follow manual way.

c. Literature Review
We conducted review literature in order to get additional understanding in the area of e-
commerce system. Electronic Commerce (e-commerce) applications support the interaction
between different parties participating in a commerce transaction via the network, as well as the
management of the data involved in the process [8].The increasing importance of e - commerce
is apparent in the study conducted by researchers at the GVU (Graphics, Visualization, and
Usability) Center at the Georgia Institute of Technology. In their summary of the findings from
the eighth survey, the researchers report that ―e - commerce is taking off both in terms of the
number of users shopping as well as the total amount people are spending via Internet based
transactions‖. Over three quarters of the 10,000 respondents report having purchased items
online. The most cited reason for using the web for personal shopping was convenience (65%),
followed by availability of vendor information (60%), no pressure from sales person (55%) and
saving time (53%).Although the issue of security remains the primary reason why more people
do not purchase items online, the GVA survey also indicates that faith in the security of e-
commerce is increasing. As more people gain confidence in current encryption technologies,
more and more users can be expected to frequently purchase items online [11]. A good e-
commerce site should present the following factors to the customers for better usability [11]:

 Knowing when an item was saved or not saved in the shopping cart.
 Returning to different parts of the site after adding an item to the shopping cart.
 Easy scanning and selecting items in a list.
 Effective categorical organization of products.
 Simple navigation from home page to information and order links for specific products.
 Obvious shopping links or buttons.
 Minimal and effective security notifications or messages.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 5


Automation of Al-Jeezira Electronics shop

 Consistent layout of product information.

Privacy and security issues in online shopping

Shopping online has never been so easy. With the flourishing numbers of online merchants,
people nowadays have various choices to do their shopping. Big companies such as eBay and
amazon.com have introduced many value added features to help the customers to decide what to
shop for. With features such as price comparison, product photos and user reviews, consumers
can shop easily and smartly without even going to the stores and having such a hard time looking
for the products they want. All they have to do are just browse for the product they want in the
website and within a few mouse clicks they are off. Such simplicity is what makes online
shopping appealing for consumers [7].

1.5.2 System analysis and design

We do not use structural system analysis and design as we know it has some problems:

 It fallows top down approach, but the real system doesn’t follow top down approach.
 It gives more emphasis on coding than analysis
 The resulting system demands more maintenance cost
 It emphasizes more on functionality than on data which leads to poor extendibility and
modifiability.

The team decides to use object oriented system analysis and design methodology because of the
following reason:

 Simplicity: software objects model real world objects, so the complexity is reduced and
the program structure is very clear.
 Reusability: the object oriented provides opportunities for reuse through the concepts
of inheritance, polymorphism, encapsulation and modularity. It reduces the time and
cost of writing program as well as the incidence of defects.

 Increased extensibility: -when you need to add new feature to the system you only
need to make changes in one part of the applicable class.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 6


Automation of Al-Jeezira Electronics shop

 Maintainable: OOP methods make code more maintainable. Objects can be maintained
separately, making locating and fixing problems easier. The principles of good OOP
design contribute to an application's maintainability.

 Modifiability: It is easy to make minor changes in the data representation or the


procedures in an OO program.

 Increase internal consistency across analysis, design and programming


 Manage Complexity by abstraction
 Tackle more challenging problems

Object oriented methodology has two phases:

Objects oriented analysis (OOA)-The team looks at the problem domain, with the aim
of producing a conceptual model of the information that exists in the area being analyzed.
Analysis models do not consider any implementation constraints that might exist, such as
concurrency, distribution, persistence, or how the system is to be built. Implementation
constraints are dealt during object-oriented design (OOD). Analysis is done before the
Design. The result of object-oriented analysis is a description of what the system is
functionally required to do, in the form of a conceptual model. That will typically be
presented as a set of use cases, one or more UML class diagrams, and a number of
interaction diagrams. It may also include some kind of user interface mock-up. The
purpose of object oriented analysis is to develop a model that describes computer
software as it works to satisfy a set of customer defined requirements [1].
Object oriented design (OOD)-transforms the conceptual model produced in object-
oriented analysis to take account of the constraints imposed by the chosen architecture
and any non-functional - technological or environmental - constraints, such as response
time, run-time platform, development environment, or programming language.
The concepts in the analysis model are mapped onto implementation classes and
interfaces. The result is a model of the solution domain, a detailed description of how the
system is to be built [1].

Object-oriented programming (OOP) is a programming paradigm based upon objects (having


both data and methods) that aims to incorporate the advantages of modularity and reusability.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 7


Automation of Al-Jeezira Electronics shop

Objects, which are usually instances of classes, are used to interact with one another to design
applications and computer programs [1]. The team also use object oriented programming for
implementing the system because of the following reason:

 Bottom–up approach in program design

 Programs organized around objects, grouped in classes


 Focus on data with methods to operate upon object’s data
 Interaction between objects through functions
 Reusability of design through creation of new classes by adding features to existing
classes

1.5.3 System development and implementation tools

We are design interactive and user-friendly web application that the user of the system can
access the sites and interact with the organization.

Software tools:

 Wamp server 2.0 to run our project before being uploaded on to the actual server.
 MySQL version 5.1.36 –for backend for the system
 Editor- notepad++ for writing php, html,css and JavaScript code
 Edraw Max for UML modeling and diagram
 Microsoft office 2010 –for documentation

Programming language:-

 HTML-client side scripting language


 PHP –server side scripting language
 Java script and cascading Style Sheets

Php (hypertext pre-processor):-the team chooses this language for server-sided scripting.

 It is an open source software

 It is free to download and use

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 8


Automation of Al-Jeezira Electronics shop

 It supports many databases (MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL,


Generic ODBC, etc.)

 Runs on different platforms (Windows, Linux, UNIX, etc.)

 It is compatible with almost all servers used today (Apache, IIS, etc.)

MySQL version 5.1.36 -for data base design

 It’s quick and powerful.


 It’s free

Edraw Max: -the team used this software for designing the project, to show the flow of actions in
the system and to design different UML diagram

HTML:-

 Supported on almost every browser, not all browsers.


 Widely used; established on almost every website, not all websites.
 Free - You need not buy any software
 Easy to learn and code even for beginner programmers

Cascading Style Sheets

o Used to control the appearance of a Web site by creating style sheets.


o Use a style sheet to give all the pages of a Web site the same look and feel.
o Used to specify the precise font, size, color and other properties of displayed text.
o Used to specify element backgrounds and colors.

1.6 Significance and beneficiaries of the project

The project has a lot of significant such as customer familiar with electronic commerce when
using this system the habit of using e-commerce system improved. The customer easily order
products at home or office using internet they simply open home page and browse different
products and order. Working hours of the shop increase to 24 hours. The customer easily
attracted when the system provide fast and better service, reduce load and number of employs,

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 9


Automation of Al-Jeezira Electronics shop

who perform similar task-it means when the same work performed by two or more employee but
in the new system it can be performed by single employee. Customer can access the required
information from the shop like price discount, new product come and frequently used items by
viewing item rating. The system protect unauthorized user by using password and user name.
Manger of the store can manage the products; first he or she register the products after that he or
she easily update and remove products using different attractive user friendly interface. Owner of
the shop can control the activity, in addition to this customer also can vote their favorite item
using item rating-for our system we used five stars rating system. The store manager easily
knows product whether exist or not in the store, knows how many of them sold and how many of
them exist-not sold.

1.6.1 Target beneficiaries of the system

Different bodies benefited from proposed system like:

 Owner of shop benefited from the system by decreasing workload and number of
employer that perform similar work, and attract different customer.
 Customers of the shop benefited from the system, they get accurate and reliable
information for instance, the price of items and new product. And also the customers save
their time.
 Employees who use the system, they perform their work effectively and efficiently
without loss time and resource.
 Government gain more money from tax

1.7 Feasibility analysis

Feasibility studies are crucial during the early development of any project and form a vital
component in the business development process. Is defined as the practical extent to which
a project can be performed successfully. Feasibility analysis used to determine whether the
proposed system is feasible or not.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 10


Automation of Al-Jeezira Electronics shop

1.7.1 Operational feasibility

Measures how the proposed system solves the problem of the existing system. Our new
system is operationally feasible and it doesn’t affect the organization structure. The new
system is operationally feasible like reliability, maintainability, supportability, usability and
solve problem.

Our system will be:

 Any user can operate the system


 User friendly
 Easier for navigate the page.

1.7.2 Technical feasibility

Our project is technical feasible to take advantage of the current technology in pursuing
further improvement. The technical capability of personnel as well as the capability of the
available technology should be considered. Our new system can work the current
technology and our focus is to develop well organized dynamic web site that is technically
efficient and effective for managing the Shop.

1.7.3 Economical feasibility (cost benefit analysis)

The proposed system we are going to develop is economically feasible as compared to the
current manual system. As a result our new system uses minimum resource and employees.
It decreases economic expenditure of the shop.

1.7.3.1 Benefit of the project

A. Tangible benefit-where the dollar value of the benefit can be easily assigned because
values are readily measurable.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 11


Automation of Al-Jeezira Electronics shop

The proposed system:

 Reduce employee labor cost


 Increase speed of activity
 Error reduction
 savings due to avoiding to add more employees when improved process
 Improves the productivity of process and personnel

B. Intangible benefit-where the dollar value of the benefit is not able to be assigned

Increase efficiency
Increase customer satisfaction
Increase error reduction
Provide secure and reliable service
Reduce workload of the organization
Provide accurate information
Improve customer service

1.7.3.2 Cost of project

A. Tangible cost

Tangible cost is a cost that is seen instantly such as in purchasing products, paying employees
.The tangible costs to be acquired in developing the system are: Software development cost,
miscellaneous and hardware development cost.

Software development cost

For this particular project we will be using different software. As shown in the table 1.1 their
price and software described.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 12


Automation of Al-Jeezira Electronics shop

Table 1. 1 Software development cost

Software Price(ET birr)

Microsoft window 7 ultimate 60


40
Microsoft office 2007 and edraw
Free down load
Wamp server 2.0
Free down load
Mysql 5.1.36
100
Others
200
Total

Miscellaneous and hardware development cost

We used different materials to develop the system as shown in the table 1.2 below.

Table 1. 2 Miscellaneous and hardware development cost

Material Amount Price(in ET birr)

Computer(laptop) 1 12,000
1 200
Printing
Half pack 80
Pen
One pack 80
Paper
1 115
Flash disk(4 GB)
156
Transport
… 844
Others
… 13,475
Total

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 13


Automation of Al-Jeezira Electronics shop

B. Intangible cost

Intangible cost is a cost that is not seen but its effects are perceived later in future.

Man power cost

When we develop the system it takes man power to make the project success. There are different
staffs participated namely analysts, typist, designer, and implementer as shown in the table 1.3

Table 1. 3 Man power cost

Task Types of staff Number unit Number Price per Total


of staff of units unit price

Analysis Analysts 1 Month 2 1000 2,000


Typist 1 Month 1 400 400
Typing
Designer 1 Month 2 1300 2,600
Design
Implementer 1 Month 3 1500 4,500
Implementation
… … … … 9,500
Total

So the first year total cost can be calculated like this: Total cost= software cost +
hardware cost + man power cost =200+13,475+9,500 =23,175

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 14


Automation of Al-Jeezira Electronics shop

Tangible benefit

Table 1. 4 Tangible benefit

Benefits Price

5600
Cost reduction or avoidance
6778
Increased Speed of activity
6446
Increased reusability
6675
Error reduction
25,499
Total

Net cost benefit

Table 1. 5 Nnet benefit

Total benefits Total cost Net benefit


25,499 23,175 2324

The net benefit on the first year is 2324. So the new system is economically feasible.

1.7.4 Schedule feasibility

Schedule feasibility is determine how the proposed system accomplished with the given time
table. It implies effective time management for the system, and the project should finished within
deadline. So the team implemented and configured the system on time without any delay.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 15


Automation of Al-Jeezira Electronics shop

1.8 Project organization

The remains part of this project is organized as follow. Chapter 2 describes analysis of the
system. In this part requirement will be determined. Identifying the relevant and most decisional
variables, analyzing and synthesizing the various factors and determining an optimal or at least a
satisfactory solution are presented. And also includes description of the existing system, problem
of the existing system, functional and non-functional requirements, and proposed system.

Chapter 3 describes design of the system. In this part different element of a system such as the
architecture, modules and components, the different interfaces of these components and the data
that goes through the system are presented. In this chapter we described the diagrammatic that
show how the new system does in its implementation stage. Different UML diagrams used to
show the hardware and software architecture and run time such as deployment diagram,
component diagram included.

Chapter 4 describes the implementation and testing of the system. In this part the new system run
based on the layout specified in the design and requirements of analysis stage. And also the
system tested using different types of testing strategies like integration testing, unit testing and
test case is included.

The last chapter describes the conclusion and recommendation. In this part the system
generalized and the future work are described.

1.9 Communication plane

Communication plan describes the schedule of group member or the time of communication plan
to develop project. The group member met two days of each week-Tuesday and Friday. While
the member met on specified time at least communicate for 2 hours.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 16


Automation of Al-Jeezira Electronics shop

Table 1. 6 communication plan

Meeting Day

Team member Tuesday and Friday

Team member with advisor Thursday

1.10 Project schedule

Dec 2014 Jan 2015 Feb 2015 Mar 2015 Apr 2015 May 2015
ID Task Start Finish Duration
12/7 12/14 12/21 12/28 1/4 1/11 1/18 1/25 2/1 2/8 2/15 2/22 3/1 3/8 3/15 3/22 3/29 4/5 4/12 4/19 4/26 5/3 5/10 5/17 5/24

Proposal
1 12/1/2014 12/30/2014 4.3w

2 Requirement analysis 1/1/2015 1/30/2015 4.3w

3 Design 2/2/2015 3/3/2015 4.3w


Implementation
4 3/4/2015 5/14/2015 10.4w
Testing
5 5/15/2015 5/29/2015 2.2w

Figure 1. 1 Project schedule

1.11 Risk and contingency

There are risks that we distinguish and tackled. We identify the risk to protect our project from
going into hazards. The risks may be managed with our capacity or may not be managed in our
capacity. Some of the risks are listed below:

 Fluctuation of power
 Failure of computer

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 17


Automation of Al-Jeezira Electronics shop

CHAPTER 2 : ANALYSIS

2.1 Introduction

Software development life cycle encompasses the phases that a software developer goes through
when developing new software, it consists of five phases. Analysis is one of the phases its aim is
at building the analysis model, helps the developer refine and structure the functional
requirements.

In the previous chapter we described the background of the system, the problem of the current
system, scope of the system, and the feasibility of the system. In this chapter we will describe the
detailed overview of the current system, problem of the current system in detail, functional and
nonfunctional requirement of the system, business rules of the organization that helps to perform
their activity efficiently and effectively and analyzing the new system using different object-
oriented UML modeling diagrams such essential use case diagram, system use case diagram,
sequence diagram, class diagram, activity diagram and CRC.

2.2 Existing system

2.2.1 Describing the existing system


As the team observed physically the main activities or functions of the existing system, the shop
owner obtains the product from suppliers. He brought the product from Addis Ababa, but the
shop owner has no fixed suppliers, he buys by choosing best products with proper or balanced
price. So the inputs of the shop are items or products. In short the main activity takes places in
the shop are: First store manager register products when the products enter into store. After that
store manager arrange the product on catalog, the customer physically going to the shop and
contact to the sales person by visiting the products on catalog after that the customer select the
product and ask the price, the sales person tell the price of products if the customer agreed the
cost of products give the price. Similarly the sales person prepares receipt for the customer, and
customer receive the product and receipt after those activity the transaction end. As a result the
activity takes a lot of time from starting to the end especially the transaction takes more time
than the other activity. The customer become unsatisfied and the shop lost their customers. As
we observed when two or more customers served, first come they served first the last come they
served after waiting a lot of time, but the time difference between the two customer is very
small. So the system has a lot of drawbacks in terms of time saving, providing reliable
information, security and customer satisfaction.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 18


Automation of Al-Jeezira Electronics shop

2.2.2 Problem of the existing system


The current system has many problems, in addition to we described in the background and
statement of problem so far, which initiated the team to develop computerized system.

Performance

The existing system has low performance; it does not provide fast response. The duration that the
customer choose product, ask the price and sales person calculating the price of product, which
takes long time. Until the sale person search products the duration of time is large. It is tedious
and doesn’t provide customer satisfaction when the customers delay their services.

Security

In the current system there is no privilege for each employee such as when the sales person data
may be stolen by other employee, the sales person takes the risk. And also the sales person may
fraud the owner of the shop because the shop has no system that records the activities of the sales
person. One employee may access another employee document which means the system is
insecure. The receipt and document easily edit able and the employee can easily edit the
document. Besides security and performance the current system doesn’t give service for two or
more customers at the same time, limited number of customers, use more labor, delay customer
services and use manual transaction process-it takes a lot of time to process, working hours are
short-12 hours per day, and there is no written description on products for customer. Such
problems make the shop unprofitable.

Actors of the existing system


1. owner:
 Control the activities
 Plane and organize the shop
 Manage the employee
 Accept report
 Make decision about the price of items

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 19


Automation of Al-Jeezira Electronics shop

2. Sales person:
 Accept customers order
 show product for the customer
 check the availability of products
 tell the price of products
 give product to the customer
 Calculate the total bill
 Prepare receipt for customer
 Generate bill report for the owner

3. Customers:
 ask the availability of products
 order the products
 choose the products
 ask the price of products
 pay the price of products
 take the product and the receipt
4. Store manager:
 Control the products
 Arrange the products to the catalog

2.2.3 Supplementary requirements

2.2.3.1 Business rules

A business rule is effectively an operating principle or policy that your software must satisfy.
Business rules often focus on access control issue [6]. The organization has its own business
rules and regulation used to perform the work easily and efficiently.

Name: The sales person should give the receipt for customer in the form of hardcopy.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 20


Automation of Al-Jeezira Electronics shop

Identifier: BR1

Description: After the customer successfully ordered, sales person should print receipt and give
for customer. The receipt held by customer in the form of hardcopy and similarly the soft copy
is placed in the shop database. It helps later for purpose of security.

Name: The shop gives guarantee for one year based on the product.

Identifier: BR2

Description: when the customer buys product from the shop he or she has the right to get
guarantee at the same time the shop gives guarantee for customer. The shop does not give
guarantee after the specified period of time.

2.3 Alternative options to address the problems of existing system

After the team has identified the problem of the existing system, the teams suggest an alternative
solution to overcome the problem.

There are options:


 Changing the existing system into desktop application that works in desktop
environment.
 Changing the existing system into web based application that works in web based
environment

Desktop application used in single environment like in single office, and used by only one person
but, it is not used by two or more user at the same time. Like excel used by one person to record
and perform some action it is not used by another person at the same time. When the system has
two or more user-they use at the same time and the activity is to be stored in one server is
difficult to use desktop application. Desktop application used in single office like calculate
employee salary, record employee details in one office. Where as in web based application the
activity performed in different computer, but data stored in single server. The user of the system
in different place can perform their activity using the application at the same time their activity
stored in one database server. Desktop application is single user application. While in web based
it is multiple user application. In our case the shop has different user like sales person, store

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 21


Automation of Al-Jeezira Electronics shop

manager, owner and customer to perform their activity at the same time in different place it is
difficult to use desktop application. The flow of information in desktop application also limited.
Answer for the question why you do not use desktop application. In our system store manager
works in the store, sales person works in actual shop, owner also controls the activity of the
organization but they work for one organization. As a result there should have connection among
users to facilitate the activity. Therefore the owner can easily control the system and also the data
stored in one database. The team has analyzed all of the alternative options based on the ability
of performance, information flow and service to the customer, security and efficiency. This
analysis has enforced to select the web based system

2.4 New system

Web based application is one of the mechanisms to solve problems of some system. Anyone can
use the application anywhere, across the world. Web based application needs internet to work.
Anyone can communicate with each other in different place. They perform everything like
education, playing, shopping, banking and others in web based applications using internet. As a
result, we developed interactive and user friendly interface web based application that anyone
can use easily. The system has different users such as customer, owner of the shop, system
administrator, manager of the store and sales person. Each user has their own activity and
accesses rights. For example the store manager of the system can register product, update
product and delete product. By the same token the other users can perform their activity
efficiently and effectively. As we stated web based application needs internet connection.
Similarly our systems needs internet connection for someone buying products online and
perform some activity. In the user interface of system there will be accomplished with options to
find new product available and most purchased and customer satisfied products. Customer can
advantage this facility and buy the product faster. All products in the website will be highlighted
with image of the product. By click on add to cart button it will take you to directly to the cart
page, from where customer can purchased easily. The system has a lot of advantage namely
security, save time, availability and save energy.

Security: The system provides security for the user of the system such as customer and
employee. The customer and the employee has their own privilege, they are authenticated by

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 22


Automation of Al-Jeezira Electronics shop

user name and password. The user of the system in general their information and privacy is
protected. The system protects customer information from third party.

Save time: With just click of the mouse, you can purchase your shopping orders and instantly
move to other important things, which can save time.

Availability: The system open 24 hours, all services available any time. There is no time
division; customer of the system can buy products any time as they want.

2.4.1 Software requirement of the new system


This section consists of functional requirement, nonfunctional requirement, and the different
unified modeling language (UML) of object oriented methodology used to model the system.
And also includes identification of actor, identification of use case and identification of scenario.
The following are the functional and nonfunctional requirements of the system.

Functional requirements

Functional requirements try to focus on the intended behavior of the system or what the system
will do. Functional requirement is a requirement that satisfied the users to perform some kind of
function.

 The system allows to registering, to updating and to deleting product details.


 The system displays the product in different categories.
 The system allows to adding products into shopping cart similarly edit and remove
products from cart.
 The system allows view order.
 System allows to create, to delete and to update user account
 The system allows to generate different report
 The system allows to order products/items
 The system generate receipt when product sold
 The system helps to search different items / products
 The system shows current products in the store
 The system displays item rating, and it allows voting favorite items.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 23


Automation of Al-Jeezira Electronics shop

 The system allows to view report


 The system generate different reports
 The system allows the customer to see the image of the product in detail by maximizing
or minimizing the size of the image.
 The systems allows to view products using pagination

Nonfunctional requirements

Specifies how the system should behave and specify all the remaining requirements not covered
by the functional requirements. Describe user-visible aspects of the system that are not directly
related with the functional behavior of the system.

The following are nonfunctional expected from the new system


 Usability: The system has a simple graphical user interface that makes it user-
friendly. The user of the system can perform activity easily.
 Security: The system does not allow unauthorized person to access the system.
 Availability: All services and data in the system will be available any time for users.
 Error handling Exception: The system handles an error when the users enter
incorrect data.

Actor identification

During this activity, we identify the different types of users the system will support.

System Administrator: Has administrative privilege, he or she responsible for creating, deleting
user account.

Customer: Someone who gain services from the shop, order products.

Store manager: The user of the system, who has privilege of controls products in the store by
register, delete and update products.

Sales person: The user of the system, his or her activity is to view order and sell products.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 24


Automation of Al-Jeezira Electronics shop

Owner: A person who owns the organization and his work is to control the activity of the
system. Owner can view report and also see how the system currently performs their activity.

Use case identification

We identified the different use case that completely represents the system.

 View order: Allows the sales person to view ordered products when the customer
successfully ordered.
 Search product: Allows the customer to search the product to get detail information of the
product.
 Register Product: Allows the store manager to register products
 Delete Product: Allows the store manager delete product from store
 Update account: Allows the user of the system to update their account
 Update product: Allows the store manager to update product details.
 View report: Allows the owner to see the report, the day to day activity performed
 Place order: Allows the customer to order products, when they want to buy.
 Create account: Allows system administrator to create new account for the new user
 Log-in: Allows authorized user login into the system , the security mechanism to make the
system safety by using password and user name
 Delete Account: Allow the admin to delete user account
 Sell products: allow sales person to sell products, it means sales person to cancel order or
confirm order after that the sale person print receipt if the order is successful.

2.4.2 Essential use case diagram


An essential use case sometimes called a business use case is a simplified, abstract, generalized
use case that captures the intentions of a user in a technology and implementation independent
manner. [6]

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 25


Automation of Al-Jeezira Electronics shop

Figure 2. 1 Essential use case diagram

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 26


Automation of Al-Jeezira Electronics shop

2.4.3 System use case diagram

Figure 2. 2 System us case diagram

2.4.3.1 System use case documentation

Name: login

Use case id: UC 1

Participating actor(s): Sales person, system administrator, owner customer and store manager.

Description: Allows the member login into the system with their privilege page.

Pre-condition: The user should have account and user should open the home page.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 27


Automation of Al-Jeezira Electronics shop

Post condition: The user logged into the required page.

Basic course of action:

1. The user click login link


2. The system display login form
3. The user enters user name, select user type and password and submit[Alternative course 3: If
the user name and password is invalid and fields are missed]
4. The system display privilege page
5. The use case ends

Alternative course of action:

If the user name and password is invalid and fields are missed

3.1. The system display error message

3.2. The use case continuous at step 3 in the basic course of action.

Name: Create Account

Use case id: UC 2

Participating actor(s): System administrator

Description: Allows system administrator to create account for new users.

Pre-condition: System administrator must login into the system.

Post condition: The user will have account

Basic course of action:

1. The system administrator clicks create account link


2. The system display create account page with form
3. The system administrator enters the required input and submit [Alternative course 3: If the
required input is invalid and fields are missed]
4. The system record the account
5. The system display successful message
6. The use case ends

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 28


Automation of Al-Jeezira Electronics shop

Alternative course of action:

3. If the required input is invalid and fields are missed

3.1. The system display error message

3.3. The system continuous at step 3 in the basic course of action

Name: Register product

Use case id: UC3

Participating actor(s): Store manager

Description: Allows store manager record products details when new products need to be added
into store.

Pre-condition: Store manager must logged into the system

Post condition: Product registered in to the system

Basic course of action:

1. Store manager clicks register link


2. The system display product registration page with form
3. Store manager fills the page with required information and submit into the system
[Alternative Course 3:If the required input is invalid and fields are missed]
4. The system registers the record
5. The system display successful message
6. The use case ends

Alternative course of action:

If the required input is invalid and fields are missed

3.1 .The system display message

3.3. The system continuous at step 3 in the basic course of action

Name: Delete Product

Use case id: UC 4

Participating actor(s): Store manager

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 29


Automation of Al-Jeezira Electronics shop

Description: Allows the store manager to delete product

Pre-condition: The store manager must login into the system

Post condition: The product will be deleted from system

Basic course of action:

1. Store manager clicks delete product link


2. The system display delete search page with search form
3. The store manager enter product name he/she want to delete and click search link[alternative
course of action: If store manager entered invalid product name and product name doesn’t
exist ]
4. Store manager navigate and click delete link
5. The system display confirmation message
6. Store manager confirm the message[Alternative course of action 6: If store manager cancel
the message]
7. The system display deleted successfully message
8. The use case ends

Alternative course of action:

If store manager entered invalid product name and product not exist

3. The system display message

3.1The system continuous at step 3 in the basic course of action

If store manager cancel the message

6.1 The system continuous at step 4 in the basic course of action

Name: View order

Use case id: UC 5

Participating actor(s): Sales person

Description: Allows the sales person to view order for cancelation or confirmation

Pre-condition: The sales person must logged into the system

Post condition: The sales person make cancel or confirm the order

Basic course of action:

1. Sales person click view order link

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 30


Automation of Al-Jeezira Electronics shop

2. The system display search order page with customer data


3. Sales person enter customer id and submit[Alternate course of action 3: If the sales person
enter invalid data, missed the field and enter invalid customer id]
4. Sales person sees the ordered products or click cancel link
5. The system display confirmation message
6. Sales person confirm the message[Alternative course of action 6: If sales person cancel the
massage]
7. The use case ends

Alternative course of action:

If the sales person enter invalid data, missed the field and enter invalid customer id

3.1 The system display message

3.2 The system continuous at step 3 in the basic course of action

If sales person cancel the massage

6.1 The system continuous at step 4 in the basic course action

Name: Update product

Use case id: UC 6

Participating actor(s): Store manager

Description: It allows the store manager to update product details

Pre-condition: The store manager should logged into the system

Post condition: The products details modified

Basic course of action:

1. Store manager select update product link


2. The system display update product search page
3. Store manager enter the name of product he/she wants to update and click search
button[Alternative Course of action 3: If store manager enter invalid product name and
product name doesn’t exist]
4. The system display searched result product page
5. Store manager navigate and click update link
6. The system display selected product with field
7. Store manager fill product details and submit[Alternative Course 7:If details input are
invalid and fields are missed ]
8. The system displays successful message

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 31


Automation of Al-Jeezira Electronics shop

9. The use case ends

Alternative course of action:

If store manager enter invalid product name and product name doesn’t exist

3.1 The system display message

3.2 The system continuous at step 3 in the basic course of action

7.1 If details input are invalid and fields are missed

7.2 The system display message

7.3 Thesystem continuous at step 7 in the basic course of action

Name: Delete account

Use case id: UC 7

Participating actor(s): system administrator

Description: Allow system administrator to delete users account

Pre-condition: The system administrator should first login to the system

Post condition: The user will be deleted successfully from the system

Basic course of action:

1. System administrator click delete account link


2. The system display delete account search page with form
3. System administrator enter name of user and click search button[Alternative course of
action:3 If the system administrator enter invalid user name of user, user name doesn’t exist
and field is missed]
4. The system display users with details
5. System administrator navigate and click delete link
6. The system display confirmation message
7. System administrator confirm the message[Alternative course of action 7: If system
administrator cancel the message ]
8. The System display delete successfully
9. The use case ends

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 32


Automation of Al-Jeezira Electronics shop

Alternative course of action:

If the system administrator enter invalid name of user, user name doesn’t exist and field is
missed

3.1The system display message

3.2 The system continuous at step 3 in the basic course of action

If system administrator cancel the message

7.1 The system returns to step 5 in the basic course of action

Name: Update account

Use case id: UC 8

Participating actor(s): Customer, store manager, sales person, system administrator and owner

Description: Allows users to update their account

Pre-condition: The user should have current account and they must logged into the system

Post condition: Successfully update their account

Basic course of action:

1. User click update account link


2. The system display account update page with form
3. User enter the required information and submit[Alternative Course 3:If they enter invalid
current password, invalid email and missing field]
4. The system display successfully message
5. The use case ends

Alternative course of action:

3. If they enter invalid input and missing field

3.1. The system display message

3.3. The system continuous at step 3 in the basic course of action

Name: search product

Use case id: UC 9

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 33


Automation of Al-Jeezira Electronics shop

Participating actor(s): customer

Description: Allow Customers to search products

Pre-condition: Customer should logged into the system

Post condition: product will be displayed

Basic course of action:

1. Customer fill text box and click search button[Alternative course of action 1: If Customer
enter invalid product name, product name doesn’t exist and miss field ]
2. The system display the product details
3. The Customer see the details of product
4. The use case ends

Alternative course of action:

1. If Customer enter invalid product name, product name doesn’t exist and missed field
1.1The system display the product doesn’t exist or display message
1.2 The system continuous at step 1 in the basic course of action

Name: view report

Use case id: UC 10

Participant actor(s): owner

Description: Allows owner to view the report

Pre-condition: Owner must logged into the system

Post condition: Owner will view report

Basic course of action:

1. Owner click report link based on categories


2. The system display report list
3. Owner select criteria and submit
4. The system display or generate report
5. Owner view the report
6. The use case ends

Name: place order

Use case id: UC 11

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 34


Automation of Al-Jeezira Electronics shop

Participating actor(s): Customer

Description: Allows customer to order products

Pre-condition: Customer must logged into the system

Post condition: Will reserve product/s

Basic course of action:

1. Customer select product and click add to cart button


2. The system display cart
3. Customer click buy now button
4. The system display order form
5. The customer fill the required information and submit[ Alternative course of action 5: If
customer fill invalid data and the field is missed]
6. The system display successful message.
7. The use case ends
Alternative course of action:
If the customer insert invalid data and missing field
5.1 The system display an error message
5.2 The system continuous at step 5 in the basic course of action

Name: sell products

Use case id: UC12

Participating actor(s): Sales person

Description: allows sales person sell products

Pre-condition: Sales person must logged into the system and should perform UC 5

Post condition: products will be sold and receipt will be printed

Basic course of action:

1. Sales person click sell products link


2. The system display ordered products page with search form
3. Sales person view, enter customer id and submit[Alternative course of action 3: If sales
person enter invalid data and missed the field ]

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 35


Automation of Al-Jeezira Electronics shop

4. The system display customer’s detail


5. Sales person select and click print link
6. The system display confirmation message
7. Sales person confirm the message[Alternative course of action 7: If sales person cancel the
message ]
8. The system display receipt form
9. Sales person click print button
10. The use case ends
Alternative course of action:
If sales person enter invalid data and missed the field
3.1 The system display message
3.2 The system continuous at step 3 in the basic course of action
If sales person cancel the message
6.1 The system continuous at step 5 in the basic course of action

2.4.4 Key abstraction with CRC analysis


A Class Responsibility Collaborator (CRC) model is a collection of standard index cards that
have been divided into three sections, as depicted below. A class represents a collection of
similar objects, a responsibility is something that a class knows or does, and a collaborator is
another class that a class interacts with to fulfill its responsibilities. [6]

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 36


Automation of Al-Jeezira Electronics shop

CRC for user


Table 2. 1 CRC for user

User
Userid
firstName Product
lastName
userName
userType
houseNumber
kebela
wereda
phoneNumber
email
city
sex
password
createAccount
updateAccount
deleteAccount
login
registerProduct
deleteProduct
updateProduct
searchProduct
viewOrder
viewReport
sellProducts

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 37


Automation of Al-Jeezira Electronics shop

CRC for order


Table 2. 2 CRC for order

Order
orderId
customerId Customer
productid
Product
ProductName
quantity
price
totalPrice
OrderDate
Statues

CRC for product

Table 2. 3 CRC for product

Product
productId
name
type
category
description
manufactureCompany
manufactureDate
quantity
price
rating
hits
registerDate
picture

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 38


Automation of Al-Jeezira Electronics shop

CRC for customer


Table 2. 4 CRC for customer

Customer
customerId
firstName Product
lastName
houseNumber
kebela
wereda
phoneNumber
email
city
orderDate
totaleCost
statues
order

2.4.5 Sequence diagram


Sequence diagram is an interaction diagram that shows the objects participating in a particular
interaction and the messages they exchange arranged in a time sequence. Use a sequence
diagram to show the actors or objects participating in an interaction and the events they generate
arranged in a time sequence [4].

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 39


Automation of Al-Jeezira Electronics shop

Figure 2. 3 Sequence diagram for login use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 40


Automation of Al-Jeezira Electronics shop

Figure 2. 4 Sequence diagram for register product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 41


Automation of Al-Jeezira Electronics shop

Figure 2. 5 Sequence diagram for view report use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 42


Automation of Al-Jeezira Electronics shop

Figure 2. 6 Sequence diagram for order product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 43


Automation of Al-Jeezira Electronics shop

Figure 2. 7 Sequence diagram for update product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 44


Automation of Al-Jeezira Electronics shop

Figure 2. 8 Sequence diagram for search product use case

2.4.6 Activity diagram


Activity diagram emphasize the flow of control from activity to activity. An activity diagram is
used to display the sequence of activities. Activity diagrams show the workflow from a start
point to the finish point detailing the many decision paths that exist in the progression of events
contained in the activity.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 45


Automation of Al-Jeezira Electronics shop

Figure 2. 9 Activity diagram for login use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 46


Automation of Al-Jeezira Electronics shop

Figure 2. 10 Activity diagram for register product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 47


Automation of Al-Jeezira Electronics shop

Figure 2. 11 Activity diagram for view report use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 48


Automation of Al-Jeezira Electronics shop

Figure 2. 12 Activity diagram for update product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 49


Automation of Al-Jeezira Electronics shop

Figure 2. 13 Activity diagram for search product use case

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 50


Automation of Al-Jeezira Electronics shop

Figure 2. 14 Activity diagram for place order use case

2.4.7 Conceptual modeling: class diagram


Class models show the classes of the system, their inter-relationships (including inheritance,
aggregation, and association), and the operations and attributes of the classes [6]. The analysis
class model does not consider visibility and data type due to the lack of technical details.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 51


Automation of Al-Jeezira Electronics shop

Figure 2. 15 Conceptual lass diagram

2.4.8 User interface prototyping


User Interface Prototyping is an analysis iterative technique in which users are actively involved
in the mocking-up of the UI for the system. UI prototyping has two purposes: First, it is an

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 52


Automation of Al-Jeezira Electronics shop

analysis technique because it enables you to explore the problem space your system addresses.
Second, UI prototyping enables you to explore the solution space of your system, at least from
the point-of-view of its users, and provides a vehicle for you to communicate the possible UI
design(s) of your system [6].

Figure 2. 16 User interface prototyping for login

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 53


Automation of Al-Jeezira Electronics shop

Figure 2. 17 User interface prototyping for product register

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 54


Automation of Al-Jeezira Electronics shop

Figure 2. 18 User interface prototyping for create account

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 55


Automation of Al-Jeezira Electronics shop

Figure 2. 19 User interface prototyping for comment

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 56


Automation of Al-Jeezira Electronics shop

2.4.9 User interface flow diagram

Figure 2. 20 User interface flow diagram

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 57


Automation of Al-Jeezira Electronics shop

CHAPTER 3 : SYSTEM DESIGN

System design describes the internal structure of the system. But system analysis describe the
system from actor point of view and serves as the basis of communication between the client
and the developers, functional requirement, nonfunctional requirement of the system and the
different UML diagrams like sequence diagram which describes the logic scenario how the user
interact to the system interface . In system design how different system can build one system and
how different system decomposed. In system design the different UML diagram used such as
deployment diagram which show how the system will deployed on computers. In other words, it
shows which component of the software will install on which machine and how they
communicate with each other if they are on different machines, component diagram - shows how
objects (classes) in your system will grouped together and form components, persistence
modeling and others. During system design, we focus on the processes, data structures,
and software and hardware components necessary to implement it .

3.1 Purpose and goals of design

Systems design according to [12] is the process of defining the elements of a system such as the
architecture, modules and components, the different interfaces of those components and the data
that goes through that system. It is meant to satisfy specific needs and requirements of a business
or organization through the engineering of a coherent and well-running system. We select this
strategy for building the system, such as the hardware/software platform on which the system
will run the persistent data management strategy. The result of system design is a model that
includes a clear description of each of these strategies, subsystem decomposition, and a UML
deployment diagram representing the hardware/software mapping of the system. Based on the
nonfunctional requirements and the information elicited from the users, the following design
goals are identified.

Availability: All services and data in the system will be available any time for users.

Expandability: If someone wants to modify and dynamically developing the new system based
on the standard of our system , the detail design of the developed system leads to the desire
situation what will be added for the future.
Usability: The system has simple user friendly interface. It is simple to use the system.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 58


Automation of Al-Jeezira Electronics shop

Security: The systems disallow an unauthorized user that means authorized user can access the
system using password and user name.
Maintainability: The system is developed in modular approach. As a result our system is
maintainable.

3.2 Class modeling diagram

Class models show the classes of the system, their interrelationships (including inheritance,
aggregation, and association), and the operations and attributes of the classes. Class diagrams are
used for a wide variety of purposes, including both conceptual/domain modeling and detailed
structural design modeling.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 59


Automation of Al-Jeezira Electronics shop

Figure 3. 1 Class modeling diagram

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 60


Automation of Al-Jeezira Electronics shop

3.3 Current software architecture

The existing system of Al Jeezra electronics shop is manual system and hence there is no current
software architecture that will be considered. As a result, we only describe the software
architecture of the newly proposed system.

3.4 Proposed software architecture

The three tire architecture of the system is depicted in the figure 3.2 below. These are client tier,
middle tire and data tire. We chose the three tires because Separation of business logic from
application logic minimizes the work load of server and enhances the security of data.

Client tier: Client side may be customer, system administrator, owner, store manager, and sales
person. The first user is system administrator responsible for managing account. The second user
is store manager who is responsible to manage details of product by registering and updating.
Similarly the other three users have their own responsibility.

Middle tire: The middle tier will contain the core parts of the AE shopping application, i.e., the
web server and business logic.

Data tire: This contains the data base. It stores products detail, customer detail and account
detail

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 61


Automation of Al-Jeezira Electronics shop

Figure 3. 2 System architecture for the system

3.4.1 Subsystem decomposition


Subsystem diagram shows the service it provides or it accepts from other subsystems, and the
coupling and the coherence between them. We have the following subsystems, which extracted
from the functional requirement.
 Registration Subsystem
 Order Subsystem
 Report Sub system
 Administration sub system

3.4.2 Component diagram


Components are generally units of computation or data stores in the system. A component has a
name, which is generally chosen to represent the role of the component or the function it
performs. The different components of a system are likely to interact while the system is in
operation to provide the services expected of the system. After all, components exist to provide

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 62


Automation of Al-Jeezira Electronics shop

parts of the services and features of the system, and these must be combined to deliver the
overall system functionality.

Figure 3. 3 Component diagram

3.4.3 Deployment diagram


A deployment diagram models the run-time architecture of a system. It shows the configuration
of the hardware elements (nodes) and shows how software elements and artifacts are mapped
onto those nodes [13].UML deployment diagrams are used to depict the relationship among run-
time components and hardware nodes. Components are self-contained entities that provide
services to other components or actors. A Web server, for example, is a component that provides
services to Web browsers. A Web browser such as Netscape is a component that provides
services to a user. A distributed system can be composed of many interacting run-time
components. In UML deployment diagrams, nodes are represented by boxes containing
component icons. Dependencies between components are represented by dashed arrows

The purpose of deployment diagrams can be described as:

 Visualize hardware topology of a system.


 Describe the hardware components used to deploy software components.
 Describe runtime processing nodes.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 63


Automation of Al-Jeezira Electronics shop

Figure 3. 4 Deployment diagram

3.4.4 Persistence modeling for object oriented database


Relational databases do not completely support object-oriented concepts, so the design of the
database is different from the design of class diagram. Persistence models enable to design the
schema of the database.

Mapping
In order to store information persistently we map objects into tables and the attributes into fields
to the specific table based on the objects found on the system.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 64


Automation of Al-Jeezira Electronics shop

Figure 3. 5 Persistence modeling for object oriented database

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 65


Automation of Al-Jeezira Electronics shop

3.4.5 Access control and security


In the systems, different actors have access to different functionality and data. The system has
different users such as customer, system administrator, owner, store manager and sales person.

Customer: Represents an authenticated user. It is used by login subsystems to remember keys


such as the password and user name associated with the customer. And also he is responsible to
fill registration form, select, search products.

Store manager: Is an authenticate user who is responsible to fill product registration form,
update and delete products detail.

System administrator: Is an authenticate user. It is used by login subsystem. He or she is


responsible for create user account and delete account.

Sales person: An authenticate user. It is used by login subsystem. He or she is responsible to


view order and sell product.

Owner: An authenticate user. It is used by login subsystem. He or she is responsible to view


report.

3.4.6 Boundary conditions and exception handling

3.4.6.1 Boundary conditions


The System Administrator initiates the web server using the appropriate administrator account
that enables him/her to create, update his account and delete account. The store manager initiates
the web server using the appropriate account that enables him/her to register, update and delete
products. Sales person initiates the web server using the appropriate account that enables him/her
to view order and sell products. Owner initiates the web server using the appropriate account that
enables him/her to view report and also customer initiates the web server using the appropriate
account that enables him/her to order and search products. The system has different home page
in addition to the main home page boundary object like admin page, store manager page, owner
page, sales person page and customer page.

The System is Client–Server architecture and allows a remote access. The following are the
requirements:

Client side
 Internet connection should be available on the client side
 Web browser is demanding to connect with the web server of the system
 The user should be authorize and having an account

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 66


Automation of Al-Jeezira Electronics shop

 It should give the URL (Uniform Resource Locator) address of the web site.
 The Customer can get different service from viewing the available products
up to ordering.

Server side
 The system user initiates the system using their preferred privileges
 The server side should be registered on the local or any other service provider.
 It should have Internet connection and database driven-website for remote access.

3.4.6.2 Exception handling


 The system display message if the user enters incorrect input into different fields.
 The system display message if the customer enters large quantity that is greater than the
quantity of product in store.
 The customer can’t order products that are not available in the store.
 The system display message if the user tries to open privilege page using wrong
password, user type and user name.
 The system display message if system administrator register user with existing email and
user name.
 The system display message if the user tries to changes their password with invalid
current email address and invalid old password.

3.5 User-interface design

User Interface (UI) Design focuses on anticipating what users might need to do and ensuring that
the interface has elements that are easy to access, understand, and use to facilitate those
actions[5].The goal of user interface design is to make the user's interaction as simple and
efficient as possible, in terms of accomplishing user goals.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 67


Automation of Al-Jeezira Electronics shop

Figure 3. 6 User interface design for login

Figure 3. 7 User interface design for product registration

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 68


Automation of Al-Jeezira Electronics shop

Figure 3. 8 User interface design for create account

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 69


Automation of Al-Jeezira Electronics shop

Figure 3. 9 User interface design for comment

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 70


Automation of Al-Jeezira Electronics shop

CHAPTER 4 : SYSTEMIMPLMENTATION AND TESTING

4.1 System implementation

During implementation the physical operation turned into actual computer code. It
is the successful implementation of the new system design. The operation comes
from the system design and analysis should be converted into the actual computer
code.

4.1.1 Coding

Coding the first phase of implementation where the physical design specification
created by designer converted into computer code by the programmer. The team
used object oriented programming language-php for implementation.

Sample user interface


Our system contain different user interface. That enables users to perform their activity
effectively and efficiently. The interface designed based on user’s preference of colors, visibly
and suitability. Some of the interface such as customer home page, create account form, product
registration form, customer detail form, and so on are listed below.

Figure 4. 1 Customer home page UI

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 71


Automation of Al-Jeezira Electronics shop

Figure 4. 2 Search UI for product deletion

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 72


Automation of Al-Jeezira Electronics shop

Figure 4. 3 Create account UI

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 73


Automation of Al-Jeezira Electronics shop

Figure 4. 4 Customer order details UI

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 74


Automation of Al-Jeezira Electronics shop

Figure 4. 5 Product registration UI

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 75


Automation of Al-Jeezira Electronics shop

Figure 4. 6 System administrator update account UI

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 76


Automation of Al-Jeezira Electronics shop

Figure 4. 7 Customer shopping cart UI

4.2 Testing

It is the process of finding differences between the expected behavior specified by system
models and the observed behavior of the system. In this section the team used different types of
testing strategies to check the functionality of the system. All errors in the forms, functions,
modules have been tested. There are different types of testing strategies such as unit testing,
integration testing, system testing, user acceptance testing.

4.2.1 Unit testing


Each module is tested alone in an attempt to discover any errors in its code. In unit testing, each
module (roughly a section of code that performs a single function) is tested alone in an attempt to
discover any errors that may exist in the module’s code. We tested the system as shown below in
the annex 3.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 77


Automation of Al-Jeezira Electronics shop

4.2.2 Integration testing


The process of bringing together for testing purposes all of the modules that a program
comprises. Modules are typically integrated in a top-down, incremental fashion. If an error
occurs, the process stops, the error is identified and corrected, and the test is redone. The process
repeats until the entire program—all modules at all level is successfully integrated and tested
with no errors. After the team tested using unit testing the next step is integrating testing. In
integrated testing the team tested the system all modules that a program contains.

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 78


Automation of Al-Jeezira Electronics shop

CHAPTER 5 : CONCLUSION AND RECOMMENDATION

1.1 Conclusion

Al-Jeezira Electronics is one of the shop which is found in Dessie. It gives service for customer. But
the service is manually which is time consuming, the customer wait online when another customer
serves, the shop don’t give two or more customers at the same time, and difficult to manage products
easily. Difficult to hand customers warranty paper easily. Such problems make the shop unprofitable.
As a result the development of technology mainly internet that makes these complicated process to
simple and more comfortable. The team developed user friendly interface web site that solve the
problem. To develop this system we gathered the data, analysis the data based on the problem, design
the system and finally implement and tested the system. The system is simple and user friendly, any
user of the system can use easily. The system has different user interface and each user has
authentication page. The system has simple shopping cart application which helps the customer easily
add, remove and update their favorite products in one interface. The system has user interface for
system administrator, store manager, owner, customer, and sales person to perform their task. The
system has different functions such as register products, update products, delete products, creating user
account, and generate report, view report, item rating, viewing the product photo by either navigating
or maximizing/minimizing the size with mouse and sell product. The main aim of this project such as
minimizes the time required to perform task, minimize the work load of employees, provide sufficient
security, increase users satisfaction and increase working hour. As a result those aim successfully
solved. Finally the team expects the software will change the current problem of the Organization and
market it more profitable than the previous manual system.

1.2 Recommendation

The whole service is not done because of resources and knowledge. To perform successful work
for the organization the system needs additional applications. As a result we recommended for
futurity if anyone who has intention to develop this system the following will be the future work:

 Item recommendation
 Shipping
 Security issue the customer may does fake. To control this fake by linking the system
with bank or registering the customer respect to their kebela
 The order confirmation reach to the customer using short message service(SMS)

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 79


Automation of Al-Jeezira Electronics shop

 Using local language as user interface would be better for customer.


 Integrating different cards like visa, IBM, and payable
 Changing this web application to mobile application for customer use easily anywhere
using their phone
 Integrating the system with bank-payment performed using bank instead of using cash
transaction
 Adding products into wish list application
 Integrating chat application
 Advertisement, integrated with any website

References

[1].http://www.tutorialspoint.com/object_oriented_analysis_design/ooad_object_oriented_paradi
gm.htm on January 10, 2015

[2].http://www.lessons-from-history.com/.../functional...functi...on January 23, 2015

[3].https://mytechnicalarticles.files.wordpress.com/2011/03/object_oriented_methodologies_ppt.
pdf on January 25, 2015

[4].http://www.edrawsoft.com/uml-sequence.php on February 15, 2015

[5]. http://edutechwiki.unige.ch/en/User_interaction_and_user_interface_design on May 7, 2015


[6].Ambler, Scott W., Object Primer 2nd ed. Cambridge University Press, 2001

[7].https://xianfengmousrainbow.wordpress.com/09-fall-literature-review-assignment/one-
literature-review-sample-online-shopping/on march 14, 2015

[8].Diwakar, H., Marathe, M. (2000). The architecture of a one- stops web- window shop.
December, ACM SIGecom Exchanges, Volume 2 Issue 1.

[9].Kubilus, N. J. (2000). Designing an e- commerce site for users. September 2000, Crossroads,
Volume 7 Issue 1.

[10].Norman, D.A. The Design of Everyday Things. Doubleday, New York, 1994.

[11]. Wiley, Y. M. J. & Sons. (1997) Creating the Virtual Store: Taking Your Web Site from
Browsing to Buying.

[12] .http://www.techopedia.com/definition/29998/system-design on March 02, 2015

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 80


Automation of Al-Jeezira Electronics shop

[13]. http://www.sparxsystems.com/resources/uml2_tutorial/uml2_deploymentdiagram.html on
march 12, 2015

[14]. http://www.tutorialspoint.com/uml/uml_statechart_diagram.htm on May 17, 2015

Annexes

Annex 1.Documents used for data collection

Figure 5. 1 Questions interviewed from question 1-16

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 81


Automation of Al-Jeezira Electronics shop

Figure 5. 2 Questions interviewed from question 17-30

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 82


Automation of Al-Jeezira Electronics shop

Annex 2.Forms and relevant documents collected from the organization

Figure 5. 3 Warranty certificate

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 83


Automation of Al-Jeezira Electronics shop

Figure 5. 4 Receipt form

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 84


Automation of Al-Jeezira Electronics shop

Annex 3.Customer order sample code segment

<?php
include("includes/config.php");

include("includes/func.php");

if(isset($_POST['order'])){

//(isset($_REQUEST['command']) &&$_REQUEST['command']=='update'){

$fname=$_POST['fname'];

$lname=$_POST['lname'];

$city=$_POST['city'];

$wereda=$_POST['wereda'];

$kebel=$_POST['kebel'];

$house=$_POST['house'];

$phone=$_POST['phone'];

$email=$_POST['email'];

$totalprice_cost=$_POST['totalcost'];

$statuse='Accepted';

$printed='reserve';

$date=date('Y-m-d');

$pattern="/[\w\.]{6,}\@[a-zA_Z]{3,}\.[a-zA-Z\.]{2,}[^\.]$/";

//$pattern2="/[]/";

if(empty($_POST["fname"]) ||empty($_POST["lname"]) ||empty($_POST["wereda"])


||empty($_POST["city"]) ||empty($_POST["email"]) ||empty($_POST["house"])
||empty($_POST["phone"])){

$error='<h3 style="font-family:Times, serif;color:red;font-size:14px;">please,Fill the required


field</h3>' ;

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 85


Automation of Al-Jeezira Electronics shop

echo $error;

Header("location:/home/orderform.php?msg1=$error");

elseif(!preg_match($pattern,$email))

$error="Invalid email address please try enter again";

echo $error;

Header("location:/home/orderform.php?msg2=$error");

elseif(!is_numeric($_POST["phone"])){

$error="please,Fill only number the required field ";

echo $error;

Header("location:/home/orderform.php?msg3=$error");

elseif(is_numeric($_POST["fname"])||is_numeric($_POST["lname"])){

$error="please,Fill characteristic the required field ";

echo $error;

Header("location:/home/orderform.php?msg4=$error");

elseif(empty($_POST["kebel"]) ){

$error="please,Fill characteristic the required field ";

echo $error;

Header("location:/home/orderform.php?msg5=$error");

else{

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 86


Automation of Al-Jeezira Electronics shop

$con=mysql_connect("localhost","root","")or die ("unable to connect".mysql_error());

mysql_select_db("AES",$con);

$uname=$_SESSION['username'];

$sql="insert into customers


values('','$fname','$lname','$city','$wereda','$kebel','$house','$phone','$email','$totalprice_cost','$
date','$statuse','$printed','$uname')";

mysql_query($sql) or die("unable to insert".mysql_error());

?>

<center><table border="0">

<tr><td><strong>customer order confirmation message</strong></td>

<tr align ="center"><td>First Name :<?PHPecho$fname;?></tr>

<tr align ="center"><td>Last Name :<?PHPecho$lname;?></tr>

<tr align ="center"><td>Werda :<?PHPecho$wereda;?></tr>

<tr align ="center"><td>total cost:<?PHP echo$totalprice_cost;?> birr</tr>

<tr align ="center"><td>date :<?PHPecho$date;?></tr>

<tr align ="center"><td>you have successfully order the product </tr>

<tr align ="center"><td>Welcome again </tr><table></center>

<?PHP

$ord_customerid=mysql_insert_id();

//insert product to table

$max=count($_SESSION['cart']);

for($i=0;$i<$max;$i++){

$pid=$_SESSION['cart'][$i]['productid'];

$pname=get_product_name($pid);

$q=$_SESSION['cart'][$i]['qty'];

$price=get_price($pid);

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 87


Automation of Al-Jeezira Electronics shop

$total = get_price($pid)*$q+get_price($pid)*0.15;

$checked='reserve';

$prod="insertintoorder_detailvalues
('','$ord_customerid','$pid','$pname','$q','$price','$total','$date','$checked')";

mysql_query($prod) or die("unable to insert".mysql_error());

$quant="update products set quantity =quantity -$q where serial='$pid' ";

mysql_query($quant) or die("unable to insert".mysql_error());

mysql_close($con);

else

?>

<body class="body">

</form>

<?php

$c=mysql_connect("localhost","root","");

mysql_select_db("AES",$c);

$uname=$_SESSION['username'];

$query="SELECT * FROM userAccount WHERE Usern='$uname'";

$resource=mysql_query($query,$c);

$result=mysql_fetch_array($resource);

?>

<form action="orderform.php" method="POST" align="center" name="order" id="order">

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 88


Automation of Al-Jeezira Electronics shop

<input type="hidden" name="command"value="<?PHP

echo(isset($_SESSION['command']));?>" />

<div align="center">

<h1 align="center">Customer Details</h1>

<table cellspacing="0" cellpadding="6" width="800" border="0" align="center">

<td width="100"></td>

</tr>

<tr><td>Total Cost:</td><td><?php echo get_order_total()?> Birr </td></tr>

<tr>

<td></td>

<td><input type="hidden" name="lname" id="lname" value=""<?php echo $result[0] ?>">

<tr>

<td> First name*</td>

<td><input type="text" name="fname" id ="fname"value="<?php echo $result[1]


?>"/>&nbsp;<span id="errmsg1"></span></td><?php if(isset($_GET['msg4'])) echo
$_GET['msg4']?>

</tr>

<tr>

<td> Last name*</td>

<td><input type="text" name="lname" id="lname" value="<?php echo $result[2]


?>"/>&nbsp;<span id="errmsg2"></span></td><?php if(isset($_GET['msg4'])) echo
$_GET['msg4']?>

</tr><tr><tr><td>Wereda*</td>

<td><input type="text" name="wereda" id="wereda" value="<?php echo $result[11]


?>">&nbsp;<span id="errmsg3"></span></td>

</tr><tr>

<td> City*</td>

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 89


Automation of Al-Jeezira Electronics shop

<td><input type="text" name="city" id="city" value="<?php echo $result[12] ?>"


class="select"/>

<tr><td >Kebela*</td><td>

<input type="number" value="<?php echo $result[10] ?>" name="kebel" id="kebel"/>

</select></td><?php if(isset($_GET['msg5'])) echo $_GET['msg5']?></tr>

<tr>

<td>House number</td>

<td><input type="number" name="house" id="house"class="select" value="<?php echo


$result[8] ?>" /></td><?php if(isset($_GET['msg3'])) echo $_GET['msg3']?>

</tr>

<tr><td>Phone number*</td>

<td><input type="number" name="phone" id="phone" class="select" value="<?php echo


$result[7] ?>"/></td><?php if(isset($_GET['msg3'])) echo $_GET['msg3']?>

</tr>

<tr><td> Email*</td>

<td><input type="email" name="email" class="select" value="<?php echo $result[5]


?>"/></td><?php if(isset($_GET['msg2'])) echo $_GET['msg2']?>

</tr>

<tr><td></td><td><input type="hidden" name="totalcost" value="<?php echo


get_order_total()?>"></td></tr>

<tr><td ><center><input type="submit" name="order" Value="Submit"></center></td>

<td><?php if(isset($_GET['no'])) echo $_GET['no']?></td></tr>

<tr><td><td><?php if(isset($_GET['enough'])) echo $_GET['enough']?>

<?php if(isset($_GET['msg'])) echo $_GET['msg']?><?php if(isset($_GET['msg1'])) echo


$_GET['msg1']?></td></tr>

</table></form>

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 90


Automation of Al-Jeezira Electronics shop

</body>

</div></div></div></div>

<?php } ?>

</td></tr></table>

<?php

//include("header/footer.php");

?>

Annex 3. Unit testing


Test case: 1

Test Case ID = TestCase01

Unit to Test = Registration of Products

Assumptions = Congratulations!

Test Data = productName (invalid FirstName, Valid FirstName, empty)


Description (invalid description, valid description, empty)
quantity (invalid quantity, valid quantity, empty)
unit price (invalid price, valid price, empty)
category(empty)
Type (invalid type, valid type, empty)
manufacturecompany (invalid manufacturecompany, validmanufacturecompany, empty)
manfacuredate(invalid manfacuredate valid manfacuredate, empty)
picture(empty)

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 91


Automation of Al-Jeezira Electronics shop

Steps to be Executed Data Expected result

Empty ProductName and all others filled and Any valid data for the other fields ―Error: Product Name can’t be
Click submit button empty‖

Invalid ProductName and Click submit button ProductName=#dell computer ―Error: Product Name must
contain only alphabets‖

Enter valid ProductName, empty Description and Product Name= dell computer ―Error: descrption can not be
Click submit button empty‖
Any valid data for the other fields

EnterProduct Name, invalid Description and ProductName=dell computer "Error: Descrption must contain
Click submit button only alphabets, numbers and
Description= #quality underscore!"

Enter Valid ProductName Description, empty ProductName = dell computer "Error:quantity can’t be
quantity and Click submit button empty!"
Description = quality

Enter Valid ProductName , Description, invalid ProductName = dell computer "Error: quantity must contain
quantity and Click submit button only integer numbers!"
Description = quality
Quantity=#2

ProductName = dell computer "Error:type can’t be empty!"


Enter Valid ProductName, Description, quantity, Description = quality
empty type and Click submit button
Quantity=2

Enter Valid ProductName, Description, quantity, ProductName = dell computer "Error: type must contain only
invalid type and Click submit button letters, numbers and
Description = quality underscores!"
Quantity=2
Type=$t10

Enter Valid ProductName Description, quantity, ProductName = dell computer "Error:unit price can’t be
type, empty price and Click submit button empty!"
Description = quality
Quantity=2
Type=t10

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 92


Automation of Al-Jeezira Electronics shop

Enter Valid ProductName Description, quantity, ProductName = dell computer "Error: price must contain only
type, invalid price and Click submit button numbers!"
Description = quality
Quantity=2
Type=t10
price=#7000

Enter Valid ProductName Description, quantity, ProductName = dell computer "Error: category can’t be empty
type, price, empty category and Click submit !"
button Description = quality
Quantity=2
Type=t10
price=7000

Enter Valid ProductName Description, quantity, ProductName = dell computer "Error:manufacture company
type,unit price, category, empty manufacture can’t be empty!"
company and Click submit button Description = quality
Quantity=2
Type=t10
Price=7000
Category=computer

Enter Valid ProductName Description, quantity, ProductName = dell computer "Error: Manufacture company
type, unit price, category, invalid manufacture must contain only letters,
company and Click submit button Description = quality numbers and underscores!"
Quantity=2
Type=t10
Price=7000
Category=computer
Manufacture
company=#Microsoft

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 93


Automation of Al-Jeezira Electronics shop

Enter Valid ProductName Description, quantity, ProductName = hp computer "Error:manufacture date can’t
type, unit price, category, manufacture company, be empty!"
empty manufacture date and Click submit button Description = quality
Quantity=2
Type=t10
Price=7000
Category=computer
Manufacture company=Microsoft

Enter Valid ProductName Description, quantity, ProductName = hp computer "Error:manufacture date must
type, unit price, category, manufacture company, be mm/dd/yyyy format!"
invalid manufacture date and Click submit button Description = quality
Quantity=2
Type=t10
Price=7000
Category=computer
Manufacture company=Microsoft
Manufacture date=04/07/15

Enter Valid ProductName Description, quantity, ProductName = hp computer "Error:picture can’t be empty!"
type,unit price, category, manufacture company,
manufacture date, empty picture and Click submit Description = quality
button
Quantity=2
Type=t10
Price=7000
Category=computer
Manufacture company=Microsoft
Manufacture date=04/07/2015

Test Case ID = TestCase02

Unit to Test = Registration of user detail

Assumptions = Congratulations!

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 94


Automation of Al-Jeezira Electronics shop

Test Data = FirstName (invalid FirstName, Valid FirstName, empty)


LastName(invalid lastName, valid lastName empty)
userType(empty)
UserName (valid userName, empty, invalid username, occupied userName)
Email(invalid Email, valid Email, empty)
Password (invalid password, valid password, empty, minimum length)
ConfirmPassword (didn’t match with password,valid password)
wereda (invalid wereda, valid wereda, empty)
kebela (invalid kebela, valid kebela, empty)
houseNumber (invalid houseNumber, valid houseNumber, empty)
PhoneNumber(invalid PhoneNumber, valid PhoneNumber date, empty)
Sex(empty)

Steps to be Executed Data Expected Result

Empty FirstName and all others filled and Click Any valid data for the other ―Error: First name can’t be empty‖
create button fields

Invalid FirstName and Click create button FirstName=#Betselot ―Error: First Name must contain only
letters and underscores!‖

Enter valid FirstName, empty LastName and FirstName= Betselot ―Error: last name can not be empty‖
Click create button
Any valid data for the other
fields

Enter FirstName, invalid LastName and Click FirstName=Betselot "Error: Last Nmae must contain only
create button letters, numbers and underscores!"
LastName= #Yewulu

Enter Valid FirsfNameLastName, empty First Name = Betselot "Error: userType can’t be empty!"
userType and Click create button
LastName = Yewulu

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 95


Automation of Al-Jeezira Electronics shop

Enter Valid FirsfNameLastName, userType First Name = Betselot "Error: userName can’t be empty!"
empty userName and Click create button
LastName = Yewulu
userType=storemanager

Enter Valid FirstName and First Name = Betselot "Error: UserName must contain only
LastName,userType,invaliduserName and Click letters, numbers,dot and
create button LastName = Yewulu underscores!"
userType=storemanager
userName=#betselot.yewul
u

Enter ValidFirstName and LastName, userType ―Error: user Name must be uniqe!‖
occupieduserName and Click create button

Enter Valid FirstName and First Name = Betselot "Error:Email can’t be empty!"
LastName,userTypeUserName,empty email and
Click create button LastName = Yewulu
userType=storemanager
userName=btselot.yewulu

Enter Valid FirstName and First Name = Betselot ―Error: Email must containdot and @
LastName,userType,userName,invalid email and symbol the rest will be any
Click create button LastName = Yewulu character!‖
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulugmail.com

Enter Valid FirstName and ―Error: Email is already exist please


LastName,userType,userName, occupied email try again!‖
and Click create button

Enter Valid FirstName and First Name = Betselot "Error:password can’t be empty!"
LastName,userType,userName, email,empty
password and Click create button LastName = Yewulu
userType=storemanager

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 96


Automation of Al-Jeezira Electronics shop

userName=btselot.yewulu
email=
btselot.yewulu@gmail.com

Enter Valid FirstName and First Name = Betselot "Error: Password must contain at
LastName,userType,userName, email, minimum least seven characters!"
password and Click create button LastName = Yewulu
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com

Enter Valid FirstName and First Name = Betselot ―Error:confirmtion password can’t
LastName,userType,userName, email,password be empty!‖
empty confirm password and Click create button LastName = Yewulu
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567

Enter Valid FirstName and First Name = Betselot "Error: Please check that you've
LastName,userType,userName, email,password entered and confirmed your
but not valid confirm password and Click create LastName = Yewulu password!"
button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=1234567

Enter Valid FirstName and First Name = Betselot "Error: city can not be empty!"
LastName,userType,userName, email,password
valid confirm password empty city and Click LastName = Yewulu
create button
userType=storemanager
userName=btselot.yewulu

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 97


Automation of Al-Jeezira Electronics shop

email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7

Enter Valid FirstName and First Name = Betselot "Error:city must contain only letters,
LastName,userType,userName, email,password numbersand underscores!"
valid confirm password invalid city and Click LastName = Yewulu
create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
city=#kombolcha

Enter Valid FirstName and First Name = Betselot ―Error: Wereda Can not be empty!‖
LastName,userType,userName, email,password
valid confirm password, city, empty wereda and LastName = Yewulu
Click create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
city=kombolcha

Enter Valid FirstName and First Name = Betselot "Error:Wereda must contain only
LastName,userType,userName, email,password letters, numbersand underscores!"
valid confirm password, city, invalid wereda and LastName = Yewulu
Click create button
userType=storemanager
userName=btselot.yewulu

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 98


Automation of Al-Jeezira Electronics shop

email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
city=kombolcha
wereda=#kombolcha

Enter Valid FirstName and First Name = Betselot "Error: kebela can’t be empty!"
LastName,userType,userName, email,password
valid confirm password valid wereda empty LastName = Yewulu
kebela and Click create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
wereda=kombolcha

Enter Valid FirstName and First Name = Betselot ―Error: kebela must contain only
LastName,userType,userName, email,password number, letters and underscore and /
valid confirm password valid wereda invalid LastName = Yewulu symbole!‖
kebela and Click create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
wereda=kombolcha
kebela=gh456#

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 99


Automation of Al-Jeezira Electronics shop

Enter Valid FirstName and First Name = Betselot ―Error:house number can not be
LastName,userType,userName, email,password empty!‖
valid confirm password valid wereda valid kebela LastName = Yewulu
empty houseNumber and Click create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
wereda=kombolcha
kebela=06

Enter Valid FirstName and First Name = Betselot ―Error:house number must contain
LastName,userType,userName, email,password only number, letters, underscore and
valid confirm password valid wereda valid kebela LastName = Yewulu / symbole!‖
invalid houseNumber and Click create button
userType=storemanager
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
wereda=kombolcha
kebela=06
houseNumber=5yut7

Enter Valid FirstName and First Name = Betselot ―Error:Phone number can not be
LastName,usertype,userName, email,password empty!‖
valid confirm password, valid wereda, valid LastName = Yewulu
kebela, valid houseNumber ,empty phoneNumber
userType=storemanager
and Click create button
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 100
Automation of Al-Jeezira Electronics shop

password= b1234567
confirmPassword=b123456
7
wereda=kombolcha
kebela=06
houseNumber=788

Enter Valid FirstName and First Name = Betselot ―Error:Phone number must contain
LastName,userType,userName, email,password only number and + symbol!‖
valid confirm password,validwereda, valid kebela, LastName = Yewulu
valid houseNumber, invalid phoneNumber and
userType=storemanager
Click create button
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7
wereda=kombolcha
kebela=06
houseNumber=788
phoneNumber=@09226039
17

Enter Valid FirstName and First Name = Betselot ―Error:sex can not be empty!‖
LastName,userType,userName, email,password
valid confirm password,validwereda, valid kebela, LastName = Yewulu
valid houseNumber, valid phoneNumber,empty
userType=storemanager
sex and Click create button
userName=btselot.yewulu
email=
btselot.yewulu@gmail.com
password= b1234567
confirmPassword=b123456
7

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 101
Automation of Al-Jeezira Electronics shop

wereda=kombolcha
kebela=06
houseNumber=788
phoneNumber=0922603917

All fields with valid data and Click submit button All fields with valid data Display congradulation messsage

Test case :3

Test Case ID = TestCase03

Unit to Test = Registration of customer detail

Assumptions = Congratulations!

Test Data = FirstName (invalid FirstName, Valid FirstName, empty)


LastName(invalid lastName, valid lastName, empty)
wereda (invalid wereda, valid wereda, empty)
city (invalid city,valid city, empty)
kebela (invalid kebela, valid kebela, empty)
houseNumber (invalid houseNumber, valid houseNumber, empty)
PhoneNumber(invalid PhoneNumber, valid PhoneNumber, empty)
Email(invalid Email, valid Email, empty)

Steps to be Executed Data Expected Result

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 102
Automation of Al-Jeezira Electronics shop

Empty FirstName and all others filled and Any valid data for the other ―Error: First Name can’t be empty‖
Click submit button fields

Invalid FirstName and Click submit button FirstName=#Betselot ―Error: First Name must contain only
letters, numbers and underscores!‖

Enter valid FirstName, empty LastName and FirstName= Betselot ―Error: Last name can not be empty‖
Click submit button
Any valid data for the other
fields

Enter FirstName, invalid LastName and Click FirstName=Betselot "Error: Last Nmae must contain only
order button letters, numbers and underscores!"
LastName= #Yewulu

Enter Valid ProductName Description, empty First Name = Betselot "Error: wereda can’t be empty!"
wereda and Click submit button
LastName = Yewulu

Enter Valid FirstName and LastName, invalid First Name = Betselot "Error: Wereda must contain only
wereda and Click submit button letters, numbers and underscores!"
LastName = Yewulu
wereda=#Kombolcha

First Name = Betselot "Error:city can’t be empty!"


Enter Valid FirstName and LastName,wereda, LastName = Yewulu
empty city and Click submit button
wereda=Kombolcha

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error: city must contain only letters,
invalid city and Click submit button numbers and underscores!"
LastName = Yewulu
wereda=kombolcha
city=@Kombolcha

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error:kebela can’t be empty!"
city, empty kebela and Click submit button
LastName = Yewulu
wereda=kombolcha
city=Kombolcha

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 103
Automation of Al-Jeezira Electronics shop

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error: kebela must contain only
city, invalid kebela and Click submit button letters, numbers, / symbol and
LastName = Yewulu underscores!"
wereda=kombolcha
city=Kombolcha
kebela=56#ghj

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error:house number can’t be
city, kebela empty houseNumber and Click empty!"
order button LastName = Yewulu
wereda=kombolcha
city=Kombolcha
kebela=56

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error:house number must contain
city, kebela invalid houseNumber and Click only number!"
submit button LastName = Yewulu
wereda=kombolcha
city=Kombolcha
kebela=56
houseNumber=67hj

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error:phoneNumber can’t be
city, kebelahouseNumber, empty empty!"
phoneNumber and Click submit button LastName = Yewulu
wereda=kombolcha
city=Kombolcha
kebela=56
houseNumber=67

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error:phone number must be
city, kebelahouseNumber, invalid number and plus sign infront of
phoneNumberand Click submit button LastName = Yewulu contry code!"
wereda=kombolcha
city=Kombolcha
kebela=56

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 104
Automation of Al-Jeezira Electronics shop

houseNumber=67
phoneNumber=@0922603917

Enter Valid FirstName and LastName,wereda, First Name = Betselot "Error: Email can’t be empty!"
city, kebelahouseNumber, phoneNumber,
empty Email and Click submit button LastName = Yewulu
wereda=kombolcha
city=Kombolcha
kebela=56
houseNumber=67
phoneNumber=0922603917

Enter Valid FirstName and LastName,wereda, First Name = Betselot ―Error: Email must contain only
city, kebelahouseNumber, phoneNumber, letters, numbers, underscores,
invalid Email and Click submit button LastName = Yewulu dot,other punctuation in the
example@gmail.com!‖
wereda=kombolcha
city=Kombolcha
kebela=56
houseNumber=67
phoneNumber=0922603917
Email=betselot@gmailcom

All fields with valid data and Click submit All fields with valid data Display congradulation messsage
button

WOLLO UNIVERSTY, KIOT, COLLEGE OF INFORMATICS, DEPARTMENT OF COMPUTER SCIENCE Page 105

You might also like