Professional Documents
Culture Documents
PROJECT REPORT
ON
“SHOPIFY”
SUBMITTED TO
AHMEDABAD.
UNDER GUIDANCE OF
Dr. Vimal P. Parmar
DSTC, Junagadh
Shopify
PREFACE
There is a wide difference between theory and practical. If one has only theoretical
background of any subject, one would not succeed in own aim therefore it is necessary for
any person to have adequate practical knowledge of the concerned subject. As I know M.C.A.
is a course based on “Information Technology” and it is totally practical field. With only
theoretical knowledge one can’t be succeeded or one can’t be on the peak position.
In the course of M.C.A. designed by the “GTU” they have taken full care of these
things and designed the course in such a manner with which student can get theoretical and
practical both type of knowledge perfectly. According to the rules & regulation of “Web
Development”, we have a subject. In which we have to create a web project of any institute
or industry.
As a M.C.A. student, I have gathered general information about upload and download
the files. In this site Visitor can give his/her vote
In this project report I have covered all the information, which is required for the web
project of M.C.A. student.I have tried as my best present this project report in such a way that
it makes easy to understand the project work.
ACKNOWLEDGEMENT
I am thankful to all, who have helped me in preparing this project. I am very much
happy to present this “Project Report”. Before you expecting that you will acknowledgement
it. It is a matter of great pleasure for me that I had an opportunity to express our view on the
same.
As a part of our academic study the student of 5th semester of M.C.A. At first, I would
like to express our & humble thanks & gratitude to them who has provided us such a great,
Co-operative & progressive environment.
Secondly at this moment, I would like to express our deepest sense of gratitude to our
professor as well as project guides Dr. Vimal Parmar(Principal) sir who have contribute their
precious time for the purpose of giving us the correct information with special interest &
guidance throughout our project work.
INDEX
1. INTRODUCTION......................................................................................................................... 4
1.1 Existing System ............................................................................................................................ 4
1.2 Need for the New System ............................................................................................................. 4
1.3 Objectives for the New System .................................................................................................... 5
1.4 Problem Definition........................................................................................................................ 5
1.5 Core Components.......................................................................................................................... 5
1.6 Project Profile .............................................................................................................................. 6
1.7 Assumptions and Constraints ........................................................................................................ 7
1.8 Advantages or Limitations of Proposed System ........................................................................... 7
2. REQUIREMENT DETERMINATION & ANALYSIS ............................................................ 8
2.1 Requirement Determination .......................................................................................................... 8
2.2 Targeted Users .............................................................................................................................. 8
2.3Tools and Technology.................................................................................................................... 8
3. SYSTEM DESIGN ........................................................................................................................ 9
3.1 Use Case Diagram......................................................................................................................... 9
3.2 Class Diagram ............................................................................................................................. 11
3.3 Interaction Diagram .................................................................................................................... 14
3.4 Activity Diagram ........................................................................................................................ 16
3.5 Data Dictionary ........................................................................................................................... 18
4. DEVELOPMENT ....................................................................................................................... 20
4.1 Coding Standards ........................................................................................................................ 20
4.2 Sample Code ............................................................................................................................... 23
5. AGILE DOCUMENTATION ........................................................................................................ 25
5.1 Agile Project Charter .................................................................................................................. 25
5.2 Agile Roadmap ........................................................................................................................... 26
5.3 Agile Project Plan: ...................................................................................................................... 27
5.4 Agile User Story ......................................................................................................................... 28
5.5 Agile Release Plan ...................................................................................................................... 29
5.6Agile Test Plan:............................................................................................................................ 30
6. TESTING AND IMPLEMENTATION ....................................................................................... 32
6.1 SCREEN LAYOUT: ................................................................................................................... 32
7.LIMITATIONS AND PROPOSED ENHANCEMENT ............................................................... 32
8. BIBLIOGRAPHY ........................................................................................................................... 32
Proposed System
The proposed system should have the following features. The transactions should take
place in a secured format between various clients in the network. It provides flexibility to the
user to transfer the data through the network very easily by compressing the large amount of
file. It should also identify the user and provide the communication according to the
prescribed level of security with transfer of the file requested and run the required process at
the server if necessary.
• To understand how the requirements are currently being met with existing system (s).
• To document the flow, processing and use of information within the existing system(s).
• To identify the problems with the existing system(s).
• To define new requirements.
In this you can do shopify users. First you have to register as a user then you can login
in this site. In this project admin can add product and its choices and also give the shopify.
All super user and see users name. Admin can add, delete, edit the shopify product. Super
user also add, delete, edit the product in admin side. Users only see the product and visit the
site.
FRONT END: you can give the shopify product from the choices of the product and
loging as a client user. clients do not do edit delete and end the product.
BACK END: The back end of the Project admin can add the product and give the choices
of the product and do edit & delete the products and choices….
Shopify is in shopping the shopify product to the different category. There are you
can do safely purchasing the product. New user register to the site.
In this you can purchase the product as a users. First you have to register as a user
then you can login in this. In this project admin can add product .Admin can filter staff
admin. All super user and see the users name. admin can add , delete, edit the products. Super
user also add, delete, edit the product in admin side.
ASSUMPTIONS:
Implementation project to begin from July, step-by-step Using plan do study
act(PDSA) process and completed by October.
Implementation of core components in website during requirement gathering period.
No new major software or hardware will be required to run current system.
CONSTRAINTS:
Budget limitations
Time Limitation
Resource Limitations
ADVANTAGES
Easy to use. Compatible with System Smart and Clear designing
Easy understand
Easy to do shopify shopping
We expect the audience for this Project to be the End Users; Users of the give product
in shopify shop. first you have to login to give the site in product but you have to registered
first. then you can give the product .
HARDWARE REQUIREMENTS
Category Server Side
Processor Pentium II or later version
Hard Disk Drive 350 MB free fixed disk
RAM 64 MB or Higher
Monitor 14’’ Color for best result
Network devices Network Adapter
DJANGO:
Django and Python can seem overwhelming at first, but they don't have to be! In this course
I’ll walk you through it step by step and you’ll be building your first web app in MINUTES.
You’ll be amazed how quick and easy it is to create very professional looking websites, even
if you have no programming or web design experience at all.
Watch over my shoulder as I build a cool To-Do List app step by step right in front of you.
You’ll follow along and build your own copy. By the time we’re finished, you’ll have a solid
understanding of Django and how to use it to build awesome web apps.
SUBLIME:
Sublime Text is a proprietary cross-platform source code editor with a Python application
programming interface (API). It natively supports many programming languages and markup
languages, and functions can be added by users with plugins, typically community-built and
maintained under free-software licenses.
3. SYSTEM DESIGN
3.1 Use Case Diagram
A use case diagram at its simplest is a representation of a user's interaction with the
system that shows the relationship between the user and the different use cases in which the
user is involved. A use case diagram can identify the different types of users of a system and
the different use cases and will often be accompanied by other types of diagrams as well.
While a use case itself might drill into a lot of detail about every possibility, a use-case
diagram can help provide a higher-level view of the system. It has been said before that "Use
user_name cart_id n
order_ref_product_id
user_mobile product_id order_ref_quantity
n
Interaction diagrams are models that describe how a group of objects collaborate in
some behavior - typically a single use-case. The diagrams show a number of example objects
and the messages that are passed between these objects within the use-case.
Interaction diagrams come in two forms, both present in the UML. The first form is the
sequence diagram. In this form objects are shown as vertical lines with the messages as
horizontal lines between them. This form was first popularized by Jacobson. The diagram
below shows this form in its UML notation.
When to Use Them
Interaction diagrams should be used when you want to look at the behavior of several
objects within a single use case. They are good at showing the collaborations between the
objects, they are not so good at precise definition of the behavior.
If you want to look at the behavior of a single object across many use-cases, use
a state transition diagram. If you want to look at behavior across many use cases or many
threads, consider an activity diagram.
search item
result
select Item
Add to Cart
register
login
authorized
Manage Cart
buynow
checkout
Place Order
Order details
manage Orders
logout
[skip it]
[search] [found]
Search Item View Item
[not found]
Browse Item
[browse]
[skip it]
[if login]
View Cart
[more shopping]
Proceed to
Update Cart
checkout
The data dictionaries demonstrate detailed mappings for all of the CLM application data
that is collected and stored in the data warehouse Operational data store (ODS). There are
many cases where data warehouse tables and columns are non populated by CLM application
data because they are used for other purposes.
user_address:
Field Name Datatype Length Constraint
address_id Varchar 40 Primary Key
user_id Varchar 40 Foreign Key
user_name Varchar 150 NotNull
user_mobile bigInt 20 NotNull
Pincode Int 10 NotNull
Locality Vachar 150 NotNull
Address Vachar 200 NotNull
state_id Int 8 Foreign Key
district_id Int 8 Foreign Key
states:
Field Name Datatype Length Constraint
state_id Int 8 Primary Key
state_name Varchar 100 NotNull
districts:
Field Name Datatype Length Constraint
district_id Int 8 Primary Key
district_name Varchar 100 NotNull
state_id Int 8 Foreign Key
category_table:
Field Name Datatype Length Constraint
category_id Varchar 40 Primary Key
category_name Varchar 100 NotNull
sub_category_table:
Field Name Datatype Length Constraint
sub_category_id varchar 40 Primary Key
sub_category_name varchar 100 NotNull
category_id Varchar 40 Foreign Key
4. DEVELOPMENT
There are few coding standards which followed while coding in project...
Coding Standards are an important factor for achieving a high code quality. A common visual
style, naming conventions and other technical settings allow us to produce a homogenous
code which is easy to read and maintain. However, not all important factors can be covered
by rules and coding standards. Equally important is the style in which certain problems are
solved programmatically - it’s the personality and experience of the individual developer
which shines through and ultimately makes the difference between technically okay code or a
well considered, mature solution.
These guidelines try to cover both, the technical standards as well as giving incentives for
a common development style. These guidelines must be followed by everyone who creates
code for the Flow core. We hope that you feel encouraged to follow these guidelines as well
when creating your own packages and Flow based applications.
Indenting and Line Length: Use an indent of 4 spaces and don't use any tab because
different computers use different setting for tab. It is recommended to keep lines at
approximately 75-85 characters long for better code readability.
Control Structures: These include if, for, while, switch, etc. Control statements should
have one space between the control keyword and opening parenthesis, to distinguish
them from function calls. You are strongly encouraged to always use curly braces even
in situations where they are technically optional.
Function Calls: Functions should be called with no spaces between the function name,
the opening parenthesis, and the first parameter; spaces between commas and each
parameter, and no space between the last parameter, the closing parenthesis, and the
semicolon.
Developed By: Sejpal Hiren, Parmar Parth, Rathod Jignesh
Shopify
Comments: C style comments (/* */) and standard C++ comments (//) are both fine. Use
of Perl/shell style comments (#) is discouraged.
PHP Code Tags: Always use <?php ?> to delimit PHP code, not the <? ?> shorthand.
This is required for PHP compliance and is also the most portable way to include PHP
code on differing operating systems and setups.
Method names
All method names are written in lowerCamelCase. In order to avoid problems with different
file systems, only the characters a-z, A-Z and 0-9 are allowed for method names – don’t use
special characters.
Make method names descriptive, but keep them concise at the same time. Constructors must
always be called __construct(), never use the class name as a method name.
addToCart()
setOrder()
deleteProduct()
getUserName()
Ex. shopify/class/class.connection.php
Constant names
All constant names are written in UPPERCASE. This includes TRUE, FALSE and NULL.
Words can be separated by underscores - you can also use the underscore to group constants
thematically:
STUFF_LEVEL
COOLNESS_FACTOR
PATTERN_MATCH_EMAILADDRESS
PATTERN_MATCH_VALIDHTMLTAGS
Variable Names:
A variable starts with the $ sign, followed by the name of the variable.
A variable name must start with a letter or the underscore character.
A variable name cannot start with a number.
A valid constant name starts with a letter or underscore (no $ sign before
the constant name). Note: Unlike variables, constants are automatically global across
the entire script.
Connection file:
class.connection.php
<?php
class Connection extends PDO
{
private $host = "localhost";
private $user = "root";
private $password = "";
private $dbname = 'flowershop';
private $charset = "utf8";
private $opt = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
];
private $conn;
function __construct()
{
try {
$this->conn = parent::__construct("mysql:host=$this->host;dbname=$this-
>dbname;charset=$this->charset", $this->user, $this->password, $this->opt);
} catch (PDOException $e) {
echo $e->getMessage();
An Agile process is a process which manages unpredictability about the majority of s/w
projects.
Agile is a time boxed, iterative approach to software delivery that builds software
incrementally from the start of the project, instead of trying to deliver it all at once near the
end.
Project Charter
In this you can do purchase the shopify product as a users. First you have
to register as a user then you can login in this. In this project admin can
Scope
add product. All super user and see the users name.
Risk Only one time give the order it’s can’t change.
A roadmap is a powerful tool to describe how poll is add, to align the voters, and to acquire a
budget for voters the poll. But creating an effective roadmap is not easy, particularly in an
agile context where changes occur frequently and unexpectedly
Roadmaps show the evolution of your features over time to help you define vote . Thus, they
are managed by the poll Owner and by default can be seen by anybody having access to the
project.
It would not be very agile to define only one roadmap for your poll. . Just like on a real map,
you don’t want to see only the ideal path but also all the crossroads and the alternative paths
you may take as your direction and the traffic change.
ROADMAP
An agile project plan is based on features. The plan estimates how long it will take for each feature
to be delivered, without much detail on how it will be delivered. And because the project plans are
focused on features, you can group similar features into sprints.
An agile project plan is always changing. Once the plan is developed, the project team needs to
maintain it and update status and timelines accordingly.
Also known as an agile project schedule, this Diagram lets you add your tasks, who is responsible,
start and end dates, and status. The duration for each task will be automatically calculated. This
Diagram also features a Gantt chart (a visual representation of your project timeline), which will
automatically adjust when you add your own data to the table.
Project Plan:
Coding - - - - -
Implementation - - - - -
A user story describes a feature from the end-user’s perspective. It includes the type of user,
what they want, and why they want it. These short, one-sentence user stories create a super simple
description of a requirement. Then, the development team develops code that will satisfy the
requirements of the user story.
This agile use case Diagram follows the typical agile story structure: as a <type of user>, I
want to <perform some task> so that I can <achieve some goal>.
User stories are short, simple descriptions of a feature told from the perspective of the
person who desires the new capability, usually a user of the system.
The user story describes the type of user, what they want and why. A user story helps
to create a simplified description of a requirement.
3 Web Designer Design a best website and Using CSS, Bootstrap and other
User friendly features features
I can able to design website
4 Tester Testing as try to fail system Try best testing and taking help of
others.
Agile release planning happens during sprint zero, when there is no product to deliver and the team
can instead focus on defining the release goal, the features that need to be delivered, assigning
features to a sprint, and estimating the duration of each task. Release planning may change as new
stories are added or deleted.
This agile release diagram allows you to list all your tasks, assign each task to a sprint, and calculate
the duration based on start and end dates
Release Plan is a guideline that reflects expectations about which features will be
implemented and when they are completed. It also serves as a base to monitor progress within
the project.
The following table show Agile Release Plan for agile team – Provide insights into technical
feasibility and dependencies.
Release
Feature name Start Finish Status Duration
date
1 Software configuration 25-7-19 30-7-19 Complete 5d -
In
2 Dashboard for admin 1-8-19 10-8-19 9d 25-7-19
progress
Registration-login & Complete
2 11-8-19 20-8-19 9d
validation d
In
2 Manage address feature 21-8-19 28-8-19 7d
progress
In
2 Manage cart 29-8-19 10-9-19 12d 29-8-19
progress
Complete
3 Place order 11-9-19 25-9-19 15d
d
Complete
3 User profile 26-9-19 10-10-19 15d
d
Instead of a static testing plan that must happen at a certain time, test plans in agile projects should
be dynamic and iterative. The testing phase becomes an extension of the requirements prioritization
process so that the most up-to-date information is used when defining tests and to avoid any
misunderstanding about scope.
While you don’t need an extensive agile test plan, you still need to track the actions, expected
results, actual results, and whether the test passed or failed.
Project Name
The Shopify
Tested By: DR. vimal Parmar
Description Agile Test Plan Browser Chrome
Tested on: 15-09-19 22-09-19
Test Pass?
action Expected Result Actual Result
#
Admin:
Users:
Add choice:
Developed By: Sejpal Hiren, Parmar Parth, Rathod Jignesh
Shopify
Add Vote:
Admin Logout:
Everything has limitations no single thing is perfect, in this project many limitations
we can see,
For ex,
Only admin can add ,edit , delete products.
Paytm system is not available in this site.
Not available of free delivery.
Future Enhancement
We are tried to set client can edit their shopify product.
8. BIBLIOGRAPHY
https://www.google.com/
https://www.djangoproject.com/start/
https://developer.mozilla.org/en-US/docs/Learn/Server-
side/Django/Tutorial_local_library_website