By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
SmartData CollectiveSmartData Collective
  • Analytics
    AnalyticsShow More
    AI analytics
    AI-Based Analytics Are Changing the Future of Credit Cards
    6 Min Read
    data overload showing data analytics
    How Does Next-Gen SIEM Prevent Data Overload For Security Analysts?
    8 Min Read
    hire a marketing agency with a background in data analytics
    5 Reasons to Hire a Marketing Agency that Knows Data Analytics
    7 Min Read
    predictive analytics for amazon pricing
    Using Predictive Analytics to Get the Best Deals on Amazon
    8 Min Read
    data science anayst
    Growing Demand for Data Science & Data Analyst Roles
    6 Min Read
  • Big Data
  • BI
  • Exclusive
  • IT
  • Marketing
  • Software
Search
© 2008-23 SmartData Collective. All Rights Reserved.
Reading: Decision Management and software development III – DSLs
Share
Notification Show More
Aa
SmartData CollectiveSmartData Collective
Aa
Search
  • About
  • Help
  • Privacy
Follow US
© 2008-23 SmartData Collective. All Rights Reserved.
SmartData Collective > Business Intelligence > CRM > Decision Management and software development III – DSLs
Business IntelligenceCRMData MiningPredictive Analytics

Decision Management and software development III – DSLs

JamesTaylor
Last updated: 2009/02/14 at 3:31 AM
JamesTaylor
5 Min Read
SHARE

Martin Fowler always writes interesting things on his site and this one was no exception: Will DSLs allow business people to write software rules without involving programmers? In it he says:

…greatest potential benefit of DSLs comes when business people participate directly in the writing of the DSL code. The sweet spot, however is in making DSLs business-readable rather than business-writeable

And I think he is absolutely right on both points. This is exactly the value proposition of business rules – greatest benefit from business users editing business rules but broadest value from making business logic business-readable. Shared readability for business and IT users improves collaboration, improves accuracy and increases agility. I would go further and say that a business rules management system that allows templates and a business vocabulary (as all the leaders do) allows you to deliver a Declarative DSL (DDSL) quickly and efficiently.

Following the thread on Martin’s site I then found his piece on Rules Engines. This is more mixed. He describes them nicely and mak…

More Read

How AI is Boosting the Customer Support Game

How AI is Boosting the Customer Support Game

AI-Based Analytics Are Changing the Future of Credit Cards
Enterprises Are Leveraging the Benefits of AI-Driven ERPs
AI In Marketing: Is It Worth the Hype?
What Is The Advantage Of Using SDK in AI Technology?


Copyright © 2009 James Taylor. Visit the original article at Decision Management and software development III – DSLs.

Martin Fowler always writes interesting things on his site and this one was no exception: Will DSLs allow business people to write software rules without involving programmers? In it he says:

…greatest potential benefit of DSLs comes when business people participate directly in the writing of the DSL code. The sweet spot, however is in making DSLs business-readable rather than business-writeable

And I think he is absolutely right on both points. This is exactly the value proposition of business rules – greatest benefit from business users editing business rules but broadest value from making business logic business-readable. Shared readability for business and IT users improves collaboration, improves accuracy and increases agility. I would go further and say that a business rules management system that allows templates and a business vocabulary (as all the leaders do) allows you to deliver a Declarative DSL (DDSL) quickly and efficiently.

Following the thread on Martin’s site I then found his piece on Rules Engines. This is more mixed. He describes them nicely and makes the point that

people (wisely) tend to use rule engines just for the sections of a system

I call these Decision Services or Decision Agents as that is what rule engines are best at – automated decisions. Then Martin makes a comment that is less helpful:

You can build a simple rules engine yourself

This is less than helpful. After all, you can go and build a database yourself too but you probably shouldn’t. With the great business rules products available (from open source with Drools, to pureplays like Fair Isaac, ILOG (now IBM), Corticon or Innovations Software to hosted solutions like Intelligent Results or Zementis), building one is silly. Just use one from the wide palette that’s available.

He also says:

With a production rule system, it seems easy to get to a point where a simple change in one place causes lots unintended consequences, which rarely work out well.

My experience is that the reverse is true. Impact analysis for declarative, atomic, independent rules is much easier than it is for code. Martin’s positions on not using rules when you have lots of rules or chaining (I would advise the opposite in both cases) are also do not appear to be based on the current generation of products.

Business rules work and work well, lots of products exist so you don’t need to buy one and you can use them to build powerful Declarative DSLs. After all, as Johan den Haan said in:

The structure of Domain-Specific Languages:

DSLs can be implemented using various structures, like textual languages, graphical languages, wizards and interactive GUIs, or a
combination of the previous

or a business rules management system.

I wrote more on this before


Link to original post

JamesTaylor February 14, 2009
Share This Article
Facebook Twitter Pinterest LinkedIn
Share

Follow us on Facebook

Latest News

Data Ethics: Safeguarding Privacy and Ensuring Responsible Data Practices
Data Ethics: Safeguarding Privacy and Ensuring Responsible Data Practices
Best Practices Big Data Data Collection Data Management Privacy
data protection for SMEs
8 Crucial Tips to Help SMEs Guard Against Data Breaches
Data Management
How AI is Boosting the Customer Support Game
How AI is Boosting the Customer Support Game
Artificial Intelligence
AI analytics
AI-Based Analytics Are Changing the Future of Credit Cards
Analytics Artificial Intelligence Exclusive

Stay Connected

1.2k Followers Like
33.7k Followers Follow
222 Followers Pin

You Might also Like

How AI is Boosting the Customer Support Game
Artificial Intelligence

How AI is Boosting the Customer Support Game

6 Min Read
AI analytics
AnalyticsArtificial IntelligenceExclusive

AI-Based Analytics Are Changing the Future of Credit Cards

6 Min Read
ai-driven ERP software
Artificial Intelligence

Enterprises Are Leveraging the Benefits of AI-Driven ERPs

8 Min Read
AI in marketing
Artificial Intelligence

AI In Marketing: Is It Worth the Hype?

8 Min Read

SmartData Collective is one of the largest & trusted community covering technical content about Big Data, BI, Cloud, Analytics, Artificial Intelligence, IoT & more.

data-driven web design
5 Great Tips for Using Data Analytics for Website UX
Big Data
AI chatbots
AI Chatbots Can Help Retailers Convert Live Broadcast Viewers into Sales!
Chatbots

Quick Link

  • About
  • Contact
  • Privacy
Follow US
© 2008-23 SmartData Collective. All Rights Reserved.
Go to mobile version
Welcome Back!

Sign in to your account

Lost your password?