Information systems often fail because their requirements are poorly defined. This book shows IT professionals how to specify more precisely and more effectively what their systems need to do. The key lies in the discovery and application of what are called business rules. A business rule is a compact and simple statement that represents some important aspect of a business. By capturing the rules for your business—the logic that governs its operation—you will gain the ability to create systems fully aligned with your business needs. In this book, Tony Morgan provides a thorough introduction to business rules, as well as a practical framework for integrating them into information systems. He shows you how to identify and express business rules, offers practical strategies for their use, and explains the key elements of logic that underpin their application. Topics covered include:
Understanding the role of business rules and models in information systems development
Using models to structure and manage business activities, including e-commerce
Defining and discovering business rules
Controlling business rule quality
Fitting business rules into varied technical architectures
Implementing business rules using available technology
Whether you are an analyst, designer, developer, or technical manager, the in-depth information and practical perspective in this valuable resource will guide you in your efforts to build rule-centered information systems that fully support the goals of your organization.
Review By: Alexander A. Orsini 06/23/2010Business Rules and Information Systems is the type of book everyone involved in developing information systems should read. Tony Morgan presents an organized and very well written explanation of what business rules are, how to capture and describe them, and how to implement them in software. The book is clearly targeted to systems analysts and requirements engineers but the content is valuable to anyone involved in developing information systems. For business analysts the book provides some fundamental understanding of how business rules fit into an information system and why they are so difficult to maintain. For systems analysts the book provides some excellent guidance for identifying and documenting business rules. And for software architects, designers, and developers it provides insight and ideas for implementing a rules engine.
The book provides many examples to help the reader follow the logic and each chapter continues seamlessly from the preceding one. The Unified Modeling Language (UML) is introduced early as one approach to documenting a business rule, but the book's focus is not to promote any one notation over another. The author's objective is to explain what business rules are and how they should be handled in an information system. The UML used is simple enough that a novice reader can understand it enough to follow a business rule as it transforms from idea to actual software.
The book also does an excellent job of explaining some of the current best practices in software development. The discussions concerning architecture, component-based development (CBD), and other technology related topics were adequate to pique ones interest but not so much as to overwhelm the reader. These topics were approached and explained in terms of their relevance for implementing and supporting business rules in today's information systems. Information systems that today are expected to be flexible, scalable, and reliable.
If there was one flaw in the book that will keep it from becoming a classic, it was the scant coverage of testing and quality in general. It would have been useful to close the loop from business rule identification to software validation.
Business Rules and Information Systems should be read by anyone involved in developing information systems. Tony Morgan presents an organized and very well written explanation of what business rules are, how to capture and describe them, and how to implement them in software. It is extremely well written and insightful.