CRM Complete Report
CRM Complete Report
CRM Complete Report
net/publication/336568141
CITATIONS READS
5 37,752
3 authors, including:
Muhammad Rashiduzzaman
Daffodil International University
3 PUBLICATIONS 8 CITATIONS
SEE PROFILE
All content following this page was uploaded by Muhammad Rashiduzzaman on 15 October 2019.
BY
SUMON DEB
ID: 152-15-6218
AND
MUHAMMAD RASHIDUZZAMAN
ID: 152-15-6221
AND
ZAHID HASAN SHOWROV
ID: 152-15-6222
Supervised By
Nusrat Jahan
Lecturer
Department of CSE
DaffodilInternational University
Co-Supervised By
BOARD OF EXAMINERS
We hereby declare that, this project has been done by us under the supervision of
Nusrat Jahan, Lecturer, Department of CSE Daffodil International University. We
also declare that neither this project nor any part of this project has been submitted
elsewhere for award of any degree or diploma.
Supervised by:
Nusrat Jahan
Lecturer
Department of CSE
Daffodil International University
Co-Supervised by:
Submitted by:
Sumon Deb
ID: 152-15-6218
Department of CSE
Daffodil International University
Muhammad Rashiduzzaman
ID: 152-15-6221
Department of CSE
DaffodilInternational University
First we express our heartiest thanks and gratefulness to almighty Allah (God) for His
divine blessing makes us possible to complete the final year project successfully.
We really grateful and wish our profound our indebtedness to Nusrat Jahan,
Lecturer, Department of CSE Daffodil International University, Dhaka. Deep
Knowledge & keen interest of our supervisor in the field of Software to carry out this
project. Her endless patience, scholarly guidance, continual encouragement, constant
and energetic supervision, constructive criticism , valuable advice, reading many
inferior draft and correcting them at all stage have made it possible to complete this
project.
We would like to express our heartiest gratitude to, Dr. Syed Akhter Hossain,
Professor and Head, Department of CSE, for his kind help to finish our project and
also to other faculty member and the staff of CSE department of Daffodil
International University.
We would like to thank our entire course mate in Daffodil International University,
who took part in this discuss while completing the course work.
Finally, we must acknowledge with due respect the constant support and patients of
our parents.
CONTENS PAGE
Board of examiners i
Declaration ii
Acknowledgements iii
Abstract iv
CHAPTER
CHAPTER 1: INTRODUCTION 1-2
1.1 Definition 1
1.2 Objective 1
1.3 Purpose 2
2.1.1 General 3
2.1.2 Administrator 3
3.1 Introduction 10
APPENDIX 51-51
REFERENCES 52-52
FIGURES PAGE NO
TABLES PAGE
NO
1.1 Definition
1.2 Objective
For simplifying marketing and sales system.
For providing better customer service.
For discovering new customers and raise customer profit.
For increasing cross sell products more effectively.
The Customer Relationship Management (CRM) system needs to support all the
basic step of customer life cycle.
In this CRM system we used very simple format. Bold face is used on general and sub
topic or specific points of interest. Font size 14 and 12 is used on general topics and
sub topics accordingly. The remainder of the document will be written using the
standard font, Times New Roman with font 12.
This entire CRM system is web based and creating on open source applications and
software. This system is developed in PHP (Laravel Framework) with apache
web server and database is MySQL. Also included Node JS for User
Notification. It is eligible and compatible for every web browser and operating
system.
This section contains different perspective of project with its available functions, user
classes and characteristics, operating environment, assumption and dependencies,
design and implementation constraints.
2.1.1 General
Login
Every user login with their valid username and password. User having only admin access
directly goes to admin panel and user having only CRM access goes to CRM panel and
user having both accesses goes to app index.
App Index
App Index contains two parts, Administrator & Customer Relationship Management
(CRM). This part is available only for users having both access (Administrator & CRM).
2.1.2 Administrator
User Management
Administrator generates the user and also can edit their details when required. If
he wanted, he can add new user and inactive the existing user. Administrator can
control user access for both panel (Administrator & CRM).
Company Profile
Administrator can add or modify company Name, Logo, Address and other
information.
Dashboard
User can observe his contribution and compare with his sales target. He also checks
his upcoming task & campaign and views his activities in calendar.
Leads
Leads are generated when new client comes and modify by the user. Leads are
transforming into the contact when client qualify and assign for new opportunity. If
once leads change into contact, then it will end. Leads can be created or imported
from CSV file (Maximum 8000 leads at a time). Leads are accessible for only its
owner.
Contacts
When lead is qualified, it transforms into contact. Contact also can be created
directly. It mainly represents clients or customers.
Activities
Meeting
User can call meeting, observe and set the meeting schedule. He can also modify
the date, time, place of the meeting and inform to the appropriate client. User can
set reminder for the meeting. He can also divert the meeting to another user.
Task
User can create task, observe and set the task schedule. He can also modify the
date, priority, status of the task. He can also divert the task to another user.
Note
User can create note with details information. It helps user to maintain his work
activities.
Call
User records call history into system, observe and set the call schedule. He can also
modify the date, time, status (Held, Not Held, Planned) of the call. User can set
reminder for the call. He can also divert the call to another user.
Calendar
User can view his activities (Meetings, Task) in calendar.
Campaign
User can create campaign to advertise his business, observe and set the campaign
schedule. He can also modify the date, time, budget and actual cost of the
campaign. User can also add impressions, expected revenue and actual revenue.
Email Configuration
Email Configuration is needed for sending email.
Products
Opportunity consists of different products. Products is created in Back Office.
Product Group
It represents product category and needed to create product.
Source
It represents Lead Source and needed to create Lead.
Lead Category
It is needed to create Lead.
Flowcharts use simple geometric symbols and arrows to define relationships. In this
CRM software, the beginning or end of software is represented by an oval. A process
is represented by a rectangle; a decision is represented by a diamond.
3.1 Introduction
To run efficiently every software need some basic requirements which are Hardware
components and Software resources. These requirements are often known as
Requirement Specification which is used as rules and regulation.
General system requirement deals with both least requirements of hardware and
software that is required to run the optimal functioning of an application. To run
“CRM” application on a website following things should be required:
Operating System
Browser (Firefox, Chrome etc.)
Internet Connection
PC or Mobile devices
Using above software and hardware specification one should be able to work with
“CRM”.
The following diagram indicates the use case model for CRM. Here three kinds of
user are present. A Supervisor (Admin) user can perform all the processes after login
into system. On the other hand a normal user can handle note, client, actual sale,
reminders, change password etc. He also needs to be logged in the system. Another
CRM System user can also handle remainders.
Pre-condition: None
Table 3.4.2 Describes about “Change Password” process of our project. Change
Password process has four primary paths. In this four primary path have two
exceptional paths.
Pre-condition: Login
Actor: Admin
Pre-condition: Login
Table 3.4.4 Describes about “User Access” process of our project and it is gives us an
understanding how this process works in project. User Access process has three
primary paths. In this three primary path have two exceptional paths.
Actor: Admin
Table 3.4.5 Describes about “Set Target” process of our project and it gives us an
understanding how this process works in project. Set Target process has five primary
paths. In this five primary paths have two exceptional paths.
Actor: Admin
Pre-condition: Login
Table 3.4.6 Describes about “Lead” process of our project and it gives us an
understanding how this process works in project. Lead process has seven primary
paths. In this seven primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.7 Describes about “Account” process of our project and it gives us an
understanding how this process works in project. Account process has seven primary
paths. In this seven primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.8 Describes about “Contact” process of our project and it gives us an
understanding how this process works in project. Contact process has eight primary
paths. In this eight primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.9 Describes about “Opportunity” process of our project and it gives us an
understanding how this process works in project. Opportunity process has six primary
paths. In this six primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.10 Describes about “Meeting” process of our project and it gives us an
understanding how this process works in project. Meeting process has seven primary
paths. In this seven primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.11 Describes about “Task” process of our project and it gives us an
understanding how this process works in project. Task process has seven primary
paths. In this seven primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.12 Describes about “Note” process of our project and it gives us an
understanding how this process works in project. Note process has six primary paths.
In this six primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.13 Describes about “Call” process of our project and it gives us an
understanding how this process works in project. Call process has seven primary
paths. In this seven primary path have two exceptional paths.
Pre-condition: Login
Table 3.4.14 Describes about “Email” process of our project and it gives us an
understanding how this process works in project. Email process has five primary
paths. In this five primary path have two exceptional paths.
Pre-condition: Login
A data flow diagram (DFD) maps out the flow of information for any process or
system. It uses defined symbols like rectangles, circles and arrows, plus short text
labels, to show data inputs, outputs, storage points and the routes between each
destination.A DFD describes what data flow (logical) rather than how they are
processed, so it does not depend on hardware, software, data structure or file
organization.
Data flowcharts can range from simple, even hand-drawn process overviews, to in-
depth, multi-level DFDs that dig progressively deeper into how the data is handled.
They can be used to analyze an existing system or model a new one. Like all the best
diagrams and charts, a DFD can often visually “say” things that would be hard to
explain in words, and they work for both technical and nontechnical audiences, from
developer to CEO. That’s why DFDs remain so popular after all these years. While
they work well for data flow software and systems, they are less applicable nowadays
to visualizing interactive, real-time or database-oriented software or systems.
Data flow diagrams are one of the three essential perspectives of the structured-
systems analysis and design method. The sponsor of a project and the end users will
need to be briefed and consulted throughout all stages of a system's evolution. With a
data flow diagram, users are able to visualize how the system will operate, what the
system will accomplish, and how the system will be implemented.The symbols used
to prepare DFD do not imply a physical implementation. The four basic symbols used
to construct data flow diagrams are shown below:
Class diagram is a static diagram. It represents the static view of an application. Class
diagram is not only used for visualizing, describing, and documenting different
aspects of a system but also for constructing executable code of the software
application.
A database design is a collection of stored data organized in such a way that the data
requirements are satisfied by the database. The general objective is to make
information access easy, quick, inexpensive and flexible for the user. There are also
some specific objectives like controlled redundancy from failure, privacy, security
and performance.
A collection of relative records makes up a table. To design and store data to the
needed forms database tables are prepared. Two essential settings for a database are:
Primary key: - A primary key is a special relational database table column (or
combination of columns) designated to uniquely identify all table records.
Foreign key: - A foreign key is a column or group of columns in a relational
database table that provides a link between data in two tables
It is most often used to design or debug relational databases in the fields of software
engineering, business information systems, education and research. They use a
defined set of symbols such as rectangles, diamonds, ovals and connecting lines to
depict the interconnectedness of entities, relationships and their attributes.
website varchar(100) No
industry int(11) No
employees int(11) No
billing_address text No
billing_street varchar(50) No
billing_city varchar(50) No
billing_state varchar(50) No
billing_post_code varchar(20) No
billing_country int(11) No
shipping_address text No
shipping_street varchar(50) No
shipping_city varchar(50) No
shipping_state varchar(50) No
shipping_post_code varchar(20) No
shipping_country int(11) No
assign_to int(11) No
created_at timestamp Yes NULL
created_by int(11) No
updated_at timestamp Yes NULL
first_name varchar(50) No
last_name varchar(50) No
Surname varchar(50) No
Designation varchar(100) No
Department varchar(100) No
full_address text No
Street varchar(50) No
Website varchar(100) No
Email varchar(100) No
Industry int(11) No
Note text No
nature_id int(11) No
Image varchar(50) No
assign_to int(11) No
project_id int(11) No
Valid tinyint(1) No
full_address text No
Street varchar(50) No
City varchar(50) No
State varchar(50) No
post_code varchar(20) No
Country int(11) No
Mobile varchar(50) No
office_phone varchar(50) No
Fax varchar(50) No
Website varchar(100) No
Email varchar(100) No
company_name varchar(100) No
Industry int(11) No
Employees int(11) No
lead_description varchar(200) No
Rating int(11) No
lead_source int(11) No
Campaign int(11) No
lead_referred_by varchar(100) No
assign_to int(11) No
step_one_status tinyint(4) No
step_one_date timestamp Yes NULL
deleted_by int(11) No
project_id int(11) No
Valid tinyint(1) No
Id int(11) No
generated_lead_id varchar(20) No
csv_id int(11) No
csv_file int(11) No
first_name varchar(50) No
last_name varchar(50) No
Designation varchar(100) No
Department varchar(100) No
lead_source_description varchar(200) No
lead_referred_by varchar(100) No
lead_description varchar(200) No
assign_to int(11) No
Status tinyint(4) No
created_at timestamp Yes NULL
created_by int(11) No
Id int(11) No
lead_id int(11) No
product_id int(11) No
created_at timestamp Yes NULL
created_by int(11) No
updated_at timestamp Yes NULL
updated_by int(11) No
deleted_at timestamp Yes NULL
deleted_by int(11) No
project_id int(11) No
Valid tinyint(1) No
budget_confirmed tinyint(1) No
analysis_completed tinyint(1) No
Status int(11) No
Category int(11) No
step_one_status tinyint(4) No
step_one_date timestamp Yes NULL
proposed_amount float(11,2) No
actual_amount float(11,2) No
closed_date date No
lost_reason_id int(11) No
lost_reason_details text No
assign_to int(11) No
Valid tinyint(1) No
contact_id int(11) No
role_id int(11) No
is_primary tinyint(1) Yes NULL
created_at timestamp Yes NULL
created_by int(11) No
updated_at timestamp Yes NULL
updated_by int(11) No
This Chapter contains the summary of user interface of our Online Customer
Relationship Management (CRM) Software.
Administrator Part
Administrator Home page:
Company Target:
Email Create
To send sent Email requires SMTP server. Due to lack of hardware resource we have
not configured any local SMTP server. We have used Gmail SMTP sever to send
email. To get real time push notification we have integrated Node JS.
This is to conclude that the project that we undertook was worked upon with a sincere
effort. Most of the requirements have been fulfilled up to the mark and the
requirements which have been remaining, can be completed in near future.
We tried to implement the best practices and Framework of PHP. We also implement
MVC design pattern with fronted template system like Smarty. We worked in PHP for
the first time in this project. So sometimes we faced some problems at the time of
work. We also tried to implement Node JS, Relational Database and Advance
Database Feature in our project.
In the near future we will try to implement Artificial Intelligence (AI) based feature in
our Project. Such as by collecting user experience and analyzing the user data we can
build up our relationship with customer more effectively. We can also build up our
marketing policy more effectively through communication with user. This is a scope
which we will try to update in the near future.
Appendix A: Glossary
Websites referred: