DEVELOPMENT OF METHODS FOR THE ANALYSIS OF FUNCTIONAL REQUIREMENTS TO AN INFORMATION SYSTEM FOR CONSISTENCY AND ILLOGICALITY

The order of work aimed at analyzing the requirements is considered, taking into account application of the service approach to development of IS, models and methods of development of representations of functional requirements to IS at the knowledge level. It was proposed to perform work on IS requirements analysis in parallel to the work on the requirements development. Such an organization of work makes it possible to reduce the time required to perform work on the IS macro design. Methods of analysis of separate frames and relations between frames and between frames and interfaces of representations of functional requirements to IS at the knowledge level were developed. The essence of the methods lies in comparison of frames and relations, used for description of concepts and terms in a subject area. These methods make it possible to detect inconsistencies, caused by attempts to describe the same object in a subject area in different ways. The indicator of illogicality of the stated functional requirement and the method of detection of illogical functional requirements was developed. The essence of this method lies in identification of separate branches of the frame hierarchy (ontological points) that are present in representation of only one functional requirement to IS. Such requirement is not related to other functional requirements to IS and is considered to be illogical. This method makes it possible to assess a degree of illogicality of each functional requirement, based on which it is possible to make a decision about the feasibility of IS development. The research contains an example of testing the developed methods in the analysis of functional requirements to the project related to the functional labor safety module.

to apply methods that analyze requirements to IT-projects aimed at creating and developing large-scale and complex IS.For such projects, there is a constant need to analyze the requirements put forward by a Consumer of IT-services, including changes to be made to the previously stated requirements.That is why IT-projects on the creation and development of IS inevitably face a situation when an analyst is unable to take into account all features of the influence of separate requirements to IS on each other.The result is a high risk of failure to detect errors due to the incorrect definition of certain requirements to IS and the synthesis of IS architecture description without agreeing on the descriptions of separate requirements to IS.The necessity to reduce a given risk allows us to consider the task on developing the requirements to IS, involving automated processing of publications of particular requirements, very important from the theoretical and applied points of view.

Literature review and problem statement
At present, among the most commonly used are the methods and techniques for requirement analysis based on the solutions, proposed in the late XX -early XXI century.These solutions are based on the following recommenda-

Introduction
One of the most promising modern trends in the development of IT-sector is the reduction of unproductive expenditures for the initiation, planning, execution and control of IT-projects.Such a reduction is particularly important for IT-projects aimed at creating or developing complex IT-products.The examples of such products include information systems (IS), including control systems of enterprises and organizations.
One of the approaches to reducing the cost of IT-projects that create or develop IS aims to detect and eliminate maximally possible quantity of errors at the early stages of an IT-project [1].In line with a given approach, possible errors should be identified in the course of analysis of descriptions of IS elements immediately after compiling the stakeholders' requirements to the IS being created or developed.In this case, it is recommended to conduct separate analysis of work directly in the course of development of right holders' requirements [2].The purpose of these activities is, as a rule, to confirm the adequacy of the stated requirements to the subject area and IS to be created or developed.
However, most of the existing methods and techniques imply a non-automated execution of work when analyzing requirements to IS.This peculiarity makes it much harder
The examples of basic methods and techniques for requirements analysis are described in [3].However, the methods of requirements analysis, considered in [3], do not make it possible, as experience reveals, to detect and eliminate most errors, associated with the development of requirements to IS.It is now a well-known fact that erroneous definition of requirements to IS exerts a direct influence on the performance efficiency when releasing IS and its upgrades to the Consumer of IT-services [4].
To eliminate such an impact, studies are carried out in various fields.One of these trends implies the development and modification of methods for requirements analysis using maximally easy-to-implement tools.Thus, in [4], it is proposed to reduce the number of errors in requirements by devising a special method for requirements analysis that would help bridge the gap in communication between a customer and a developer.Paper [5] proposes a method for the detection and analysis of requirements to software development, based on joint participation of representatives of all stakeholders of an IT-project.
According to another, more common, trend in the research, the elimination of erroneous definition of requirements to IS should be implemented through the formalization of models and methods of analysis.For example, in [6], the process of establishing the requirements to data is formulated as a feedback control system with continuous optimization of users' behavior models.Such a representation makes it possible to apply the concepts of modern cybernetics in order to describe processes of requirements development and analysis.Paper [7] explores the possibilities to describe and model behavior of users of the system being developed applying the apparatus of the theory of categories, based on which, with the help of graphical methods, a special declarative language was created.Article [8] proposes an algebraic approach to the analysis of probabilistic behavior models for software.
Special attention should be paid to studies that consider the process of requirements analysis as a decision support process regarding the analyzed requirements.An example of using the METRO decision support platform to control the uncertainty of stated requirements to the product being developed was described in [9].
One of the most promising trends of research in the field of requirement engineering is the approach based on the application of ontologies, knowledge-oriented models and methods.The use of ontologies in requirement engineering is reviewed in [10].It is noted specifically [10]: a) there is empirical evidence of the advantages when using ontologies in requirements engineering for the purpose of reducing ambiguity, inconsistency and incompleteness of requirements; b) the process of requirements engineering in most studies is considered only partially; c) there is no a unified ontology-based style at present for modeling the requirements engineering processes; d) most of the studies in this area are related only to functional requirements; e) none of the ontologies of requirements engineering is commonly used at present in the community of experts in this field.
Similar conclusions were drawn in paper [11], which addressed the issues on data mining and knowledge management for developing the requirements specifications.
However, modern studies are not limited by theoretical aspects of the application of ontologies in requirements engineering.Several studies attempt to solve problems on using the knowledge-oriented models during development and application of specialized information technologies for requirements development and analysis.An example of such research is given in paper [12], which investigates application of the ontology-based tool for automated analysis of consistency, correctness, and completeness of requirements to an IT-product (3 Cs problems).Another example is given in article [13], which examines particular aspects in the analysis of requirements to multi-agent systems.
The analysis that we performed allows us to highlight the most promising trend of research in the field of analysis of requirements to IS.We consider such trend to be the development and verification of analysis methods, which are based on the knowledge-oriented models of requirements to IS.

The aim and objectives of the study
The aim of present research is to develop methods for the analysis of functional requirements to the created or modified information system.This would make it possible to formalize the work on requirements analysis, and to implement the proposed methods in the form of the elements of technology for requirements development and analysis.
To achieve the set goal, the following tasks must be solved: -to specify the order of work aimed at analyzing the stated functional requirements to an information system; -to develop methods for the analysis of functional requirements to IS for consistency; -to develop methods for detecting duplicated, missed, and illogical functional requirements to IS.

Results of determining of the order of work aimed at analyzing the stated functional requirements to an information system
Organization of processes for determining rights holders' requirements and their analysis requires performing an analysis of functional requirements after executing essential work on the development of these requirements, [2].However, the results of development of the service approach, models for the formal description of requirements at data levels, information and knowledge, as well as the methods for forming the representations of functional requirements, synthesis and selection of the description of rational architecture of the developed IS [14][15][16][17][18], make it possible to perform separate analysis of the requirements in parallel to the main work.Description of such an organization of work is given in the form of IDEF3 model in Fig. 1 [19].
According to the proposed IDEF 3 model of work organization, an analysis in the framework of proposed solutions should be carried out: a) prior to the synthesis of description of rational architecture of the created IS for mutual consistency of separate functional requirements; b) in the course of the synthesis of variants of description of rational architecture of the created IS for incompleteness of stated functional requirements by identifying representations of requirements that duplicate each other; c) after selection of description of the rational architecture of the created IS by means of identifying missed or illogical functional requirements.

Results of the development of methods for the analysis of functional requirements to an information system for consistency
The basic prerequisite for consistency analysis of functional requirements is the use of a unified formal description of representation of requirements to IS at knowledge level.The structure and content of these representations is determined by the patterns of design of requirements to IS at knowledge level, considered in [14,15], and can be represented by the model of the following form [16]: is the description of the type of the relation element.
Model (1) makes it possible to consider representation of functional requirements for the IS element as a fragment of the network of frames and interfaces of these frames.Then two or more functional requirements, for which at least one of the following situations is true, will be considered inconsistent [19]: a) frames or interfaces with the same or a similar name contain sets of elements that do not intersect; b) there are different relations between two or more pairs of frames, or between a frame and an interface with the same or similar descriptions.
In this case, consistency analysis of functional requirements should not depend on which representations of requirements at the knowledge level are analyzed from the perspective of a Provider, from the perspective of a Consumer, or system-wide.
To identify the first situation, it is proposed to carry out consistency analysis of frames and frame interfaces of separate requirements.In the course of development of a separate i-th functional requirements, it is necessary to separate a set of representations of functional requirements at the knowledge level { }, f j K which were formed earlier.This set can be built by one of the following methods or by their combination: a) from representations of previously stated versions of the i-th requirement (for the case of updating or development of IS or its separate functions); b) from previously stated requirements to a created or updated IS (during IS creation or updating).
Then the method of consistency analysis of separate representation frames f i K involves the following stages.The method for inconsistency analysis of separate interfaces of representation f i K will be similar to the method of analysis of separate frames, discussed above.
To analyze the second possible situation, the method of consistency analysis of separate relations of representation The results of application of these methods will be the lists of inconsistencies between separate functional requirements, identified during development of separate functional requirements to the created IS.Identification of these inconsistencies makes it possible to adjust publications of functional requirements in the course of formation, thus reducing the time for analysis of stated requirements.

Results of the development of methods for detecting the duplicated, missed, and illogical functional requirements to an information system
Incompleteness analysis of stated functional requirements and identification of duplicated requirements are performed as a result of application of method for the synthesis of architecture description variants of the created IS, described in [17].This will make it possible not to separate incompleteness analysis in a particular work, requiring a special method [19].
To identify missing and illogical functional requirements, we will introduce the following definitions.Functional requirement to the IT-service that is not associated with any IT-service by data flows will be called illogical.One or more functional requirements that could eliminate the identified illogicality of a requirement will be called missing [19].
To detect illogical and missing requirements, it is proposed to use the term "ontological point", introduced in [18].Ontological point is a separate branch of frame taxonomy, which exists in representation of the i-th functional requirement f i K and formally described by expression in the form of [18]: when the condition is satisfied where OntPD is the formalized description of an ontological point; OntPD FR is the subset of frames, forming ontological point ⊆ ; OntP FR FR OntPD G is the set of representations, which set generalization relations between the frames, included in frame ; OntPD FR i is the identifier of the root frame of an ontological point; j is the identifier of the frame-list of an ontological point.
Then the i-th functional requirement can be considered illogical, if all its ontological points are present only in representation .

IS f i K
To characterize illogicality degree of the i-th functional requirement, it is proposed to use indicator , i Irr the value of which is determined from the formula [14] where OntPD is the description of the m-th ontological point, which exists only in representation ; OntPD is the description of the m-th ontological point, which exists in representation .The proposed method makes it possible to considerably simplify the procedure of detection of illogical functional requirements.It is offered to make this simplification by automation of operations on detection of illogical objects of a subject area of the studied requirement to IS-service.The objects, the data about which are not supposed to be used in any other IT-service, are illogical.

Discussion and verification of methods for the analysis of functional requirements to an information system
Verification of the developed methods was carried out in the course of pilot design of the functional module of labor safety (FM LS).The Consumer of IT-services put forward the following requirements to a given module [20]: a) "to implement the function of keeping records of information about an enterprise and processes (operations), performed at a given enterprise" (functional requirement 1); b) "to implement the function of keeping records of personnel data (data about the staff of an enterprise), which are minimally required for making management decisions to provide labor safety of an enterprise (functional requirement 2); c) "to implement the function of compiling and keeping reference book of HPF, which act or can act in the course of execution of particular processes or works of an enterprise" (functional requirement 3); d) "to implement the function of keeping record of results of observations of the actions of each HPF in the course of execution of processes or particular works of an enterprise" (functional requirement 4); e) "to implement the function of the forecast of the HPF complex influence on the organism of an enterprise's employee, performing a separate process or work at an enterprise" (functional requirement 5).
To separate knowledge, these requirements were published in the form of data flow diagrams.These diagrams were the source data for application of the method of development of representation of functional requirements at the information level.The results of application of this method became the source information for implementation of the methods of development of functional requirements to FM at the knowledge level, considered in [16].
The result of application of the method of development of representations of functional requirements to FM LS at the knowledge level of a Consumer of IT-services is the fragments of frame networks −  b) for combinations of frames "Employee" and "Employee's state", "Employee" and "Forecast of a change in employee's state", "Employee's state" and "Forecast of a change in employee's state", "HPF" and "Result of HPF observation", the second part of condition (3) is not satisfied.
All descriptions of relations with identical names (for example, relations "Is characterized" between the pair of frames "Process" and "HPF", as well as between the pair of frames "Work" and "HPF") do not coincide with each other.Therefore, application of the method of consistency analysis of separate relations of representations − The results of application of the methods for consistency analysis of representations of functional requirements − 1 5 U U f f K K makes it possible to conclude that representations of requirements at the knowledge level from the perspective of a Consumer are consistent and, therefore, allow formation of a unified information representation of a control object.
The progress of application of the method for detection of illogical functional requirements for FM LS for representations − Based on the results of application of the method for detection of illogical functional requirements, it is possible to make the following conclusions.
Firstly, functional requirement 3 to FM LS is 50 % illogical.This illogicality is caused by the use of a simplified ontological point "HPF" for description of the term of subject area "Harmful industrial factor".In functional requirements 4 and 5, a detailed ontological point "HPF+Result of HPF observation" is used for the same purpose.
Secondly, functional requirement 5 to FM LS is 60 % illogical, since it uses ontological points "Employee + Employee's status", "Parameter", "Forecast of a change in employee's state".
To decrease illogicality of requirement 5 to FM LS, it was proposed to reuse a unified representation of the term of subject area "Employee" in the form, shown in Fig. 7.This unified representation is based on the existing project decision [14].Therefore, the names of the frames in Fig. 7 are shown in the form, corresponding to the names of the elements of design solution.The use of the unified representation for modification of descriptions of requirements 2 and 5 for FM LS, proposed in Fig. 7, made it possible to decrease the value of indicator Irr for requirements 2 and 5 for FM LS from 60 % to 37.5 %.The values of indicator Irr for the rest of the functional requirements to FM LS remained unchanged.
Results of verification of the developed methods for analysis show the possibility of decreasing inconsistency and illogicality of functional requirements to IS before synthesis of description of architecture of the created IS.The consequence of this is possibility to decrease the costs of integration the results of development of separate functional requirements within the created FM LS.
The verification results allow us to identify major shortcomings of the developed methods of analysis.The first of these shortcomings can be their orientation to presentation of functional requirements to IS at the knowledge level.If these representations were not created during development of functional requirements to IS, application of the proposed methods of analysis becomes very difficult.That is why one of the trends of subsequent research in this area can be consideration of possibility of application of the developed methods for analysis of representations of functional requirements for IS at the information level.These representations can be publications of requirements in the form of a text, structural and objective visual patterns (e. g., data flow diagrams or diagrams of usage variants).
Another considerable drawback of the developed methods should be considered the need to preserve representations of functional requirements to IS in the form of artifacts for subsequent usage.Thus, for example, for the methods of consistency analysis of separate frames and relations of representation f i K , storage of such representations is an obligatory precondition for implementation of these methods.The need to store separate artifacts significantly complicates not only specific applications of requirements development and analysis, but also general methodologies of IS design.Thus, for example, costs of practical implementation of modern architectural framework of design of 9.1 TOGAF systems [21,22] are much higher than costs of practical implementation of another modern architectural framework of design of RM-ODP systems [23,24].This is due to the fact that in TOGAF 9.1, information and knowledge about the created system are stored in special semantic repository of architecture objects.In RM-ODP, information and knowledge about the created system are stored in the form of an interrelated totality of system's descriptions in five viewpoint languages (taking into account distribution transparencies).Relations of this language totality are determined by in a special agreement, establishing architectural semantics of open distributed data processing for different languages of formal specifications.
The desire to eliminate this drawback leads to the need to address a whole range of theoretical and applied problems, among which the following ones should be separated: a) the problem of synthesis of description of architecture of the created system, based on texts, created with the use of architecture description languages; b) comparative analysis of efficiency, quality, and cost of architecture synthesis of the created system, based on a set of artifacts (knowledge-oriented models), or a set of system's descriptions in architecture description languages; c) optimization of the synthesized architecture of the created system.
Solving these problems is complicated by the fact that the problems of formal description of the system's architecture, as well as the processes of synthesis and architecture, is far from the final solution.Currently, the main types of architectures of information systems are distinguished.However, the problems of substantiated selection of an optimal architecture for the created system and transformation of the architecture of the operated system due to changes in requirements to this system are far from final resolution.

Conclusions
1.The order of work was specified aimed at analyzing the stated functional requirements to the information system within the framework of the processes of requirements development and analysis.It was proposed to arrange performing certain types of requirements analysis in parallel to the main work on the development of right holders' requirements and requirements to IS.The IDEF 3 model was constructed for the totality of work on the development and analysis of functional requirements to IS.The proposed parallel organization of work makes it possible to reduce time cost for analysis of the stated requirements.
2. Methods for consistency analysis of separate frames and relations of representation of a functional requirement to IS at the knowledge level were developed.These methods make it possible to detect inconsistencies, caused by using different sets of attributes and procedures for description of frames or interfaces with the same names.These methods also enable us to detect existence of different relations between similar frames or frames and interfaces.The developed methods make it possible to automate the works on analysis of stated functional requirements, which offers an opportunity to detect inconsistencies between such requirements in the process of their statement.
3. The method for illogicality analysis of the stated functional requirements to IS was developed.The essence of the method is in quantitative assessment of illogicality degree based on frequency of occurrence of separate branches of frame taxonomy in representations of functional requirements to IS at the knowledge level.Application of this method allows us to automate works on detection of illogical functional requirements.In future, the proposed quantitative assessment of a degree of logicality of a functional requirement (6) can be considered as a basis for determining of the system effect from implementation of IS system in general and its particular functions.

Fig. 1 .
Fig. 1.IDEF3-model describes work on the development and analysis of functional requirements to the information system being developed in accordance with principles of service approach

5 .
detect illogical functional requirements, it is proposed to use the method, involving the following stages Stage 1. Choose representation , considered earlier, from the set of representations { }, IS f i K building description of the rational architecture of the created IS.Stage 2. Separate the set of descriptions of ontological points { } was not considered earlier, from the set of representations, building a description of the rational architecture of the created IS.Accept.Accept the set of descriptions of illogical ontological points Stage 7. Calculate the value of indicator i Irr from formula (6) and acknowledge illogicality of the i-th functional requirement with separation of illogical ontological points.Stage 8. Exclude representation 1.Otherwise, complete application of the method.
in accordance with the model (1), shown in Fig. 2-6 in the form of the diagrams of classes.

Fig. 2 .Fig. 3 .Fig. 4 .Fig. 5 .
Fig. 2. Diagram of classes that describes representation of functional requirement 1 at the knowledge level of the Consumer of IT-services

Fig. 6 .
Fig. 6.Diagram of classes that describes representation of functional requirement 5 at the knowledge level of the Consumer of IT-services Таble 1 Results of application of the method for detection of illogical functional requirements for representations − 1 5 U U f f K K

Fig. 7 .
Fig. 7. Diagram of classes that describes the unified representation of term the "Employee" in subject area the following stages, is proposed.If this relation does not exist, acknowledge existence of inconsistency between the i-th and the j-th functional requirements in description of relation Î ib fr