Business rules represent constraints in a domain, which need to be taken into account either during the development or the usage of a system. Motivated by the knowledge reuse potentials when developing systems within the same domain, we studied business rules in a large software company. We interviewed 11 experienced practitioners on how they understand, capture, and use business rules. We also studied the role of business rules in requirements engineering in the host organization. We found that practitioners have a very broad perception for this term, ranging from flows of business processes to directives for calling external system interfaces. We identified 27 types of rules, which are typically captured as a free text in requirements documents and other project documentation. Practitioners stated the need to capture this tacit form of domain knowledge and to trace it to other artifacts as it impacts all activities in a software engineering project. We distill our results in 17 findings and discuss the implications for researchers and practitioners.
Business Rules In Practice - An Empirical Study (IEEE RE'14 Paper)
1. Capturing
and
Sharing
Domain
Knowledge
with
Business
Rules
Lessons
Learned
from
a
Global
So<ware
Vendor
2. All
Started
with
an
ObservaAon
2
One
minor
change
in
a
UK
regula2on
(rule
for
growth
rate
of
insurance
funds)
A
significant
ripple
effect
and
maintenance
effort
which
lasted
for
6
months!
3. Our
Working
Hypothesis
3
Would
a
systema2c
management
of
these
rules
decrease
maintenance
costs
and
increase
reuse?
Many
of
the
“rules”
are
the
same
for
the
same
region,
domain,
or
company
(customer)
4. What
are
Business
Rules?
4
Business
rules
are:
• Statements
that
define
or
constrain
par2cular
aspects
of
the
business
Used
to:
• Specify
the
behavior
of
a
system
under
development
• Specify
how
a
system
should
be
used
[The
Business
Rule
Group,
2000
]
5. Outline
of
the
Talk
Summary
Study
Design
Findings
MoAvaAon
2
1
3
4
5
6. Research
QuesAons
6
1.
How
do
prac22oners
perceive
business
rules
and
which
types
exist?
2.
How
do
prac22oners
capture
and
maintain
business
rules?
3.
How
are
business
rules
used
in
soYware
projects?
4.
How
does
RE
pracAces
impact
the
usage
and
management
of
rules?
7. Research
Method
• Exploratory,
qualita2ve
research
• Semi-‐structured
interviews
– open
ques2ons
• Sec2ons:
– About
you
– Requirements
engineering
– Business
rules
• 90
minutes
• 2-‐3
interviewers
per
session
7
9. #
Roles
Exp(Y)
Domain
P1
Domain
consultant,
business
process
manager,
requirements
reviewer
13
Insurance
P2
Business
process
manager,
domain
consultant,
program
manager
20
Insurance
P3
Developer,
project
manager,
analyst
4
SoYware,
Banking
P4
Developer,
maintenance
lead,
project
manager
20
Telecom,
Insurance,
Power
P5
Developer,
soYware
architect,
project
manager
12
Telecom,
Finance
P6
SoYware
architect,
program/delivery
manager
10
Automo2ve
and
Telecom
P7
Program
manager,
product
manager
16
Finance
P8
Project
manager,
program
manager
21
Finance
P9
Product
manager,
presales
lead
17
Banking,
Finance
P10
Tester,
lead
underwriter,
program
manager
14
Banking,
Finance
P11
Delivery
center
head
18
Finance
Overview
of
ParAcipants
9
10. Result
SummarizaAon
10
Interviews
17
Findings
Take
minutes
Group
quotes
by
quesAon
Group
similar
quotes
Describe
findings
Statement
must
be
observed
twice
at
least
Sent
to
par2cipant
within
48
h
Independent
tagging
of
quotes
11. Result
SummarizaAon
11
Interviews
17
Findings
Take
minutes
Group
quotes
by
quesAon
Group
similar
quotes
Describe
findings
12. Outline
of
the
Talk
Summary
Study
Design
Findings
MoAvaAon
2
1
3
4
12
13. PercepAons
of
Business
Rules
13
Stakeholders
have
different
percepAons
of
business
rules
depending
on
their
roles
and
experience
14. 27
Types
of
Business
Rules
were
MenAoned
14
#
Rule
Type
Times
MenAoned
1
Valida2ons
rules
&
value
ranges
7
2
System
/
applica2on
specific
rules
4
3
Calcula2on
rules
4
4
Access
control
rules
4
5
External
system
interfaces
3
6
Laws
&
regula2ons
3
7
Sequencing
/
control
flow
3
8
Geography
specific
rules
3
15. 27
Types
of
Business
Rules
were
MenAoned
15
#
Rule
Type
Times
MenAoned
9
Business
process
rules
3
10
Procedural
/
Opera2onal
rules
3
11
User
interface
rules
2
12
Company
policies
2
13
Time
restric2ons
2
14
Dynamic
rules
2
15
Defini2ons
2
16. Capturing
and
Maintaining
Business
Rules
Business
rules
are
embedded
as
free
text
anywhere
in
the
project
and
domain
documenta2on
16
17. 17
no
separate
sec2on
for
business
rules
You
can
find
business
rules
in
requirements
specifica2ons,
source
documents,
process
descrip2on,
marke2ng
brochures,
(telecom)
regula,ons,
or
laws
[P5]
[P3]
18. 18
The
use
of
formal
rule
languages
and
rule
engines
is
rather
excep2onal
in
prac2ce
19. Use
of
Business
Rules
19
Business
rules
are
captured
and
used
not
only
in
RE
but
also
in
other
project
ac2vi2es
20. 20
Many
rules
were
discovered
during
the
implementa2on
and
tes2ng
when
we
needed
them.
[P6]
22. RE
PracAces
and
Business
Rules
22
Customers
expect
soYware
vendors
to
have
domain
knowledge
and
to
“develop”
business
rules
23. RE
and
Business
Rules
23
Prac22oners
allocate
low
effort
for
understanding
special
flows
(rules)
The
lack
of
domain
knowledge
in
development
teams
hinders
the
capturing
of
business
rules
24. RE
and
Business
Rules
24
To
iden2fy
the
right
level
of
detail
in
documenta2on
is
difficult
(too
much
informa2on
or
only
main
flows
without
rules
and
excep2ons)
Business
rules
(excep2ons)
represent
a
specific
type
of
requirements
or
domain
knowledge,
which
oYen
remains
tacit
25. Outline
of
the
Talk
Summary
Study
Design
Findings
MoAvaAon
2
1
3
4
25
26. Business
Rules
=
Crucial
Domain
Knowledge
• SoYware
vendors
increasingly
rely
on
the
domain
knowledge
• Customers
expect
vendors
to
know
the
domain
very
well
• “Knowing”
the
domain,
the
restric2ons,
the
constraints,
and
the
excep2ons
is
very
cost
intensive
26
27. ImplicaAon
for
Researchers
27
1. Focus
on
the
knowledge
and
documenta2on
poten2als
of
business
rules
2. Extract
and
trace
rules
to
various
ar2facts
3. Develop
ques2on-‐answering
systems
to
retrieve
the
required
informa2on
depending
on
task
and
context
28. 28
It
would
be
perfect
if
I
could
just
select
a
component
or
a
feature
and
my
tool
show
me
the
most
important
business
rules
which
I
should
take
care
of.
[P9]
29. 29
Business
rules:
The
bomb
or
the
treasure?
Exploratory
study
of
business
rules
in
RE
pracAce
Business
rules
=
an
asset
worth
“externalizing”
(automaAcally?)
17
findings
on
types
of
rules,
management
and
use
30. Uni
Hamburg,
Germany
Prof.
Dr.
Walid
Maalej
maalej@informa2k.uni-‐…
mobis.informa2k.uni-‐…
maalejw