Software systems for business management appeared as a result of the growing need to ensure a consistent IT support for most of the business activities that organizations have to deal with. Moreover, organizations continue to struggle for obtaining competitive advantages on the business market and to lower the cost of developing and maintaining computer systems to support their operations. As business rules play an important role within any organization, they should be taken into consideration as distinct elements when developing a software system that will operate in a collaborative environment. The paper addresses the problem of business rules modeling, with special emphasis on incorporating business rules in Unified Modeling Language (UML) models.Keywords: Business Rules, Software Systems, Business Management, UML Models, OCL1IntroductionWhile software development environ- ments productivity is still growing strong, studies on the causes of software projects failure consistently places poor quality re- quirements on top of the hierarchy of these causes [1]. An explanation of this situation is that the development teams allocated too lit- tle time understanding the real business prob- lems, the user needs or the nature of the un- derlying environment in which the system will run. Moreover, developers are trying to provide technical solutions as quickly, but based on insufficient understanding of the problem's requirements [2].In most cases, difficulties in requirements modeling and analysis arise from insufficient understanding of the logic part of the applica- tion, known as business logic. Business logic is the defining element for a business being in the process of modeling and automation, and it includes both business rules (BR) and workflow (process), which describes the transfer of documents or data from one par- ticipant (person or software system) to an- other.It is common knowledge that every organiza- tion operates according to a set o business rules. These may be external rules, coming from legal regulations that must be observed by all organizations acting in a certain field, or internal rules which define the organiza- tion's business politics and aim to ensure competitive advantages in the market. Start- ing from the previous observations, it is ob- vious the important role that business rules play within the development process of an organization's software system [3]. And this especially applies to Software Systems for Business Management (SSBM), as they are suitable to incorporate a large amount of business rules.Doing business today is mainly about creat- ing and maintaining strategies and connec- tions. While strategies must comply with business rules, an organization is more likely to succeed in its business activities if it cre- ates a support for strong collaborations be- tween managers, employees, clients and any other stakeholders. Thus, using a collabora- tive SSBM is a must, not a need in order to operate in a collaborative environment.An analysis of SSBM's components, in terms of their functionality and how they relate to business rules reveals the important role that the business rules play in the development process of these systems. The results of this analysis are summarized in Figure 1 and de- scribe hereinafter.Very often, software components are dis- cussed in the context of component-based software systems. In this paper a software component will be perceived in a wider sense, as an element of the system which provides implementation for a service or pre- defined event, being encapsulated and able to communicate with other system components.According to [4], a software application may contain two types of components: Technical components and Business components. Technical components are non-functional components used to build the technical archi- tecture by providing reliable and reusable so- lutions that have a recurring problem (ensur- ing, for example, networks communication or persistence). …
Read full abstract