SlideShare a Scribd company logo
i
Recruiting Application Developed on Salesforce
Project report submitted in partial fulfillment of the requirement for
the degree of Bachelor of Technology
Submitted by:
Vikas Gupta
REG no:-219302269
UNDER THE GUIDANCE OF
Mr. Sa njay Gu pta(Salesforce )
Department of InformationTechnology
MANIPAL UNIVERSITY JAIPUR, JAIPUR – 303007
(RAJASTHAN), INDIA
ii
Project Report Undertaking
I Vikas Gupta Roll No.-219302269 Branch Information Technology is done my industrial
training project.
As per procedure I have to submit my project report to the university related to my work that
I have done during this internship.
I have compiled my project report. .
So, I hereby declare that the project report is fully designed/developed by me and no part of
the work is borrowed or purchased from any agency.
iii
CERTIFICATE
iv
ACKNOWLEDGEMENT
I would like to express my gratitude to my training instructor Mr. Sanjay Gupta who
guided me throughout the project “Recruiting Application Developed on
Salesforce”. He helped me in the thorough understanding of project, implementing the
functionalities and making our project more responsive and efficient.
Secondly I would also like to thank my friends and all my mentors who helped me in
finalizing the project with in the given time.
v
TABLE OF CONTENTS
List of Figures viii
List of Tables ix
List of Abbreviations x
Abstract xi
Chapter 1 -INTRODUCTION 1
1.1 Introduction to cloud computing 1
1.1.1 Top benefits of cloud computing 2
1.1.2 Types of cloud computing 3
1.1.3 Versions of cloud services: IaaS, PaaS and SaaS 5
1.2 Introduction to CRM(Customer relationship management) 6
1.2.1 For whom CRM is ? 7
1.3 What is Salesforce ? 7
1.3.1 Salesforce Architecture 8
1.3.2 MVC(salesforce) 9
1.3.3 Different Salesforce versions (Editions) 10
1.3.4 System Panoramic View 11
1.3.5 Technology of Salesforce 12
1.4 Problem statement 13
vi
1.5 Objective 13
1.6 Methodology 14
1.7 Organization of chapters 15
Chapter 2 - Literature Survey 16
Chapter 3 – System Development 18
3.1 External Interface Requirements 18
3.2 Functional requirements 19
3.3 Non-Functional requirements 21
3.4 Development Area 21
3.4.1 Custom Applications 21
3.4.2 Installing packages 21
3.4.3 Objects in salesforce 22
3.4.4 Tabs in salesforce 23
3.4.5 Fields in salesforce 24
3.4.6 Relationship in salesforce 26
3.4.7 Page Layouts in salesforce 27
3.4.8 Schema Builder in salesforce 28
3.4.9 Security and Sharing rules in salesforce 29
3.4.10 Cross Objects formula 31
vii
3.4.11 Validation rules 33
3.5 Using Automation Tools 35
3.5.1 Approval process automation 37
3.5.2 Flow diagram of approval process 42
Chapter 4 – Analysis of performance 43
4.1 Types of testing in salesforce 44
4.2 Implementation of testing 44
4.3 Working of demo recruiting application along with approval process 45
Chapter 5 – Conclusion 50
5.1 Conclusion 50
5.2 Future scope 50
REFERENCES 51
viii
LIST OF FIGURES
SNo. TITLE
1 Cloud Architecture
2 Types of cloud
3 Cloud Services
4 Salesforce Architecture
5 MVC of Salesforce
6 Salesforce Edition
7 Installed Packages
8 Creating custom tabs for job posting site object
9 Creating custom picklist
field
10 List of all fields and
relationships created
11 Creating master-detail
relationship job posting
object
12 Custom Page Layout
13 Schema Builder
14 These are the object level
access given to the HR
recruiter profile
15 Adding Formula field on
cross object
16 Adding Validation Rule
17 Process builder
18 Flow builder
ix
19 Approval process
20 Adding fields to approval
21 Adding initiation to
approval
22 Approval page layout
23 Flow diagram of the
approval
24 Home page
25 New position created
26 New position details page
27 Submit for approval
28 Status of approval
29 Approval task added for
recruiter
30 Approval submitted by
recruiter
31 Positon Approved
32 Email Received
LIST OF TABLES
S.No TITLE
1 Hardware Requirements of project
2 Software Requirements
3 Functional Requirements
4 Custom fields of object
x
5 object level access
6
Email template for approval
7
Email template for rejection
LIST OF ABBREVIATIONS
S.No. Abbreviation Definition
1 Paas Platform as a service
2 CRM Customer relationship management
3 SFDC Salesforce developer console
4 MVC Model view controller
5 UI User Interface
6 HR Human Resource
xi
ABSTRACT
This project recruitment application is a system where HR can also automate the
recruitment of HR applicants online, view organizational requirements and apply
for the appropriate job.
Recruitment Application provides the users worldwide with online help. Such
application provides the users worldwide with online help. Such application plays
an important role in the simplification of the recruitment process.
Earlier the hiring process was done in a manual manner in which every step was
time consuming. Now with the available solutions this type of application can be
implemented at several levels of integration and is scalable to different levels.
With this application for a company it would be easier to manage staff activities and
the most benefitted would be the HR team of the organization.
1
CHAPTER 1.
INTRODUCTION
1.1 Introduction to cloud computing
Cloud Computing is characterized not as a community server but it stores as well as
deals with cloud-based data. It’s easy to understand cloud computing. All programs
within the web browser are created and run. Using the network connection, users
and builders will be able to access all applications, thereby offsetting the complexity
and overhead of the preservation of the environment.
Cloud computing- it can be accessed from everywhere even from remote places
with an internet connection unlike conventional business applications that maybe
complicated or may quote high prices and need experts to install, run, replace and
secure. The entire system should be painted together in conventional frameworks.
Constant security is common for such type of smooth interaction and for easy
operation of the device. It is not necessary to invest cash in acquiring and assisting
hardware and software infrastructure in resulting of low cost or decreased cost for
users and developers and this is only made possible because of cloud computing.
Cloud computing primarily affects the functionality of the applications. In the
cloud computing framework, we can immediately connect customers and owners,
and the applications can be easily delivered into the cloud, raising the response
time of the user request. With then reduced complexity the enterprise will boost
the whole IT cycle process.
2
Fig 1. Cloud architecture.
1.1.1 Major benefits of cloud computing:
Cloud computing is a significant change from the conventional form in which
businesses work about the capital. The seven common reasons why organizations turn
to cloud services are:
 Price -Cloud computing helps users to reduce the capital cost to buy hardware
and software and to set up and operating data-centers on site — computer
server racks, the round clock time for power and cooling energy, the IT experts
for managing the infrastructure.
 Speed -Major cloud computing services are capable enough to provide self-
service that too on demand, so that even large number of computing resources
can be delivered in less amount of time, typically with just a few mouse clicks,
therefore giving businesses huge level of of flexibility and exerting the pressure
off capacity planning.
3
 Global scale — Advantages of cloud computing services elastic scaling
capability. In cloud means to provide the exact amount of resources: more or
less processing power, storage, bandwidth required for according to a
particular geographic location.
 Productivity — On-site data-centers usually need a lot of “racking and
stacking” to set up equipment’s, software patching and other time-consuming
IT management activities. It eliminates the need for many of these activities,
thence these IT managers can spend time on more relevant business objectives.
 Performance — The largest cloud storage services operate on a worldwide
network of secure data centers that are updated to the latest generation of
powerful, reliable computing hardware on a regular basis 24*7. This provides
huge benefits over a single corporate data-center.
 Security — In the market many cloud providers tend to offer a large set of
policies, technologies that enhance your overall security posture, thus helps to
secure your data, applications and framework against potential ultimatum.
1.1.2 Kinds of cloud computing:
It is not compulsory that every cloud is equal and not one type of cloud computing
style ids is right for all. Various models, verities and resources have evolved to help
provide the exact solution the demands.
Firstly, you need to decide the type of cloud framework or architecture for the cloud
service to be implemented on. Cloud services are distributed in three separate ways:
Public, Private and Hybrid cloud.
Public cloud — Third party cloud service providers own and operate public clouds
which deploy their resources such as servers and internet storage. Salesforce,
Microsoft azure are examples of a public cloud. In a public cloud, the cloud provider
4
run and maintains all the hardware apps, and other related resources. Everyone can
have access and handle these services by the help of a web integrator.
Private cloud - It refers to the resources that are used thoroughly by a private owner or
by the entire organization. A private cloud can be found physically on the company’s
on-site data center. Some firms pay for hosting their private cloud to third party
providers. We can say that it is one which support the services and framework on a
private network.
Hybrid cloud - It combines both private as well as public clouds, that are linked to each
other by technology hence allowing data and processes to be shared between them. A
hybrid cloud provides your organization with more flexibility, more implementation
options and helps to leverage the current framework, protects and securement by
allowing information and applications to move between private and public clouds.
Fig2. Kinds of cloud
1.1.3 Versions of cloud services:
5
Almost all cloud services are categorized as:
 providing infrastructure,
 providing platform and
 software as services
These are sometimes referred to as the cloud processing stack, since they build on the
top of each other.
Infrastructure as a service (IaaS) — The lowest category of cloud computing
services. Using, you can rent IT framework: physical and virtual processors (VRs),
storage, networks, operating systems—froma cloud given on a pay you go basis.
Examples: Amazon EC2, Rackspace, Google Compute Engine.
Platform as a service (PaaS) — Platform as a service points to cloud computing
services which delivers ondemand environment for software application developing,
testing, delivering and managing. It is designed to make work easy for programmers t
quickly create web or mobile applications, without worrying about setting up or
managing the underlying framework of servers, storage, network and databases
infrastructure.
Examples: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App
Engine,
Software as a service (SaaS) —It is a mechanism to providing on demand and usually
on a subscription basis software application. They host and maintain the software
mechanism and underlying framework through this, and tackle any maintenance, such
as software updates and securing protection.
6
Fig 3. Cloud Services.
1.2 Introduction to CRM
Customer relationship management (CRM) is a technology that manages
all the relationships aswellas interactions with customers and potential customers wit
hin the business. The aim is simple: Improve relationships among business . A CRM
program provides forestay connected, streamline processes, and increase in
productivity.
When people speak about it, they are usually referring CRM as a device or an
instrument, a tool that helps with contact management, productivity, and more.
This tool lets you focus on the relationships thatcompany has with individual people
includes clients,
7
users, employees or suppliers with them during the lifecycle, including attracting pot
ential customers, winning their business, and offering support and complementary se
rvices throughout the partnership.
1.2.1 For whom CRM is?
A CRM system gives everybody – from sales, customer service, business developme
nt, recruitment, marketing, or any other business line – way to manage the external in
teractions and relationships that ensure success allowing you to
store and prospect contact information, identify sales opportunities, record service pr
oblems and manage marketing campaigns, all at one central location—and make
information about every customer interaction available to anyone at your company
who might need it.
With visibility and easy data access, collaboration is made easier and productivity is i
n
creased. Everyone in your company can see how you communicated with customer
what they bought, when they last bought, what they paid for, and so much more.
CRM can help businesses of all sizes to grow, and can be particularly beneficial for a
small business, where teams often need to find ways to do more with less.
1.2 What is Salesforce?
It is one of the world's leading cloud computing firms and the number one customer c
ourting management (CRM) ondemand. Salesforce does not require any software or
hardware installation, or resources such as servers. The internet is all we need to get
entry into Salesforce. This enables even the most nontechy people to use and configu
re the system as consistent with their demands.
.
8
1.3.1 Salesforce Architecture
Salesforce has a multitenant architecture in other words it means that there is a single
cloud provider who provides with a platform as a service and each of the user has their
own working space inside that service. When in a building each flat is same but the
tenants are different or the people who rented the flat or the service are different.
Fig 4. Salesforce Architecture.
The architecture flow diagram in the above picture shows how data flows between the
cloud providers and service rendered by the user on the other end this platform on
salesforce is stored in a meta data repository.
The html request made are done through the visual force pages created by salesforce.
9
1.3.2 Salesforce Model View Controller
MVC is a design pattern that differentiates business logic from computer logic that
is it separates user's displayed graphical interface from code that handles user actio
ns [4].
In Salesforce, we can use visual force from SFDC to write VIEW pages which are ve
ry close to the page (JSP) of the java servlets. Each page of the Visualforce
(VF) is correlated to a controller. Controller and Class model can be written using
Apex language.
The Model is the usable database. In Visualforce, it is set of Salesforce objects and
fields.
The View is the coding that develops up our page’s User interface. In this case, its of
residing in the HTML, JavaScript and visualforce pages used in the UI.
The Controller is the middle layer between the model and the view. It’s Apex code
with the database according to the view’s needs.
10
Fig 5. MVC of Salesforce.
1.3.3 Different Salesforce versions (Editions)
Salesforce tends to offer separate versions of its products and services which cpo
depend on organization requirements.
1) Professional Edition: It consists of full customer relationship functionality.
2) Enterprise Edition: This edition offers more senior CRM customization and
administration tools along with provisions of Professional edition.
3) Unlimited Edition: Along with functionalities offered by Enterprise Edition,
Unlimited Edition even offers full mobile access, premier support, unlimited custom
apps and more.
11
4) Developer Edition: This edition allows programmers to extend the Salesforce
system, integration with other mechanisms and develop new applications and tools.
Fig 6. Salesforce Editions.
1.3.4 System Panoramic View
Salesforce combines configuration power with custom development within its platfor
m i.e. Platform Force.com. This software interface will use custom code, workflow r
ules, approval processes to apply their business logic, connect the data with other app
lications, produce reports and do the analytics within no time.
12
The Salesforce CRM model is used for communications with organisations such as e
mails, calls, consumer experiences and also for opportunities such as sales, promotio
n and assistance. Through Force.com we will use the Salesforce1 software to run co
mpany on the device. Using HTML 5 and UI framework, we can build and optimize
mobile apps, and support all devices with a single code base [5].
1.3.5 Technologies in Salesforce
1) Apex
Apex programming language used by salesforce. This language is case in sensitive,
object oriented platform identical to java syntax. Apex is used in Force.com to run
programs and procedures such as connections, keys, record injection and so on with
personalized controllers [5].
2) Visualforce (VF)
It is a framework with tag-based markup language same as to HTML on the Force.com
platform. Using Visualforce, custom sites can be built along with the aid of the other
front-end technology such as HTML, CSS, jQuery, and JavaScript for mobile phones
and Desktops [5].
3) Lighting
It is a component-based architecture prepared for user equipment applications from
Salesforce that is developed on a open source framework. This allows easy building
of responsive applications.
13
1.4 Problem Statement
A cloud platform has been provided by Force.com that lets organization to build a
CRM solution for their organization and moreover do it in radical successful manner.
It’s a multi-tenant software baring to its features and now many deployed applications
can be constructed making the life of the Organizations easier in many ways.
The scope of this project is limited based on the application developed in force.com: -
 To build and develop an application for the sales company to recruit new members
in an easy way
 Ease of access and use for the HR team of the company by creating custom objects
and relationships
 Security Analysis
 Developing a proper UI
 Automatic business process for the existing app
1.5Objectives
This is an application which uses cloud computing capabilities and features to attain a
fully fledges CRM solution making it possible through Paas feature. I have used” Sales
Force” features to achieve the aim.
The main goal is to build and deliver an application in the sales force environment.
This application project createdmust satisfy needs of customersand should have every
cloud computing ability to achieve the expectations of users.
This application will be developed and built in the following environment: Force.com
environment.
14
1.6Methodology
We will be using force.com platform for developing the application and to achieve
this we will use the sales force cloud-based Technology in the following steps: -
 Firstly, we start with creating a data model for a recruiting app the data model
will contain different types of customobjects.
 These custom objects would be related to each other by the relationships
provided by the Salesforce platform.
 These custom objects would have their own custom fields for the required data
to be imported.
 We will use automated business processes and approval processes
together for the proper functioning of the app by the company.
 There are different types of records and each record has its own page layout
including quick action tabs for an interactive UI
 We will restrict data access using custom field security options so that there is a
role hierarchy in which each one has its own level of Record access and the data
is secured at all times
 Data validation and formulas for the improvement of data quality
 All this is integrated together with the help of the Lightning components
provided by Salesforce and the recruiting app would be deployed in a single
developer org edition.
15
1.7 Organization of Report
Chapter 1- Introduction to cloud computing and types of clouds along with services
provided. Knowledge of CRM and introduction to salesforce.
Chapter 2 - Existingsolutions to CRM and its drawbacks. Proposed solutions forthe
same.
Chapter 3 - System development and the basis of developing a model for the
recruiting application along with salesforce features used.
Chapter 4 - Testing provided by salesforce and implementation of testing in the
project using developer org and demo cycles.
Chapter 5 - Conclusion and Future scope.
16
CHAPTER - 2
LITERATURE SURVEY
Underlying old system:
As internet users we are all familiar to fascinating, creative, innovative and sometimes
stupid ways in which it has changed our ways of working and playing. As these trends
definitely have changed how we deal with content, a related collection of internet led
innovations and technology is affecting how we create and operate with business
applications.
Todays internet technologies help to create, configure, and use business applications of
any kind. Indeed, the technology of the internet has provided us with the opportunity to
address different form of market troubles that had previously stayed out of reach because
of difficulty or expense.
Just as the improvements that shifted publication technologies from paper to bits made
this possible for us to acquire information right at our fingertips on anything about in
the whole world, the advances in application/computer technology make it possible to
invision a reliable, enterprise class framework for virtually all company needs in same
way.
Adapting these new methods of building and running applications enable the world of
cloud computing, where you can access applications, apps as utilities over the internet,
rather than pieces of software running on your desktop or the server room. The model is
already quite common for consumer applications such as email and photo sharing, and
for some business applications, such as customer relationship management (CRM).
17
Problems in the underlying system:
The need to retain a high configuration environment by using the current system to run
some massive that is used to build these software applications. This could require large
amount of cost to build and for maintenance.
We need to purchase the software that is used to build the applications. We will need to
upgrade the current version of application.
The biggest drawback to cloud setting of the current program is lack of portability. Even
if we have highly engineered systems and upgraded applications, as we move from one
location to another, we have to take the machine with us. This will place users at risk.
The biggest downside of the current program is lack of rehabilitation from the disasters.
Which ensures that all the data stored on the system cannot be retrieved in case of
catastrophe. But that may lead to loss of data.
To set up the system, the initial existing sytsem also needs lay out.
Devised new System:
Since there are several issues with the current network, this initiative incorporates a
modern technique called cloud computing. The system for the fulfillment of this project
to build and deploy an application platform to be the cloud computing environment, and
to launch the application .
The cloud environment that we use here is called as Salesforce. In the cloud
environment, a simple application is developed and deployed in the same environment
using tools provided there. The application is started inside the cloud as a website.
18
CHAPTER 3
SYSTEM DEVELOPMENT
3.1 External interface requirements
Customer requirements: -
1. For the provider and the user to stay connected the customer requires a high
speed internet connection.
2. For log in purposes the customer requires a username and password to use the
application.
Hardware requirements: -
System Information Configuration Details
Processor 32 bit Processor
RAM 512Mb/2GB/4GB/8GB
Router connection/Data Enabled 1 Mbps speed
Table 1. Hardware Requirements of project.
Software requirements: -
19
System Information Configuration Details
Operating System Browsing supported operating systems
Developing Environment Force.com Environment
Declarative language Visual Force
Table 2. Software Requirements of project.
3.2Functional Requirements: -
1
Understanding the capability of the cloud features of salesforce
2
Learning declarative programming
3
Developing a project help of salesforce and the force.com
environment
4
Launching the application
20
5
Every user should get a account
6
User friendly deployment so that users can use it in a proper manner
Table 3. Functional Requirements.
3.3 Non-Functional Requirements: -
Performance Requirements:
Performance of the deployed application and the developing environment solely
depends on the speed of the internet connection and not on the local system being
used.
Safety Requirements:
Regarding safety there can be data loss due interrupted internet connection and
this could lead to breaks and reloading of pages during development.
Security Requirements:
Provided by the cloud platform provider all the encryption for no data loss
(Force.com)
Everything is in turn password protected.
21
3.4 Development Area
3.4.1 Custom apps
Salesforce provides a separate segment in which applications can be developed we
can always start building a new application.
We are using a trailhead playground to develop the app which is like a copy of
developer edition in which we can build custom apps and practice salesforce.
3.4.2 Installing Packages
Salesforce provides us with packages through which we can setup our org by using
custom objects and pre-defined views inside the package
Fig 7. Installed Packages.
22
3.4.3 Objects in Salesforce
Those items in Salesforce are material storage tables. The key entity in the Salesfo
rce data model describes businessrelated accounts / companies and entities, such as
clients, partners, and rivals.
Pre-defined objects in salesforce are called as standard objects.
Objects that are created for the sole purpose of solution are called custom objects
Now that the package is in place we can start creating our own custom objects. The
first thing is creating a custom object for reviews.
1. From Setup, click Object Manager.
2. Click Create, select Custom Object, and fill in the details.
Field Value
Label Review
Plural Label Reviews
“Record Name” “Review Number”
“Data Type” “Auto-Number”
“Display Format” “REV-{0000}”
Starting Number 1
Table 4. Custom object fields.
3. Then we should allow the field tracking to get activated.
4. In the Deployment Status section, ensure Deployed is selected.
5. In the Search Status section, select Allow Search.
23
6. In the Object Creation Options section, select Add Notes and Attachments
related list to default page layout.
7. Leave everything else as is, and click Save.
In the same way, For the Recruiting app, we have 3 custom objects: -
1. Reviews object
2. Job Posting Site
3. A junction object for Posting Site
These objects are accessed in salesforce via the provided tabs and menu’s in case of
the salesforce1 mobile application.
3.4.4 Tabs in salesforce
Tabs in salesforceare just like tabs in any other software thesetabs are used to access
some features from the same page on the quick action basis. These tabs can directly
take you to a new page. There are two types of types in salesforce predefined and
custom. Use of custom tabs is necessary when creating a custom object for ease of
access purposes and also for the HR recruiter to look into the matter in a defined
way.
Fig 8. Creating custom tabs for job posting site object.
24
3.4.5 Fields in salesforce
Salesforce contains fields which are considered as variables in the salesforce
environment in other words the user with the help of these fields can develop their
custom object or can use the objects that are predefined using these fields. Some of
the fields that are used in salesforce are text area, formula, currency, picklist and
many more these fields let user to next level of development.
In a similar manner we are creating custom fields on our custom job posting object
which are as follows: -
1. Job Posting Site URL
2. Status
3. Technical Site
4. Description
For review object we have custom picklist and custom checkbox’s so that our HR
team recruiter can select and on the basis of ratings: -
1. Core competencies
2. Leadership Skills
3. Experience
4. Reasons recommended
5. Recommend for hire
These have a relationship with our interviewer and job application objects already
there in the package making the life of HR easy.
25
Fig 9. Creating custom picklist fields.
Fig 10. List of all fields and relationships created.
26
3.4.6 Relationships in salesforce
The Force.com platform supports two types of relation between objects between p
arent and child. They are relationships of seeups and relationships of masterdetail.
These relationships work in databases like foreign keys and connect two different
objects together, creating a relationship.
The lookup relationship creates a normal relationship with other objects in which
now by creating the relationship we can now direct from one object to the other and
can create many one-to-one and many-to-many relationships.
Lookup relationships are necessary because in certain situations, but not always, a
relation between two objects is needed. A lookup relationship is used in situations
such as relaying more than
one parent records to the child record and linking to widely shared data, such as ref
erence data.
The master-detail relationship is much more powerful relationship in salesforce
the object on which the master-detail is created is the child object and object
referenced is the parent object.
Now using these relationships, we will create a junction object between job position
and posting sites called job posting.
One position for the organization can be posted several times, and one employment
does have like more than one job posting on the other hand one job posting is always
looked up by a single position on a single employment website.
Essentially, the object Job Posting has manytoone relationships with the objects of
both the Place and the Work Posting Page. For such manytoone relationships, you
build a multipletomany relationship between the subjects of the Place and the Wor
k Posting Page.
27
Fig 11. Creating master-detail relationship job posting object.
3.4.7 Page Layouts in salesforce
Page layouts are used to do the formatting of the visibility of the fields and type of
data displayed on any objects detail page. These page layouts are there for other
features of salesforce and can be customized and edited according to the user’s
convenience. This can be used for read only access as well as edit too it is a feature
of data hiding.
28
Fig 12. Custom Page Layout.
3.4.8 Schema builder in salesforce
Salesforce Database Creator offers a complex framework to display new template
objects, custom fields and the database relationships. It removes the need to click t
o check out the specifics of a masterdetail relationship from page to page or to add
a whole new custom field to an item in your schema.
Fig 13. Schema Builder.
29
In our schema builder we can see all the objects connected together via our custom
junction object.
We can also see that the position object has a self-relationship with itself and on the
other hand our junction object Job posting has two master detail relationships with
both the other objects.
3.4.9 Security and sharing rules in salesforce
Provision of salesforce towards security can be seen on many levels some of them
are listed below: -
1. Object Level Access: for object accessibility.
2. Field Level Access: for field accessibility.
3. Record Level Access: for record accessibility.
4.Profiles:
Every user in salesforce has a profile now using these profiles he can access or
cannot access different things that are present in salesforce. These profiles are
created by the administrator of the domain the user is using. Every profile has
different set of security and sharing rules.
5. Permission Sets:
A permission sets are like profiles but they give acces to different stuff than the
profile. It is one step higher in security through this the admin can decide to give
access on fields and other related objects.
6. Field Level Permissions: If a user can view/edit fields for a given object or not.
7. Organization-Wide Default Settings: These are the default permissions and user
sets defined by the organization at default level.
30
8. Role Hierarchies: Like in any organization these are used to set up a hierarchy in
which now people have different permission sets.
9. Sharing rules: Controlling record level access when files are shared between the
users or profiles of an organization have exceptions for org-wide-defaults.
10. Manual sharing:
This take controls of all the usage limitations
Someone should exchange the documents with individual people. App rights and t
he profile limit what the app can see. The changes made in the Salesforce desktop
site are reflected in the app and mobile users in order to obtain the data of their org
anization without special configuration.
I have created a custom profile for the HR recruiter so that it is able access records
easily and data restrictions to other roles and profiles would also be possible
Object Read Create Edit Delete
Candidate ✓ ✓ ✓
Interviewers ✓ ✓ ✓ ✓
Job Applications ✓ ✓ ✓ ✓
Job Postings ✓ ✓ ✓ ✓
Job Posting Sites ✓ ✓ ✓ ✓
Positions ✓ ✓ ✓
Reviews ✓ ✓ ✓ ✓
Table 5. These are the object level access given to the HR recruiter profile.
Assigned a permission set to the hiring manager so that the hiring manager can have
add on permissions to specific users, on top of their already created profile
permissions, without having to upgrade existing profiles, create new profiles, or
grant an administrator profile where it's not necessary.
In other words, Temporary permission set for those Hiring Managers that need to
interview candidates for positions in their department.
31
Now field level security is also implemented for the hiring manager for the salary
range field because it is important for the hiring manager to look at the salary range
Fig 14. These are the object level access given to the HR recruiter profile.
3.4.10 Cross object formulas in salesforce
Cross-object formulas incorporate fields from related objects for calculations and
display on detail pages, list views, and reports. These formulas get data from related
parent objects to display on the child object. Using them is a great way to avoid
duplicate work, duplicate data, and data inconsistency.
In my project I have used a cross object formula between the candidate object and
the position object for the review object which means I am trying to store the name
of candidate fromcandidate_cc object and position of the candidate from Position_cc
object together to display on the Review_cc object.
32
Step 1: - first we have to store the first name and last name together because both of
these are separate fields
Fig 15. Adding Formula field on cross object.
Step 2: - now we have to get the position name from position object store in job
application field of review object.
33
Fig 2. These are the object level access given to the HR recruiter profile.
3.4.12 Validation Rules in salesforce
Validation guidelines ensure that the data that a user inserts into a database complie
s with the requirements that you define before the database can be saved. A validati
-on eighter contains a rule or
formula which evaluates the data in one or more fields and returns a "Real" or "Fals
e" value. It may also contain an error message to be shown to the user when the rule
returns a "Real" value due to an invalid value.
In this project I have created a validation rule which only validates the position
entered when it has a hiring manager associated with it.
For these types of formulas, we use ISBLANK function steps are as shown below: -
1. Object Manager and select Position.
2. Click Validation Rules, then click New.
3. For the Rule Name, enter Every_Position_Must_Have_a_Hiring_Mgr
34
4. Select Active.
5. Enter this Description: Every position record requires have a hiring manager.
6. Enter the Error Condition Formula: ISBLANK
(Hiring_Manager__c) && $Profile.Name <> "System Administrator"
7. Ensure your screen looks like this
Fig 16. Adding Validation Rule.
35
3.5 Using Automation tools
Using of automation tools is a very important solution for business processes
because today everybody wants a personalized experience.
Automation has many features but all together in simple words it does reduce the
mechanical work by making the process automatic.
Automation solutions and tools provided by salesforce are based on: -
 Integration of various systems.
 Configuration of process logic.
 Designing and building an end-user experience.
 Making the experience available fromanywhere: desktop or mobile devices,
internal apps, or external portals.
Tools:
Automation process are provided by salesforce with the use of lightning flow
which is intern an integrated process.
Lightning flow consists of two types of declarative point and click tools called
the process builder to build processes and flow builder to build flows.
To sum up the differences:
 Lightning Flow is the name of the product.
 Process Builder and Flow Builder are the names of the tools.
 Use Process Builder to make processes; use Flow Builder to make flows.
36
Fig 17. Process Builder.
Fig 18. Flow builder.
37
3.5.1 Approval process in salesforce
Approval processes are used to insert records only after a given approval has
been conducted by the approver it’s an automated process which is in turn a
subset of the process builder.
Example of an approval process.
The following is a way of using approval.
Fig 19. Approval Process.
1. At the initiation the initial submission action occurs and then the record is
locked ensuring no change to the record except the admin and the approver.
38
2. There are possible submission actions that can be used like alert messages
and quick action tabs.
3. Steps used for approval process are used to assign approval to different
people in the organization. In this example, manager is assigned to the
submitter’s approval.
4. On rejection of the approval the rejection process begins and the approval is
rejected by the manager.
5. Now if the manager approves the request at the first stage then the record
moves to the next stage of approval and CEO approval is required.
6. The final approval is given by the CEO if the CEO approves the record is
then finally unlocked and now is part of the organization.
7. Final approval is reflected on the records page.
In this project I am using a similar kind of approval process in which I am
creating a system to approve positions before posting them.
There are three recruiters for the process or the approvers two working with the
manager and one to sign-off at the senior level.
1. Create a new folder and two e-mail templates one for Approved records and
one for rejected records.
39
Field Value
“Folder” Position Request Responses
“Available for” Select
“Email Template” Position Approved
“Subject” Your position request was approved
“Body of Email” Dear {!Position c.OwnerFirstName},
Good news! Your recent position request
has been approved.
Please log in to your org for details.
Table 6. Email template for approval.
Field Value
“Folder” Position Request Responses
“Available for” Select
“Email Template” Position Rejected
“Subject” Your position request was rejected
“Body of Email” Dear {!Position c.OwnerFirstName},
Unfortunately, your recent position
request has been rejected.
Please log in to your org for details.
Table 6. Email template for rejection.
2. Create custom approvers to approve the process.
3. Create the multistep approval process. In the process development screen,
we have to select all the custom approvers that we have created and select at
which level they can approve the record.
We also have to add fields to be displayed on the approval page
40
Fig 20. Adding Fields to approval
4. We have to first send the approval to the initiation step and then we set up
all the approval steps one by one.
Fig 21. Adding Initiation to approval
41
5. Final approval page layout
Fig 22. Approval page layout.
6. Each approval step has its own rejection connected to it and email is sent
when the process exits at any level if rejection is the result.
To complete the whole automated process, we use the process builder to create
a process to submit the positions for approval this process in turn uses the
approval process we just created.
This whole process is automated and now the recruiting app has an automation
function.
42
3.5.2 Flow diagram of the approval
Fig 23. Flow diagram of the approval.
Position approved
Position rejected
43
CHAPTER 4
ANALYSIS OF PERFORMANCE
4.1 Types of testing used by salesforce
Unit testing:
Unit tests are testing processes in which tests are run in large condos using help
of test classes. Each test class contains different types of cases or input values so
that the outcome does provide the required solution.
Unit testing is black box testing and it’s a software development process in
salesforce test classes are developed in apex on the developer console and these
consoles are run through the salesforce platform only.
Unit testing is usually an automated process but sometimes it is done in self-
mode i.e it is used in EXTREME PROGRAMMING which Is a programmatic
declaration of continuoustesting and revision..
Conditions of testing:
Normal Conditions
–Variety of states are tested.
Edge Cases
–Input conditions are bad
–Conditions on boundary
Some Regressions
Force.com-specifics
–Apex reachs, Triggers etc.
Properties of Good Unit Tests
 Thorough
44
 Looping
 Automated
 Alone
UAT Testing:
User acceptance testing is one of the final steps before the project or the
developed application is deployed.
The end users who use the application are the best testers as at the beginning till
the end almost everything depends on user experience.
For the above type of user experience, we need to conduct acceptance testing so
that the application is deployed in a confident way as the user is with us and the
application will serve the purpose.
Bugs are also removed with the help of usability testing there are some bugs
which the developer doesn’t recognize at the first time.
4.2 How testing is done
In our simple project we have not used apex developing tool or visual force
pages so we can’t use the provided testing tools on the other hand salesforce
provides us with the demo of the recruiting app created.
We can simply launch our app from our salesforce playground or the developer
org and can test the implemented features.
For further deployment of the app we have to buy an enterprise edition of
salesforce where we get different sandbox’s that can be used for proper
development and testing off the application along with implementation of apex
classes and visualforce pages in a proper manner.
45
4.3 Working of the automated approval process using the
recruiting application
The demo of the salesforce application is presented using salesforce classic
environment
1. Launching the application landing onto the home page we can see our custom
object tabs displayed on the top.
Fig 24. Home Page.
46
2. We go to the positions tab to create a new position
Fig 25. New Position Created.
3. Fill in the description for the new position and save the new position record.
Fig 26. New position details page.
47
4. Now on the position description page we submit the position for approval
which initiates our approval process using the inbuilt process builder.
Fig 27. Submit for approval
5. Now on the same description page the position record is locked and we can see
the approval status to be pending.
Fig 28. Status of approval.
48
6. Now we go back to the approvers or the admin page and we can see that the
approval related list has an item for approval.
Fig 29. Approval task added for recruiter
7. Now for the new position that we created looking at the details we can
approve the position.
Fig 30. Approval submitted by recruiter
49
8. Now we can see that the position has been approved.
Fig 31. Position Approved.
9. We also receive email about the new approved position.
Fig 32. Email received.
50
CHAPTER 5
5.1 CONCLUSION
Via the use of cloud computing a platform is serviced Which is the Force.com which in
turn provided a base through which an organizations business can radically grow and
the outcomes of such a scalable division of the same is needed in each and every
organization.
Salesforce is one of the biggest CRM solution providers which uses the Force platform
to provide such CRM solutions in an interactive way both easy for the developer and the
customer and even the administrators.
Not only large MNC’s but small-scale organizations can also benefit from salesforce
and can grow their business to huge extents.
The recruiting app was a small implementation of salesforce features but an important
implementation as every organization has its HR team and using this small
implementation can give them a quick start.
5.2 FUTURE SCOPE
Like all the major Project this project also has a huge scope for improvement but
accomplishing those would have been difficult and tedious in the given time interval.
Therefore, in the future the created application can:
1. Apex developing tools.
2. Using self-developed classes and triggers
3. Using Flows and Screens
4. Using visual force pages to developproper htmlwebsites and custom htmlpages.
5. Data analytics could also be implemented for smoother and prompt reports
51
REFERENCES
Provided trailhead modules in the training sessions
[1] http://www.desynit.com/good-systems-blog/salesforce/why-salesforce/
[2] http://www.dummies.com/business/customers/why-use-salesforce/
[3] http://www.investopedia.com/terms/i/inventory-management.asp?lgl=no-infinite
[4] Extremely effective CRM Solution using Salesforce
[5] https://en.wikipedia.org/wiki/Salesforce.com#Technologies
52
Recruiting Application Developed on Salesforce By Vikas Gupta.pdf
Ad

More Related Content

Similar to Recruiting Application Developed on Salesforce By Vikas Gupta.pdf (20)

A research on- Sales force Project- documentation
A research on- Sales force Project- documentationA research on- Sales force Project- documentation
A research on- Sales force Project- documentation
Pasupathi Ganesan
 
IBM Cloud Privé - White paper présentation EN
IBM Cloud Privé - White paper présentation ENIBM Cloud Privé - White paper présentation EN
IBM Cloud Privé - White paper présentation EN
Yves Bienenfeld
 
Ch4-Deploying Applications & Cloud Services.pptx
Ch4-Deploying Applications & Cloud Services.pptxCh4-Deploying Applications & Cloud Services.pptx
Ch4-Deploying Applications & Cloud Services.pptx
Piseaniket66gmailcom
 
Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effortMatias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman
 
Accelerating Time-to-Value Through Hybrid Cloud Automation
Accelerating Time-to-Value Through Hybrid Cloud AutomationAccelerating Time-to-Value Through Hybrid Cloud Automation
Accelerating Time-to-Value Through Hybrid Cloud Automation
Cognizant
 
The seminar report on cloud computing
The seminar report on cloud computingThe seminar report on cloud computing
The seminar report on cloud computing
Divyesh Shah
 
Blue book
Blue bookBlue book
Blue book
anjum mujawar mujawar
 
Reimagine Application Modernization with Serverless Architecture
Reimagine Application Modernization with Serverless ArchitectureReimagine Application Modernization with Serverless Architecture
Reimagine Application Modernization with Serverless Architecture
Opteamix LLC
 
improve cloud security
improve cloud securityimprove cloud security
improve cloud security
Balkees Shereek
 
Salesforce.com – A Cloud Provider
Salesforce.com – A Cloud ProviderSalesforce.com – A Cloud Provider
Salesforce.com – A Cloud Provider
IRJET Journal
 
Migrating apps-to-the-cloud-final
Migrating apps-to-the-cloud-finalMigrating apps-to-the-cloud-final
Migrating apps-to-the-cloud-final
eng999
 
Sem rep edited
Sem rep editedSem rep edited
Sem rep edited
Saksham Pahuja
 
What are the advantages of adopting public cloud
What are the advantages of adopting public cloudWhat are the advantages of adopting public cloud
What are the advantages of adopting public cloud
Nicole Khoo
 
From Benefits to Challenges A Guide on Cloud Software Development.pdf
From Benefits to Challenges A Guide on Cloud Software Development.pdfFrom Benefits to Challenges A Guide on Cloud Software Development.pdf
From Benefits to Challenges A Guide on Cloud Software Development.pdf
Shiv Technolabs
 
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdf
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdfApplication Modernization With Cloud Native Approach_ An in-depth Guide.pdf
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdf
basilmph
 
Cloud Native Architecture: Its Benefits and Key Components
Cloud Native Architecture: Its Benefits and Key ComponentsCloud Native Architecture: Its Benefits and Key Components
Cloud Native Architecture: Its Benefits and Key Components
AndrewHolland58
 
whitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_processwhitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_process
Eric Saraceno
 
CONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCYCONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCY
ijcseit
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
ijcseit
 
Configuration inerpsaas multi tenancy
Configuration inerpsaas multi tenancyConfiguration inerpsaas multi tenancy
Configuration inerpsaas multi tenancy
ijcseit
 
A research on- Sales force Project- documentation
A research on- Sales force Project- documentationA research on- Sales force Project- documentation
A research on- Sales force Project- documentation
Pasupathi Ganesan
 
IBM Cloud Privé - White paper présentation EN
IBM Cloud Privé - White paper présentation ENIBM Cloud Privé - White paper présentation EN
IBM Cloud Privé - White paper présentation EN
Yves Bienenfeld
 
Ch4-Deploying Applications & Cloud Services.pptx
Ch4-Deploying Applications & Cloud Services.pptxCh4-Deploying Applications & Cloud Services.pptx
Ch4-Deploying Applications & Cloud Services.pptx
Piseaniket66gmailcom
 
Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effortMatias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman
 
Accelerating Time-to-Value Through Hybrid Cloud Automation
Accelerating Time-to-Value Through Hybrid Cloud AutomationAccelerating Time-to-Value Through Hybrid Cloud Automation
Accelerating Time-to-Value Through Hybrid Cloud Automation
Cognizant
 
The seminar report on cloud computing
The seminar report on cloud computingThe seminar report on cloud computing
The seminar report on cloud computing
Divyesh Shah
 
Reimagine Application Modernization with Serverless Architecture
Reimagine Application Modernization with Serverless ArchitectureReimagine Application Modernization with Serverless Architecture
Reimagine Application Modernization with Serverless Architecture
Opteamix LLC
 
Salesforce.com – A Cloud Provider
Salesforce.com – A Cloud ProviderSalesforce.com – A Cloud Provider
Salesforce.com – A Cloud Provider
IRJET Journal
 
Migrating apps-to-the-cloud-final
Migrating apps-to-the-cloud-finalMigrating apps-to-the-cloud-final
Migrating apps-to-the-cloud-final
eng999
 
What are the advantages of adopting public cloud
What are the advantages of adopting public cloudWhat are the advantages of adopting public cloud
What are the advantages of adopting public cloud
Nicole Khoo
 
From Benefits to Challenges A Guide on Cloud Software Development.pdf
From Benefits to Challenges A Guide on Cloud Software Development.pdfFrom Benefits to Challenges A Guide on Cloud Software Development.pdf
From Benefits to Challenges A Guide on Cloud Software Development.pdf
Shiv Technolabs
 
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdf
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdfApplication Modernization With Cloud Native Approach_ An in-depth Guide.pdf
Application Modernization With Cloud Native Approach_ An in-depth Guide.pdf
basilmph
 
Cloud Native Architecture: Its Benefits and Key Components
Cloud Native Architecture: Its Benefits and Key ComponentsCloud Native Architecture: Its Benefits and Key Components
Cloud Native Architecture: Its Benefits and Key Components
AndrewHolland58
 
whitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_processwhitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_process
Eric Saraceno
 
CONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCYCONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCY
ijcseit
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
ijcseit
 
Configuration inerpsaas multi tenancy
Configuration inerpsaas multi tenancyConfiguration inerpsaas multi tenancy
Configuration inerpsaas multi tenancy
ijcseit
 

Recently uploaded (20)

2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx
Dale Wells
 
cardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugscardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugs
Mohammed Ahmed Bamashmos
 
Speech 2-Unity in Diversity, Strength in Solidarity
Speech 2-Unity in Diversity, Strength in SolidaritySpeech 2-Unity in Diversity, Strength in Solidarity
Speech 2-Unity in Diversity, Strength in Solidarity
Noraini Yunus
 
kurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptxkurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptx
TayyabaSiddiqui12
 
Key Elements of a Procurement Plan.docx.
Key Elements of a Procurement Plan.docx.Key Elements of a Procurement Plan.docx.
Key Elements of a Procurement Plan.docx.
NeoRakodu
 
Wood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City LibraryWood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City Library
Woods for the Trees
 
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvvBasic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
hkthmrz42n
 
fundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptxfundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptx
Sunkod
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdfMicrosoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
MinniePfeiffer
 
Bidding World Conference 2027-NSGF Senegal.pdf
Bidding World Conference 2027-NSGF Senegal.pdfBidding World Conference 2027-NSGF Senegal.pdf
Bidding World Conference 2027-NSGF Senegal.pdf
ISGF - International Scout and Guide Fellowship
 
Bloom Where You Are Planted 05.04.2025.pptx
Bloom Where You Are Planted 05.04.2025.pptxBloom Where You Are Planted 05.04.2025.pptx
Bloom Where You Are Planted 05.04.2025.pptx
FamilyWorshipCenterD
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Rajdeep Chakraborty
 
Setup & Implementation of OutSystems Cloud Connector ODC
Setup & Implementation of OutSystems Cloud Connector ODCSetup & Implementation of OutSystems Cloud Connector ODC
Setup & Implementation of OutSystems Cloud Connector ODC
outsystemspuneusergr
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptxLec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
TayyabaSiddiqui12
 
Profit Growth Drivers for Small Business.pdf
Profit Growth Drivers for Small Business.pdfProfit Growth Drivers for Small Business.pdf
Profit Growth Drivers for Small Business.pdf
TheodoreHawkins
 
Bidding World Conference 2027 - Ghana.pptx
Bidding World Conference 2027 - Ghana.pptxBidding World Conference 2027 - Ghana.pptx
Bidding World Conference 2027 - Ghana.pptx
ISGF - International Scout and Guide Fellowship
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Rajdeep Chakraborty
 
ICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - internationalICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - international
Bitcoin Mining RACE
 
2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx
Dale Wells
 
cardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugscardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugs
Mohammed Ahmed Bamashmos
 
Speech 2-Unity in Diversity, Strength in Solidarity
Speech 2-Unity in Diversity, Strength in SolidaritySpeech 2-Unity in Diversity, Strength in Solidarity
Speech 2-Unity in Diversity, Strength in Solidarity
Noraini Yunus
 
kurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptxkurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptx
TayyabaSiddiqui12
 
Key Elements of a Procurement Plan.docx.
Key Elements of a Procurement Plan.docx.Key Elements of a Procurement Plan.docx.
Key Elements of a Procurement Plan.docx.
NeoRakodu
 
Wood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City LibraryWood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City Library
Woods for the Trees
 
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvvBasic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
hkthmrz42n
 
fundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptxfundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptx
Sunkod
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdfMicrosoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
MinniePfeiffer
 
Bloom Where You Are Planted 05.04.2025.pptx
Bloom Where You Are Planted 05.04.2025.pptxBloom Where You Are Planted 05.04.2025.pptx
Bloom Where You Are Planted 05.04.2025.pptx
FamilyWorshipCenterD
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Rajdeep Chakraborty
 
Setup & Implementation of OutSystems Cloud Connector ODC
Setup & Implementation of OutSystems Cloud Connector ODCSetup & Implementation of OutSystems Cloud Connector ODC
Setup & Implementation of OutSystems Cloud Connector ODC
outsystemspuneusergr
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptxLec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
TayyabaSiddiqui12
 
Profit Growth Drivers for Small Business.pdf
Profit Growth Drivers for Small Business.pdfProfit Growth Drivers for Small Business.pdf
Profit Growth Drivers for Small Business.pdf
TheodoreHawkins
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Finals.pptx
Rajdeep Chakraborty
 
ICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - internationalICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - international
Bitcoin Mining RACE
 
Ad

Recruiting Application Developed on Salesforce By Vikas Gupta.pdf

  • 1. i Recruiting Application Developed on Salesforce Project report submitted in partial fulfillment of the requirement for the degree of Bachelor of Technology Submitted by: Vikas Gupta REG no:-219302269 UNDER THE GUIDANCE OF Mr. Sa njay Gu pta(Salesforce ) Department of InformationTechnology MANIPAL UNIVERSITY JAIPUR, JAIPUR – 303007 (RAJASTHAN), INDIA
  • 2. ii Project Report Undertaking I Vikas Gupta Roll No.-219302269 Branch Information Technology is done my industrial training project. As per procedure I have to submit my project report to the university related to my work that I have done during this internship. I have compiled my project report. . So, I hereby declare that the project report is fully designed/developed by me and no part of the work is borrowed or purchased from any agency.
  • 4. iv ACKNOWLEDGEMENT I would like to express my gratitude to my training instructor Mr. Sanjay Gupta who guided me throughout the project “Recruiting Application Developed on Salesforce”. He helped me in the thorough understanding of project, implementing the functionalities and making our project more responsive and efficient. Secondly I would also like to thank my friends and all my mentors who helped me in finalizing the project with in the given time.
  • 5. v TABLE OF CONTENTS List of Figures viii List of Tables ix List of Abbreviations x Abstract xi Chapter 1 -INTRODUCTION 1 1.1 Introduction to cloud computing 1 1.1.1 Top benefits of cloud computing 2 1.1.2 Types of cloud computing 3 1.1.3 Versions of cloud services: IaaS, PaaS and SaaS 5 1.2 Introduction to CRM(Customer relationship management) 6 1.2.1 For whom CRM is ? 7 1.3 What is Salesforce ? 7 1.3.1 Salesforce Architecture 8 1.3.2 MVC(salesforce) 9 1.3.3 Different Salesforce versions (Editions) 10 1.3.4 System Panoramic View 11 1.3.5 Technology of Salesforce 12 1.4 Problem statement 13
  • 6. vi 1.5 Objective 13 1.6 Methodology 14 1.7 Organization of chapters 15 Chapter 2 - Literature Survey 16 Chapter 3 – System Development 18 3.1 External Interface Requirements 18 3.2 Functional requirements 19 3.3 Non-Functional requirements 21 3.4 Development Area 21 3.4.1 Custom Applications 21 3.4.2 Installing packages 21 3.4.3 Objects in salesforce 22 3.4.4 Tabs in salesforce 23 3.4.5 Fields in salesforce 24 3.4.6 Relationship in salesforce 26 3.4.7 Page Layouts in salesforce 27 3.4.8 Schema Builder in salesforce 28 3.4.9 Security and Sharing rules in salesforce 29 3.4.10 Cross Objects formula 31
  • 7. vii 3.4.11 Validation rules 33 3.5 Using Automation Tools 35 3.5.1 Approval process automation 37 3.5.2 Flow diagram of approval process 42 Chapter 4 – Analysis of performance 43 4.1 Types of testing in salesforce 44 4.2 Implementation of testing 44 4.3 Working of demo recruiting application along with approval process 45 Chapter 5 – Conclusion 50 5.1 Conclusion 50 5.2 Future scope 50 REFERENCES 51
  • 8. viii LIST OF FIGURES SNo. TITLE 1 Cloud Architecture 2 Types of cloud 3 Cloud Services 4 Salesforce Architecture 5 MVC of Salesforce 6 Salesforce Edition 7 Installed Packages 8 Creating custom tabs for job posting site object 9 Creating custom picklist field 10 List of all fields and relationships created 11 Creating master-detail relationship job posting object 12 Custom Page Layout 13 Schema Builder 14 These are the object level access given to the HR recruiter profile 15 Adding Formula field on cross object 16 Adding Validation Rule 17 Process builder 18 Flow builder
  • 9. ix 19 Approval process 20 Adding fields to approval 21 Adding initiation to approval 22 Approval page layout 23 Flow diagram of the approval 24 Home page 25 New position created 26 New position details page 27 Submit for approval 28 Status of approval 29 Approval task added for recruiter 30 Approval submitted by recruiter 31 Positon Approved 32 Email Received LIST OF TABLES S.No TITLE 1 Hardware Requirements of project 2 Software Requirements 3 Functional Requirements 4 Custom fields of object
  • 10. x 5 object level access 6 Email template for approval 7 Email template for rejection LIST OF ABBREVIATIONS S.No. Abbreviation Definition 1 Paas Platform as a service 2 CRM Customer relationship management 3 SFDC Salesforce developer console 4 MVC Model view controller 5 UI User Interface 6 HR Human Resource
  • 11. xi ABSTRACT This project recruitment application is a system where HR can also automate the recruitment of HR applicants online, view organizational requirements and apply for the appropriate job. Recruitment Application provides the users worldwide with online help. Such application provides the users worldwide with online help. Such application plays an important role in the simplification of the recruitment process. Earlier the hiring process was done in a manual manner in which every step was time consuming. Now with the available solutions this type of application can be implemented at several levels of integration and is scalable to different levels. With this application for a company it would be easier to manage staff activities and the most benefitted would be the HR team of the organization.
  • 12. 1 CHAPTER 1. INTRODUCTION 1.1 Introduction to cloud computing Cloud Computing is characterized not as a community server but it stores as well as deals with cloud-based data. It’s easy to understand cloud computing. All programs within the web browser are created and run. Using the network connection, users and builders will be able to access all applications, thereby offsetting the complexity and overhead of the preservation of the environment. Cloud computing- it can be accessed from everywhere even from remote places with an internet connection unlike conventional business applications that maybe complicated or may quote high prices and need experts to install, run, replace and secure. The entire system should be painted together in conventional frameworks. Constant security is common for such type of smooth interaction and for easy operation of the device. It is not necessary to invest cash in acquiring and assisting hardware and software infrastructure in resulting of low cost or decreased cost for users and developers and this is only made possible because of cloud computing. Cloud computing primarily affects the functionality of the applications. In the cloud computing framework, we can immediately connect customers and owners, and the applications can be easily delivered into the cloud, raising the response time of the user request. With then reduced complexity the enterprise will boost the whole IT cycle process.
  • 13. 2 Fig 1. Cloud architecture. 1.1.1 Major benefits of cloud computing: Cloud computing is a significant change from the conventional form in which businesses work about the capital. The seven common reasons why organizations turn to cloud services are:  Price -Cloud computing helps users to reduce the capital cost to buy hardware and software and to set up and operating data-centers on site — computer server racks, the round clock time for power and cooling energy, the IT experts for managing the infrastructure.  Speed -Major cloud computing services are capable enough to provide self- service that too on demand, so that even large number of computing resources can be delivered in less amount of time, typically with just a few mouse clicks, therefore giving businesses huge level of of flexibility and exerting the pressure off capacity planning.
  • 14. 3  Global scale — Advantages of cloud computing services elastic scaling capability. In cloud means to provide the exact amount of resources: more or less processing power, storage, bandwidth required for according to a particular geographic location.  Productivity — On-site data-centers usually need a lot of “racking and stacking” to set up equipment’s, software patching and other time-consuming IT management activities. It eliminates the need for many of these activities, thence these IT managers can spend time on more relevant business objectives.  Performance — The largest cloud storage services operate on a worldwide network of secure data centers that are updated to the latest generation of powerful, reliable computing hardware on a regular basis 24*7. This provides huge benefits over a single corporate data-center.  Security — In the market many cloud providers tend to offer a large set of policies, technologies that enhance your overall security posture, thus helps to secure your data, applications and framework against potential ultimatum. 1.1.2 Kinds of cloud computing: It is not compulsory that every cloud is equal and not one type of cloud computing style ids is right for all. Various models, verities and resources have evolved to help provide the exact solution the demands. Firstly, you need to decide the type of cloud framework or architecture for the cloud service to be implemented on. Cloud services are distributed in three separate ways: Public, Private and Hybrid cloud. Public cloud — Third party cloud service providers own and operate public clouds which deploy their resources such as servers and internet storage. Salesforce, Microsoft azure are examples of a public cloud. In a public cloud, the cloud provider
  • 15. 4 run and maintains all the hardware apps, and other related resources. Everyone can have access and handle these services by the help of a web integrator. Private cloud - It refers to the resources that are used thoroughly by a private owner or by the entire organization. A private cloud can be found physically on the company’s on-site data center. Some firms pay for hosting their private cloud to third party providers. We can say that it is one which support the services and framework on a private network. Hybrid cloud - It combines both private as well as public clouds, that are linked to each other by technology hence allowing data and processes to be shared between them. A hybrid cloud provides your organization with more flexibility, more implementation options and helps to leverage the current framework, protects and securement by allowing information and applications to move between private and public clouds. Fig2. Kinds of cloud 1.1.3 Versions of cloud services:
  • 16. 5 Almost all cloud services are categorized as:  providing infrastructure,  providing platform and  software as services These are sometimes referred to as the cloud processing stack, since they build on the top of each other. Infrastructure as a service (IaaS) — The lowest category of cloud computing services. Using, you can rent IT framework: physical and virtual processors (VRs), storage, networks, operating systems—froma cloud given on a pay you go basis. Examples: Amazon EC2, Rackspace, Google Compute Engine. Platform as a service (PaaS) — Platform as a service points to cloud computing services which delivers ondemand environment for software application developing, testing, delivering and managing. It is designed to make work easy for programmers t quickly create web or mobile applications, without worrying about setting up or managing the underlying framework of servers, storage, network and databases infrastructure. Examples: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine, Software as a service (SaaS) —It is a mechanism to providing on demand and usually on a subscription basis software application. They host and maintain the software mechanism and underlying framework through this, and tackle any maintenance, such as software updates and securing protection.
  • 17. 6 Fig 3. Cloud Services. 1.2 Introduction to CRM Customer relationship management (CRM) is a technology that manages all the relationships aswellas interactions with customers and potential customers wit hin the business. The aim is simple: Improve relationships among business . A CRM program provides forestay connected, streamline processes, and increase in productivity. When people speak about it, they are usually referring CRM as a device or an instrument, a tool that helps with contact management, productivity, and more. This tool lets you focus on the relationships thatcompany has with individual people includes clients,
  • 18. 7 users, employees or suppliers with them during the lifecycle, including attracting pot ential customers, winning their business, and offering support and complementary se rvices throughout the partnership. 1.2.1 For whom CRM is? A CRM system gives everybody – from sales, customer service, business developme nt, recruitment, marketing, or any other business line – way to manage the external in teractions and relationships that ensure success allowing you to store and prospect contact information, identify sales opportunities, record service pr oblems and manage marketing campaigns, all at one central location—and make information about every customer interaction available to anyone at your company who might need it. With visibility and easy data access, collaboration is made easier and productivity is i n creased. Everyone in your company can see how you communicated with customer what they bought, when they last bought, what they paid for, and so much more. CRM can help businesses of all sizes to grow, and can be particularly beneficial for a small business, where teams often need to find ways to do more with less. 1.2 What is Salesforce? It is one of the world's leading cloud computing firms and the number one customer c ourting management (CRM) ondemand. Salesforce does not require any software or hardware installation, or resources such as servers. The internet is all we need to get entry into Salesforce. This enables even the most nontechy people to use and configu re the system as consistent with their demands. .
  • 19. 8 1.3.1 Salesforce Architecture Salesforce has a multitenant architecture in other words it means that there is a single cloud provider who provides with a platform as a service and each of the user has their own working space inside that service. When in a building each flat is same but the tenants are different or the people who rented the flat or the service are different. Fig 4. Salesforce Architecture. The architecture flow diagram in the above picture shows how data flows between the cloud providers and service rendered by the user on the other end this platform on salesforce is stored in a meta data repository. The html request made are done through the visual force pages created by salesforce.
  • 20. 9 1.3.2 Salesforce Model View Controller MVC is a design pattern that differentiates business logic from computer logic that is it separates user's displayed graphical interface from code that handles user actio ns [4]. In Salesforce, we can use visual force from SFDC to write VIEW pages which are ve ry close to the page (JSP) of the java servlets. Each page of the Visualforce (VF) is correlated to a controller. Controller and Class model can be written using Apex language. The Model is the usable database. In Visualforce, it is set of Salesforce objects and fields. The View is the coding that develops up our page’s User interface. In this case, its of residing in the HTML, JavaScript and visualforce pages used in the UI. The Controller is the middle layer between the model and the view. It’s Apex code with the database according to the view’s needs.
  • 21. 10 Fig 5. MVC of Salesforce. 1.3.3 Different Salesforce versions (Editions) Salesforce tends to offer separate versions of its products and services which cpo depend on organization requirements. 1) Professional Edition: It consists of full customer relationship functionality. 2) Enterprise Edition: This edition offers more senior CRM customization and administration tools along with provisions of Professional edition. 3) Unlimited Edition: Along with functionalities offered by Enterprise Edition, Unlimited Edition even offers full mobile access, premier support, unlimited custom apps and more.
  • 22. 11 4) Developer Edition: This edition allows programmers to extend the Salesforce system, integration with other mechanisms and develop new applications and tools. Fig 6. Salesforce Editions. 1.3.4 System Panoramic View Salesforce combines configuration power with custom development within its platfor m i.e. Platform Force.com. This software interface will use custom code, workflow r ules, approval processes to apply their business logic, connect the data with other app lications, produce reports and do the analytics within no time.
  • 23. 12 The Salesforce CRM model is used for communications with organisations such as e mails, calls, consumer experiences and also for opportunities such as sales, promotio n and assistance. Through Force.com we will use the Salesforce1 software to run co mpany on the device. Using HTML 5 and UI framework, we can build and optimize mobile apps, and support all devices with a single code base [5]. 1.3.5 Technologies in Salesforce 1) Apex Apex programming language used by salesforce. This language is case in sensitive, object oriented platform identical to java syntax. Apex is used in Force.com to run programs and procedures such as connections, keys, record injection and so on with personalized controllers [5]. 2) Visualforce (VF) It is a framework with tag-based markup language same as to HTML on the Force.com platform. Using Visualforce, custom sites can be built along with the aid of the other front-end technology such as HTML, CSS, jQuery, and JavaScript for mobile phones and Desktops [5]. 3) Lighting It is a component-based architecture prepared for user equipment applications from Salesforce that is developed on a open source framework. This allows easy building of responsive applications.
  • 24. 13 1.4 Problem Statement A cloud platform has been provided by Force.com that lets organization to build a CRM solution for their organization and moreover do it in radical successful manner. It’s a multi-tenant software baring to its features and now many deployed applications can be constructed making the life of the Organizations easier in many ways. The scope of this project is limited based on the application developed in force.com: -  To build and develop an application for the sales company to recruit new members in an easy way  Ease of access and use for the HR team of the company by creating custom objects and relationships  Security Analysis  Developing a proper UI  Automatic business process for the existing app 1.5Objectives This is an application which uses cloud computing capabilities and features to attain a fully fledges CRM solution making it possible through Paas feature. I have used” Sales Force” features to achieve the aim. The main goal is to build and deliver an application in the sales force environment. This application project createdmust satisfy needs of customersand should have every cloud computing ability to achieve the expectations of users. This application will be developed and built in the following environment: Force.com environment.
  • 25. 14 1.6Methodology We will be using force.com platform for developing the application and to achieve this we will use the sales force cloud-based Technology in the following steps: -  Firstly, we start with creating a data model for a recruiting app the data model will contain different types of customobjects.  These custom objects would be related to each other by the relationships provided by the Salesforce platform.  These custom objects would have their own custom fields for the required data to be imported.  We will use automated business processes and approval processes together for the proper functioning of the app by the company.  There are different types of records and each record has its own page layout including quick action tabs for an interactive UI  We will restrict data access using custom field security options so that there is a role hierarchy in which each one has its own level of Record access and the data is secured at all times  Data validation and formulas for the improvement of data quality  All this is integrated together with the help of the Lightning components provided by Salesforce and the recruiting app would be deployed in a single developer org edition.
  • 26. 15 1.7 Organization of Report Chapter 1- Introduction to cloud computing and types of clouds along with services provided. Knowledge of CRM and introduction to salesforce. Chapter 2 - Existingsolutions to CRM and its drawbacks. Proposed solutions forthe same. Chapter 3 - System development and the basis of developing a model for the recruiting application along with salesforce features used. Chapter 4 - Testing provided by salesforce and implementation of testing in the project using developer org and demo cycles. Chapter 5 - Conclusion and Future scope.
  • 27. 16 CHAPTER - 2 LITERATURE SURVEY Underlying old system: As internet users we are all familiar to fascinating, creative, innovative and sometimes stupid ways in which it has changed our ways of working and playing. As these trends definitely have changed how we deal with content, a related collection of internet led innovations and technology is affecting how we create and operate with business applications. Todays internet technologies help to create, configure, and use business applications of any kind. Indeed, the technology of the internet has provided us with the opportunity to address different form of market troubles that had previously stayed out of reach because of difficulty or expense. Just as the improvements that shifted publication technologies from paper to bits made this possible for us to acquire information right at our fingertips on anything about in the whole world, the advances in application/computer technology make it possible to invision a reliable, enterprise class framework for virtually all company needs in same way. Adapting these new methods of building and running applications enable the world of cloud computing, where you can access applications, apps as utilities over the internet, rather than pieces of software running on your desktop or the server room. The model is already quite common for consumer applications such as email and photo sharing, and for some business applications, such as customer relationship management (CRM).
  • 28. 17 Problems in the underlying system: The need to retain a high configuration environment by using the current system to run some massive that is used to build these software applications. This could require large amount of cost to build and for maintenance. We need to purchase the software that is used to build the applications. We will need to upgrade the current version of application. The biggest drawback to cloud setting of the current program is lack of portability. Even if we have highly engineered systems and upgraded applications, as we move from one location to another, we have to take the machine with us. This will place users at risk. The biggest downside of the current program is lack of rehabilitation from the disasters. Which ensures that all the data stored on the system cannot be retrieved in case of catastrophe. But that may lead to loss of data. To set up the system, the initial existing sytsem also needs lay out. Devised new System: Since there are several issues with the current network, this initiative incorporates a modern technique called cloud computing. The system for the fulfillment of this project to build and deploy an application platform to be the cloud computing environment, and to launch the application . The cloud environment that we use here is called as Salesforce. In the cloud environment, a simple application is developed and deployed in the same environment using tools provided there. The application is started inside the cloud as a website.
  • 29. 18 CHAPTER 3 SYSTEM DEVELOPMENT 3.1 External interface requirements Customer requirements: - 1. For the provider and the user to stay connected the customer requires a high speed internet connection. 2. For log in purposes the customer requires a username and password to use the application. Hardware requirements: - System Information Configuration Details Processor 32 bit Processor RAM 512Mb/2GB/4GB/8GB Router connection/Data Enabled 1 Mbps speed Table 1. Hardware Requirements of project. Software requirements: -
  • 30. 19 System Information Configuration Details Operating System Browsing supported operating systems Developing Environment Force.com Environment Declarative language Visual Force Table 2. Software Requirements of project. 3.2Functional Requirements: - 1 Understanding the capability of the cloud features of salesforce 2 Learning declarative programming 3 Developing a project help of salesforce and the force.com environment 4 Launching the application
  • 31. 20 5 Every user should get a account 6 User friendly deployment so that users can use it in a proper manner Table 3. Functional Requirements. 3.3 Non-Functional Requirements: - Performance Requirements: Performance of the deployed application and the developing environment solely depends on the speed of the internet connection and not on the local system being used. Safety Requirements: Regarding safety there can be data loss due interrupted internet connection and this could lead to breaks and reloading of pages during development. Security Requirements: Provided by the cloud platform provider all the encryption for no data loss (Force.com) Everything is in turn password protected.
  • 32. 21 3.4 Development Area 3.4.1 Custom apps Salesforce provides a separate segment in which applications can be developed we can always start building a new application. We are using a trailhead playground to develop the app which is like a copy of developer edition in which we can build custom apps and practice salesforce. 3.4.2 Installing Packages Salesforce provides us with packages through which we can setup our org by using custom objects and pre-defined views inside the package Fig 7. Installed Packages.
  • 33. 22 3.4.3 Objects in Salesforce Those items in Salesforce are material storage tables. The key entity in the Salesfo rce data model describes businessrelated accounts / companies and entities, such as clients, partners, and rivals. Pre-defined objects in salesforce are called as standard objects. Objects that are created for the sole purpose of solution are called custom objects Now that the package is in place we can start creating our own custom objects. The first thing is creating a custom object for reviews. 1. From Setup, click Object Manager. 2. Click Create, select Custom Object, and fill in the details. Field Value Label Review Plural Label Reviews “Record Name” “Review Number” “Data Type” “Auto-Number” “Display Format” “REV-{0000}” Starting Number 1 Table 4. Custom object fields. 3. Then we should allow the field tracking to get activated. 4. In the Deployment Status section, ensure Deployed is selected. 5. In the Search Status section, select Allow Search.
  • 34. 23 6. In the Object Creation Options section, select Add Notes and Attachments related list to default page layout. 7. Leave everything else as is, and click Save. In the same way, For the Recruiting app, we have 3 custom objects: - 1. Reviews object 2. Job Posting Site 3. A junction object for Posting Site These objects are accessed in salesforce via the provided tabs and menu’s in case of the salesforce1 mobile application. 3.4.4 Tabs in salesforce Tabs in salesforceare just like tabs in any other software thesetabs are used to access some features from the same page on the quick action basis. These tabs can directly take you to a new page. There are two types of types in salesforce predefined and custom. Use of custom tabs is necessary when creating a custom object for ease of access purposes and also for the HR recruiter to look into the matter in a defined way. Fig 8. Creating custom tabs for job posting site object.
  • 35. 24 3.4.5 Fields in salesforce Salesforce contains fields which are considered as variables in the salesforce environment in other words the user with the help of these fields can develop their custom object or can use the objects that are predefined using these fields. Some of the fields that are used in salesforce are text area, formula, currency, picklist and many more these fields let user to next level of development. In a similar manner we are creating custom fields on our custom job posting object which are as follows: - 1. Job Posting Site URL 2. Status 3. Technical Site 4. Description For review object we have custom picklist and custom checkbox’s so that our HR team recruiter can select and on the basis of ratings: - 1. Core competencies 2. Leadership Skills 3. Experience 4. Reasons recommended 5. Recommend for hire These have a relationship with our interviewer and job application objects already there in the package making the life of HR easy.
  • 36. 25 Fig 9. Creating custom picklist fields. Fig 10. List of all fields and relationships created.
  • 37. 26 3.4.6 Relationships in salesforce The Force.com platform supports two types of relation between objects between p arent and child. They are relationships of seeups and relationships of masterdetail. These relationships work in databases like foreign keys and connect two different objects together, creating a relationship. The lookup relationship creates a normal relationship with other objects in which now by creating the relationship we can now direct from one object to the other and can create many one-to-one and many-to-many relationships. Lookup relationships are necessary because in certain situations, but not always, a relation between two objects is needed. A lookup relationship is used in situations such as relaying more than one parent records to the child record and linking to widely shared data, such as ref erence data. The master-detail relationship is much more powerful relationship in salesforce the object on which the master-detail is created is the child object and object referenced is the parent object. Now using these relationships, we will create a junction object between job position and posting sites called job posting. One position for the organization can be posted several times, and one employment does have like more than one job posting on the other hand one job posting is always looked up by a single position on a single employment website. Essentially, the object Job Posting has manytoone relationships with the objects of both the Place and the Work Posting Page. For such manytoone relationships, you build a multipletomany relationship between the subjects of the Place and the Wor k Posting Page.
  • 38. 27 Fig 11. Creating master-detail relationship job posting object. 3.4.7 Page Layouts in salesforce Page layouts are used to do the formatting of the visibility of the fields and type of data displayed on any objects detail page. These page layouts are there for other features of salesforce and can be customized and edited according to the user’s convenience. This can be used for read only access as well as edit too it is a feature of data hiding.
  • 39. 28 Fig 12. Custom Page Layout. 3.4.8 Schema builder in salesforce Salesforce Database Creator offers a complex framework to display new template objects, custom fields and the database relationships. It removes the need to click t o check out the specifics of a masterdetail relationship from page to page or to add a whole new custom field to an item in your schema. Fig 13. Schema Builder.
  • 40. 29 In our schema builder we can see all the objects connected together via our custom junction object. We can also see that the position object has a self-relationship with itself and on the other hand our junction object Job posting has two master detail relationships with both the other objects. 3.4.9 Security and sharing rules in salesforce Provision of salesforce towards security can be seen on many levels some of them are listed below: - 1. Object Level Access: for object accessibility. 2. Field Level Access: for field accessibility. 3. Record Level Access: for record accessibility. 4.Profiles: Every user in salesforce has a profile now using these profiles he can access or cannot access different things that are present in salesforce. These profiles are created by the administrator of the domain the user is using. Every profile has different set of security and sharing rules. 5. Permission Sets: A permission sets are like profiles but they give acces to different stuff than the profile. It is one step higher in security through this the admin can decide to give access on fields and other related objects. 6. Field Level Permissions: If a user can view/edit fields for a given object or not. 7. Organization-Wide Default Settings: These are the default permissions and user sets defined by the organization at default level.
  • 41. 30 8. Role Hierarchies: Like in any organization these are used to set up a hierarchy in which now people have different permission sets. 9. Sharing rules: Controlling record level access when files are shared between the users or profiles of an organization have exceptions for org-wide-defaults. 10. Manual sharing: This take controls of all the usage limitations Someone should exchange the documents with individual people. App rights and t he profile limit what the app can see. The changes made in the Salesforce desktop site are reflected in the app and mobile users in order to obtain the data of their org anization without special configuration. I have created a custom profile for the HR recruiter so that it is able access records easily and data restrictions to other roles and profiles would also be possible Object Read Create Edit Delete Candidate ✓ ✓ ✓ Interviewers ✓ ✓ ✓ ✓ Job Applications ✓ ✓ ✓ ✓ Job Postings ✓ ✓ ✓ ✓ Job Posting Sites ✓ ✓ ✓ ✓ Positions ✓ ✓ ✓ Reviews ✓ ✓ ✓ ✓ Table 5. These are the object level access given to the HR recruiter profile. Assigned a permission set to the hiring manager so that the hiring manager can have add on permissions to specific users, on top of their already created profile permissions, without having to upgrade existing profiles, create new profiles, or grant an administrator profile where it's not necessary. In other words, Temporary permission set for those Hiring Managers that need to interview candidates for positions in their department.
  • 42. 31 Now field level security is also implemented for the hiring manager for the salary range field because it is important for the hiring manager to look at the salary range Fig 14. These are the object level access given to the HR recruiter profile. 3.4.10 Cross object formulas in salesforce Cross-object formulas incorporate fields from related objects for calculations and display on detail pages, list views, and reports. These formulas get data from related parent objects to display on the child object. Using them is a great way to avoid duplicate work, duplicate data, and data inconsistency. In my project I have used a cross object formula between the candidate object and the position object for the review object which means I am trying to store the name of candidate fromcandidate_cc object and position of the candidate from Position_cc object together to display on the Review_cc object.
  • 43. 32 Step 1: - first we have to store the first name and last name together because both of these are separate fields Fig 15. Adding Formula field on cross object. Step 2: - now we have to get the position name from position object store in job application field of review object.
  • 44. 33 Fig 2. These are the object level access given to the HR recruiter profile. 3.4.12 Validation Rules in salesforce Validation guidelines ensure that the data that a user inserts into a database complie s with the requirements that you define before the database can be saved. A validati -on eighter contains a rule or formula which evaluates the data in one or more fields and returns a "Real" or "Fals e" value. It may also contain an error message to be shown to the user when the rule returns a "Real" value due to an invalid value. In this project I have created a validation rule which only validates the position entered when it has a hiring manager associated with it. For these types of formulas, we use ISBLANK function steps are as shown below: - 1. Object Manager and select Position. 2. Click Validation Rules, then click New. 3. For the Rule Name, enter Every_Position_Must_Have_a_Hiring_Mgr
  • 45. 34 4. Select Active. 5. Enter this Description: Every position record requires have a hiring manager. 6. Enter the Error Condition Formula: ISBLANK (Hiring_Manager__c) && $Profile.Name <> "System Administrator" 7. Ensure your screen looks like this Fig 16. Adding Validation Rule.
  • 46. 35 3.5 Using Automation tools Using of automation tools is a very important solution for business processes because today everybody wants a personalized experience. Automation has many features but all together in simple words it does reduce the mechanical work by making the process automatic. Automation solutions and tools provided by salesforce are based on: -  Integration of various systems.  Configuration of process logic.  Designing and building an end-user experience.  Making the experience available fromanywhere: desktop or mobile devices, internal apps, or external portals. Tools: Automation process are provided by salesforce with the use of lightning flow which is intern an integrated process. Lightning flow consists of two types of declarative point and click tools called the process builder to build processes and flow builder to build flows. To sum up the differences:  Lightning Flow is the name of the product.  Process Builder and Flow Builder are the names of the tools.  Use Process Builder to make processes; use Flow Builder to make flows.
  • 47. 36 Fig 17. Process Builder. Fig 18. Flow builder.
  • 48. 37 3.5.1 Approval process in salesforce Approval processes are used to insert records only after a given approval has been conducted by the approver it’s an automated process which is in turn a subset of the process builder. Example of an approval process. The following is a way of using approval. Fig 19. Approval Process. 1. At the initiation the initial submission action occurs and then the record is locked ensuring no change to the record except the admin and the approver.
  • 49. 38 2. There are possible submission actions that can be used like alert messages and quick action tabs. 3. Steps used for approval process are used to assign approval to different people in the organization. In this example, manager is assigned to the submitter’s approval. 4. On rejection of the approval the rejection process begins and the approval is rejected by the manager. 5. Now if the manager approves the request at the first stage then the record moves to the next stage of approval and CEO approval is required. 6. The final approval is given by the CEO if the CEO approves the record is then finally unlocked and now is part of the organization. 7. Final approval is reflected on the records page. In this project I am using a similar kind of approval process in which I am creating a system to approve positions before posting them. There are three recruiters for the process or the approvers two working with the manager and one to sign-off at the senior level. 1. Create a new folder and two e-mail templates one for Approved records and one for rejected records.
  • 50. 39 Field Value “Folder” Position Request Responses “Available for” Select “Email Template” Position Approved “Subject” Your position request was approved “Body of Email” Dear {!Position c.OwnerFirstName}, Good news! Your recent position request has been approved. Please log in to your org for details. Table 6. Email template for approval. Field Value “Folder” Position Request Responses “Available for” Select “Email Template” Position Rejected “Subject” Your position request was rejected “Body of Email” Dear {!Position c.OwnerFirstName}, Unfortunately, your recent position request has been rejected. Please log in to your org for details. Table 6. Email template for rejection. 2. Create custom approvers to approve the process. 3. Create the multistep approval process. In the process development screen, we have to select all the custom approvers that we have created and select at which level they can approve the record. We also have to add fields to be displayed on the approval page
  • 51. 40 Fig 20. Adding Fields to approval 4. We have to first send the approval to the initiation step and then we set up all the approval steps one by one. Fig 21. Adding Initiation to approval
  • 52. 41 5. Final approval page layout Fig 22. Approval page layout. 6. Each approval step has its own rejection connected to it and email is sent when the process exits at any level if rejection is the result. To complete the whole automated process, we use the process builder to create a process to submit the positions for approval this process in turn uses the approval process we just created. This whole process is automated and now the recruiting app has an automation function.
  • 53. 42 3.5.2 Flow diagram of the approval Fig 23. Flow diagram of the approval. Position approved Position rejected
  • 54. 43 CHAPTER 4 ANALYSIS OF PERFORMANCE 4.1 Types of testing used by salesforce Unit testing: Unit tests are testing processes in which tests are run in large condos using help of test classes. Each test class contains different types of cases or input values so that the outcome does provide the required solution. Unit testing is black box testing and it’s a software development process in salesforce test classes are developed in apex on the developer console and these consoles are run through the salesforce platform only. Unit testing is usually an automated process but sometimes it is done in self- mode i.e it is used in EXTREME PROGRAMMING which Is a programmatic declaration of continuoustesting and revision.. Conditions of testing: Normal Conditions –Variety of states are tested. Edge Cases –Input conditions are bad –Conditions on boundary Some Regressions Force.com-specifics –Apex reachs, Triggers etc. Properties of Good Unit Tests  Thorough
  • 55. 44  Looping  Automated  Alone UAT Testing: User acceptance testing is one of the final steps before the project or the developed application is deployed. The end users who use the application are the best testers as at the beginning till the end almost everything depends on user experience. For the above type of user experience, we need to conduct acceptance testing so that the application is deployed in a confident way as the user is with us and the application will serve the purpose. Bugs are also removed with the help of usability testing there are some bugs which the developer doesn’t recognize at the first time. 4.2 How testing is done In our simple project we have not used apex developing tool or visual force pages so we can’t use the provided testing tools on the other hand salesforce provides us with the demo of the recruiting app created. We can simply launch our app from our salesforce playground or the developer org and can test the implemented features. For further deployment of the app we have to buy an enterprise edition of salesforce where we get different sandbox’s that can be used for proper development and testing off the application along with implementation of apex classes and visualforce pages in a proper manner.
  • 56. 45 4.3 Working of the automated approval process using the recruiting application The demo of the salesforce application is presented using salesforce classic environment 1. Launching the application landing onto the home page we can see our custom object tabs displayed on the top. Fig 24. Home Page.
  • 57. 46 2. We go to the positions tab to create a new position Fig 25. New Position Created. 3. Fill in the description for the new position and save the new position record. Fig 26. New position details page.
  • 58. 47 4. Now on the position description page we submit the position for approval which initiates our approval process using the inbuilt process builder. Fig 27. Submit for approval 5. Now on the same description page the position record is locked and we can see the approval status to be pending. Fig 28. Status of approval.
  • 59. 48 6. Now we go back to the approvers or the admin page and we can see that the approval related list has an item for approval. Fig 29. Approval task added for recruiter 7. Now for the new position that we created looking at the details we can approve the position. Fig 30. Approval submitted by recruiter
  • 60. 49 8. Now we can see that the position has been approved. Fig 31. Position Approved. 9. We also receive email about the new approved position. Fig 32. Email received.
  • 61. 50 CHAPTER 5 5.1 CONCLUSION Via the use of cloud computing a platform is serviced Which is the Force.com which in turn provided a base through which an organizations business can radically grow and the outcomes of such a scalable division of the same is needed in each and every organization. Salesforce is one of the biggest CRM solution providers which uses the Force platform to provide such CRM solutions in an interactive way both easy for the developer and the customer and even the administrators. Not only large MNC’s but small-scale organizations can also benefit from salesforce and can grow their business to huge extents. The recruiting app was a small implementation of salesforce features but an important implementation as every organization has its HR team and using this small implementation can give them a quick start. 5.2 FUTURE SCOPE Like all the major Project this project also has a huge scope for improvement but accomplishing those would have been difficult and tedious in the given time interval. Therefore, in the future the created application can: 1. Apex developing tools. 2. Using self-developed classes and triggers 3. Using Flows and Screens 4. Using visual force pages to developproper htmlwebsites and custom htmlpages. 5. Data analytics could also be implemented for smoother and prompt reports
  • 62. 51 REFERENCES Provided trailhead modules in the training sessions [1] http://www.desynit.com/good-systems-blog/salesforce/why-salesforce/ [2] http://www.dummies.com/business/customers/why-use-salesforce/ [3] http://www.investopedia.com/terms/i/inventory-management.asp?lgl=no-infinite [4] Extremely effective CRM Solution using Salesforce [5] https://en.wikipedia.org/wiki/Salesforce.com#Technologies
  • 63. 52