"CRM: Customer Relationship Management": Submitted by
"CRM: Customer Relationship Management": Submitted by
A PROJECT REPORT
Submitted by
SHREEJI PARMAR
190320107056
BACHELOR OF ENGINEERING
in
Computer Engineering
Ahmedabad
CERTIFICATE
This is to certify that the project report submitted along with the project
DECLARATION
We hereby declare that the Internship report submitted along with the
under the supervision of Mr. Parth soni and that no part of this report has been
directly copied from any student’s reports or taken from any other source,
ACKNOWLEDGEMENT
I would like to express my heartfelt gratitude to pseudocode for providing me with the
During my internship , I was assigned to work on CRM project that allowed me to gain
Throughout the internship, Mr. Parth Soni , Project Manager and Mr. Akshay Prajapati ,
Team Leader provided me with valuable insights and guidance that helped me to
questions and provide support, their industry experience and expertise helped me to
better understand the company and the industry, and allowed me to make the most of my
internship. I am thankful for their time and support, and for sharing their valuable
Thank You once again to pseudocode for giving me this opportunity to learn and grow
(190320107056)
ABSTRACT
During the internship, I was assigned to work on a CRM project that involved
Analyzing and managing customer data using Frappe/ERPnext , an open-
source ERP system .
List of Figures
List of Tables
Abbreviations
Table of Contents
Acknowledgement................................................................................................................i
Abstract................................................................................................................................ii
List of Figures.....................................................................................................................iii
List of Tables......................................................................................................................iv
List of Abbreviations...........................................................................................................v
Table of Contents................................................................................................................vi
Chapter 1 Overview of the Company...............................................................................1
1.1 History............................................................................................................................2
1.2 Different product / scope to do......................................................................................3
Chapter 2 Overview of different department and Layout of the production/process
being carried out in company............................................................................................5
Chapter 3 Introduction to Internship and Project…......................................................8
3.1 Internship Summary – Key To a good summary is the FIRST sentence, which
MUST contain the most essential information that you wish to convey.
3.2 Purpose
3.3 Objective
3.4 Scope (what it can do and can’t do)
3.5 Technology and Literature Review
3.6 Project / Internship Planning
3.6.1 Internship Development Approach and Justification
3.6.2 Internship Effort and Time, Cost Estimation
3.6.3 Roles and Responsibilities
3.6.4 Group Dependencies
3.7 Internship Scheduling (Gantt Chart/PERT/Network Chart)
Chapter 4 System Analysis………………………………………………………...........15
4.1 Study of Current System
4.2 Problem and Weaknesses of Current System
4.3 Requirements of New System
4.4 System Feasibility
4.4.1 Does the system contribute to the overall objectives of the organization?
4.4.2 Can the system be implemented using the current technology and within the
given cost and schedule constraints
4.4.3 Can the system be integrated with other systems which are already
in place?
4.5 Activity / Process in New System / Proposed System
4.6 Features of New System / Proposed System
4.7 List Main Modules / Components / Processes / Techniques of New System / Proposed
System
Chapter 5 System Design………………………………………………………………20
5.1 System Design & Methodology
5.2 Database Design
5.3 Input / Output and Interface Design (If applicable)
5.3.1 State Transition Diagram (optional)
5.3.2 Samples of Forms, Reports and Interface
5.3.3 Access Control / Mechanism / Security (If applicable)
Chapter 6 Implementation………………………………………………………………25
6.1 Implementation Platform / Environment
6.2 Process / Program / Technology / Modules Specification(s)
6.3 Finding / Results / Outcomes
Chapter 7 Testing………………………………………………………………………..55
7.1 Testing Plan / Strategy
Chapter 8 Conclusion and Discussion
8.1 Overall Analysis of Internship / Project Viabilities
8.2 Limitation and Future Enhancement
References...................................................................................................................40
Appendix...........................................................................................................................42
The company has worked with clients from various industries, such as
healthcare, education, e-commerce, and real estate.
Pseudocode Infotech prides itself on providing quality services to its
clients and ensuring their satisfaction.
1.1 History
Pseudocode Infotech Private Limited is a 2 years 16 days old Private Limited Indian Non-
Government Company incorporated on 09 Apr 2021. Its registered office is in , Gujarat
India.
The Company's status is Active, and it has filed its Annual Returns and Financial
Statements up to 31 Mar 2022 (FY 2021-2022). It's a company limited by shares having
an authorized capital of Rs 1.00 Lakh and a paid-up capital of Rs 1.00 Lakh as per MCA.
3 Directors are associated with the organization. Nainesh Joshi, Diptiben Naineshbhai
Joshi and Nirav Sureshchandra Shah are presently associated as directors.
Custom software solutions for clients..They use various Programming languages such as
Java,Kotlin,Swift and React Native to Create Platform Applications that run on both IOS
UI/UX Design
The graphic designing team at Pseudocode Infotech is responsible for creating
visual content for clients such as logos, banners, brochures, and other marketing .
They use various graphic designing tools such as Adobe Photoshop, Illustrator, and
InDesign to create high-quality designs that align with clients' branding and marketing
strategies.
Stages of Production:
Stage 3: Design
In the design phase (3rd step of SDLC), the program developer scrutinizes whether the
prepared software suffices all the requirements of the end-user. Additionally, if the
project is feasible for the customer technologically, practically, and financially. Once the
developer decides on the best design approach, he then selects the program languages
like Oracle, Java, etc., that will suit the software.
Once the design specification is prepared, all the stakeholders will review this plan and
provide their feedback and suggestions. It is absolutely mandatory to collect and
incorporate stakeholder’s input in the document, as a small mistake can lead to cost
overrun.
various
developers. The developers will then start building the entire system by writing code
using the programming languages they chose. This stage is considered to be one of the
longest in SDLC. The developers need certain predefined coding guidelines, and
programming tools like interpreters, compilers, debugger to implement the code.
The developers can show the work done to the business analysts in case if any
modifications or enhancements required.
Stage 5: Testing
Once the developers build the software, then it is deployed in the testing environment.
Then the testing team tests the functionality of the entire system. In this fifth phase of
SDLC, the testing is done to ensure that the entire application works according to the
customer requirements.
After testing, the QA and testing team might find some bugs or defects and communicate
the same with the developers. The development team then fixes the bugs and send it to
QA for a re-test. This process goes on until the software is stable, bug-free and working
according to the business requirements of that system.
Stage 6: Deployment
The sixth phase of SDLC: Once the testing is done, and the product is ready for
deployment, it is released for customers to use. The size of the project determines the
complexity of the deployment. The users are then provided with the training or
documentation that will help them to operate the software. Again, a small round of
testing is performed on production to ensure environmental issues or any impact of the
new release.
Stage 7: Maintenance
The actual problem starts when the customer actually starts using the developed system
and those needs to be solved from time to time. Maintenance is the seventh phase of
SDLC where the developed product is taken care of. According to the changing user end
environment or technology, the software is updated timely.
Departments
Project Management Team: This team is responsible for managing the entire
lifecycle of a project, from planning to delivery. They ensure that projects are
completed on time, within budget, and meet the requirements of the client.
Security Team: This team is responsible for ensuring the security of the
organization's systems and data. They develop and implement security policies
and procedures, monitor for threats, and respond to security incidents.
Sales and Marketing Team: This team is responsible for promoting the
organization's services to potential clients, generating leads, and closing deals.
3.1 Internship
3.2 Purpose
3.3 Objective
To develop and implement a comprehensive CRM system that meets the business
requirements of the organization.
To work collaboratively with a team to design, develop, test, and deploy the CRM
system on time and within budget.
To ensure the CRM system is scalable, secure, and can integrate with other
business systems if needed.
3.4 Scope
Identification of the business requirements and objectives for the CRM system,
including the types of data like Lead and visit information and that will be
collected, the functionalities required, and the user roles and permissions.
Testing of the CRM system to ensure that it meets the functional and non-functional
requirements, including scalability, security, and usability
Backend
Combat development challenges by reinforcing the backend functioning of the
application with easy synchronization of different features and seamless communication
with relational databases.
Frontend
Reinvent the look and feel of web applications using JavaScript technologies along with
HTML and CSS to improve aesthetics and enhance the digital experience of your
customers.
Angular React
Database
Consolidate data from multiple complex data sources and manage end-to-end data
integration to predict significant and actionable insights.
Cassandra oracle
Mobile
Transform web applications into leading-edge mobile applications by enabling mobility
across multiple platforms such as iOS, Android, and windows.
Testing
Ensure high performing and bug-free applications by implementing our structured Testing
methodologies for your tangled and complex applications.
The justification for this approach lies in the fact that it is a proven methodology for
software development and has been used successfully in numerous projects.
flexibility in the development process, as changes can be incorporated at various stages of
development Additionally, by involving stakeholders in the design
and testing process, it ensures that the system meets their needs and requirements. Overall,
this approach ensures that the project is delivered efficiently and effectively, with a focus
on meeting the project objectives.
The internship will require an estimated effort of 40 hours per week for a duration of 8
weeks, for a total of 320 hours. The cost estimation for the internship includes the salaries
of the mentors, the cost of any necessary equipment or materials, and any overhead
expenses associated with the internship program. Based on these factors.
We were a group of five people during the internship and we all are worked on the project
together. My teammates and I worked together on the project. System connectivity and
Github Access was provided on permanent Employees desktop so they all handled the
Communication. We worked together on the designing,coding and testing phase.
The study of the current system is an essential step in any software development project. It
involves analyzing the existing system, its strengths, weaknesses, and limitations,
as well as the needs and requirements of the users. This step helps to identify areas
where the current system falls short, areas for improvement , and opportunities for
innovation.
In the case of a CRM project, studying the current system involves analyzing the existing
CRM software of ERPNext and its features, as well as conducting interviews with users
and stakeholders to understand their needs and requirements.
This information is then used to identify gaps in the current system and to determine the
required improvements for the new system.
The study of the current system helps to ensure that the new CRM system is designed to
meet the needs and requirements of the users and stakeholders.
It also helps to identify potential risks and challenges that may arise during the
development process
By conducting a thorough study of the current system, the development team can
create a more effective and efficient CRM system that addresses the shortcomings of the
current system and provides a better user experience.
→ If the user might not able to deal with English language then user might not able to use
the system efficiently.
→There can be lack of system security, reliability Community.
→ Only Admin can manage this system there is no employee panel.
Hardware Requirements
- Processor. 1.8 GHz or faster processor. Dual-core or better recommended.
- Memory (RAM): 8 GB or more recommended.
- Hard Disk Space: 5 GB or more of available space.
- Graphics card: DirectX 10 compatible graphics card with a WDDM 1.2 driver or higher.
Software Requirements
- Operating System: Ubuntu 22.
4.4.1 Does the system contribute to the overall objectives of the organization?
Yes, the system should contribute to the overall objectives of the organization. The CRM
project should be aligned with the organization's goals and objectives,
and it should aim to improve customer relationship management and enhance customer
4.4.2 Can the system be implemented using the current technology and within
the given cost and schedule constraints
Yes, the proposed CRM system on Frappe/ERPNext can be implemented using current
technology and within the given cost and schedule constraints.
Frappe/ERPNext is an open-source web-based platform that can be
easily customized and integrated with other systems. The technology stack used in the
development of the CRM system is modern and scalable, ensuring a robust and efficient
system . Additionally, the cost of implementation is relatively low compared to other
proprietary systems, making it cost-effective. The development timeline for
the project has also been carefully planned to ensure that it meets the given schedule
constraints. Overall, the implementation of the CRM system
on Frappe/ERPNext is feasible and practical.
4.4.3 Can the system be integrated with other systems which are already
in place?
Yes, the CRM system can be integrated with other systems that are already in place, as
long as they have compatible interfaces and data formats. This integration can enable
seamless data sharing between different systems, such as ERP systems or marketing
automation tools, and can improve overall efficiency and accuracy of data. However,
proper planning and testing must be done to ensure that the integration successful.
and does not disrupt the current systems.
The platform will allow the company to “plan and manage effort that seeks to motivate
and enable employees to effectively serve community needs through the leadership of the
employer.”
These programs are typically built to support a company’s larger corporate social
responsibility program (CSR) or community engagement program or community
investment program. Companies may have specific reasoning for building such platforms
like building a positive brand reputation or increasing employee engagement in the
community.
Login page will appear when user lands on the platform. This page will have login section
at center of the screen.
User can login to platform using their email address and password.
Users who have forgotten their password may request that it by entering their email
address. System will check their email address existence, if it exists then reset password
link will be sent to their email address. This link automatically expires after 4 hours or
when it was already used to reset password successfully.
When clicking on reset password link from email, user will land to this page. Here user
can reset his password by entering new password.
After successful login, user will be redirected to platform landing page. This page will
display Home dashboard. User can filter their task by sidebar panel. User can also search
tasks by search bar. User can view only their attendance.
User can enter client’s data like new lead ,new visitors and document and other chart.
From Admin: Admin can see all the user’s data like how many leads is he providing to the
company ,from where he is providing the clients.and mainly attendance.
If there is cancellation happens by any chance then there will be button for that.
New lead page has all details of client’s ,company’s name etc and any other
information according to client’s contact person and user has one more authority
is he can transfer the lead if he is busy. To the other employees
allows users to view and submit customer’s data about their experience.
User can submit his or her story from this page. User must have Registered to a Axis
Database.. When user saves customer detail, it will be saved and in dashboard section
will show up in graphical way Then data will published on platform, it will appear on
platform and Admin can view it.
Lead List page will show details of a each lead. User can view Lead Name, description,
and customer detail by whom data is added. User can also recommend a data to a co-
worker.
User can update his/her basic, address details and additional details, skills. User can also
change their password.
A user can send any bugs, opinion, suggestion or query regarding system directly.
Admin has full right on the database of user, his Lead List, Visit list, his attendence, and
skills
Data Upload
Chapter 6 Implementation
The implementation platform/environment for the CRM project using ERPNext will depend
on the specific requirements and preferences of the organization. ERPNext can be deployed
on-premises or on cloud servers using popular cloud platforms such as Amazon Web
Services, Google Cloud, and Microsoft Azure. It also supports a variety of operating
systems, including Linux, Windows, and macOS. Additionally, ERPNext provides easy-to-
use installation scripts and Docker images for quick deployment. The choice of
platform/environment will depend on factors such as the size of the organization, IT
infrastructure, budget, and security requirements..
The technology specifications for the CRM project on ERPNext include the use of Python
as the primary programming language, with the Flask micro-framework for web
development. The project also involves the use of PostgreSQL as the database management
system, and the integration of various modules within ERPNext, such as the Sales module,
Customer module, and Marketing module. Additionally, the project may also require the use
of various APIs, including the Google Maps API and the Twilio API for SMS messaging.
The project is developed using agile methodology, with continuous testing and iteration
throughout the development process.
Login In Page
New User
Dashboard Page
Client Dashboard
Chapter 7 Testing
1. Identify the testing objectives: The first step in creating a testing plan is to identify
the objectives of the testing. These objectives should align with the project goals,
and should be specific and measurable.
2. Define the scope: The scope of the testing should be defined, which includes the
features, functionalities, and components that will be tested. It is important to
identify the test scenarios and use cases to ensure that all aspects of the application
are tested.
3. Choose the testing types: Based on the identified objectives and scope, different
types of testing should be selected, such as unit testing, integration testing,
functional testing, performance testing, security testing, etc.
4. Determine the testing approach: The testing approach should be defined, such as
manual testing, automated testing, or a combination of both. The testing approach
should also take into account the testing environment and resources required.
5. Identify the testing tools: The testing tools required for the testing should be
identified, such as testing frameworks, test management tools, and automation
tools.
6. Define the testing schedule: The testing schedule should be defined, which
includes the testing timeline, milestones, and deadlines.
7. Assign roles and responsibilities: Roles and responsibilities should be assigned to
each member of the testing team, including test analysts, testers, and test
automation engineers.
8. Develop the test cases: Test cases should be developed for each test scenario and
use case. These test cases should be detailed and include expected results, test
data, and test conditions.
9. Execute the tests: The testing should be executed according to the testing plan and
test cases. Any defects or issues found during testing should be logged and
tracked.
Review and report: After the testing is complete, the results should be reviewed, and a
testing report should be created. This report should include the testing objectives, scope,
testing approach, testing tools, test cases, testing results, and any issues found during
testing.
As per the findings and results of the CRM project on ERPNext, it can be concluded that
the project was successful in achieving its objectives. The new system addressed the
problems and weaknesses of the previous system, and the requirements of the new system
were met through proper planning and execution. The integration with existing systems
and technology constraints were also taken into consideration during the implementation
process.The overall analysis of the internship/project shows that a proper planning and
execution approach is crucial for the success of any project. The use of modern technology
and software can greatly enhance the efficiency of an organization and help achieve its
objectives. Furthermore, effective communication and collaboration among team members
can lead to a more successful and efficient project outcome.
Limitation:
If the user might not able to deal with English language then user might not able to use
the system efficiently.
→There can be lack of system security, reliability Community.
→ Managing users time-sheet manually.
→ Authenticity of user entered details.
→ Only admin can manage attendance.
→ No direct communication between NGOs.
Future Scope:
→ Integration with AI and machine learning capabilities to provide more accurate
customer insights and improve predictive analysis.
→ Communication between NGOs and administration.
→ Development of a mobile app for easy access to CRM data on-the-go.