Data migration when switching to a new platform. Technology of data migration in large projects. Pros, cons, conclusions


how to implement free

Migration to free software like migration to a newer operating system. As an example, you can mention the appearance of the first windows options in our country. No less bright example - migration on Windows NT, the ideology of working in which differed sharply from Windows 9X. You can give another example - each new version of the MS Office package differs from the previous one not only differences in the interface, but also file formats. So, the migration task is relevant even in such a case when used by from a single manufacturer.

This article proposes a general description of the migration methodology with the coverage of significant moments. General principle Migration is thoughtful, cautiously implementing the process by gradual changes. Migration consists of several logically integral sites, stages.

creating a working group (who does)

When making migration, it is necessary to provide solving issues of both technical and non-technical nature.

It is important to consider legal problems that lately Extremely are relevant for some CIS countries, in particular, Ukraine. In some cases, intelligently discuss the administrative tasks of the "Employer-User Administrator" relationship. Historically, these relationships are not sufficiently regulated by the internal corporate rules and instructions.

In the process of preparing the material, conversations were carried out with professionals in the field of security, computer law and system administrators. The overwhelming majority declared the need for documentary design rules for users with the organization's information system.

Proper planning also includes solving financial issues. It is necessary to evaluate the cost of legalization of the existing information system, The cost of introducing a new one, assess the cost of ownership in the foreseeable future.

Any project, including a migration project, may face the underestimation of the human factor. Naturally, the use of human resource management methods will be required. Most of the most famous authorized system administrators and IT managers are not experts in personnel management or finance areas. A similar comprehensive task cannot be solved by the same IT Department.

The first task on the way to migration to a new one, the target system is to create a working group of migration planning. This group is responsible for conducting migration and, therefore, must have quite broad powers.

The purpose of the project is to build an economically justified IT infrastructure. A good candidate for the position of head of the working group will be the top manager of the enterprise or organization, for example - financial director. Naturally, this group includes the head of the IT department, which owns the vision of the entire IT infrastructure as this momentand in perspective. As part of the Group, an experienced system administrator is required, preferably with the experience of operating free software. The size of the group cannot be estimated - in some cases, other employees of the company are involved. It is possible to attract a third-party consultant with experience, or - specializing in such decisions of the company. The result of this group is a detailed migration plan with an assessment of the value of migration. Either - explanations of the ineffectiveness of migration for free solutions for the organization.

study (what is)

The first step should be an audit - a description of the existing (inherited) system.

It is no secret that, in the years approved by the "avral" informatization, without taking into account the payback spent on the funds, the result was, as a rule, not only economically, but also technologically unbalanced systems. Audit of the company's software is a revision installed programs, identify compliance with their business requirements.

The result of the audit process is:

Description technical characteristics installed software;

A list of identified risks associated with the use of unlicensed software;

Counting the cost of acquiring licenses for the installed software;

Counting the cost of removing unlicensed and installation of licensed software;

Determination of the feasibility of further use of software;

A list of identified risks associated with the use of software;

inventory by

Some studies show that most organizations of organizations pay more attention to the functionality of the software used and much less - the rights to the products used are fulfilled.

Unfortunately, in most organizations there is no IT culture. Sometimes even representatives of IT services really do not know what and where installed on computers from workers, and ordinary employees decide independently and establish software productsobtained from dubious sources.

The inventory of the software allows you to identify unlicensed software in the organization. It should be emphasized that this event is always beneficial. The result of the inventory can be used to estimate the costs of legalization according to both the use of free and using non-free software.

Organizations are often interested in a clear financial planning of the cost of using and developing software. The interest of top managers in such such detail is quite understandable - the top management of companies is interested in turning the software in the asset of companies, which is taken into account, is monitored and developed similarly to other types of assets.

The audit of the procedure, which, as a rule, is quite a long time, requiring at the stage of analyzing highly qualified personnel information and knowledge of various specific information. The recommendation may be an appeal to the company specializing in these services. Nevertheless, it is quite possible to audit by the IT Department.

In some organizations, it is inconvenient (often it is impossible) to carry out a large-scale inventory of software. The reasons may be the size of the organization or security policy. It is necessary to find a compromise between inventory efficiency and factors complicating such a process.

You can consider two options for audit. The first option is a complete audit about which all computing is being studied, local network and perpoles. Dignity this method - High accuracy, disadvantage - big value, high time and inconvenience for users. Additional advantages of this method is the ability to identify independently installed by users of software and explore user requirements to software on their workplaces using specially prepared questionnaires. The second option is an audit of some typical computing tools, a local network and a perfection. At the same time, the choice of audit objects is dictated, as a rule, functional duties of users. Such an approximation method significantly reduces the cost of inventory, but has a great error.

Small organizations can conduct an audit manually, and make information about computers and servers, as well as the software installed on them, into an electronic simple table. At the same time, you should specify the presence or absence of necessary licenses, authentication and copyright certificates for each of the found software product.

For medium and large, it is possible to recommend the use of a specialized software or invite a third-party organization specializing in similar services. In the process of creating a document, work was carried out on the review of the automatic inventory of software and hardware (Known GASP programs, PC Inventory, MSIA). EXPONENT NAVIGATOR (http://www.e-x.ru/pages/expnav.html) can be a recommendation (http://www.html), Exponent.

Exponent Navigator

The product is designed to revise equipment and software over the network. Computers information includes information about components (processor, motherboard, hard drives, memory modules, video card, network cards, printer and other devices), operating system, drivers and software.

According to the Creators of the Program, after organizing the automatic collection of information about computers, it is possible to view and organize this information, prepare printed reports and web publishing, upload data to Microsoft Excel., XML and other formats. Capabilities:

Automatic diagnostics of computer configuration;

Automatic collection of information about network computers;

Determination of installed equipment;

Definition of installed programs;

Definition of file characteristics;

Advanced sorting, search and data selection capabilities;

Preparation of printed reports;

Export data in MS Excel;

Automatic generation of web publications.

In the free version of the program there is a limit - accounting to 25 computers; The license cost is $ 1 per 1 computer.

design (what we want)

Processed results of the study of the existing system are the basis for modeling a new, target system. This question is extremely important and complicated. It complicates the consideration of this issue and the historically established lack of acquaintance with free software, in particular Linux, most IT managers and system administrators.

There is a lot of literature, including Russian-speaking, about Linux, which describes the advantage of this platform from a technological point of view. However, all these advantages are important with the main issue - the existence of a wide range of applied different directions. A long time ago, the myth is widespread that under the Linux platform there is a limited number of applied software for corporate use, including office automation. In the overwhelming majority, these myths are created and fueled by the creators and sellers of proprietary software and have little in common with reality. The debunk of this myth is not the main goal of this book. Nevertheless, it is worth noting that, for example, a latitude of applied software is an absolute phantom, taking into account the established historically standards for the exchange of documents. So, for example, the actual standard of the office editor is Microsoft Office., editor raster graphics - Adobe Photosop, and as vector graphic The Corel Draw is rapidly distributed.

Another issue is, often, the redundant functionality of proprietary products dictated not to the needs of the market, but the opinion of marketers. And for this redundant functionality, the user pays quite large money: the cost of a license for the right to use programs that increases the complexity of operation and increased hardware requirements.

Recently, the situation changes - a mass of information devoted to the application of Linux appears. Probably, best Material There will be a document :-), in which it is planned to highlight many administrative and technical issues.

However, at the moment the document is only being created and information can be found in different sources. It is impossible to pass by the materials of Valery V. Kachurov, Neskov Artem "Analogues of Windows programs in Linux - Table of Compliance." (http://linuxshop.ru/linuxbegin/win-lin-soft/). This resource contains a lot of valuable information. Unfortunately, the authors seem to abandon this work. This section of the site is regularly unavailable, but a copy of the table can be found at http://www.blif.net/modules.php?name\u003dlinwin. You can advise Open Source Applications Foundation resources
(http://www.osafoundation.org/), especially http://www.osafoundation.org/desktop-linux-overview.pdf.

The result is:

Creating a prototype of workstations;

Counting the cost of licenses for the proposed software;

User learning;

Creating an exemplary calendar implementation plan;

List of risks in the introduction of free software;

Support free solutions;

Counting the economic efficiency of the new system for up to five years.

pilot Project (Checking Boot)

Due to the large number of factors in the inherited system, a large number of users who potentially affect the migration, it is recommended to experimental fulfillment of migration in a small scale - a pilot project. This stage is required to verify and adjust the migration plans and the prototype of the new system. It is a pilot project that is the basis for making a decision on the introduction of a new information system based on the SPO. The second value of the pilot project is the ability to inform users about the new system, to get feedback from users. The third argument in favor of the pilot project will be the possibility experimentally determine more accurate project cost.

When choosing a test object, you need to find a gold middle. First, the selected object must provide reliable data to evaluate. Secondly, the pilot project should not have a critical impact on doing business.

At this stage, system administrators and end users are also trained: a prototype of methodical materials, documentation, resources on the Internet are provided. It is recommended users who participate in the pilot project to "unload" and enable part of the time to use the new system.

The experimental stage is especially in demand:

If the possibility of migrating users from the inherited system to the new system was not proved;

If there is a custom skepticism, which will be able to slow down the migration process;

The organization lacks corporate culture (which, unfortunately, is distributed in the CIS);

If there are limited resources for large-scale migration;

The organization is large, and many users are not involved in the experimental project;

If inherited proprietary systems were rapidly evolved both in - technical terms and in reducing the cost;

The fully economic effect of migration is not found out.

To succeed, pilot project:

Should not refer to the critical area of \u200b\u200bthe business;

Must be sufficiently important for business;

Should not require an intermediate resource of people who are already limited in time;

Must have a significant support group;

Must be provided feedback with users (Help Desk systems);

It should not be in the sphere of other limited (for example, an important period for business).

Depending on the size of the organization, one or more experimental stages are possible, which make it possible to more accurately determine the lines and the cost of migration to free. It is important to estimate its results and determine whether the vision and purpose of practical or they should be changed or maybe even left. Data from these pilot projects should be used to adjust the plans and counting the final cost. In the process of the experiment, you need to refine questions:

Description of the prototype of workstations;

Description of specific user settings:

Average costs of deploying stations type;

Transfer data from the inherited system to a new one;

User learning;

Counting the cost of implementing software;

Support free solutions.

planning (what and how)

1. Creating a migration plan. The migration plan must answer questions:

Description of the system construction phases;

Definition of support needs;

Description of the completion of migration.

In fact, the final choice is made, as migration will occur. Approves the estimate of migration costs.

2. Description of the phases of the system construction. Evaluation of the phases of building a system that best support custom needs priorities should be made.

The plan must be responsible for the following questions:

To what extent and what stages the system should be installed and deployed to maximize the needs of users?

What is needed for each phase of migration to a new system from customers organization and user users?

What will be the impact and risk of using the system at each stage of increment?

The stages of the deployment of the system must be clearly designated in terms of migration; Customers, developers, and users must be familiarized. Risk assessments must be completed before the conclusion of the system constructing plan. It is necessary to make sure that planning evaluations are reasonable, the approach is well conceived in accordance with the priorities of the organization, and the potential impact on customers and users is acceptable.

3. Determination of support needs. It is necessary to ensure the optimal level of support to help users use the new system. In addition, users often require support to help them understand the general abilities (possibilities) of the target system.

Questions that need to be solved include:

What learning and helping users will require?

What is the overall level of migration support that users will be required to guarantee successful migration?

How to achieve the adoption of the target system by users and avoid the resistance of users to implement a new system?

How will customers and users who inevitable changes in the features of systems and services will be reported?

Is it possible to support the free solution of the IT department of the organization or the best option Will outsourcing?

The migration plan should focus on solving these issues, planning user support in areas:

Elemental communication system;

Technical assistance services for new systems;

Technical assistance to users migrating to the new system;

User manuals for transition and subsequent periods;

Learning for users in learning and adapting to the new system, to perform the same types of tasks;

The ability to test the use of new systems;

Demonstrations of using new systems to show existing users inherited systems, as a new system works and how they can perform comparable tasks;

Overcoming current operational problems.

At the study of users, pay special attention to those who are adherent old system and / or opponent of new systems.

4. Description of the completion of migration. After completing each new phase of deployment and training, developers and implementations should ensure that users migrate as comfortably as possible to the new target system. The migration plan should provide to speed up the force of migration and to remove the inherited system as soon as possible.

An additional effort must be provided that it may be necessary for the "latest adepts" and other users who are experiencing unforeseen problems. Another aspect of this activity estimates the time and cost to complete the transition of all users to the new system and to remove old systems constructed on non-license zone proprietary software.

The management of the organization, developers and implements should consider the inclusion of several approaches to help migrate to users inherited systems:

Report to each group of users, as and when they must make the transfer of their tasks to new systems, how the workload changes for the period of migration with inherited systems;

Set incentives to action to fully go to the new free system and eliminate dependencies from inherited systems;

Provide assistance (software and additional personnel) to convert inherited data to a new system; - the order of the output from the operation of inherited systems;

Archiving data inherited systems and storage.

migration (do)

Everything that remains at the last stage is to work according to plan.

Actively manage and monitor the migration processes:

Set measurement criteria and monitor the migration steps and resource costs for migration;

Make periodic reviews of the situation and familiarize yourself with them, according to the authority and organizational policies, interested people (management, project managers and sponsor);

Set the tracking system (Tracking) to manage the promotion of processes (progress), problems, solutions, and other business issues related to the planning of migration and execution of plans.

Vadim Mashkov, UA-FOSS, [Email Protected]

  • translate existing resources domains to organizational units of new domains, which will simplify network resources management;
  • "imitate" the course of migration, while the real data transfer does not occur;
  • cancel the action related to migration;
  • move accounts services;
  • restore trusting relationship between the source and target domains;
  • convert a plurality of domains to one or more large domains in the already created Active Directory environment;
  • restructure existing groups or combine several groups into one in the target domain;
  • to analyze the data transfer process by journaling migration events.

Migration of users and workstations into a single Active Directory structure is implemented with the preservation of existing access rights.

Modernization options

There are two main options for the modernization of the domain infrastructure [4]:

  • Domain updates. This method It is most common and easy to implement during domain migration. This method allows you to maintain the current domain structure, system settings, user structure and groups. Domain Update (In-Place Update) includes translation of the existing domain controllers to the domain created.
  • Restructuring domains. This method allows you to change the existing domain structure, combine domains or convert domains to organizational units.

In addition to the above options, there is also a mixed version based on them - updating domains with their subsequent restructuring [13].

These options are called transition paths when implementing Active Directory. The transition path selected from them will be the main link in the overall strategy for updating the domain infrastructure. This strategy will include a description of what directory service objects and in what order must be moved. Best way Any movement of applications when implementing Active Directory is to document each part to a working paper called the transition plan.

Criteria for choosing a transition path

When choosing a transition path, it is understood that this solution concerns only one domain, that is, it is absolutely fair to use different transition paths for various domains within one organization.

Consider the main criteria that are used when choosing the most suitable transition path [13], shown in Tables 12.1, 12.2, 12.3, 12.4, 12.5, 12.6.

  • Criterion 1. Satisfaction with the existing model of an existing domain. Table 12.1. Choosing a transition path by criterion 1
    Path of transition Compliance with the criterion
    Domain Update If there are no significant changes that I would like to do in the domain model, the update of the domain will provide the easiest way. The name of the domain will remain the same, as well as the existence of all user accounts and groups.
    Domain restructuring If the existing domain model no longer meets the organizational needs or is no longer the most optimal for the divisions of the organization, the best choice will be the restructuring of the domain
  • Criterion 2. Risk degree when switching to a new domain model. Table 12.2. Selecting the transition path by criterion 2
    Path of transition Compliance with the criterion
    Domain Update The domain update is a minimum risk method. The process of upgrading the domain controller is automatically performed, therefore, without interaction with the user, a little bit occurs for errors. The recovery methodology after a failure when updating the domain is also relatively simple: if the update has passed unsuccessfully, it is necessary to turn off the main domain controller (PDC), assign any backup domain controller (BDC) having fresh data on the PDC role, and start the procedure again
    Domain restructuring The restructuring of the domain is a path with a higher risk than the domain update. It is necessary to perform a greater number of tasks, and therefore many processes can go as needed. As a result, there are growing discontent with users who cannot log in, refer to the necessary resources or access their mailboxes
  • Criterion 3. Time to perform transition 1 The transition time schedule is not a decisive factor when choosing a transition path, nevertheless it can be decisive for small organizations with limited resources. . Table 12.3. Selecting the transition path by criterion 3
    Path of transition Compliance with the criterion
    Domain Update The domain update is a linear process: if it has begun, it should be completed. It requires less action for it than for restructuring, and, accordingly, less time is required to perform the entire transition.
    Domain restructuring The domain restructuring always lasts longer. For example, during restructuring is spent a lot of time to create and verify the infrastructure of the target domain, to move all accounts from the source domain to the target domain. Large organizations may not be able to move all objects at a time, so that quite often the domain restructuring is made in several stages.
  • Criterion 4. Working hours of the directory service that must be spent on the transition process. Table 12.4. Choosing a transition path by criterion 4
    Path of transition Compliance with the criterion
    Domain Update Account objects are not available during the transition, because they are independently upgraded when the domain is updated
    Domain restructuring A good choice for organizations in which the system's working time is a critical value. Since it includes creating a blank, "clean" forest and leaves the original environment in essentially unchanged, the performance of the directory service is saved, since users continue to function in an existing environment. You can transfer large or small parties of users during non-operating hours of operation and leave these new accounts as inactive until the time will appear to leave the old system.
  • Criterion 5. Availability of resources for transition. Table 12.5. Selecting the transition path by criterion 5
    Path of transition Compliance with the criterion
    Domain Update Since the update of the domain is an automated operation, then a smaller number of human resources will be required to implement this transition path.
    Domain restructuring The domain restructuring entails a greater number of tasks than the update of the domain, and therefore requires a greater number of resources, that is, it is necessary that the staff is adequately equipped to perform an additional workload associated with the domain restructuring. Alternatively, we can shift a part of the tasks or the entire project on external employees: There are many advisory groups that specialize in such projects, which will save time and money necessary for training internal employees
  • Criterion 6. The budget of the transition project. Table 12.6. Selecting the transition path by criterion 5
    Path of transition Compliance with the criterion
    Domain Update Factors contributing to the decrease in the necessary budget funds:
    • ability to use existing server hardware;
    • lower costs of human resources;
    • reducing testing costs, since it will be necessary to test less than the tasks of modernization
    Domain restructuring For many reasons, the restructuring of the domain will require a greater budget than the domain update. The hardware requirements required to build an empty forest environment in which you want to transfer the catalog service objects should be considered from the point of view of budgetary costs.

If the company does not quite satisfy the conditions to confidently select the update or the restructuring of the domain as a renewal path, or if both paths are suitable for it, you can choose the third way to update the domain with subsequent restructuring.

This transition path to Active Directory will allow you to get immediate benefits (Delegation of Administration, group politicians, publication of applications and much more), as well as long-term benefits of domain restructuring (fewer domains with an increased domain volume, domain project in accordance with the business and organizational goals of the company).

The PLM industry has been developing for more than ten years and the moment that enterprises, testing the decisions selected initially, are quite reasonably decide to change the existing PLM to another, or significantly change the configuration of the current one. And then there is a question of migrating PLM data from the old system to the new one. As we know, even the broadcast of the geometric data themselves is not easy and ambiguously solved, the migration of PLM data is even more complicated and still a little-known process.

As it happens
The choice of a new PLM system was made, a team of executives with relief celebrates the result of the complex efforts of this choice. In fact, only now this work, planning and making data migration begins existing systems to a new PLM target platform. Existing companies contain a significant part of intellectual property (IP) and, therefore, the competitive advantages and capital of the company. The success of the introduction of a new system largely depends on the performance of effective migration of existing data, intelligent, efficiently and timely.

This scenario is regularly repeated in one or another world and in any industry. With a rapid rate of improvement of technologies, strengthening competitive pressure, leads to the fact that many companies constantly evaluate their PLM solutions and improve improvements. The decision may be caused by the recognition that the current solution, or, more often, its maintenanceOr using multiple systems, do not suit the company's management. In addition, there is another common motive - the consequences of the company's acquisitions and the realization that the consolidation of their various PLM solutions is justified. Another scenario is the need for massive reconfiguration of the current platform. Regardless of the causes of the changes, the effective implementation of changes will depend on the successful migration of existing data on a new platform.

Data migration problems
Data migration makes numerous questions to the fore. For example, it may find out that this is the first audit of how the company chose the product management tools. In order to overcome the obvious disadvantages in the current data model, which has developed over time, the company may have to change parts of the model or expand it. In any case, these changes will have additional pressure on the transition process from the old to the new, simple data transfer may not be possible. One of the most important moments of migration is that you first need to determine all the data that is subject to consideration. Many believe that we are talking only about the transfer of digital data, however, experienced specialists certainly recognize that some part of the company's critical IC can still be in print, or at all its carriers are heads of leading employees.

After the data that is subject to migration has been identified, it is necessary to develop and execute the processes of checking their correctness. Often data may be outdated because last changes Not included in earlier data versions. In addition, duplicate data is often used (or supported in several systems), requiring a constant or periodic test of consistency and cleaning data. Determining the full amount of data for migration requires the use of knowledge of the most experienced employees of the company.

Perhaps one of the biggest problems of data migration are the deadlines for migration. Old data will be constantly replenished and modified, since the company cannot stop its work and wait for the completion of the new implementation of PLM. In addition, in reality, the migration team has a very limited technical time for real switching, it is typically weekends or holidays. The need to meet in an affordable calendar time requires the implementation of migration algorithms using special tools, as the data can easily contain hundreds of thousands (or even millions) entries.

An example of a solution
Let us turn to the experience of those who implemented and migrate PLM data on a regular basis. One of the recognized specialists in the field of data migration PLM is the German company PRION GROUP, which has eleven-year experience in providing such services and effective tools for their implementation. Since the PRIR portfolio includes interfaces for the most common PDM and inherited systems, from which the data must be transferred, in each case, the company has no need to re-develop software for migration. This allows you to quickly develop a transition plan taking into account the characteristics of a particular company and quickly perform migration to minimize its impact on product development and production. The figure below shows a diagram of a typical data migration process for Prion methodology.

The most significant is that the performance of this scheme is repeatedly confirmed by the PLM data migration migration projects from numerous PRIR clients. Moreover, repeated attempts to produce direct broadcast of data from one PLM system to another, 100% of the inoperability of such a primitive approach were proved. Among the factors determining this state of affairs: data collection from several sources, the need to transform and clean the data, their certification and loading to a new system (s), which can also be physically distributed. Thus, there are completely unacceptable when switching to a new PLM platform.

To reduce these risks, Prion has developed migration tools that use an intermediate database. Data is exported to an intermediate database and, before downloading to a new PLM target platform, are converted to this database. Such an approach does not lead to immediate change in working data and business can continue as usual, while the rules and details of the data migration process are developed. The critical factor for the success of migration is to create a change management system so that not only to track changes made during the migration of the data themselves, but also changes to the data made after downloading to the new PLM platform. This change management system must support the specific requirements of the Customer from the migration process itself before launching a new operation system in real conditions.

The fact that Prion can use many of the migration scenarios from their extensive library, which was developed for former customers reduce migration risks and reduces costs for future customers significantly. This approach helps in many difficult migration scenarios, especially when the target system is a distributed solution.

For more more detailed information About Tools and Services Prion Recommend to contact the site

Modern companies often arise before the need to migrate their information systems. However, a thorough preparation must be preceded by the implementation of this procedure, since there are many obstacles on this path.

The reasons for the start of the transition to a new information system (IP) may be a great set - this is a decrease in risks associated with the operation of obsolete platforms, and bringing information systems to international standards, and improving the efficiency of business processes. But no matter what task is before the company, the transition from one IP to another must be carefully planned and prepared.

Migration problems

When it comes to the migration of transactional systems, such as ERP, biling, processing or ABS, the transition to a new system is very problematic. The fact is that IT professionals need to ensure accurate migration of large amounts of data, supporting the parallel operation of the old and new system for verification and analysis of results.

For example, I had a project experience in one of the largest banks where the transactional system was transactions with an already supported Informix platform on the Oracle platform. At the same time, it was necessary to make a thorough analysis of business processes, multiple transfer of data from the old system to a new one and verify the compliance of the results of the work of the new and old systems, taking into account the duration of the regulations of the processes. That is why the migration period was 14 months. Sometimes the parallel operation of the two systems can continue for a longer time, but even when it is limited to several months, to ensure the work of new IP requires the allocation of additional computing capacities and a significant time of employees of the enterprise for simultaneously performing tasks in two systems.

From the system of the department to the level of the enterprise

Often, updating is based on globalization and centralization. This allows you to significantly reduce the cost of supporting and updating the software complexes. Indeed, follow a single platform serving all employees, is much easier than maintaining individual tools for each unit. For example, successful migration of logistical accounting system allows you to translate several thousand divisions of a large organization on single platform and ensure a serious reduction in IT costs. However, it should be remembered that most of the preparation in this case falls on the coordination of data in various formats and submissions, the development of new regulations and the construction of new models of employee interaction.

Another important aspect - integration interfaces with other enterprises, especially self-written and specific. The problems associated with them may not be so noticeable at the first stage, but are detected when establishing the interaction of various units with the general system. And if for the old system, such interfaces have already been implemented programmatically or organizationally, then for the new system, they may have to develop anew.

It should be remembered that the thoughts about expanding the system functionality can come already during the implementation of the project, as appetite comes during meals. And this means that you need to spend whole line Additional work.

Action plan

The experience of project activities for migration systems shows that any such project requires careful preparation and must be accompanied by an individual plan. However, regardless of the type of system migrated systems, software, database volumes, etc. general scheme It looks almost identical.

At the first stage, it is necessary to conduct a detailed audit by finding out all the requirements for the mode of functioning of the new system, interviewing all key users. It is important to understand what amounts of data, what load this is speech, Only then experts will be able to offer a faithful migration strategy.

The procedures themselves must also be carefully thought out and include such important elements as the regulations of users' access to systems during migration, rollback procedures previous state In case of failures and the procedure for the interaction of various specialists involved in these processes.

After agreement with the Customer, it usually takes up a detailed plan, which implies several stages, namely: copying data, verification, parallel operation of two systems and a complete transition to a new platform. In my opinion, the main thing in the professionally organized migration of systems - smoothness this process For users who may gradually start working in a new automated system.

However, even thorough preparation does not always save from underestimation of labor costs when transferring users to "New Rails". This process includes both the training of employees of the company and their support during the adaptation period to the new system.

Sergey Berdachuk, 1.0 2006.12.01

It would seem that the presence of an existing information system (IP) should simplify and speed up the development of new IP based on the old, but in practice everything usually occurs with accuracy to the opposite. First, since it was necessary to create new IP, it most often means that the previously created IP was created with essential flaws and replete with various errors.

Usually, from IP, which has written over the years by various developers. At the same time, the project documentation is most often in miserable condition, and sometimes there is no absent. "Real" programmers do not write documentation, and even more so do not document the program code. Why, because everything is simple and transparent. Nevertheless, when you look at your own code after half a year, it is quite difficult to figure out what was happening there. Especially if several other projects were made during this time.

Moreover, each new developer It usually does not bother with a thorough study of a code nor the system architecture. Since the deadlines are always "burning", then they are simply written "Sticks" to temporary solutions urgent problem. The result is a "porridge", consisting of a plurality of different modules and some miraculous way of docked technologies, which are sometimes not compatible with each other. The situation is exacerbated by using outdated database management systems (DBMS) for data storage, such as DBASE-III, FOXPRO or CLIPPER. Lack of a transaction concept, and in imperative design and reference integrity leads to numerous data integrity violations. We can assume that it was lucky if the DBMS was used in the old system, sometimes creatures using text files for storing data (when migrating one of such systems, the author had to write a special driver to access such a database).

Perhaps the only positive point is the accumulated experience in the formation of requirements for the newly developed IP. On the other hand, the experience of communicating with the old system can become a significant brake when implementing a new product. Most often, this arises due to the differences in the construction of the visual interface and the function keys used to perform some operations. So, part function keys It can be reserved by the operating system to perform some actions. A typical example is the use of the "ENTER" key to go to the next element of the editable form in the old IP under DOS. IN graphic interfaces Usually, the "Tab" key is used for these purposes. As a result, we get tough opposition from users when implementing new version Product. Of course, you can emulate the behavior of the UI (User Interface) interface of the old system, but it is best optionally. Those. Enter the ability to configure the behavior of the system in the IP configuration module, and by default, use the settings corresponding to the current operating system. Otherwise, the newly developed product will be difficult to master new users who expect the program's behavior in accordance with the current standards.

As for working with the stored data of the old system, then the situation is even worse. The most difficult consequences will have a management decision to use part of the old system modules. For example, when we are faced with the task of developing a new version of warehouse accounting, and by solving other tasks (accounting, etc.) will be engaged in the old version of IP. In this mode, the problem of data migration in the "real" time mode. Overhead costs, to maintain the work of all modules as a whole, can exceed the cost of developing a new version of all modules. Moreover, costs may differ in order, taking into account possible losses from the shortcomings of the old system and errors when exchanging and converting data. So you should carefully assess the state of the old IP and appropriateness. And what is most interesting, in practice, this problem is usually not affected, up to the emergence: "Here we create a new system, and then we will dock with another software and migrate data. "

But the moment comes when the problem is called, the new system is written, and it is time to engage in transformation and pumping data into a new system. Analyzing the experience of migrating the data of a large number of various information systems, you can allocate the type of data migration procedure, which includes:

  • Analysis of data formats of the old database structure and new, preparation of the migration plan and data conversion;
  • Determination of interconnections between tables (object hierarchy);
  • Determination of the data injection sequence in accordance with the dependency hierarchy. Sometimes, but not always (for example, when the new version of the database is already in operation) you can not take into account the relationship, but simply disable everything external keys before migrating and re-posing them after completing all manipulations with data;
  • Executing a script for changing objects in the new version of the database;
  • Direct data transfer with the necessary transformations "on the fly";
  • Execution of the script for restoring disabled indexes, additional transformations, etc. After the data migration procedure is completed.

Most. simple option Usually the creation of an intermediate program. It should be associated with the original and target databases, and perform the necessary transformations.

Fig. 1. Option with an interim data migration program


Essential disadvantage this solution Maybe the network load during data transmission. If the amount of data is essential, the network exchange can strongly affect performance.

A more profitable solution may be pre-loading old data into the temporary tables of the new DBMS. Modern DBMS (for example, Oracle) usually contain special utilitieswhich allow you to produce a very fast injection of external data of various formats. The migration module is directly written by the procedural languages \u200b\u200bbuilt into the DBMS (for example, PL / SQL or Java). You can significantly increase the speed of the migration procedure due to the fact that the built-in programming languages \u200b\u200boperate in the "native" environment are optimized for the target DBMS and there are no overhead on network data exchange.

Fig. 2. Data migration option by DBMS


Of practical experience Writing such programs I want to pay attention to the use of batch SQL methods that are supported by most of the DBMS and programming languages \u200b\u200b(for example, ADDBatch () and ExecuteBatch () methods in Java). Execution of one OPSERT Operator or Update Update For data array packs of 100-200 records gives a significant performance gain, in comparison with execution this operator Alternately in the cycle for each record.