Dynamic Business Modeling

Last updated

Dynamic Business Modeling ("DBM") describes the ability to automate business models within an open framework. The independent analyst firm Gartner has recently called Dynamic Business Modeling "critical for BSS solutions to succeed".

Contents

Dynamic Business Modeling is based on principles wherein the business logic of an application is managed independently from the application servers that automate the services and processes defined in the business logic. Business modeling and integration (which itself is defined as part of the business model) are defined in a business logic layer, allowing underlying application servers to be business logic agnostic and therefore need no business driven customization. DBM applied correctly should reduce both the cost and risk in the initial implementation and its future evolution of systems.

Previous generations of IT systems (from 1990 to approximately 2001) were designed to address specific business models and regulatory practices and no value was given to logicinfrastructure segregation. These systems provided value by automating predefined business models (commonly referred to as "off-the-shelf"). As a result, they implicitly drove business strategy where DBM states that they should be driven by it. By being "predefined" they do not:

Dynamic Business modeling is suited for open automation of strategy-driven business models. By removing the need for customization of core application servers it is postulated as more cost efficient, rapidly deployed and evolveable. Dynamic Business Modeling was initially described (though applied much earlier in practice) by Doug Zone at MetraTech Corp. in reference to the billing segment of the enterprise software market. "Service Oriented Applications" (also known as "service based applications") coined by IBM describe potential methodologies to achieve DBM.

Technical definition

Dynamic Business Modeling is defined as the automation of Enterprise Business Models based on the principle that the model's underlying business processes and business services need to be dynamically and openly definable and re-definable.

Business definition

Dynamic Business Modeling is defined as the enabler of a strategic advantage achieved by focused differentiation in any aspect of business (from marketing to finance to operations). This differentiation is achieved through how business is conducted: openly and dynamically defining the business model. Capital investment – human, physical and intellectual – must be aimed at allowing the definition of the business model to be dynamic.

Dynamic Business Modeling recognises that businesses dynamically evolve, re-inventing their (business) models to achieve strategic advantage. DBM posits that the role of enterprise software (CRM, billing, ERP) is to dynamically automate and advance the business processes and services that lie behind these Business models.

History

The term was first used to describe the architecture of MetraNet, a charging, billing, settlement and customer care from MetraTech Corp.

Core principles

  1. Business strategy drives selection of business models.
  2. These business models drive the design of underlying processes and services.
    • Business Analysis is critical: Any number of models can address a strategic imperative. But the best models, services and processes will exploit existing business capabilities (human, IT and physical), the areas where change is possible and the areas where investment will make most change possible at the lowest cost.
  3. Enterprise software automates these services and processes.
  4. DBM enables change: Strategic adeptness requires tuning and/or the re-definition of the present Business Model.
    • The business must begin with the principle that allows rapid tuning and/or re-definition of the underlying services and processes. This must apply at human and technological levels.

Key success criteria

  1. Open modeling capabilities:
  2. Ease of modeling:
    • Definition and automation of new and evolved business services and processes must be accessible at the business analysis level. Ideally the models and its services and processes are defined and stored in open business analyst oriented data (for example metadata.)
  3. Open integration:
    • Dynamic Business Modeling must work with processes and services (both automated and human) that are NOT dynamic. These fixed constraints are not external to the new business model but are part of its fabric. IT Architecture and Enterprise applications must be able to incorporate, embed and/or build upon these existing processes and services.
  4. Robustness:
    • Regardless of the dynamism of the business model. The automated and human-based business processes and services must have all the robustness of long standing static processes and services. Dynamic IT automation must have a full audit capability, reprocessing ability and standards compliance (i.e. PCI).
  5. Perpetual dynamism:
    • Automation is never finished. Processes and services change and are added constantly. IT Architecture and Enterprise applications must be designed to prevent “lock down” where the service and process automation on “Day One” is so tightly coupled that only minor evolution is economic. SOA principles of openness and loss coupling must be applied inside business applications.

Best practice

  1. DBM is service-based:
    • The application should be based on the principle that processes and integration can be de-constructed internally into services.
  2. Services and processes are loosely coupled:
    • Changing one should not impact the others.
  3. Services and process definitions are open:
    • And accessible to a business analyst. Ideally definitions are kept in metadata.
  4. Application servers must be free of embedded business logic:
    • For services, processes, data, workflows alike.
  5. Dynamic documentation is a feature:
    • As the model evolves the documentation must evolve as well. The application should allow the business analyst to document at service level and then generate a cohesive document that encompasses entire model.
  6. Business Analyst Interface is friendly and flexible:
    • The application must provide a way to put the definition of services and processes in analyst terms – using universal concepts such as flows and tables. The interface should encourage documentation, warn on inconsistencies, and allow testing.

Graphics

Related Research Articles

<span class="mw-page-title-main">Database</span> Organized collection of data in computing

In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and analyze the data. The DBMS additionally encompasses the core facilities provided to administer the database. The sum total of the database, the DBMS and the associated applications can be referred to as a database system. Often the term "database" is also used loosely to refer to any of the DBMS, the database system or an application associated with the database.

In software engineering, multitier architecture is a client–server architecture in which presentation, application processing and data management functions are physically separated. The most widespread use of multitier architecture is the three-tier architecture.

Enterprise application integration (EAI) is the use of software and computer systems' architectural principles to integrate a set of enterprise computer applications.

In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing.

A BRMS or business rule management system is a software system used to define, deploy, execute, monitor and maintain the variety and complexity of decision logic that is used by operational systems within an organization or enterprise. This logic, also referred to as business rules, includes policies, requirements, and conditional statements that are used to determine the tactical actions that take place in applications and systems.

Enterprise software, also known as enterprise application software (EAS), is computer software used to satisfy the needs of an organization rather than its individual users. Enterprise software is an integral part of a computer-based information system, handling a number of business operations, for example to enhance business and management reporting tasks, or support production operations and back office functions. Enterprise systems must process information at a relatively high speed.

A job scheduler is a computer application for controlling unattended background program execution of jobs. This is commonly called batch scheduling, as execution of non-interactive jobs is often called batch processing, though traditional job and batch are distinguished and contrasted; see that page for details. Other synonyms include batch system, distributed resource management system (DRMS), distributed resource manager (DRM), and, commonly today, workload automation (WLA). The data structure of jobs to run is known as the job queue.

<span class="mw-page-title-main">Uniface (programming language)</span> Low-code development platform

Uniface is a low-code development and deployment platform for enterprise applications that can run in a large range of runtime environments, including mobile, mainframe, web, Service-oriented architecture (SOA), Windows, Java EE, and .NET. Uniface is used to create mission-critical applications.

<span class="mw-page-title-main">Enterprise modelling</span>

Enterprise modelling is the abstract representation, description and definition of the structure, processes, information and resources of an identifiable business, government body, or other large organization.

<span class="mw-page-title-main">Apache OFBiz</span> Open-source enterprise resource planning software

Apache OFBiz is an open source enterprise resource planning (ERP) system. It provides a suite of enterprise applications that integrate and automate many of the business processes of an enterprise.

Database administration is the function of managing and maintaining database management systems (DBMS) software. Mainstream DBMS software such as Oracle, IBM Db2 and Microsoft SQL Server need ongoing management. As such, corporations that use DBMS software often hire specialized information technology personnel called database administrators or DBAs.

Configurable Network Computing or CNC is JD Edwards's (JDE) client–server proprietary architecture and methodology. Now a division of the Oracle Corporation, Oracle continues to sponsor the ongoing development of the JD Edwards Enterprise Resource Planning (ERP) system, While highly flexible, the CNC architecture is proprietary and, as such, it cannot be exported to any other systems. While the CNC architecture's chief 'Claim to fame', insulation of applications from the underlying database and operating systems, were largely superseded by modern web-based technology, nevertheless CNC technology continues to be at the heart of both JD Edwards' One World and Enterprise One architecture and is planned to play a significant role Oracle's developing fusion architecture initiative. While a proprietary architecture, CNC is neither an Oracle nor JDE product offering. The term CNC also refers to the systems analysts who install, maintain, manage and enhance this architecture. CNC's are also one of the three technical areas in the JD Edwards Enterprise Resource Planning ERP which include developer/report writer and functional/business analysts.

Database-centric Architecture or data-centric architecture has several distinct meanings, generally relating to software architectures in which databases play a crucial role. Often this description is meant to contrast the design to an alternative approach. For example, the characterization of an architecture as "database-centric" may mean any combination of the following:

A process-driven application is a software application that is driven by an underlying process or workflow engine where the process can be exposed and reused. In effect all applications are process-driven and the logic of any application can be extrapolated into a flowchart to represent the logical process of execution. Process-driven applications are a growing trend in enterprise solutions involving humans, systems or both.

<span class="mw-page-title-main">Three-schema approach</span> Approach to building information systems

The three-schema approach, or three-schema concept, in software engineering is an approach to building information systems and systems information management that originated in the 1970s. It proposes three different views in systems development, with conceptual modelling being considered the key to achieving data integration.

<span class="mw-page-title-main">Business rule mining</span>

Business rule mining is the process of extracting essential intellectual business logic in the form of business rules from packaged or legacy software applications, recasting them in natural or formal language, and storing them in a source rule repository for further analysis or forward engineering. The goal is to capture these legacy business rules in a way that the business can validate, control and change them over time.

Business process management (BPM) is the discipline in which people use various methods to discover, model, analyze, measure, improve, optimize, and automate business processes. Any combination of methods used to manage a company's business processes is BPM. Processes can be structured and repeatable or unstructured and variable. Though not required, enabling technologies are often used with BPM.

IBM Operational Decision Manager (ODM) is IBM's Business Rule Management System (BRMS). IBM ODM also incorporates IBM's implementation of business event processing capabilities.

Software-defined storage (SDS) is a marketing term for computer data storage software for policy-based provisioning and management of data storage independent of the underlying hardware. Software-defined storage typically includes a form of storage virtualization to separate the storage hardware from the software that manages it. The software enabling a software-defined storage environment may also provide policy management for features such as data deduplication, replication, thin provisioning, snapshots and backup.

Infrastructure as code (IaC) is the process of managing and provisioning computer data center resources through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools. The IT infrastructure managed by this process comprises both physical equipment, such as bare-metal servers, as well as virtual machines, and associated configuration resources. The definitions may be in a version control system, rather than maintaining the code through manual processes. The code in the definition files may use either scripts or declarative definitions, but IaC more often employs declarative approaches.

References

    http://ralyx.inria.fr/2008/Raweb/triskell/triskell.pdf