Android Retail Management System
Android Retail Management System
2 PROJECT ANALYSIS
2.1 Gantt Chart
3 PROJECT LIFECYCLE
4 PROJECT DESIGN
4.1 E-R Diagram
4.2 Use Case Diagram
4.3 Sequence Diagram
4.4 Activity Diagram
4.5 Data Flow Diagram
4.6 System Architecture
5 SNAPSHOTS
5.1 Project Snapshots
6 PROJECT IMPLEMENTATION
6.1 Project Implementation Technology
6.2 Feasibility Report
7 CODING
7.1 Project Coding
8 TESTING
8.1 Testing
8.2 Levels of Testing
8.3 Test Cases
9 ADVANTAGES &LIMITATIONS
9.1 Advantages
9.2 Limitations
9.3 Features
10 CONCLUSION
10.1 Project Conclusion
11 BIBIIOGRAPHY
11.1 Website Links
PROJECT OVERVIEW
Introduction
Traditional retail management poses significant challenges, requiring
efficient solutions to address issues such as store administration, product
handling, and sales reporting. Administering multiple stores becomes
complex, as manual processes for adding, updating, viewing, and deleting
store information are time-consuming and prone to errors. Counter staff
faces hurdles in managing customer cart details during checkout, especially
when handling diverse products from various stores. Users encounter
difficulties in tracking and consolidating their purchases, especially when
items from different stores are involved.
To mitigate the challenges in retail management, the Android Retail
Management System offers a comprehensive solution. The system addresses
the inefficiencies in store management by empowering administrators with
functionalities to seamlessly handle store-related tasks, such as store
addition, updates, views, and deletions. It facilitates the smooth management
of counters by enabling counter staff to efficiently handle customer cart
details during checkout, ensuring a hassle-free experience.By leveraging
Android technology, this system aims to revolutionize retail management,
offering a user-friendly interface and efficient functionalities for improved
overall operations.
Scope and Objective
1. Admin
2. Counter
3. User/Consumer
Waterfall Model
Description
The waterfall Model is a linear sequential flow. In which progress is seen
as flowing steadily downwards (like a waterfall) through the phases of software
implementation. This means that any phase in the development process begins
only if the previous phase is complete. The waterfall approach does not define
the process to go back to the previous phase to handle changes in
requirement. The waterfall approach is the earliest approach that was used for
software development.
PROJECT DESIGN
ER Diagram
Use Case Diagram
Admin
New Registration
- User_id : String
- Password : String - Name : String
- DOB : Int
+ Login() - Gender : String
+ btn_Click () - Address : String
+ Logout () - Mobile No.: Int
- Email id : String
- User id : String
Counter
- Password : String
- User_id : String
- Password : String
+ Submit ()
+ Login() + btn_Click ()
+ btn_Click ()
+ Logout ()
User
- User_id : String
- Password : String
+ Login()
+ btn_Click ()
+ Logout ()
Data Flow Diagram (DFD’s)
DFD SYMBOLS:
In the DFD, there are four symbols
1. A square defines a source(originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the
information flows
3. A circle or a bubble represents a process that transforms incoming data
flow into outgoing data flows.
4. An open rectangle is a data store, data at rest or a temporary repository of
data
Data flow
Data Store
CONSTRUCTING A DFD:
A DFD typically shows the minimum contents of data store. Each data
store should contain all the data elements that flow in and out.
Questionnaires should contain all the data elements that flow in and out.
Missing interfaces redundancies and like is then accounted for often through
interviews.
1. The DFD shows flow of data, not of control loops and decision are
controlled considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process
whether the data flows take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.
CURRENT PHYSICAL:
In Current Physical DFD process label include the name of people or
their positions or the names of computer systems that might provide some of
the overall system-processing label includes an identification of the technology
used to process the data. Similarly, data flows and data stores are often labels
with the names of the actual physical media on which data are stored such as
file folders, computer files, business forms or computer tapes.
CURRENT LOGICAL:
The physical aspects at the system are removed as much as possible so
that the current system is reduced to its essence to the data and the
processors that transform them regardless of actual physical form.
NEW LOGICAL:
This is exactly like a current logical model if the user were completely
happy with the user were completely happy with the functionality of the
current system but had problems with how it was implemented typically
through the new logical model will differ from current logical model while
having additional functions, absolute function removal and inefficient flows
recognized.
NEW PHYSICAL:
The new physical represents only the physical implementation of the
new system.
DATA STORE
1) Data cannot move directly from one data store to another data store,
a process must move data.
2) Data cannot move directly from an outside source to a data store, a
process, which receives, must move data from the source and place
the data into data store
3) A data store has a noun phrase label.
SOURCE OR SINK
The origin and /or destination of data
1) Data cannot move direly from a source to sink it must be moved by
a process
2) A source and /or sink has a noun phrase land
DATA FLOW
1) A Data Flow has only one direction of flow between symbols. It may
flow in both directions between a process and a data store to show a
read before an update. The later it usually indicated however by two
separate arrows since these happen at different type.
2) A join in DFD means that exactly the same data comes from any of
two or more different processes data store or sink to a common
location.
3) A data flow cannot go directly back to the same process it leads.
There must be at least one other process that handles the data flow
produce some other data flow returns the original data into the
beginning process.
4) A Data flow to a data store means update (delete or change).
5) A data Flow from a data store means retrieve or use.
Data Flow Diagrams (DFD’s)
1.0
Query
User Query Process0.0 Check for user
Request Requirement
User Android Retail Management System DB Database
User need
1.1
Feedback For
Relevant Database
User Data
DATABASE DETAIL
LEVEL 1 DFD
Query 2.0
User Accept
Query
2.2
1. Laptop or PC
Software Requirement:
1. Laptop or PC
Windows 7 or higher.
Java
Android Studio
2. Android Phone or Tablet
Android v5.0 or Higher
Introduction to Android
Android Studio is the official Integrated Development Environment (IDE) for
Android app development, based on IntelliJ IDEA . On top of IntelliJ's powerful
code editor and developer tools, Android Studio offers even more features that
enhance your productivity when building Android apps, such as:
A unified environment where you can develop for all Android devices
Instant Run to push changes to your running app without building a new
APK
Code templates and GitHub integration to help you build common app
features and import sample code
Each project in Android Studio contains one or more modules with source
code files and resource files. Types of modules include:
Library modules
manifests: Contains
the AndroidManifest.xml file.
res: Contains all non-code resources, such as XML layouts, UI strings, and
bitmap images.
The Android project structure on disk differs from this flattened
representation. To see the actual file structure of the project,
select Project from the Project dropdown (in figure 1, it's showing asAndroid).
2. The navigation bar helps you navigate through your project and open files
for editing. It provides a more compact view of the structure visible in
the Project window.
3. The editor window is where you create and modify code. Depending on
the current file type, the editor can change. For example, when viewing a
layout file, the editor displays the Layout Editor.
4. The tool window bar runs around the outside of the IDE window and
contains the buttons that allow you to expand or collapse individual tool
windows.
5. The tool windows give you access to specific tasks like project
management, search, version control, and more. You can expand them and
collapse them.
6. The status bar displays the status of your project and the IDE itself, as well
as any warnings or messages.
You can organize the main window to give yourself more screen space by
hiding or moving toolbars and tool windows. You can also use keyboard
shortcuts to access most IDE features.
At any time, you can search across your source code, databases, actions,
elements of the user interface, and so on, by double-pressing the Shift key, or
clicking the magnifying glass in the upper right-hand corner of the Android
Studio window. This can be very useful if, for example, you are trying to locate
a particular IDE action that you have forgotten how to trigger.
Tool Windows
Instead of using preset perspectives, Android Studio follows your
context and automatically brings up relevant tool windows as you work. By
default, the most commonly used tool windows are pinned to the tool window
bar at the edges of the application window.
To expand or collapse a tool window, click the tool’s name in the tool
window bar. You can also drag, pin, unpin, attach, and detach tool windows.
To return to the current default tool window layout, click Window > Restore
Default Layout or customize your default layout by clicking Window > Store
Current Layout as Default.
To show or hide the entire tool window bar, click the window icon in the
bottom left-hand corner of the Android Studio window.
To locate a specific tool window, hover over the window icon and select the
tool window from the menu.
Navigation
Here are some tips to help you move around Android Studio.
Switch between your recently accessed files using the Recent Files action.
Press Control+E (Command+E on a Mac) to bring up the Recent Files action.
By default, the last accessed file is selected. You can also access any tool
window through the left column in this action.
View the structure of the current file using the File Structure action. Bring up
the File Structure action by pressing Control+F12 (Command+F12 on a Mac).
Using this action, you can quickly navigate to any part of your current file.
Search for and navigate to a specific class in your project using the Navigate
to Class action. Bring up the action by pressing Control+N(Command+O on a
Mac). Navigate to Class supports sophisticated expressions, including camel
humps, paths, line navigate to, middle name matching, and many more. If
you call it twice in a row, it shows you the results out of the project classes.
Navigate to a file or folder using the Navigate to File action. Bring up the
Navigate to File action by pressing Control+Shift+N (Command+Shift+O on a
Mac). To search for folders rather than files, add a / at the end of your
expression.
Find all the pieces of code referencing the class, method, field, parameter,
or statement at the current cursor position by pressing Alt+F7
Create multiple APKs for your app, with different features using the same
project and modules.
Inline debugging
Use inline debugging to enhance your code walk-throughs in the debugger
view with inline verification of references, expressions, and variable values.
Inline debug information includes:
Tooltip values
Performance monitors
Allocation tracker
The Lint tool checks your Android project source files for potential bugs and
optimization improvements for correctness, security, performance, usability,
accessibility, and internationalization.
Coding
FEASIBILITY REPORT
Technical Feasibility
Economic Feasibility
Operational Feasibility
In this phase, we study the feasibility of all proposed systems, and pick the
best feasible solution for the problem. The feasibility is studied based on three
main factors as follows.
Technical Feasibility
Languages : JAVA
The testing done here was System Testing checking whether the user
requirements were satisfied. The code for the new system has been written
completelyusing JAVA as the coding language and Android Studio as the
interface for front-end designing.The new system has been tested well with
the help of the users and all the applications have been verified from every
nook and corner of the user.
A series of testing is done for the proposed system before the system
is ready for the user acceptance testing.
Unit Testing
Unit testing focuses verification efforts on the smallest unit of the
software design, the module. This is also known as “Module Testing”. The
modules are tested separately. This testing carried out during programming
stage itself. In this testing each module is found to be working satisfactorily as
regards to the expected output from the module.
Integration Testing
Data can be grossed across an interface; one module can have
adverse efforts on another. Integration testing is systematic testing for
construction the program structure while at the same time conducting tests to
uncover errors associated with in the interface. The objective is to take unit
tested modules and build a program structure. All the modules are combined
and tested as a whole. Here correction is difficult because the isolation of
cause is complicate by the vast expense of the entire program. Thus in the
integration testing stop, all the errors uncovered are corrected for the text
testing steps.
System testing
System testing is the stage of implementation that is aimed at ensuring that
the system works accurately and efficiently for live operation commences.
Testing is vital to the success of the system. System testing makes a logical
assumption that if all the parts of the system are correct, then goal will be
successfully achieved.
Validation Testing
At the conclusion of integration testing software is completely
assembled as a package, interfacing errors have been uncovered and corrected
and a final series of software tests begins, validation test begins. Validation
test can be defined in many ways. But the simple definition is that validation
succeeds when the software function in a manner that can reasonably
expected by the customer. After validation test has been conducted one of two
possible conditions exists.
One is the function or performance characteristics confirm to
specifications and are accepted and the other is deviation from specification is
uncovered and a deficiency list is created. Proposed system under
consideration has been tested by using validation testing and found to be
working satisfactorily.
Output Testing
After performing validation testing, the next step is output testing of
the proposed system since no system could be useful if it does not produce the
required output in the specified format. Asking the users about the format
required by them tests the outputs generated by the system under
consideration. Here the output format is considered in two ways, one is on the
screen and other is the printed format. The output format on the screen is
found to be correct as the format was designed in the system designed phase
according to the user needs.
For the hard copy also the output comes as the specified
requirements by the users. Hence output testing does not result any
corrections in the system.
Login: - Login id and password are kept compulsory fields, and if the id or
password doesn’t match then it will show an error message.
VALIDATION CRITERIA
1. In each form, no field which is not null able should be left blank.
2. All numeric fields should be checked for non-numeric values. Similarly,
text fields like names should not contain any numeric characters.
3. All primary keys should be automatically generated to prevent the user
from entering any existing key.
4. Use of error handling for each Save, Edit, delete and other important
operations.
5. Whenever the user Tabs out or Enter from a text box, the data should
be validated and if it is invalid, focus should again be sent to the text box
with proper message.
ADVANTAGES OF PROJECT
Advantages:
1) Load Balancing:
Since the system will be available only the admin logs in the
amount of load on server will be limited to time period of admin access.
2) Easy Accessibility:
Records can be easily accessed and store and other information
respectively.
3) User Friendly:
The application will be giving a very user-friendly approach for all
user.
5) Easy maintenance:
Android Retail Management Systemis design as easy way. So
maintenance is also easy.
CONCLUSION
► Websites
en.wikipedia.org
https://www.kashipara.com/project/idea/php/
retailmanagement_517.html
https://www.studentprojectguide.com/php/online-retail-management-
system/