Umm Al-Qura University
Faculty of Computer Science and Information Systems
Computer Science Department
research project
ANDROID APPLICATION FOR MUNICIPAL VIOLATIONS USING QR
Prepared by
Zaher Hamed ALgharibi ID#: 43002597
Ahmed Bakhit Al-Zahrani ID#: 43002670
Mohammed Ibrahim alsaheel ID#:43000909
Mohammed abduallh sindi ID#:43002626
Mohammed omar alkasaem ID#:433013533
Supervised by
Dr. Othman AhmAd Al-Qawy Muhammad
octobeR 2014
Copyright © 2014 UMM AL-QURA UNIVERSITY, All rights are reserved
Intellectual Property Right Declaration
This is to declare that the work under the supervision of Dr. Othman Ahmed al-qawy having title “ANDROID APPLICATION FOR MUNICIPAL VIOLATIONS USING QR” carried out in partial fulfillment of the requirements of Bachelor of Science in Computer Science is the sole property of the Umm Al Qura University and the respective supervisor and is protected under the intellectual property right laws and conventions. It can only be considered/ used for purposes like extension for further enhancement, product development, adoption for commercial/organizational usage, etc., with the permission of the University and respective supervisor.
This above statement applies to all students and faculty members.
Date:
Zaher Hamed ALgharibi
Ahmed Bakhit Al-Zahrani
Mohammed Ibrahim alsaheel
Mohammed abduallh sindi
Mohammed omar alkasaem
Anti-Plagiarism Declaration
This is to declare that the above publication produced under the supervision of
Dr. Othman Ahmed al-qawy Muhammad having title “
ANDROID APPLICATION FOR MUNICIPAL VIOLATIONS USING QR ” is the sole contribution of the authors and no part hereof has been reproduced illegally (cut and paste) which can be considered as Plagiarism. All referenced parts have been used to argue the idea and have been cited properly. I/We will be responsible and liable for any consequence if violation of this declaration is proven.
Date:
Zaher Hamed ALgharibi
Ahmed Bakhit Al-Zahrani
Mohammed Ibrahim alsaheel
Mohammed abduallh sindi
Mohammed omar alkasaem
ACKNOWLEDGMENTS
In the name of Allah, The Compassionate, The Merciful. We would like first to thank Allah the Almighty and praise him for rightly guiding us and providing us with health and power to complete this work. My sincerest and wholehearted thanks and appreciation are also extended to:
My father who taught me that great works are completed only through patience, determination and persistence, my mother whose prayers were the source of success. I dedicate this work to all the people who contributed to my upbringing and education, and those who provided me with help and support during the completion of my project.
Our sincerest thanks and appreciation are extended to Dr. Othman Ahmed al-qawy Muhammad our project supervisor, for all the invaluable information he provided us with, and for his guidance which – with the help of Allah, enabled us to overcome all difficulties and to complete our project.
We would like also to thank all faculty members at the Computer Science Department for the information and guidance they provided us with while we were working on our project.
Our thanks and appreciations are also extended to Umm Al-Qura University for providing us with support and facilities to complete our work.
Finally, we ask Allah the Almighty to grant success and happiness.
ABSTRACT
We note in our country, a large number of commercial establishments such as (restaurants, markets, bakeries, etc...)Which are difficult to counting and knowing its places, and become the follow-up of these shops in the normal way through visits and contacts is too expensive and worth useful.
So we will develop an application that will enable the municipal employees to track and follow-up the citizens' complaints about the cleanliness of shops, restaurants and the safety of food and other irregularities, with the possibility of attaching images to increase the truthfulness of the complaint.
We also will use the quick response QR code to be all code related to a particular store, and when the municipal employees visit this store they can add offense to the store without having to write the violation using paper and possibility loss of data.
This code also enable citizens through scan it to enter the store page and rated directly.
Table of Content
Intellectual Property Right Declaration 2
Anti-Plagiarism Declaration 3
Acknowledgments 4
Abstract 5
Table of Contents 6
List of Figures 8
List of Tables 9
Chapter one: an introduction 10
1.1. Background 11
1.1.1. Introduction 11
1.1.2 Overview of Quick Response Code 11
1.1.3 Overview of Android 13
1.2 Problem Statement 14
1.3 Problem Solution 15
1.4 Project Scope 15
1.5 Report organization 16
Chapter two: Requirement Specification 12
2.1 Introduction 18
2.2 Project Stakeholders 18
2.3 Requirements 19
2.3.1 Functional requirement 19
2.3.2 Non-functional requirement 20
2.4 Platform Requirement 22
2.4.1 Hardware 22
2.4.2 Software 22
2.4.2.1 Operating System 22
2.4.2.2 Software Used to Prepare the Document 22
2.4.2.3 Software Used to Build/Develop our System 23
2.5 User profile 24
2.5.1 User Categories 24
2.5.2 Sample Specifications 24
2.5.3 User Characteristics 24
2.5.4 Environment 24
2.6 Methodology 25
2.7 Project Plan 28
2.7.1 Purpose of Plan 28
2.7.2 The Gantt Chart 28
CHAPTER THREE System analysis 29
3.1 Introduction 30
3.2 Data Collocation 30
3.2.1 Questionnaire Results 30
3.3 Use Case 30
3.3.1 Use Case modeling 34
3.3.2 Use Case Description 35
3.4 Class Diagram 37
3.5 Activity diagram 38
3.6 Sequence Diagram 41
3.7 Data Flow Diagram 43
3.8.1. Notation 43
3.8.2. Context Diagram 46
3.8.3. Level0 47
3.8.4. Level1 48
References 49
List of Figures
Figure (2, 1) Waterfall model 25
Figure (2, 2) the Gantt chart 28
Figure (3, 1) Pie chart for using smartphone OS 31
Figure (3, 2) Pie chart for Warning violator 31
Figure (3, 3) Pie chart for Best way Evaluation 32
Figure (3, 4) Pie chart for app can help municipality 32
Figure (3, 5) Use Case Diagram 34
Figure (3, 6) Class Diagram 37
Figure (3, 7) Violation Activity diagram 38
Figure (3, 8) Compliant Activity diagram 39
Figure (3, 9) Voting Activity diagram 40
Figure (3, 10) Violation Sequence diagram 41
Figure (3, 11) Voting Sequence diagram 42
Figure (3, 12) Context Diagram 46
Figure (3, 13) DFD-Level0 47
Figure (3, 14) DFD- Level1 48
List of Tables:
Table (1, 1): Historical Timeline for QR Code 12
Table (1, 2): Historical Timeline for Android 14
Table (3, 1) Add Store 35
Table (3, 2) Add owner Store 35
Table (3, 3) Add Employee 36
Table (3, 4) Add Violation 36
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
CHAPTER ONE
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
INTRODUCTION
-
Background
So we will develop an application that will enable the municipal employees to track and follow-up the citizens' complaints about the cleanliness of shops, restaurants and the safety of food and other irregularities, with the possibility of attaching images to increase the truthfulness of the complaint.
We also will use the quick response QR code to be all code related to a particular store, and when the municipal employees visit this store they can add offense to the store without having to write the violation using paper and possibility loss of data.
This code also enable citizens through scan it to enter the store page and rated directly.
-
Overview:
-
Overview of Quick Response Code:
Quick Response Code (QR Code) is one of the most common types of 2D barcode used today. QR codes contain of a shape of black squares with a white background. QR Code technology has made great progress in the area of efficient storing of a variety encrypted (coded) information. The codes can be easily used, and the information needed can be quickly retrieved. It is believed that it will spread all over the world everyday use over the next few years; however, not everyone is known about QR codes. Not everyone who sees a QR Code will know how to scan it with his mobile. Not everyone have a camera mobile and because many phones do not install a QR reader automatically. The summary below provides an idea of the timeline for the establishment of the code.
|
Quick Response Code: Historical Timeline
|
1952
|
The first design for a barcode type device to Bernard Silver and Joseph Woodl. Was formerly basically for a barcode, Did not experience any kind of uses the former
|
|
|
1966
|
Barcode was used commercially for the first time, despite the lack of industry standards and that caused problems.
|
|
|
1970
|
Universal Grocery Products Identification Code (or UGPIC) was created to unite the industry. The monarch Marking company manufactured the first barcode reading equipment for retail
|
|
|
1973
|
In the years which followed, the PIC was transformed into the UPC code, Known to all in the present day.
|
|
|
1974
|
The first UPC scanner is installing and use in a supermarket in Ohio.
|
|
|
1981
|
The United States Department of Defence Starting from using the code to definition and delimitation of all items made for the military.
|
|
|
1986
|
Companies such as: FedEx starting from using barcode and handheld scanners to track packages.
|
|
|
1988
|
Intermec Corporation Built the first 2D barcode
|
|
|
1994
|
QR code is Innovation by the Denso Wave company for tracking cars.
|
|
|
2000
|
Release the first smartphone by Ericsson, the R380. The abilities are very limited than any smartphone seen today.
|
|
|
2001
|
The emergence of the first smartphone capable of surfing the Internet.
|
|
|
2010
|
First QR code scanner and reader applications are released for wide variety of smartphone OS in the US.
|
|
|
2011
|
QR codes Began taking great prominence in America thanks to some large company Announcements such as: Best Buy and Macy‟s.
|
|
Table (1, 1): Historical Timeline for QR Code
|
-
Overview of Android
Android is an open platform for mobile development. The first comprehensive platform for mobile devices, it includes an operating system, applications and user-interface. All of the software to run the mobile phone without the proprietary obstacles that has hindered mobile creativity. Android, this is important word in World of modern technology, today become the operating system pioneer and best on smartphone. Earlier there is no operating systems
existence in smart phones, as usual, there are symbian, and java featured operating systems but now the life is change was technology become as thing cannot reticence, especially smartphone that working on Android operating system. The Table below shows the entire history timeline for Android:
|
Android : Historical Timeline
|
2003
|
The Android found in palo Alto Inc, California, Rich Miner,
United State by Andy Rubin, Nick Sears and Chris white.
|
|
|
2005
|
Android Inc Been acquired by Google
|
|
|
2007
|
The open Handset Alliance, a collection of many companies has been formed.
Android beta SDK has been released.
|
|
|
2008
|
HTC (G1) device is the first Android, features Android 1.0.
|
|
|
2009
|
T- Mobile G1 is the only mobile where the android 1.1 were updated and released to it.
The update official 1.5 (Cupcake) for Android were released.
The 1.6 (Donut) SDK was released, Where was based on Linux Kernel 2.6.29
The 2.0 (Éclair) SDK was released , Where was based on Linux Kernel 2.6.29
The 2.0.1 SDK has been released.
|
|
|
2010
|
The 2.1 SDK has been released.
The 2.2 (Froyo) SDK Android was released, Where he was based on Linux Kernel 2.6.32.
The 2.3 (Gingerbread) SDK has been released.
|
|
|
2011
|
Linux Kernel 2.6.35, 2.3.3 has been released.
The 3.0 (Honeycomb) SDK was released for tablets
The 3.1 SDK was released.
At Google 1/0 (May 10-11, 2011), Ice Cream Sandwich was announced.
The 3.2 SDK has been released.
|
|
|
2012
|
The 4.1.x SDK has been released.
The 4.2.x SDK has been released.
|
|
|
2013
|
The 4.3 SDK has been released.
The 4.3 SDK has been released.
|
|
Table (1, 2): Historical Timeline for Android
|
-
Problem Statement
-
Inability to limit the violation stores and the inability to adjust it.
-
We can’t check if this shop had previously taken offense about the same violation or not.
-
Sometimes loss of papers and irregularities cause wasting a lot of time, effort and money.
-
Problem Solution:
In our search we will connect each store with a different code therefore; all the data will be assembled for each store independently and separately and scheduled in a database enables us to view a complete history for each store of stores by irregularities.
The use of citizens to scan the QR and assessment of any store will enable us to know what more shops and stores need to visit through state evaluation, also, the employees will add the violation of the store electronically with attaching a picture of the violation, which will reduce the waste of time, effort and money.
-
Project scope :
Our goal in this project is design an application for mart phones using QR which will enable municipal employee’s follow-up the stores and irregularities and follow-up the citizens’ complaints and get the state will be enable them to take appropriate action.
-
Report Organization
The project is organized through the two semesters in Six chapters the first phase implemented in the first term includes:
-
Chapter I introduces the project interpretation about problem definition, the recommended solution, aims, objectives, scope, methodology, plan and organization of the report.
-
Chapter II contains more details about the system requirements as Function and non-function and user profile
-
Chapter III analysis system which contain more detail using different tools such as review, questionnaires...etc., comparing between the current system and proposed system using data flow diagram (DFD), and structuring of the proposed system using DFD, use case model and class diagram, Sequence Diagram and Activity Diagram.
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
CHAPTER TWO
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Requirements Specification
-
-
Introduction
This chapter will act as requirements specification document of our project that describes in detail the requirements of the application. Section 2.2 the stakeholders of the project. Section 2.3 describes the functional requirements and nonfunctional requirements respectively. Section 2.4 includes the methodology. Section 2.5 includes the software requirement and hardware requirements. Section 2.6 includes the time frame and Gantt chart.
This document represents requirements analysis in an effort to define technical and business process requirements for our project. This chapter is written prior to detailed design and development of the application
-
Project Stakeholders
The stakeholder or the people that can be affected by the results of our project are:
-
Admin: people who will provide the system in the main information
-
Owner of Store: the person that owns the store and defined by our project
-
Employees: the person that track the store and supervisor on stores a defined area
-
Civilian's people: Local residents who live in a defined area and are interested evaluate shops and they have complaints offending shops.
-
Requirements
-
Functional requirement
The functional requirement defines a function of a system or its component
The Municipal Violations system functional requirements are:
-
The System can be store information about any shop.
-
The system can be store information about any Employee in municipality.
-
The system can be store information about any owner’s shop.
-
The system can be store information about voting.
-
The system can be store information about Evaluations.
-
The admin should be able to add new Shop.
-
The admin should be able to add new Owners ‘shop.
-
The admin should be able to add employee
-
The Civilian should be able to add new complaint.
-
The Civilian should be able to voting.
-
The Civilian should be able to show evaluation.
-
The employee should be able to add violation
-
The Employee should be able to follow-up violations.
-
The owners ‘shop should be able to view violation.
-
Non-functional requirement
The non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors
-
The system uses techniques wonderful symbol of QR and this enables us to identify the client correct and efficient manner
-
In addition to that he uses a GPS system; it will be very easy to locate each Shop.
-
The system will be available to all customers on their smart phones, where they will need to connect to the Internet to be able to connect to the Central server, Where the connection is possible through 3g and many other services
-
Our system will be secured in terms of using a unique username and password for each user, so the users of the system are authorize in categories. For example, only the administrator has the authored to modifying the database
-
Our system can be easy to maintain; because the implementation will done with object orient approach.
-
The system can be modified with the appearance of new needs.
-
Our system can be implemented; because the budget of the project is reasonable depend on QR Code, GPS system, android Device and a server for install the web application.
-
Using the same system in different environments
-
The website can be browsed on any web browsers at any operating systems.
-
We will publish the Android Application on the store for all users
-
The amount of useful work done by the system is increased compared with the time and resources used.
-
The System can be learned on a minimum training possible.
-
Platform Requirement
-
Hardware
Laptop / Desktop computer / Smart phone support Android
-
Software
-
Operating System:
Microsoft windows (Windows 7)
-
Software Used to Prepare the Document:
-
Microsoft office word 2010
Microsoft Word is a commercial word processor designed by Microsoft. It is used for writing the document the project.
-
Microsoft office PowerPoint 2010
PowerPoint is a presentation software program that is part of the Microsoft Office package. It uses a graphical approach to presentations in the form of slide shows that accompany the oral delivery of the topic. It is used for create presentation of the project.
Smart Draw is a visual processor used to create flowcharts, organization charts, mind maps,
project charts, and other visuals. Smart Draw is built exclusively for Windows operating systems and works with Windows 8, 7, Vista, XP, and 2000. Since version 7, it uses Microsoft’s Fluent User Interface in conjunction with automated panels specific to each type of diagram
-
Software Used to Build/Develop our System
-
Html:
Hypertext Markup Language (HTML) is the predominant markup language for web pages. HTML elements are the basic building-blocks of web pages.
-
Cascading Style Sheets (CSS):
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation semantics (the look and formatting) of a document written in a markup language. It’s most common application is to style web pages written in HTML and XHTML, but the language can also be applied to any kind of XML document, including plain XML, SVG and XUL.
-
JavaScript :
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles.
-
JSP:
JavaServer Pages (JSP) is a technology that helps software developers create dynamically generated web pages based on HTML, XML, or other document types. Released in 1999 by Sun Microsystems, JSP is similar to PHP, but it uses the Java programming language.
-
MySQL:
MySQL is a popular choice of database for use in web applications, and is a central component of the widely used LAMP open source web application software stack (and other 'AMP' stacks). LAMP is an acronym for "Linux, Apache, MySQL, Perl/PHP/Python." Free-software-open source projects that require a full-featured database management system often use MySQL.
-
NetBeans:
NetBeans is an integrated development environment (IDE) for developing primarily with Java, but also with other languages, in particular PHP, C/C++, and HTML5. It is also an application platform framework for Java desktop applications and others.
-
Eclipse:
In computer programming, Eclipse is a multi-language integrated development environment comprising a base workspace and an extensible plug-in system for customizing the environment. It is written mostly in Java.
-
User profile
-
User Categories
The users of android application can be any persons that visit the Shops and every people that working in Commercial fields
-
Sample Specifications
The questionnaires were disseminated to collect data from our country and many other places by the people who visit the shops continuously
-
User Characteristics:
From questionnaire it is concluded that approximately most of the people who shopped or suffer from some irregularities and are interested in some shops
-
Environment
Violations of municipal application android.
-
Methodology:
As this project aim to develop an android application for violations of municipality that contains many functions and stakeholders, the modeling methodology is the best way to create an understandable system.
-
Software Development Methodology:
Various generic software development life cycle methodologies are available for executing software development projects. Although each methodology is designed for a specific purpose and has its own advantages and disadvantages, most methodologies divide the life cycle into phases and share tasks across these phases.
The waterfall model is one of the earliest structured models for software development. It consists of the following sequential phases through which the development life cycle progresses:
Figure (2, 1) Waterfall model
In
this phase, you consider the various aspects of the targeted business process, find out which aspects are worth incorporating into a system, and evaluate various approaches to building the required software.
In this phase, you capture software requirements in such a way that they can be translated into actual use cases for the system. The requirements can derive from use cases, performance goals, target deployment, and so on.
In this phase, you identify the interacting components that make up the system. You define the exposed interfaces, the communication between the interfaces, key algorithms used, and the sequence of interaction. An architecture and design review is conducted at the end of this phase to ensure that the design conforms to the previously defined requirements.
In this phase, you write code for the modules that make up the system. You also review the code and individually test the functionality of each module.
-
Integration and system testing:
In this phase, you integrate all of the modules in the system and test them as a single system for all of the use cases, making sure that the modules meet the requirements.
-
Deployment and maintenance:
In this phase, you deploy the software system in the production environment. You then correct any errors that are identified in this phase, and add or modify functionality based on the updated requirements.
-
The waterfall model has the following advantages:
-
It allows you to compartmentalize the life cycle into various phases, which allows you to plan the resources and effort required through the development process.
-
It enforces testing in every stage in the form of reviews and unit testing. You conduct design reviews, code reviews, unit testing, and integration testing during the stages of the life cycle.
-
It allows you to set expectations for deliverables after each phase.
-
Project Plan:
-
Purpose of Plan
The project plan clarifies and defines the project mandate. It establishes the direction of the project and provides a basis for measuring project progress and performance. It details all the tasks which need to be done, and when. It also details the high level milestones which are key checkpoints on the project. Further it enables us to check our dependencies and resources to ensure we are able to work on the project.
-
The Gantt Chart
We expect to complete the project in time plan about fifty days spread over a range of stages and phases such as following:
Figure (2, 2) the Gantt chart
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
CHAPTER THREE
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
System analysis
-
-
-
Introduction:
The system analysis phase is one of the most important phases of the project lifecycle. It determines where the problem is in as an attempt to fix the system. This step involves breaking down the system in different pieces to analyze the situation, analyzing project goals, what needs to be created and attempting to engage users so that definite requirements can be defined.
This chapter explains the methods that have been used to gather the information that should be available to construct the system and analyze them to fix the system requirements.
-
Data Collocation
There are two methods were used to collect the required data for the Municipal Violations system. The first one is through disseminating questionnaires to study some important aspects before building Municipal Violations system. The second method is the collect medical information from experts.
The Data Collection Technique:
-
Reviewing all the documents that explain our system.
-
The questionnaire technique which helps us to clarified problems in the present system to solve it through our system.
-
The interview technique due to the ambiguity we had about the rules of Municipal Violations Companies
-
Questionnaire Results
In this part we show results of the questionnaire Fig 2.1 – Fig 4.8 as following:
Figure (3, 1) Pie chart for using smartphone OS
Figure (3, 2) Pie chart for Warning violator
Figure (3, 3) Pie chart for Best way Evaluation
Figure (3, 4) Pie chart for app can help municipality
-
Use Case
Use case components (Scott W, Amber. 2010):
-
A use case describes a sequence of actions that provide something of measurable value to an actor and is drawn as a horizontal ellipse.
An actor is a person, organization, or external system that plays a role in one or more interactions with the system
-
Use Case modeling:
Figure (3. 5) Use Case Diagram
-
Use Case Description
Use Case ID:
|
UC-01
|
Use Case Name:
|
Add Store
|
Scenario
|
When the admin add New Store
|
Triggering Event
|
Start process Management
|
Brief Description
|
When the admin add New Store
|
Actors
|
Admin
|
Related Use Case
|
Add owners
|
Stakeholders
|
Admin/ owner store/employee/ civilian
|
Preconditions
|
Store is not exist
|
Post-conditions
|
The Store is existing
|
Flow of Activities
|
Actor
|
System
|
- Open the website or android application
- open management process
- enter admin user name and password
- select new stores
- add detail of store.
Submit
|
| -
check user name and password
-
if username and password is okay confirm login.
-
check data entered if data is okay complete transaction
-
else alert message status
|
Table (3. 1) Add Store
Use Case ID:
|
UC-02
|
Use Case Name:
|
Add owner Store
|
Scenario
|
When the admin add New owner of Store
|
Triggering Event
|
Start process Management
|
Brief Description
|
When the admin add New owner of Store
|
Actors
|
Admin
|
Related Use Case
|
Add owners
|
Stakeholders
|
Admin/ owner store/employee/ civilian
|
Preconditions
|
Owner of Store is not exist
|
Post-conditions
|
The Owner of Store is existing
|
Flow of Activities
|
Actor
|
System
|
- Open the website or android application
- open management process
- enter admin user name and password
- select new owner stores
- add detail of owner store.
Submit
|
| -
check user name and password
-
if username and password is okay confirm login.
-
check data entered if data is okay complete transaction
-
else alert message status
|
Table (3. 2)
Add owner Store
Use Case ID:
|
UC-03
|
Use Case Name:
|
Add employee
|
Scenario
|
When the admin add New employee
|
Triggering Event
|
Start process Management
|
Brief Description
|
When the admin add New employee
|
Actors
|
Admin
|
Related Use Case
|
Add employee
|
Stakeholders
|
Admin/ owner store/employee/ civilian
|
Preconditions
|
employee is not exist
|
Post-conditions
|
The employee is existing
|
Flow of Activities
|
Actor
|
System
|
- Open the website or android application
- open management process
- enter admin user name and password
- select new Employee
- add detail of employee
Submit
|
| -
check user name and password
-
if username and password is okay confirm login.
-
check data entered if data is okay complete transaction
-
else alert message status
|
Use Case ID:
|
UC-04
|
Use Case Name:
|
Add violation
|
Scenario
|
When the employee add New violation
|
Triggering Event
|
Start process violation
|
Brief Description
|
When the employee add New violation
|
Actors
|
Employee
|
Related Use Case
|
|
Stakeholders
|
owner store/employee/ civilian
|
Preconditions
|
Violation is not exists
|
Post-conditions
|
The violation is existing
|
Flow of Activities
|
Actor
|
System
|
- Open the website or android application
- open violation process
- enter user name & password for employee
- select the shop
- add violation for this shop.
|
| -
check user name and password
-
if username and password is okay confirm login.
-
check data entered if data is okay complete transaction
-
else alert message status
|
Table (3. 3) Add Employee
Table (3.4) Add Violation
-
Class Diagram
In software engineering, a class diagram is describes the structure of a system with system's classes, their attributes, and the relationships between the classes or actions in the Unified Modeling Language (UML).
In the next figure (fig. 2.6 class diagram), a class defines the system objects, their relationships, variables and methods.
Figure (3. 6) Class Diagram
-
Activity diagram
Activity diagrams are used to describe the operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control.
We chose the most important operation of our system and demonstrated them with activity diagrams.
Figure (3.7) Violation Activity diagram
Figure (3. 8) Compliant Activity diagram
Figure (3. 9) Voting Activity diagram
-
Sequence Diagram
A sequence diagram is a kind of interaction diagram that shows how processes operate with one another and in which order. It is a construct of a Message Sequence Chart. It shows object interactions arranged in time sequence. It depicts the objects and classes involved in the scenario and the sequence of messages exchanged between the objects needed to carry out the functionality of the scenario. By the following sub sections we will show sequence diagrams for some operations of our system
Figure (3. 10) Violation Sequence diagram
Figure (3.11) Voting Sequence diagram
-
Data Flow Diagram
In general, the analysis stage translates broad requirements into detailed requirements. The analyst does this translation by going back to users to determine exactly what they do. Usually the analyst starts by documenting the processes using Data Flow Diagrams.
The final system consists of data files and programs that manipulate the data. The analyst has to identify the data that is used and the manipulations of that data that have to be embodied in programs.
The analysis stage is actually a learning process in which the analyst tries to gain an understanding of what the user does. The Data Flow Diagram is an intermediate product that allows the analyst and the user to communicate unambiguously.
We will discuss in this chapter the analysis stage under the following stages: Data Flow Diagram (DFD).
-
-
-
-
-
-
-
-
-
-
-
-
Notation
First, Data Flow Diagram is a logical model of the system; the model does not depend on hardware, software, data structure or file organization. It is a graphical picture of the logical system. It is an excellent tool for communication with user to explain the system for him. Data Flow diagram describes what happen not how is happens.
Data Flow diagrams have a notation for each of the components of a system. They also have a notation for representing different level in a hierarchy of detail used to describe the system. This notation makes it possible to represent an overall view of a large complex system and a detailed view of a part of a system using the same notation. Parts of a system can be isolated into independent subsystems. These work together as a unit to perform a set of processes that must be done together at one time. There is a standard process that an analyst can follow to make sure that all components of a system are identified.
We will describe in general the components of the DFD, then we will show the high level DFD.
Data Flow Diagrams have a notation for each of component of a system. They also have a notation for representing different levels in a hierarchy of detail used to describe the system. This notation makes it possible to represent an overall view of large complex system and a detailed view of part of a system using the same notation.
A data flow diagram consists of four basic elements:
-
External entities:
A terminator is an external source of information or an external sink for information. Terminators are named with a noun. All terminators must have at least one data flow entering or leaving the terminator. The terminator is symbolized by rectangle.
Source / Sink
-
Data stores:
Data stores (sometimes called files) store data for use at a later time, by another process, or in different place.
Data store
-
Processes:
The process box transforms one or more incoming data flows into one or more outgoing data flows. Each process must have a name, which should be an active verb. A process can be thought of a machine, or transformer, that transforms input data into output data. It may also record a history of all past input. This is a record of the history of the states of the machine. Each process has an identification number at the top of a process box. The number is used for cross-referencing to other documents and diagrams. The numbers are customarily consecutive integers. Several data flow methods have been developed and each one has a different set of symbols.
Process
-
Data Flow:
Data in motion, moving from one place in a system to another, The data flow arrow carries data in the direction of the arrow. The name of the data flow is showing above arrow. The arrow can carry data from a terminator or file to a process and from a process to a file, a terminator or another process. Data can’t flow directly between terminators,
between files, from a terminator to a file or from a file to terminators. They can be in any form, including forms, magnetic tapes, electronic signals, or a verbal messages.
The connect of the data flow can be any degree of details or aggregation. The detail contents of the flow are described in a data dictionary entry that references name of the data flow.
Data Flow
-
Context Diagram
A System Context Diagram (SCD) in software engineering and systems engineering is a diagram that defines the boundary between the system, or part of a system, and its environment, showing the entities that interact with it. This diagram is a high level view of a system, System context diagrams show a system, often software-based, as a whole and its inputs and outputs from/to external factors. System Context Diagram represent all external entities that may interact with a system., with no details of its interior structure, surrounded by all its interacting systems, environments and activities. The objective of the system context diagram is to focus attention on external factors and events that should be considered in developing a complete set of systems requirements and constraints. System Context Diagrams are used early in a project to get agreement on the scope under investigation.
Figure (3, 12) Context Diagram
-
Level 0
Figure (3, 13) DFD-Level 0
-
Level 1
Figure (3, 14) DFD- Level1
References
[1]Anyanwu, M. (2009). Comparative Analysis of Serial Decision Tree Classification Algorithms [Online]. Available from: http://www.mendeley.com/research/comparati ve-analysis-serial-decision-tree-classification-algorithms/ [Accessed: 24th May 2011]
[2]Balkan, A. (2006). User Interface Design Principles for Web Applications. [Online] Available
[3]Berson, A., Smith, S., & Thearling, k., (2000). An Overview of Data Mining Techniques [Online]. Available from: http://www.thearling.com/text/ dmtechniques/ dmtechniques.htm [Accessed: 24th May 2011].
[4]Breiman, L., Friedman, J.H., Olshen, R.A., and Stone, C.J. (1984). Classification and Regression Trees. Belmont: Wadsworth.
[5]Edu-technology (2007). Diagnosis Pro 6.0 for Window [Online]. Available from: http://www.edu technology.com/dipro50forwi.html [Accessed: 25th April 2011]
[6] Mike Owens & Grant Allen, 2010,
The Definitive Guide to SQLite, 2nd edn, Apress.
[7]Rick F. van der Lans, 2009,
The SQL Guide to SQLite, Lulu.com.
[8]Srowen,Zxing 2012,
Multi-format 1D/2D barcode image processing library with Clients for Android, Java, available at:
https://code.google.com/p/zxing/source/browse/trunk/android/src/com/google/zxing/client/android/Intents.java
[9] Developer, Developer Android 2013,
Xml, available at:
http://developer.android.com/reference/android/util/Xml.html
[10] The History of QR Codes, available at: http://www.qrcodesinmarketing.net/historyof-qr-codes.html
[11] Errol A. Adams, J.D. M.L.S 2012,
the Complete Android History Timeline
[Infographic], viewed 12 December 2012,
http://erroladamsjdmls.wordpress.com/2012/01/01/the-complete-android-historytimeline-
infographic/android-operating-system-history-timeline-1/