DEVELOPING THE MODELS OF PATTERNS IN THE DESIGN OF REQUIREMENTS TO AN INFORMATION SYSTEM AT THE KNOWLEDGE LEVEL

Current interest in what lies behind the concept of “architecture of a system”, in contrast to academic interest of the previous years, acquires a distinctly applied character. Companies want to reduce unproductive expenses for purchasing and implementation of individual elements of information systems (IS). Authorities consider subdivisions, supporting and operating IS as centers of costs and seek to exclude “extra” costs from total costs of management of business processes of an enterprise. These and other factors determine the need to address the problem of architectural integration of non-homogeneous elements of IS at a formal level. This level is available for implementation of modern IS as a separate component. The main purpose of this component is to reduce the costs of introduction and operation of particular functional elements of IS through automating of execution of operations of integration, search and elimination of contradictions between these elements. The most significant economic benefit from integration of elements into a single unified IS occurs if this operation is performed during formation and analysis of demands for this IS. In addition, in the course of this operation, it becomes possible to solve the problem of determining a possibility to reuse the elements of previously created IS for the creation of a new IS. Reuse of the elements makes it possible to reduce significantly the cost of creation IS and particular kinds of services (mainly information and software). The aspect of reuse of requirements is becoming particular significant in terms of designing, implementation, operation and modernization of IS as a set of IT-services. These services are provided to consumers for automating of business processes of enterprises or managing these processes. Effect of reuse of IT-services, subject to minimum changes of a providing part, can be considered directly proportional to the degree of reuse requirements for these IT-services, including transformations of descriptions in terms of other subject areas. It should be taken into account that changes of requirements, arising in the course of IS creation, are inevitable. Such a situation will demand formal representations of requirements and mechanisms of their management, capable to be implemented in specific information technologies, controlling integration processes of heterogeneous IS elements. That is why the problem of creation of such concepts and mechanisms is still relevant and requires solution.


Introduction
Current interest in what lies behind the concept of "architecture of a system", in contrast to academic interest of the previous years, acquires a distinctly applied character. Companies want to reduce unproductive expenses for purchasing and implementation of individual elements of information systems (IS). Authorities consider subdivisions, supporting and operating IS as centers of costs and seek to exclude "extra" costs from total costs of management of business processes of an enterprise. These and other factors determine the need to address the problem of architectural integration of non-homogeneous elements of IS at a formal level. This level is available for implementation of modern IS as a separate component. The main purpose of this component is to reduce the costs of introduction and operation of particular functional elements of IS through automating of execution of operations of integration, search and elimination of contradictions between these elements.
The most significant economic benefit from integration of elements into a single unified IS occurs if this operation is performed during formation and analysis of demands for this IS. In addition, in the course of this operation, it becomes possible to solve the problem of determining a possibility to reuse the elements of previously created IS for the creation of a new IS. Reuse of the elements makes it possible to reduce significantly the cost of creation IS and particular kinds of services (mainly information and software).
The aspect of reuse of requirements is becoming particular significant in terms of designing, implementation, oper-ation and modernization of IS as a set of IT-services. These services are provided to consumers for automating of business processes of enterprises or managing these processes. Effect of reuse of IT-services, subject to minimum changes of a providing part, can be considered directly proportional to the degree of reuse requirements for these IT-services, including transformations of descriptions in terms of other subject areas. It should be taken into account that changes of requirements, arising in the course of IS creation, are inevitable. Such a situation will demand formal representations of requirements and mechanisms of their management, capable to be implemented in specific information technologies, controlling integration processes of heterogeneous IS elements. That is why the problem of creation of such concepts and mechanisms is still relevant and requires solution.

Literature review and problem statement
The focus of researchers in the field of IS requirements descriptions today is on development of methods and tools, allowing creation and processing of formal models of requirements to a system [1][2][3]. By a model of requirement, we imply a complex of requirements' descriptions in ways that enable us, based on these descriptions, to perform necessary operations within the LC of IS using specific methodologies and information technologies [4]. Examples of such studies include: a) description of application of the developed method for analysis of requirements for ERP-IS, presented in [5];

DEVELOPING THE MODELS OF PATTERNS IN THE DESIGN OF REQUIREMENTS TO AN INFORMATION SYSTEM
AT THE KNOWLEDGE LEVEL V . L e v y k i n b) problems of development and application of the method for scenario-based analysis of requirements for a system, considered in [6]; c) application of a process model for identification of requirements for specialized IS of detection and processing of knowledge from business information, described in [1]; d) a variant of solution of the problem of automation of operations on formalizing requirements for IS, explored in [7].
However, analysis of the above examples of research proves the following: Would-be users have non-formal needs when it comes to created IS and technologies. And the problem of transformation of these needs into formal models of requirements for created IS and technologies is solved primarily at a conceptual level.
One of the promising directions in this field is exploration of models and methods for extracting knowledge from descriptions of needs and requirements for a system [8].
One of the options of formalization of a subject area (SA) of corporative IS through semantic modeling is discussed in [9]. Paper [8] also examines the issue of knowledge mining techniques for conversion of expressed needs into a set of descriptions of IS requirements in healthcare.
However, an analysis of studies, devoted to mining knowledge from requirements, shows that the problem of transformation of informal requirements into formal requirements models is solved primarily at the conceptual level [10]. The lack of a unified definition of "a requirement for a system" should be considered one of the main reasons of it [11].
At the same time, there is considerable practical experience in development and operation of IT-products, used for generation, analysis and management of requirements for a system -requirement management systems [12][13][14][15]. However, analysis of this experience in research [16] shows that none of the existing requirement management systems is oriented towards automation of synthesis of description of the architecture of a created system. In addition, the problem of decision making about reusing of previously implemented requirements in new IT projects remains practically unresolved in these systems.
On the whole, according to results of conducted analysis, it is possible to derive the following conclusion: so far, the problem of formal description of requirements, methods of formation and analysis -also at the level of knowledge, mined form requirements -does not have any acceptable solution. The same formal representations of requirements, which are used to develop systems of requirement management, place emphasis on description of particular requirements as artifacts of the IS, which is being created or updated. That is why, attempts of IS synthesis based on solutions, implementing particular requirements, most often give rise to the effect of "IT-blindness", which is the inability of existing IS and IT to "see" and assess actual processes in the environment, they belong to [17].

The aim and objectives of the study
The aim of present research is to develop formal description of representation of knowledge, mined from requirements and operations on these representations. In this case, operations on formal descriptions of knowledge representations are proposed to be considered as mappings, transferring the mentioned descriptions into each other. This will make it possible to describe artifacts and operations of information technology of IS requirements management based on a single mathematical apparatus. Application of these artifacts and operations will allow reduction of labor costs and time consumption due to identifying of previously implemented requirements in the course of initiation and early planning of new IT projects of IS creation.
To accomplish the set goal, the following tasks had to be solved: -development of models of structural IS design requirements patterns at the knowledge level; -development of models of behavioral IS design requirements patterns at the knowledge level.

Modified frame-based knowledge model
It is proposed to regard ontologies of an element of a controlled object or a process, IS element or IS as a whole, for which a requirement is posed, as an IS requirement representation at the knowledge level. Specific features of representation of requirements for particular elements of the created IS are addressed in [18]. At the same time, the desire to reuse IS requirements necessitates additional separation of ontologies of IS elements or IS as a whole, implemented in previously completed IS creation projects. On the whole, it is proposed to consider the following types of ontologies: a) ontologies of a subject-area (SA), which represent knowledge of automated objects and business process (BP), obtained in the course of identification and analysis of IS requirements; b) ontologies of implemented IS requirements that represent knowledge of structures of data and IP processes, IT-products and IT-services, created within the frameworks of previous projects; c) ontologies of requirements for a created IS that represent knowledge of structures of data and processes of IS, IT-products and IT-services, separated in the course of formation and analysis of requirements within the frameworks of the current IS creation project.
These ontologies are supposed to be formed based of the frame-based knowledge model. Application of this model is caused by the following considerations: -usage of a frame-based knowledge model allows application of a unified mathematical apparatus for describing knowledge about SA with a view to formal IS requirements representation; -usage of a frame-based knowledge model allows application of a unified mathematical apparatus for describing knowledge, implemented in IS elements in the form of IS models of this system; -usage of a frame-based model allows implementation of one-to-one mapping of requirements representation for created knowledge-based IS, in software elements of this IS.
The majority of modern database management systems (DBMS) are based on a relational data model. That is why solution of the problem of object-relational mapping with the use of a frame-based knowledge model of allows subsequent one-to-one mapping of requirements for SA and software elements into IA of the created IS [19,20].
A frame is a data structure for representation of a stereotyped situation. In methodology of object-oriented programming (OOP), this notion corresponds to class [21].
As a rule, frame SA models are represented as a frame network comprising nodes and different relationships between them [21]: is the set of links and relations between information units (hierarchical, reference, etc.); G is the set of mappings that assign relations from the assigned set { } 1 2 , ,..., n C C C (both hierarchical inheritance relations, and horizontal relations of frame associations) among information units, belonging to set FR; 1 2 , , . Frames are divided into frames-prototypes (correspondent to classes in OOP and tables in databases) and frames-instances (correspondent to instances of classesobjects and entries in database tables). By the nature of relationships, frames are classified in the following way: "subframes, frames and superframes are hierarchically ordered elements, forming frame systems". In OOP technology, there are also hierarchical and referential relationships, and subclasses (descendants-classes) and superclasses (parents-classes) correspond to concepts of "subframe" and "superframes". Similar to a frame model, it is possible to represent a hierarchy of classes (a class diagram in UML), in which parents-classes define a set of fields and functionality, inherent in all classes-descendants in the form of a network [21,[23][24][25][26].
Frame fr FR Î can be described by a structured set, having the form [24]: where n is the name of a frame; (ns, vs, ps) is the slot of a frame; k is the number of frame's slots; ns j is the name of a slot, 1, ; i k = vs i is the value of the slot, 1, ; i k = ps i is the name of the attached procedure, 1, . i k = A subprogram of the procedural type is used as the value of slot "the name of the attached procedure". In OOP, methods of classes are associated with attached procedures, in relational databases, they are associated with triggers, procedures and functions, related to tables [27].
However, a frame-based model in the classic form, represented by expression (2), does not exactly correspond to special features of representation of knowledge about SA, and especially on the created IS. Similar features are mainly determined by paradigms of system designing that a Provider puts as a base of the vast majority of design decisions of IS as a whole and separate IT-services. Structural and object-oriented approaches are typically specified as such paradigms. These approaches necessitate upgrading of frame-based model of knowledge representation. The objective of this upgrading is to use a framebased model for description of transformation of knowledge about SA, IS, individual IT-products and services in patterns and specific elements of the types of support, created by IS.
First of all, it is proposed to expand the basic concept of "frame" by separation as an individual frame's unit of a totality of all methods (attached procedures) Mt= ={mt 1 ,…, mt z }, associated with a frame as a whole, rather than with specific slots.
In addition, it is proposed to expand the concept of "frame" by introduction of the additional concept of "frame interface", corresponding to the concept of "class interface" in OOP methodology [27]. It should be noted that some programming languages (such as Object Pascal) support the possibility to define properties in interfaces of classes. In other programming languages (in particular, Java, C++), properties can be declared by assigning GetPropertyName and SetPropertyName methods. These methods provide access to fields of a class. Interfaces, like classes, can contain reference properties and be inherited with formation of hierarchies [23,26,28].
In relational databases, there is no concept, which completely corresponds to the term "class interface". The term "representation" is the closest to it in terms of participation in organization of interaction between various IS components.
The above allows us to define the term "frame interface" as declarative announcement of a set of properties and methods without detailed description (as well as without detailed description of attached procedures). Each interface of a frame is supposed to describe a separate point of view on the frame or a subset of frames, and this point of view may not perceive these frames or a subset of frames completely.
According to the proposed definition, formalized description of frame interface if will be a structured set in the form of [27]: Strictness of selection of a subset of generating frames is caused by inappropriateness of appearance of frame's interface of "God Almighty", i. e. containing elements of all the frames that make up a specific network.
Then formalized description of the concept of "frame" (2) taking into account the proposed modifications will take the form [27]: where {if 1 ,…,if n } is the set of interfaces, used by frame fr (can be empty).
Usage of the modified formalized description of frame (4) allows making the following statement. A network of frames (1) will include: -knowledge of data structures, presented in the form of frames; -knowledge of processes, in the course of which the above-mentioned structures will interact.
Such knowledge is represented in the network in the form of frames' interfaces and methods. In addition, the use of a modified description of a frame allows us to formalize descriptions of knowledge about SA and created IS, as well as descriptions of one-to-one mappings of this knowledge.

1. Results of development of models of structural information system requirement design patterns at the knowledge level
To develop a model of a frame network as IS requirement representation at knowledge level, we will use a generalized model of formulated IS requirements , tr IS L described in [28]. Then the model of IS requirement representation at the knowledge level should be represented as a formalized description of each element of subclass tr IS K with subsequent refinement after categorizing this element to one of the following subclasses: Decision on formation of the above types of ontologies based on a modified frame model of knowledge (4) as a network of frames (1) necessitates separation of the following structural IS requirement design patterns at the knowledge level: a) structural frame design pattern; b) structural frame's interface design pattern; c) structural pattern of designing relations between nodes of frames' network; d) generalized structural frames' network design pattern.
The model, describing the structural frame design pattern, Pt fr_ str , in a general case will take the form: where At n is the tuple of attributes, describing the name of a frame; At el_ fr is the tuple of attributes, describing the element of a frame (slot, interface, method); At el_ fr_ t is the tuple of attribute, describing the type of the frame's element; at n is the attribute, identifying the name of a frame; at el_ fr is the attribute, identifying the element of a frame; at el_ fr_ t is the attribute, identifying the type of the element of a frame. The model, describing a structural frame's interface design pattern Pt if , in a general case will take the form: where At g is the tuple of attributes, describing globally unique identifier of the frame's interface; At el_if is the tuple of attributes, describing the element of frame's interface (slot, method); At el_if _ t is the tuple of attributes, describing the type of the element of the frame's interface; at g is the attribute, identifying globally unique identifier of the frame's interface; at el_if is the attribute, identifying the element of the frame's interface; at el_if _ t is the attribute, identifying the type of the element of the frame's interface.
The model, describing the structural pattern of designing relations between nodes on a network of frames, Pt fr_rel in a general case will take the form: where At fr_rel_n is the tuple of attributes, describing the name of relationship; At el_ fr_rel is the tuple of attributes, describing the element of description of relationship; At el_ fr_rel_t is the tuple of attributes, descri bing the type of the element of description of relationship; at fr_rel_n is the attribute, identifying the name of relationship; at el_ fr_rel is the attribute, identifying the element of description of relationship; at el_ fr_rel_t is the attribute, identifying the type of element of description of relationship. Descriptions of possible types of relationships between objective and structural models of entities are listed in [29].
Based on these models of structural patterns of designing of elements of frame's network, we can conclude that the model, describing the structural frame's network design pattern (1), Pt net_ fr in a general case will take the form: where 1 n at is the attribute, identifying the name of the first frame, which can participate in relationship formation (may be undefined); 2 n at is the attribute, identifying the name of the second name, which can participate in relationship formation (may be undefined).
Attribute at if can also be undefined, since each particular relationship can exist only between two frames, or between one frame and an interface. Condition that restricts existence of relationships between nodes of a frame network will take the form:  (5). This subclass of patterns in general case will take the form:

2. Results of development of models of behavioral information system requirements design patterns at the knowledge level
Subclass of morphisms ( ) For the model of pattern Pt fr_ str , conditions of existence of single morphisms are similar to conditions, described in [28]. Models of these morphisms will, accordingly, take the form: : For a model of pattern Pt if , conditions of existence of single morphisms are similar to conditions, described in [28], and models of these morphisms will respectively take the form: For model of pattern Pt fr_rel , conditions of existence of single morphisms are similar to conditions, described in [28] and models of these morphisms will respectively take the form: and exists only if the condition is satisfied Morphism H(Pt fr_ str , Pt fr_rel ) in a general case takes the form: is the subset of attributes, describing the type of element of description of relationship in the model of structural pattern Pt net_ fr .
It should be noted that for the case of using particular versions of IS requirements, morphisms, making up subclass ( ), Pt IS H K will take a similar form.

Discussion of results of development of models of information system requirements design pattern at the knowledge level
Model (6)-(9) define the basic structural features and basic content of data showcases, designed to store the following information: a) historical information about frames as network nodes (model (6)); b) historical information about frames' interfaces as nodes of frames' network (model (7)); c) historical information about relationships between nodes of frames' networks (model (8)); d) historical information about variants of frames' network of created IS (model (9)).
Model (11) defines the basic structural features and basic content of the data storage fragment, providing storage of historical information about IS requirements representation at the knowledge level. The scheme of this fragment is the result of integration of schemes of data showcases, described above.
The issue of existence of morphisms H(Pt net_ fr , Pt fr_ str ), H(Pt net_ fr , P tif ) and H(Pt net_ fr , Pt fr_rel requires further research. The existence of these morphisms can be attributed to special methods of automatic knowledge mining based on the results of analysis of the generated network of frames, describing requirements for created IS. An equally important problem, requiring subsequent study, is also the problem of existence of morphisms of type where Pt net_ fr is the structural pattern of designing a network of frames, describing formulated requirements for created IS and _ net fr Pt′ is the structural pattern of designing a network of frames, describing SA or implemented requirements for IS. The existence of these morphisms can be explained by availability of methods for automatic generation or modification of a network of frames. These methods can be used to solving the following tasks: a) formation or modification of a network of frames, describing formulated requirements for created IS, according to results of solution of problems of analysis of conformity of specific formulated requirements for created IS with implemented requirements for earlier developed IS; b) formation or modification of networks of frames, describing SA or implemented requirements for IS, based on results of successful completion of IS creation project, for which knowledge about formulated of implemented requirements are described in the form of a correspondent network of frames.
Solution of the problem of the first type allows automation of formation of a network of frames, which describes formulated requirements for created IS. In the course of formation of this network of frames, we take into account whether reuse of requirements that were implemented in previously completed IT projects of IS creation is worthwhile.
Solution of the problem of the second type allows automation of processes of expansion or modification of a network of frames, describing SA and implemented requirements for IS, taking into account knowledge, obtained from requirements of the implemented IS creation project.

Conclusions
1. To develop a model of IS requirements design patterns at the knowledge level, it was proposed to use a modified framebased knowledge model. The essence of the modification is to extend formal frame description with the following elements: a) description of totality of all methods, associated with a frame as a whole; b) description of frame interface as declaration of a set of properties and methods without detailed description.
Proposed modification allows us to describe both knowledge of data structures, and knowledge about the processes of interaction of these structures with the help of a framebased model. This means that almost any IS function, based on reusable concepts of SA, can be expressed in the form of interfaces of reusable frames. In addition, proposed modification of the frame-based knowledge model allows setting and solving the problem of automation of synthesis of architecture and the providing part of IS as one-to-one mapping of frame descriptions of SA, IA and PA of the created IS.
2. We developed theoretical-multiple models of structural IS requirements design patterns (6)-(9) and behavioral IS requirements design patterns ((12)- (14), (15)-(17), (18)- (20), (21), (23)- (28)). Models of structural patterns allow formalization of the process of IS architecture design, taking into account reusable components already in the course of formation and analysis of requirements for the created system. These models can be implemented as a special-ized data showcase, storing knowledge of previously created IS and individual elements of systems. Models of behavioral patterns (12)- (14), (15)- (17) and (18)- (20) describe operations of addition, modification and deletion of elements of structural IS requirement design patterns at the knowledge level. Models of behavioral patterns (21) and (23)- (28) describe operations on formation of knowledge-oriented description of IS architecture in the form of a network of frames based on knowledge, derived from IS requirements. The obtained results allow us: a) to unify descriptions of typical operations on structural IS requirements design patterns as a description of operations of changing the scheme of specialized data showcases, storing knowledge of previously created IS and elements of created systems; b) to establish basic requirements for implementation of these operations as a set of SQL commands or special software components.

Introduction
The increase in popularity of cloud-based services stimulates spreading of distributed centers of data processing on the global scale, which leads to numerous problems in terms of resource planning for different administrative domains. Effective resource planning implies simultaneous provision of minimized violation of Service Level Agreement, SLA,