Валидация проектной документации на основе предметно-ориентированного языка
Crisis is a burning issue; this is not a phenomenon, which can be conquered forever. Current approach to crisis is an optimized collaboration, which allows for manageable, measurable and predictable software development. Crisis is a new reality to live and work with. The current software development crisis dates back to the 1960s. The root cause of crisis is misbalance between resources and options. Understanding the nature of crisis helps to understand the reasons for the future crises.
This book is a navigator in lifecycle models, methodologies, principles and practices for predictable and efficient software development in crisis, i.e. under rapid requirement changes, resource deficit and other uncertainties. Therefore, the starting chapters suggest the major approaches to software development and their applicability in crisis. Further narration is case-based; it involves large-scale software implementations in different industries and knowledge transfer processes in IT education. The book suggests a set of principles that potentially marry the client’s and the developer’s views of the future software product in order to avoid or to mitigate the crisis.
The book will be helpful for students, postdocs, theorists and practitioners in software development. It suggests approved principles and practices of crisis management for software development.
In the process of software products development and their maintenance a large number of project documents is created and used. To automate their processing and control of the product requirements referred in the documents, developing tools supporting the work of the analyst in the design of information systems is required. In order to carry out control of each type of requirements individually, it is needed to define the project document sections that describe a particular type of system requirements. To perform such analysis, tools for describing the structure of the analyzed document are required. Visual domain-specific languages can be used as these tools, allowing to perform a description of the document structure in terminology of the domain using graphical interface. The approach to creating such domain-specific language is considered. The language has two levels: the first level allows to determine the total set of documents and the relationships between them, and the second – the structure of each project document separately. The developed domain-specific language can be integrated into a system of support of analyst working in the information systems design process. On the one hand, it will allow based on a set of loaded into the system design documentation to perform their analysis and parsing, presenting each part of the documentation in the form of individual element of the model. On the other hand, using developed language the analyst can describe each part of the design documentation separately, and then generate on their basis uniform text description. The language has a simple graphical notation, therefore it can be used by as IT-specialists and clients who are not professional programmers.
The paper describes an approach to the implementation of a system that automates the processing of design documentation. Documentation analysis is based on natural language processing, specially developed object-oriented language and ontological resources. As a result, the system highlights linkages between the documents and its semantic indexing. Users get an opportunity of easily navigate through documents, quickly find the necessary parts of them, and check the consistency and completeness of requirements.
Different specialists are involved in software development at once: databases designers, business analysts, user interface designers, programmers, testers, etc. It leads to creation and usage in systems designing of various models fulfilled from the different points of view, with different levels of details, which use different modeling languages for the description. Thus there is a necessity of models transformation as between different levels of hierarchy, and within the same level between different modeling languages for creation of united model of system and exporting of models to external systems. The MetaLanguage system is intended to visual domain-specific languages creation. The approaches to development of a model transformation component of MetaLanguage system are considered. This component allows to fulfill vertical and horizontal model transformations of “model-text” and “model-model” types. These transformations are based on graph grammars described by production rules. Each rule contains the left- and right-hand sides. The algorithm of the left-hand side search in the source model and the algorithms of execution of a right-hand side of a rule are described. Transformations definitions for models in ERD notation are presented as example.
The technologies based on applying a metamodeling and domain-specific languages are widely used at information systems developing. There are many different tools for creating graphical domain-specific language editors with a possibility of determining user’s graphical notations. However they possess disadvantages. The MetaLanguage system is designed to eliminate some of these shortcomings. MetaLanguage is a language workbench which provides creation of visual dynamic adaptable domain-specific modeling languages used in the development of information systems. In paper the approach to development of MetaLanguage DSM-platform is considered. Basic metalanguage constructions of this system are described. The mathematical multilevel domain model with usage of pseudo-metagraphs is constructed. Definitions of the graph and metagraph are given. The algorithm of vertical models transformations is described. The architecture and implementation of the development environment of MetaLanguage toolkit is presented.
The article describes the methods of automatic ontology construction of based on a document corpus. Classification of existing methods is presented. Using of multidimensional electronic documents ontology is proposed for corpus analysis purpose.