Professional Documents
Culture Documents
A PROJECT REPORT
Submitted by
SHREEJI PARMAR
190320107056
BACHELOR OF ENGINEERING
in
Computer Engineering
CERTIFICATE
This is to certify that the project report submitted along with the project entitled
DECLARATION
We hereby declare that the Internship report submitted along with the
the supervision of Mr. Parth soni and that no part of this report has been directly
copied from any students’ reports or taken from any other source, without
I would like to express my heartfelt gratitude to Pseudocode for providing me with the
opportunity to participate in their internship program.
During my internship, I was assigned to work on a CRM project that allowed me to gain
practical experience in the field of customer relationship management. I learned about the
importance of managing customer data effectively and efficiently to enhance the customer
experience and drive business growth.
I am grateful to Parth soni and the rest of the team for their guidance and support throughout the
internship. Their valuable feedback and encouragement helped me to develop my skills and
knowledge in CRM, and I am confident that this experience will benefit me in my future career
endeavors.
Thank you once again to pseudocode for giving me this opportunity to learn and grow.
Shreeji Parmar
ABSTRACT
This report provides an overview of my internship experience working on a CRM project with Frappe
ERPNext at Pseudocode. The goal of the internship was to gain practical experience in the field of
customer relationship management and to develop skills and knowledge related to CRM systems and
ERP software.
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. This project allowed me to gain
hands-on experience with Frappe ERPNext and to learn about best practices for managing customer
data, creating customer profiles, and developing customer engagement strategies.
Throughout the internship, I received guidance and support from my supervisor and the rest of the team,
who provided me with valuable feedback and helped me to develop my skills and knowledge in both
CRM and ERP software. I also had the opportunity to participate in team meetings, where I learned about
the company's overall strategy and how Frappe ERPNext fits into the larger picture.
Overall, the internship was a valuable learning experience that allowed me to apply the concepts and
theories I learned in my studies to a real-world business setting. I believe that the skills and knowledge I
developed during the internship, particularly in Frappe ERPNext, will be beneficial to my future career
endeavors in the fields of customer relationship management and ERP software.
LIST OF TABLES
List of Tables v
List of Abbreviation vi
LIST OF ABBREVIATION
TABLE OF CONTENTS
Acknowledgement i
Abstract ii
List of Tables iv
List of Abbreviations v
Table of Contents vi
1.1 History 1
3.2 Purpose 6
3.3 Objective 7
3.4 Scope 7
Chapter 6 Implementation 19
6.3 Outcomes 21
Chapter 7 Testing 23
References 26
Pseudocode Infotech Private Limited is an Indian IT company that offers software development, web
development, and digital marketing services. The company was founded before 2 years 15 days.
Pseudocode Infotech has a team of experienced professionals who are skilled in various technologies,
such as Java, PHP, Python, Node.js, and AngularJS. The company's services include custom software
development, mobile application development, website design and development, e-commerce
development, and digital marketing.
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.
Overall, Pseudocode Infotech is a growing IT company that offers a range of services to its clients and
aims to deliver quality solutions to their problems.
OUT IN COMPANY
DEPARTMENT
• Web Development:
The web development team at Pseudocode Infotech is responsible for designing, developing, and
maintaining websites for clients. They use various technologies and platforms such as HTML,
CSS, JavaScript, PHP, WordPress, and Magento and mainly Frappe/ERPNext to create custom
websites tailored to clients' needs.
• Application Development:
The application development team at Pseudocode Infotech is responsible for developing mobile and
desktop applications for clients. They use various programming languages such as Java, Kotlin, Swift, and
React Native to create cross-platform applications that run on both iOS and Android devices.
• Software Development:
The software development team at Pseudocode Infotech is responsible for developing custom
software solutions for clients. They use various programming languages such as Python, PHP, and
Java to create software applications that automate business processes and improve efficiency.
The social media marketing team at Pseudocode Infotech is responsible for managing clients' social
media accounts, creating engaging content, and running social media advertising campaigns. They
use various social media platforms such as Facebook, Twitter, LinkedIn, and Instagram to reach
clients' target audience and increase brand awareness
The search engine optimization (SEO) team at Pseudocode Infotech is responsible for
improving clients' website ranking on search engines such as Google, Bing, and Yahoo.
They use various SEO techniques such as keyword research, on-page optimization, an
link building to increase organic traffic to clients' websites.
• Graphic Designing:
The graphic designing team at Pseudocode Infotech is responsible for creating visual content for
clients such as logos, banners, brochures, and other marketing materials. 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.
Pseudocode Infotech Private Limited uses desktop computers with high-end specifications,
such as Intel Core i7 processors, 16GB RAM, and 1TB HDD/256GB SSD, in all departments.
Web development uses dual monitors, graphics tablets, code editors, web development tools, and
content management systems. Application development relies on integrated development
environments, mobile devices for testing, programming languages, and version control systems.
Software development uses IDEs, programming languages, and version control systems. Social media
marketing uses social media management tools, design tools, and analytics tools. Search engine
optimization uses keyword research tools, on-page and off-page optimization techniques,
and analytics tools.
The process of developing a software is done via following the basic SDLC rule which is proved to
be most efficient while developing a software. Hence, the company uses the same SDLC technique
for developing a software.
Requirements Operations
UI/UXDesign Coding QA Stage
Collection Stage
While starting any software development project this is the most essential part of the whole process
and therefore the company first get a clear idea about the functional and non-functional
requirements. This is the responsibility of the project manager to communicate the requirements
distinctly to the development and designer team.
It is the role of UI/UX designers of the company. Once the requirements about the design and user
interface is understood theteam starts with developing the visual solution of the product. This part
of the process is known as user interface design, and it stands for how users perceive the app.
3. Focus on Coding:
In the third step, we finally get down to coding the concepts listed above. Here, the development
team implements all models, business logic, and service integrations specified in the prior stages.
The coding stage is usually the longest, as it is the cornerstone of the whole process. The
development team follows the software requirements to build a product that lives up to the
stakeholder’s expectations.
At the QA stage, the testing specialists discover and inform about the problems that
arise while using the system. The testing frameworks may vary depending on the
project, including automation and/or manual testing.
3.2 PURPOSE
To develop and implement a comprehensive CRM system that meets the business requirements of the
organization.
To improve customer satisfaction by providing better customer service and personalized interactions.
To increase sales revenue by providing the sales team with a more efficient and effective tool for
managing customer interactions.
To streamline business processes and improve operational efficiency by automating repetitive tasks and
providing real-time access to customer data.
To develop skills and gain practical experience in software development, project management, and
customer relationship management.
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.
To provide ongoing support and maintenance to the CRM system to ensure it continues to meet the
changing needs of the organization and its customers.
The project scope for a CRM project on internship will typically involve the following:
Identification of the business requirements and objectives for the CRM system, including the types of
data that will be collected, the functionalities required, and the user roles and permissions.
Development of a detailed project plan that includes timelines, milestones, and resources
required.designed to work seamlessly on a range of devices, including smartphones, tablets, and desktop
computers, to provide users with maximum flexibility and convenience.
The project scope will be defined based on the business requirements, available resources, and time constraints.
It is important to have a clear understanding of the project scope to ensure that the project is completed on time,
within budget, and meets the expected outcomes.7
Frappe/ERPNext is an open-source ERP system that includes a built-in CRM module. The CRM module is
designed to manage customer interactions, leads, opportunities, and other related activities. The
2>JavaScript and jQuery - for developing the frontend user interface and enhancing user experience
Frappe/ERPNext also provides a RESTful API for integrating with other systems, making it possible to integrate the CRM
module with other business systems. Additionally, the platform supports custom app development and customization of
existing modules, enabling organizations to tailor the CRM system to their specific needs.
Review of Frappe/ERPNext framework and its capabilities for implementing CRM functionalities.
Evaluation of third-party CRM modules available in the Frappe/ERPNext community.
Review of best practices for CRM implementation on the Frappe/ERPNext platform.
Identification of key features and functionalities required for the CRM system based on industry
standards and customer needs.
Review of case studies and success stories of other organizations that have implemented CRM on
Frappe/ERPNext.
Identification of potential challenges and limitations of using Frappe/ERPNext for CRM
implementation.
Evaluation of data migration and integration options with other business systems.
The literature review would involve researching various sources of information such as academic
journals, technical blogs, user forums, and product documentation to gather insights on the technology
and best practices for implementing CRM on Frappe/ERPNext. This review would help in identifying
the most suitable approach for implementing CRM functionalities on the Frappe/ERPNext platform
and enable the development team to design and develop a system that meets the business requirements
of the organization.
⚫ VS Code
Visual Studio Code (VS Code) is a free and open-source code editor developed by Microsoft. It is
known for its robust code editing capabilities, with features such as IntelliSense, debugging, and Git
integration.
VS Code supports a wide range of programming languages and has a large library of extensions and
plugins that allow developers to customize their workflow. It is also highly customizable with a variety
of themes and settings. Overall, VS Code is a popular code editor among developers due to its
versatility, ease of use, and powerful features.
Project/Internship planning is a critical process that involves defining project scope, creating a project plan,
identifying resources, developing a risk management plan, and ensuring effective communication and
reporting. It helps to ensure that the project objectives are clearly defined, and the necessary resources and
timelines are identified. The planning phase is an opportunity to identify potential risks and develop
mitigation strategies to address them. Effective communication and reporting mechanisms are also
established to ensure that all stakeholders are informed about project progress and any changes in scope,
timeline or resources. The planning phase lays the foundation for the successful execution of the project or
internship.
The project/ internship development approach involves defining the steps required to achieve the
project objectives. The approach should be flexible and able to adapt to changing circumstances, such
as new requirements or unforeseen challenges. The justification for the chosen approach should be
based on several factors, including the project objectives, available resources, and timeline.
In the case of a CRM project, the development approach should involve identifying the key
requirements for the system, designing and building the system, testing it to ensure it meets the
requirements, and finally deploying and training users on the system. This approach ensures that the
project meets the client's needs and is delivered on time and within budget
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. It also allows for 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.
We were a group of two people during the internship and we both worked on the project together. My
teammate Dev and I worked together on the project. System connectivity was provided on his desktop
so she handled the communication, we worked together on the designing, coding and testing phases.
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 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.
The current system in a CRM project may have various problems and weaknesses that need to be addressed to
develop an efficient and effective new system. Some of the common problems and weaknesses in a current
CRM system include:
Lack of Customization: The current system may not offer enough customization options, which makes it
difficult for businesses to adapt it to their specific needs.
Poor User Experience: The user interface of the current system may not be user-friendly, making it difficult
for users to navigate and complete tasks.
Inefficient Data Management: The current system may not have an efficient data management system, leading
to errors, redundancies, and inconsistencies in the data.
Limited Reporting Capabilities: The current system may not offer enough reporting capabilities, making it
challenging for businesses to extract useful insights from the data.
Integration Issues: The current system may not integrate well with other systems used by the business, leading
to inefficiencies and data silos.
Identifying these problems and weaknesses is essential to develop a new CRM system that addresses these
issues and provides a better user experience while increasing productivity and efficiency.
Hardware Requirements:
Some of the hardware requirements for the new CRM system are:
Server:
Network Infrastructure:
Storage Devices:
Workstations:
Peripherals:
Software Requirements:
User Requirement:
User requirements for a CRM project may include:
Contact management: The ability to store and manage customer data including names, addresses,
emails, phone numbers, and other contact details.
Sales automation: A system for tracking sales leads, sales activities, and generating sales reports.
Marketing automation: A system for automating marketing campaigns such as email marketing, social
media marketing, and advertising.
Customer service management: A system for managing customer inquiries, complaints, and feedback.
Analytics and reporting: The ability to generate reports and analytics on customer data, sales data, and
marketing data to identify trends and make informed decisions.
Integration with other systems: The ability to integrate the CRM system with other systems such as
accounting software, email clients, and project management tools.
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 satisfaction. By implementing a CRM system, the
organization can streamline its customer-facing processes, gain insights into customer behavior and
preferences, and ultimately drive sales and revenue growth. Therefore, the success of the CRM project
should be measured by its ability to 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?
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 system 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 is successful and does not disrupt the current systems.
Interactive
reports
Proper analysis
Merged data
System
Contains
Take less time dashboards
User-Friendly
The system design and methodology of a CRM project typically involves the following steps:
Requirements gathering: This involves gathering and analyzing the requirements of the system from the
stakeholders and users.
System design: This involves designing the system architecture, database schema, user interfaces, and
other technical aspects of the system.
Implementation: This involves developing the system using appropriate programming languages,
frameworks, and libraries.
Testing: This involves testing the system to ensure that it meets the requirements and is functioning as
expected.
Deployment: This involves deploying the system to the production environment, configuring it, and
providing training to the users.
Maintenance and support: This involves maintaining the system, fixing any bugs or issues, and providing
ongoing support to the users.
The methodology used for the CRM project can vary depending on the specific requirements and goals of
the project. Some common methodologies used in software development include agile, waterfall, and
iterative approaches. The choice of methodology should be based on the specific needs of the project and
the preferences of the development team.
6.0 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
TECHNOLOGY SPECIFICATIONS
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.
Process Specifications
The findings and outcomes of the CRM project implemented on ERPNext are as follows:
Improved Customer Relationship Management: The project has successfully improved the way customer
data is managed and the interactions with them. This has led to a more streamlined and efficient process
of handling customer inquiries and addressing their needs.
After implementing the CRM project on ERPNext, the results showed significant improvements in
managing customer interactions and relationships. The system allowed for easy tracking of sales leads,
customer orders, and support requests, which streamlined the sales and customer service processes.
Comparing the new system with the old one, it was found that the previous system lacked adequate
features for effective customer management, and data was scattered across different systems. The new
system consolidated all data and made it accessible to authorized personnel, improving data accuracy and
minimizing data loss.
The implementation of the new system also resulted in better communication among team members, as
the system provided real-time updates on customer interactions and orders. This led to improved
collaboration and reduced errors in data entry.
In conclusion, the implementation of the CRM project on ERPNext was successful in improving
customer management and streamlining business processes. The new system met the requirements of the
organization and improved overall efficiency, leading to better customer satisfaction and increased
revenue.
7 .0 TESTING
Figure 7.1
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.
The internship/project involved the development and implementation of a CRM system on the
ERPNext platform. The current system was analyzed and requirements were gathered for the new
system. The system was designed and implemented, and testing and training were conducted. The
system was found to have improved customer management and communication. Overall, the project
was successful in meeting its objectives and delivering a functional CRM system on the ERPNext
platform.
here are some possible limitations and future enhancements of a CRM project:
Limitations:
incomplete or inaccurate data entry by users could result in incorrect customer insights and
analysis.
Integration issues with other systems and applications can hinder the seamless flow of data and
affect overall system performance.
⚫ Future Enhancements:
REFERENCES
During the course of project we took help from certain external sources. Some of them are as follow:
⚫ https://docs.erpnext.com/docs/
⚫ https://frappeframework.com/docs/
⚫ https://www.youtube.com/watch?v=QHnQgr_0f1k&list=PL81DRyBlXws97QY57jlUhJxMp3mNa-qUl