2003 �
������ � ���������� ������������� ��
�.�. ����������, �.�. ���������
����� ��������� ���������� ���������������� ���
1. ��������.
���������� ������������ ��������� �������������� � ��������� ������������ ��������� ������� �����, ��� � ��������� ������ ����������� �� ��� ��� ����� ��������� �������������� ������� (��). ��� �� � ��������� ������� �������������� ��������, ����������� � ������������.
������������ �������� ��������������, �, � ������ �������, �������� ���������� �� ��� �� ����������, ��� �������� ����� �������������� ������� � ����������� ������� ��������������� ��������� ��������� ������������ ��. ��������� ����� �������:
- �� ���������� ����� �� � �� ���������� � ������������� ��;
- �� ���������� ����� �� � ����� ������ ������������ ��;
- �� ������������ (����������� ����������������, ��������) ������������ ��.
�� ����, ������� ����� ��������, ��� ���, ����� ������������ �� ��������� � ����������� � �������� ������� �������������� �� �����, ������. ��������� ����� �������� �� ��������������� ������������� ������������ �� ��� ��� ������������� ��.
���������� ����������� �������� ���������� ����������� ����������� � ������������, ���������� � �������������� ������������ ��������, ����������� � ���������� ���������� ��, ���, � ���� �������, ����� ����������� �� ������������, � ��������, � ���������� ����� �������.
�������� ����������� ���, ��� � ��������� ������ ���������� ��������������� � ���������� ������� ������������� �� ���������� �� �������. �� ������ ��� ����������� ���������� ������� �������� ����� �� �������������, � �������� ���������� ������������ � �������� ��������.
������� � ���� ���������� ������� ���������� ��������, ������� � ��������������� �������, �������� ��� �������� ����������� � ������������� �� ������������� ��. ������ ��� �� ������������� �� ������ ����������� (��������� ����������). ��� ���������, ����� ��������� ������� ��������� ���������� �����������, ��� �������� ������ ������ �� ���������� �� �� �����, � ������������ ���������� ���������� �����������, ����� �������� ������� �������� �� �����������, ��������� ������� ����� ������������� ��.
� ��������� ������ ����������� ������������ �������, ������ � ���������� ������������� ��, ������������ ������ � �� �������������. �� ��������� ����������� ������������ � �������� ������������� ������ ������ �������� ��������� � ������ �������.
�������, ��� � �������� ��������� ������ �� ��������� ���� ����������� ��� ������� � ������� ������������� ��, ����������� ��������� ���������� �� ������� �� ���. � �� �� ����� �������� ���� ����������� ������� ����������� �������� �������, ������, ���������� � ���������������� ��������, ������� ������������� ��������� ��� � ������ �������. ��������� ���������� �� ������������ �������� ����� ����� � ����������, ������ �� ������� ������������ � ����� ������, � ��� �� �� ��������� Web � ������:
2. ������� �������������� �ѻ, ��� ���������� � ����� � �� ��.
���������� ��� ����� [1, 2, 5, 9, 10, 13, 15, 16, 20, 34-36], � ������� � ��������� ������� ������������ ����������� � �������������� �� ������������, ���������� � ����������� ����� ������������� � �� ��.
2.1. ������� �������������� �ѻ.
����� ������� ��������, ��� � ��������� ������ ������� ������������� �ѻ �� �������� ����������� �����������. ��� ��������� �������� ����� ��������� ������������ ����������������� ��������. �������� ����������� ���� � �� �� ��������, �������, ������ � ���������� �� �������, ������ � �������� ������� �������, ������ � ��������������� �ѻ [1, 9, 16, 20] ������������� ��������� �ѻ [10, 13], ��������� �ѻ [15], ������������� �ѻ [2], ����������������� �ѻ [5].
������ ��������, ��� ������������ �� �������� �� ����� ������������ ��������� (�������) �� ��������� � ������������ �� ������������ ��. ������, �������� �� �������� ����������� ������������� ��, ���������� � [1]:
������������� ������������ ����� ��������������� ������������� ������������ ������� � ����� ��������� �� ������������� ��������, �������������� �� ����������������, ��������� ��������� �� �������������, ����������� ������������� �������� ��� ��������� ������, ���������� ������ ����� �� ������������� ��������,
���������� ���������, ��� � ��������, � ������������ �� �������� ������ ������������ �� ������������� ��. ��� ���������, �������, ������ � ���������� ��������, ������������, �������� ��, ������� ������� ������ ����������������� � ��������������� - ���������������� ����������� �������� ������������� ��.
����� ������ �� ������������ �� ����������� � �����������, �������� � ���� ����� [34, 36, 38-40]. � ���� ������� �������� �������� ������� ��������� ������� �������, ����������� � ������ ����� ������������. ���, � [38] ������������ �� ������������ ��� ������������� (��������, ������������) � ����������� �������� ������� � ����� �� ����������� � ����� ����� � ����������� ����������� ���� ����� �����[1]. �����, � ��������� ������������ �� ������������� �������� � ������������ ����� ������ �������, ���
- ������ ���������� (Forward engineering);
- ������������������ (Redocumentation);
- ����������� (Refactoring);
- ���������������� (Restructuring);
- �������������� (Retargeting);
- �������� ���������� (�������� ��������������) (Reverse engineering);
- ������������� ����������� ��������� (Software maintenance);
- ���������� ��������� ���� (Source Code Translation);
- � �.�.
������������� ������� ���������� ������� ������������� �ѻ, � ����������� � ���� ������������ ��������������� ���� ��� ���� �� ���� ������������� ��, ���� ��� ���������� �������� �������������. ����������� ���� � ������ ������� ���������� � ���������� � ������ ������ � ��������� ������� � ��������. ��� ���� � ��� �������, ����� ����������� ������� � ����������� ���� ��� ����� �������, � ��������� ���������� �������������� �������� �����������, � ��� �������������, � ���������� ����������� �����������.
2.2. �������� ���������� ������������� �� � ��� ����� � �� ��.
��������� ����� �� ���� ������������ ��������, ������� � ���������� ������������� �� ������� ������� ����������� ��������� ���������� ������������ �� ������������� ��, ����� ������������� � �� ��.
���, � [1] ������ �������������� ��������� ������� ��� ����������� ������ ������������ �� �������������, �, ��� ���������, ����� ������������� � �� ��.
������������, ��� ������������ �� �������� ������������� �������������� �� ��������� � ���������� � ������������� ��. ��� ���� ������������� �� ��������������� ��� ������������, ����������������� ���������� ���������, ������������ �� ���������, ������������������ � ��������� ��, � ���������� �� ��� ������������, ���������� ���������� ����� ������������, ���������� ����� ����������������, ������������� ����� ������������ ���������, ��� ������� �� ������������� ����� �����������, ��������� ����� �������������� ����������. �������� ���������� ������������, ��� ������������ ��������������� �������������, ��� �� �������������, ��� � �� ���������� ��. ��� ���� ��� ��� ���� ������������ � ��������� ������������� �� ����� ����������� �������������.
� ������� �� [1], ������ [2] ��������� �������� ������������ �������������� �������������� ������. � ��� �������� ����� ��������� ������� ������������ �������������� ������, ������������ ���� ������������ ������ � �������� ����������� �� ���������. ������������, ��� ������������ ����� ���������� ������������� ������� �������� ������������ �������������� ������, ������� ���������� ��� ����� ����������. � ����������� �������� ��������� ����������� � ������ ���� ������ ����� �������� �������� ����������� ������, ��������� ������������� ����� ����������� �������, � ��� ��������� ����� ������������ �� ������������ �������.
� ��������� ������������, ��������� � ��������� ��, �������� ���������� ������������ �� �������������, ������������ � ��������� ��.
������������, ��� ������������� ������������ ����� ��������������� ����������� �������, � ������ �������� ����������� ����� ��������� � �������, �� ������������� ����������� ����������� ������� (����������� �������).
� ������� �� ������������� ������������ ��������������� ��� ������������, ������� ��������������� ������������ ��������� ������������ ������� (� ��� ����� � �� ���������), �� �� �� ���������� ��� ��������� ����� ��������.
�, �������, ��������� ��������������� ��� �������, ������� ����������� �� ��������� ����� �������, ��������� ��������� �������� ������������ ��. ��������� ������ ����������� � ��������, ������� ������������������, �������� ��� �� ����������, ���������� � ������������ ������� � ��� ������� ������������ ���������� ��� ������������ �� �������.
��������� ����� ���� ����� ������������ � ��������� �� ��, ������ ������������� ��������� ������������������ �� ���������� (�� ���. 1).

���. 1 ��������� ���� ��.
�������������, �������������� ���������� (����������) ��. ����� ����������� ������������ �� �� �������������. � �������� ������������� ��������� ������������� � ���������������� ������� � ��� ��������� ����������� ������������ �� �� ������������. ����� ����� ����� �������������� ������������ �� ������������� �������. � ��� ������, ����� �� ��������� ������������� ���������, �������������� �� ��������� �� ����� ������� � ������������������ ����������� ����� ������������ �����������. ����������, � �������� ����� ����� ��������� � ������ ������������������, �����, �����, �� �������� � ������������, �������������� ��������� ����� �� ������. ������ ����� ������ � ������������������ ���������� �������������, ������������ � ��������� ��������� ����������.
���������� � [2] ���� ������������ �������� �� ����������, �������� � [16]. � ������� �� ���������� ������, � [16] � �������� �������� ������� ������������ ������ �������������, � �������� ���������� ��������������� ��� ��������� ����� ������������, ����������� � �������������� ��. ��� ���� ������������� � �������������� �� ���������� �������������� ������������ �� �� ������, �������������, �������������, ���������, � ��� �� ��������� ���������, ����������������� ���������� ���������� ������������� ����� ����� ������������.
����������� �������������� ��������� �������� ������������� ��, � ���� ����� [1, 9] ������������ �������� ���� ������������ (����) ����������� � ���� ���������.
���, � [1] ��������������� ��������� �������� ����:
- ������ ����������� ������� �� �������������, � ��� ����� ������������� �������������� �������������� ������� (���� ������);
- ������� ������� �� �������������, � ��� ����� �������� ������� � ������������� ���������� ����� �� ������������� ��� �������������/���������� ��;
- ������������� ������������� (���������� ����� �� �������������);
- ��������� �������, ������������������ � ���������� ���������� �������������.
������ ������ � ����������� ������������ �� ������������� ���������� �� ��� ���������� ������ ��������� [9, 21].
� ������ ������ ������ �������� ��������� �������� (���� ������������), ����������� � �������������� ��:
- ������ ������������ �������, ���������� �� ����� ��� ����� �� ���������� ��������;
- ������������� ���� ���������� �������� � �����, ���������� ���������� �������� �������.
- ���������� ����� �������, ���������� �� ����� ���������� ��������� �������.
��� ��� �������� �������� ����������� � ������ � ���� ��������� (�� ���. 2).

���.2 ������ ���������.
������ ������� (Architecture Recovery) ��������������� �������������� ����������� ������������ ������� ����������� ���������� �� ��������� ��������� ���� ��������������� �� ����������. ���������� ����������� ������������� �� ������� ������������ ����������� � ������������, ����������, ������������ � ��� �����.
������ ������� (Architecture Transformation) ����������� � ������������� (�������������) ��������������� ����������� � �������� ����� �����������. ���������� � ���������� ������������� ����� ����������� ����������� � ������� �� �������� � ������ ������������� �� ��� ��������������� � ������������� �����������.
�, �������, ������ ������� (Architecture-based Development) �������� ������������ �� ���������� �������, ��������������� ����� �����������. ����� �������� ������� ������������ ��������� ������� �� �������, �������������� ����� ��������� �������������� ���������/����������� �������. � ������ ������� �������� ��� �� �������������� ���������� � ����� ������� ���������� �������������� �������, ��������, ����������� ������������� ����� ��������������� ���� �/��� ���������� ���������� ���������� �������� ��� ����������� �������������� �������.
� ������� �������� ����������� ��� ������, �� ������ �� ������� ����� �������������� ������������� ������������ �������.
������������� �� ������ ��������� ���� (Code-Structure Representation) �������� ����������� ���, � ��� �� ����� ���������, ��� ����������� �������������� ������� � ����� ������� (flow graphs), ���������� �� ��������� ���������� ���������� ���� ������������� �������� (��������, ������� ����). ������������ �������, � ��� �� ������� �� ������ �������������� �������� �������� ��������� ������������� ������� �� ���� ������.
� ������� �� ����������� ������, ������������� �� ������ ���������������� ������� (Function-Level Representation) ��������������� ����������� ������ ����� ��������� �������� (��������, ������������������ �������), ������� (��� ������� ������, ������ ����� ���������� ������, ����������� ������ � �������) � ������� (� �������, ������������� ������� � ������ �� ������). ������������� ������� �� ������ ������ �������������� �� ��������� ���������� ���������������� ������� � �����������, ��������, � �������� �� ��������������� ������� � ���������� ������� � ������� � ��������������, � �������� �� ����������� �� � ��������� ��.
�� ������������� ������ ��������� ���������� �������, ������������ � ���������� � �������� ������������� ����������� ����������� ��. ������������� ������� �� ���� ������ ��������������� �������� ��������� � ��������� ���������, � ��� ����� � ����� ���������� �������� �������� �������������� �����������: ����� ����������� �����������, ������������ ������������ (connectors), ��������� ������������ ����������������, �������� ���������� � ������ ������� ������� ����������.
�������� ������ �������� ������������� �������, � ����������� �� ��������, ����� �������������� �� ������ �� �������������� �������, ��� ���� ����� ������ ������� ������������ ������������� �� ����� ������� ������.
������� ��������, ��� ������ �������� ������� ������� ���������� � ������ ������������, ��������� � �������������� ��. ���, � [20] �� �� ������ ������������ ���������� � �������� ������ ��� ���������� ���������������� ������� ������������� �� ������������� ������ � ������ ������������ ����. � ������ ����������� � ��� ��������� � ������� �������������, �������������� ���������� ������ CORUM (Common Object-based Reengineering Unified Model). ��� ������, � ���� �������, ���������������:
- ��� ������������� ��������� ��� ������ ���������� �� ������ ������������ ���� (Code-based Management System) ���������� � ����������� ���������;
- ��� ����������� ������������������� ����� ��������� ������� ������ (� ��� ����� ����� ���������� ������������� �������� �� ������ ������������ ����).
� ��������� �������� ���������� � ���� �� ������ ��� ������ �������� ������������ ������������� ������, �������������� �� ��������� ������������� ������������� ������� ������������� ����� ����� ������������� ������� � ������� ������������ ����.
������, ������������ � [34-36], ����� ������ � �������, ����������� �� ������ ��������. ������������ ��������� ���� ������������� ��, ������ ���������� ��������� ���� �������� �������������:
- ������ ���������� ��� ��������� ���������� ����� ������������� �������������� �������;
- �������������� ������, � ��� ����� ���������������� � ��������� ��������� �������������� �������;
- ��������� �������, ��������� � �������������� ��������;
- ������ �������, ���������� ����� �����������, ����������� ��������� ������������ � �������������� ������� �������;
- �������������, ���������� ����� � ���������� ������������ ������� ������������� �������������� �������;
- ��������������� ���������.
� ������� �� ���������� �����, � [10, 13] ������������ �� ������������� ��������������� � �������� ����� �� ���� ������������ �� �������� �������������� ��, �����, ��������� ����� ����������������� ���������� ��� ��������� ��, ������ ����� ��������� ��������������� ��������� [13].
���, � [13] ����������� ������ (enterprise framework), ���������������:
- ���������� �����, � ������� �������������� �������� �������;
- ��������, �������� � ������� �������� (���������), ������� ������������ ������������ �� �������� �������.
�������� ��������������, ��� ������ ����������� ��������, ��������� � ��������� �������������� ��, ���������� ��� �� ��������� ��������������� ��������. ��������, ���� ����������� �������� ������� ������� �������, ������� �� ������������?�, ������ ���������� ��������� ������� ������ �������� �������?�, ���� �������, ��� ����, �������������� �������� �������, �� ���������� ����?�. ����� �����, ������ �������� ������������� ����� ��������������, ���������������, � ������ �������� �������, �������� �� �������� �������������� ��.
������� �������� ����� �������� ������� (enterprise framework) ������� ������� ������������� ������ �����, � ������ ������� �������������� �������� �������������� ��, ������������� ����������� ��������� �������� ������� ��������, ��� ������������, ��� � ��������������� ���������, ������� ����������� � ��������� �������������� ��. ��������� ����� ���������� ��������� ��������, ������������ ����� ������������ �� �������� ��, � ��� �� ���������� �������������� ��������� ����������� � �������������� ���������� (��������), ��������� ��� ������������ ������������, ������ � ���������� ������������ �� �������� ������.
������� ������������� � �������� ������� ������������ ������� � ������������ �������, ������������ � [13] ������ �������� ����� ��������, ��� �����������, ������, �������������� �������, ��������� ������ � ����������� �������, ����������, ������� �������. ����� ����� ���������� ������������ �����. ��� ���� ��� ������� �� ��� ���������� ������ �������� (checklists), ����������� ���������������� (����������� � �������) ������������ �������.
������� ��������, ��� ���������� � ������ ������� ��������� �������� ����������� ��������� ���������� �� � ������ ������������ �� ���������, ������������ �������� � ������������ �� �������������. ������ ����� ���� ����������� ��� ���������� ��������� ����� ������������:
- ������������ � ������ ������������ ������� � ������������ ������� � ��������� ��������� �� �������� �������;
- ���������� ���������� �� ����������� �������������� � ����������� ������ �� ������������� �������������� ������;
- ��������� ��������������� �������� � ������������� ������� �� ���������� ����� ���� �� �������� ������;
- �������������� ������, ������������ (�������������) ����������� ��������, ���������� ������������ �� ���������� ��������� �������� ������ � ����������� �� ���������� (������� ���������).
����� ������ � ������������� ������� ����������� �� ���. 3.

���. 3 ����� ������ � ������������� �������.
� ������ ������� ���������� ��� ������������ ������������: �������� ���� � ���� ��������. �������� ���� ������������� �� ����� ���������, ��� �����������, ������ � �������������� �������. ���� �������� ��������������� �� ������� �������, ��������� ������ � ����������� �������, �����������, ������������ ��� ���������� ������� �������. ������� ������� ������ ���� ������������� �� ������������ �������, � ������ �� ������������ �������.
� [10] �������� ������������ �����������, ���������� �� ������������� ����� �������, ������ � �������� ������, ������� ������������ � ��������� �������������� ������ � ����������� ����������� ����������.
� ������ ������� �������� ��������� ��������� (��������):
- �������� ����� ��������� ������ � �������������� ����������� �������;
- ������������� ���������� ����� ������� (enterprise framework) ��� ��������� �������� ������� � �������� �������� �������;
- ���������� ������������ ��������� ������ �� ������� ������ ����������;
- ���������� ���������� �������������� ��������, ���������� �wrapping� [10] ��� �������� �������;
- ���������� �net-centric� [10] ���������� ��� �������� �������.
��������� �������� ����� �������������� ����������� ������� � ��������� ������ � ����� ������������� ��, ������ ������������� ������������� ��� ����������������, ��������������� ������������, ������������ �� ������������ � �������� �������������� ���������. ��� ������������� ��������� (�����������) ������� �������� ������������ ����������, � ��������� �������� �������� �� ������������ ���������� ���������, ��� �������, ������� � ���������� ������-���� ������ ���������� � �������. ����� ���������, ������, �� �������������� ������������ ���������� �������� ������������� � ��������� �������� ����������� �������.
� ������� �� �������������, �������� ������ ��������������� ��� �����������������, �����������������, ����� ��������� �� ������ ��������� (�����������) �������. �������� � �������� �������� ���������, �������� � ���������� �������� ��������� ��������, ���, ��� �������, ����������� �������� ������������� ������. ��� ����� ��� �������� ��������� � ��������� ������� ����� �������������� ��������� ������ ������ � ������� ����, ���������� ������� �������� �� ������� ������������ ����, �������������� �������� ����������� �������������� �������, �������������� ����� ���������, ����� ����� ������������ � �.�.
�������� ��������������, ��� �������� ��������� ������������ ������� ����� � ������ �������� ���������� ����������� � ��� ���������� (������� ������������ ����� ������������), ��� � �������� ����� ����������� �������������� � ������������� ���������� ����������� �������. ��� ���� ������ ��������� �� ��������� �������� � ��������� ������, �� ������������� � �������� � ��������, �� ��������� ������ ������ � ���������� ������� ����.
� ������� �� ������������� ����� �����, � [15] �������� �������� ��������� ������������ � ������� ����������� �������, ��������� � ��������� �������������� ������. ������������ ������� ��������� �ѻ � ������ ������ ���������� �������� ��������, ������������� � �������� ��. ����������� �� ��� �����, ��� �������� �������� � ������������� �������� �������������� ��, � �������� �������� ��� ��������������, ��� � ����� (�������) �������, ������ ��������� �������� � ������ �������� �� ��. ��� ���� �������� ��������������� ��� ������������, ������� ���������� � �������������� �� � ������������� ������������ ������� ��.
� ������ ������������� �������� ������� �������� ������������ ��������� ������� �� ���������� ����������������� ����������, ���������� � ���������� � ���������� ���������� ������ ������. ��� ���� � �������� �������� �������������� ����������� ����� �������� ���������:
- ������ �������������� ��;
- ������������ ��������� �������������� ��;
- �������������� ����������� (���������������� � ���������) ������� �������;
- �������������� ���������� (�������������� ������) ������� �������;
- �������������� ���� ������ ������� �������;
- ������������� �����, ��������� ��� ������������ � ������������� ������� �������;
- �������� � ������������� ����������� ������;
- �������� �������������� ������;
- �������� �������������� ���������� (�����������, ����������� �������������� ������);
- �������� �������������� ����������� (���������������� � ���������);
- ������� � ������������� ������� �������.
3. ������������� ��������, ������� � ����������.
� ��������� ������ ���������� ������������ ���������� �����, ����������� ���������, ������� � ����������� ������������� ��. ��� ������ ���������� ������ ������������ � ��������� ����� ������, ������������ � �������� � ��������� ������� ��� �������� ��������������� ������ (������ ���� ������������ ���������), ��� � ���������� ������, � ���������������� ��������, ��������������� ��� ������������� ��.
�������� �� ������� ��������� ��������� �������, �� ������������ � ����������� ���������� �� �������� ������ ����������. ��������� ����������� ���������� ������� �������:
- ������� ������������� �ѻ ���������� ��������������� �� ��� ��� ���������� �� �������, ���������� ��������� ������� �������, ������� ������� �������� � ��������� ������ ������������, �� �� ���� ������ ��������, ������� � ����������;
- ������������ ������� �� ��������������� � ��������� ������ ������������ �������;
- ������� �� ������������� �� ������ ����������� � ����������, ������� ���������� ������� � ���������������� ������� ���������� �� ������� ��������� ��������� �����, ��������� � �������������� ��;
- ����������� ������ ����� ��������� ��������������� ��������� � ���������, ������������� �� ������� ���������� ���������� �����.
������� ��������, ��� �� ��������� ������������ ������� (��������, ������� � ����������) ����������� �� ��������������, �������������� ���������������� � ������������ ����������� ������� �� ��������� ������� ������������ ����� �������������, � ��� �����, ������� ����������� � ���������������� �������.
� ����������� �������� �������������� ������� ����������� �������������, ������������ �������������� �� ��������� ������������ ��������, ������� � ���������� ������������� ��.
���, ������������� ������������ �������, ������ � ����������, ����� �������� ��������� ������ ������������ � ������������ ��������, ����������� � ������������� �� ������������� �� (�� ���. 4).

��� 4. ������ ������������ � ������������ ��������, ����������� � �������������� ��.
������ ������� �������� ������������, ������������ �� ���������� ��������������� ��������� ������������ �� ������������� ��. ������ �� ���� ������ ����������� ������� ����������� ����������� ������� ������������� �ѻ, ����������� ����� ������������� � ��������� ����� (��) ��, � ��� ����� ��������� ������ �������� ������������� �� � ����� � ������� ���������� �� ��. ������� �������, ��� ������� ����� ������������� ����� ��������, ��������� � ����� ������.
� ������� �� �������, ������ ������� �������� ������������, �������� ���� ������� ����������� � ��������� �������� ����� (��������), ����������� � �������� ������������� � � ����������� ������ ����� ��������� ������ ��������. ����� � ����� ������������ �������� ������ ���������� � ������ ������ ����� ��������� ������ ��������, �������� ����, ����������� � ������������� ��������, � ��� �� ������� ������������� ����� ����� ������� ������������. ������������ � ���������� �� ���� ������ ���������� ��� ��� �����, ��� � � ������ �������� ����������� (��������, ������������� �������, ������� ������ ��������������� ���������� ������������� ��). ������� ��������, ��� �������� �������� �������, ��������� � ������ �������������, ����������� � [1, 15, 33], � ������� ������� � [8, 13, 16, 20] ���, � [1] ���������� �������� ���� �������� ������������� ��, � ��� ������ ���� ������������ �������� (������������) � ����������� � ���� ������ ����������. ������� ������ � ����� ����� ���� � �� ������� �� �����-���� �����������, �������� ������������ ����������� ����������. � [15] �������� ��� �� ������������ ����������� � ������ �������� ������������� ����� �����. ������ ����� �������� �������� ��������� �������� ������������ ���������, � ����������� ��� ������������� ���� ��������������� ������������ ��������, ��������������, �������������� � ������� ������� �� ���������� ����������������� ����������, ���������� � ���������� � ���������� ���������� ������ ������. � ������� �� ���������� ����� � [33] �������� �������� ������ ������ �� ������� ����� ������ �������������� ������ � ��������� �������� ������� ��� ������������� ��. �������� ������������ ������� ������, ��������� �� ��������� �������� � ��� ������ ��������� (������������):
- ����������� ������ (Reengineering Technical Assessment),
- ������������� ������ (Reengineering Economic Assessment),
- �������� �������������� ������� (Reengineering Management Decision).
��� ������� �� ��������� ����������� ��� ������� ����������, ����� �������� � ���� ����� (����� ��������), ������������ ����� � ������� ���������� ������. ������� ��������, ��� ������������ ��� �������� ����� ���� ������������� � ����� ������� ����������. ������ ����� ��������, ��� ������ �������������� ������ �������� ���� ����� �� ����� �� ������������� ��.
��� ����� �������� ��������, ������������� �� ������� ��������� ������, �������� ����������� �������, ������������ ��������� ������������������ �����, ������� ������ ���� ��������� ��� ������������ �������� ������������� �� [37]:
- ����������� �����, ����������� ������������ ����������� � �������������� �������.
- ������������ ������������ �������, ������� ����� ������������ ������������ �������������� �������.
- ����������� ����� ���������� � �������������, ������������ �� ���������� CMM (Capability Maturity Model).
- ����� ������������ ��������� ������ ��� ������ ����������� �������.
- ������ �������������� �������.
- ����������� �������� ���������� ������������ �� �������������.
- ����������/���������� ����������� ������� ������������ � ���������.
- ������ ������� �������������.
- ��������.
�� ������� ������ ��������������� (����������� � ���������������) ������, ������ �� ������� ��������� �� ������� ��������� ��������� ������, ����������� � �������� ������������� ��, ��������, ���������� ������������� ���� ��������. �� ����, ��� ������ ��������� ����� ��������� ������ ���������� �������, � �������� ����������� ������������ ������� ����������. ��� �������, � �������� �� ������������� ���������� ��������� ���������� ����� �������, ��� ���� ������ �� ��� ����� ����� ������ ����������� ������������� ��, �� � ����������� ������� �� ��������. ����� ����, ����������� ���� ������� ��� �� ������ ������������� � �������� �����������, ��������� ����� ���� �� ���������� �����, �������������� �� ������������ �����������. ������� ������� ����������� ����������������� �������, �������� ����� ������� ��������� ������������ � ��������.
� ��������� ����������� ��� ������ ������������� �� ����� ��������� �� ��� ������.
������, ����������� � ������� ������, ���������� �� �������������� ������ � � ����� �� ������� �� �����-�� ����� ����������� ����������. ���, � [2] ������ ����� ������� ������������ � �������� �������������� ������. ����� ����� ��������� ��������������� ������� � ������� ������ ��������� ����� ���������� ��� ������ � ���������� �� ��������-��������������� ������� ����� ���������� �������� ��� ����������� �������������� ������� (object � oriented wrapping), ������ ������� � �������� ����� ������������ �������. ������� ��������������� ������� ������ ��������: ������ ������ ��������� ������������� �� [9, 11, 33], ����� ������������ �������� ����������� ������� [8], ������ ���������� ������ � ������������ ������� [3, 4, 17], ������ ������������� (�������������) ����������� �� [3, 7, 19, 21], ������ ������������� ������������� �������� [6, 23] � �.�. � ����� ������� �������, ��� ������� ���������� ����� �������, ��� �������, ��������������� ��������� ������� ����������� ����������. � ��� ���������� � �������� �������� ������ �� ��� ������������ � ������ ������������ � ������� ���������� � ���������������� �������.
��������� ������������ ������������, ����������� � ������� ������ � ���������� �������� � ��������� ����, �������� ������������ � ���������� �������� ������������� �� [26-30, 36]. ������ �� �������� ������������� �� ������� �� ������� ��������� ������� ������ (��������), ������� ������������ ������������ �� ������������� ��. �� ������ �� ��������� �������, ������ � ����� �������������� ������� ������� � �������� ����� ��������. ���, � [26] ������������ ��������� ������ ��������.
- ��� �������.
- ���� ����������.
- ������� ����������.
- ��������� � ����������.
- ��������� ������� �� � ����� ���������� �������.
- ������� ���������� �������.
- ���������� �������.
- �����������, ��������� �� ����� ����������������.
����� ��������, ��� ���� ��������� �� �������� ������� ������������ ������ � ������������ ����� ����������, ������ ����������������, ��� �� ������ �� �������� ������������ ��������� �������������� ������� ��������. ��������� ���������� �� �������� ������������� ����� ����� � ����� �Object-Oriented Reengineering Patterns� [27].
� ������� �� ������� ������, ������ ������� ���������� ������������� �� ������������� ������������ ����������� ����������. �� ������� ������ ��������� ��� �� ��������� ������� �� ������� ������. ����� ������ � ���������� ������� ������������� � �� ����������������� (�������) ���������� � ���������� ��������. ��������� ������� ������� ������ ������� ������� [2]: ������ ���������� � �������������� CGI, ������ ���������� �� ������ ���������� XML, ����� ���������� �������� ��� ����������� �������������� ������� � �������������� ���������� CORBA.
� �������, ��������� ������� �������� ������������ � ���������� ���������������� ����������� �������, ���������������� ���������� ��������, ������� � ����������, ��������������� �� ���������� �������. ������� ��������, ��� � ��������� ������ ����� ������� ���������� ������� ����������, ����� �������� ���������� �������� [3, 4, 6, 23, 31, 32, 35]:
- �������� ���������� ���������� �� ���������� ������ �� ����������� ����� � ��������� (��������, � ������ PL/1, ����� �� ����� C++, Java, Visual Basic);
- �������� ���������� �������������� ����������, � �������, �� ������ ������ ���������� �������� ��� ����������� �������������� �������;
- �������� ������������������� ���������� ������ �� �������������� ������;
- �������� ������������������� ���������� ������ �� �������������� ��������;
- �������� ����������� (����������������) �������������� ������ ��� �� �������� �� ����������� ����� � ��������� (��� �� ������ ������������ ����, ��� � �� ������ ����������� ��);
- ��������� �������� ������� ������������ ����.
�������� ������������� ���������������� ������� ������ � [31]. � ������ ���� ������������� ���������� ����� ���� �������, ���
- ������������� ������ ���������;
- �������������� ���� ������;
- ������������� ������ (��);
- ������� �����������;
- �������������� ��������;
- ����������������;
- ��������� ��������������;
- ���������� ��������� ����;
- � ��.
� ���� �� ������ �������� ���������� �������������� ���������������� ������� ������������� ��. ��� ������� �� ��� ��������������� ��� ������������ ��������; ���������� � ���������� � ����������� ���������; ���������� �������� � �����������; �������������� ����� ����������������, ����, ���������; �������������� � ���� ��� ����� ���� �������.
����������� ������������� � ������������ ������������ ��������, ������� � ���������� ������������� ��, ������������� � ��� ���������� �������, ������� �������� ��� ���, ���������� �� ����� ������� �������������. ��� ������� ����������� � ������� ���������� ������������� ��. ������ �� ��� ������������ ��������� ������������ � ���������� �������� � ������� ��� ����� ����� �� ����������, ��������� ���������� ��������. ��� ������������� ���������� ������ ���� �������, ������ �� ������� ������ � ����� ������������, � ������ �������, �������� ������ ������� ������. ������� ���������� ������������ ��������� (�������������) ����������� ������������� �� � ������ ����� ����������, ��������� ���������� �������� ����������� ���������� ������� � ���������������� �������, ��������������� �������� � ���������� �������. ��� ���� � ������� �� �����������, �� ������� ������, ������ �����, ��������������� ������ ������� ������.
������� ��������, � �������� ���������� �������� ��������� ������ ������������ �� ���� ���������� ��������� ����������� � ���������� ������������� ��, ��������������� ������ ���������� � ������� ������ RUP [24, 25]. � ���������� ������� ��� �������� ����������� � [1, 8, 15, 33]. � ���� �����, � [1] ������������ ���� ������, ������������ �������� ��� �����, � [8] ������ ������������ �� ���������� �������� ����� ������������ �� �������������. � [33] ������������ ���� �������� ������ �������������� ������, � � [15] �������� �������� ��������� �������� ������������ ���������, ��� ���� �������� ������ ������ �� ������� ������� ���������� ������, � �� ����� ��� ������ ������� �������������� ������� ����������� �� ���������������.
�������������� ������ � ������������� ������������ �������������� �� ��������� ������������ ��������, ������� � ���������� ������������� ��. � �������� ��� �������� �������� ���������� ������� �������������:
- ������ ��������� � ������� ����������������� � ���������������� ����������� ������������� ��;
- ��������� � ���������� ����������� � ���������� ������������� ��.
� ���������� ������� ������� ����� ��������, ��� �������� � ������ �������� ������� � �������������� ������� � ���������� ������������� ��. ���, ������������ � ����������� ���������� �������� �������� �������������, ��� �������, ���������� ������� � �����, � �� ����� ��� ������ ����� ������������ � ���������� �� �������������, � ���������� ������ ��������. ��������� ���� ������������� ����������� ������������� ������ �������:
- �� �������� ���������� (��������, � ����������� �� �� ���� (��������� ����������������� ����������, ��������� ������, ����������� ��������� (��������� ������ - ������)));
- �� ����� ������������ �������� ������������� (������ ���������� ������ � ������������ �� (������ ��������� ��������������), ������ ������ (�������) ������������ �� � �.�.).
4. ����������.
�� ��������� ����������� ������������ � �������� ������������� ��������, ������� � ���������� ������������� ��, ���������� ��������� ���������������� ������� ��������� � ������� ��� ����������������� � ���������������� �����������.
���, �������� �� ������� �������� ���������� �����, ������������ ������ ������������ � ��������� ����� ������, ������� ��������, ���:
- ������� ������������� �ѻ ���������� ��������������� �� ��� ��� ���������� �� �������, ���������� ��������� ������� �������, ������� ������� �������� � ��������� ������ ������������, �� �� ���� ������ ��������, ������� � ����������;
- ������������ ������ � ���������� �� ��������������� � ��������� ������ ������������ �������, �� ������������� �� ������ ����������� � ����������;
- ����������� ������ ����� ��������� ��������������� ��������� � ���������, ������������� �� ������� ���������� ���������� �����;
- ����������� ������ ����������� ����� ��������/������������ ������������� � ������������� ���������� �� �� �����.
� ����������� �������� ���������� �������� ����������:
- ����������, � ��������, � �������������� ������� ������������� �ѻ, ������ ��������� � ��� �������;
- ���������� ��������� ����������� ������������� ��;
- ���������� ������� ��������� ����������� ������������� �� � �������� ��������;
- �������� ���������������� �������, �������������� ����������� ������� ����� �� ������������� ��;
- ���������� ����������� ���������� �� ����� � ����������� �������������, � ��� ����� � �� ������ �������������� �� ���������������� �������.
5. ����������.
- John Bergey, William Hefley, Walter Lamia, Dennis Smith A Reengineering Process Framework, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, 1995.
- Santiago Comella-Dorda, Kurt Wallnau, Robert C. Seacord, John Robert A Survey of Legacy System Modernization Approaches, Software Engineering Institute (Technical Note CMU/SEI-200-TN-003, 00tn003.pdf), Pittsburgh, 2000.
- Rick Kazman, S. Jeromy Carriere Playing Detective: Reconstructing Software Architecture from Available Evidence. Technical Report CMU/SEI-97-TR-010. Pittsburgh, 1997.
- Rick Kazman, S. Jeromy Carriere View Extraction and View Fusion in Architectural Understanding, Proceedings of the Fifth International Conference on Software Reuse (ICSR), June, 1998, Victoria, BC.
- ������ �.�. � ����� �.�. ����� ������� ���������������� � ���������� �������������� ������, http://d902.iki.rssi.ru/students/alekro/Dissertation/Papers/Reengineering/my_review.html
- "������������������ ������������ ��������" ������� ������ ��� ���. �.�.�������� � �.�.�������� ������������ �.-�������������� ������������, 2000.
- Guo G. Y., Atlee J. M., Kazman R. A Software Architecture Reconstruction Method, Department of Computer Science, University of Waterloo, Software Engineering Institute, Carnegie Mellon University.
- John Bergey, Dennis Smith, Nelson Weiderman DoD Legacy System Migration Guidelines, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, September 1999.
- John Bergey, Dennis Smith, Nelson Weiderman, Steven Woods Options Analysis for Reengineering (OAR): Issues and Conceptual Approach, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, September 1999.
- Weiderman N., Nelson H., Bergey John K., Smith Denis B., & Tilley Scott R. Approaches to Legacy System Evolution, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA 15213, 1997 (CMU/SEI-97-TR-014)
- Ransom J., Sommerville I., & Warren I. A Method for Assessing Legacy Systems for Evolution, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering (CSMR98), 1998
- Bisdal Jesus, Lawless Deirdre, Wu Bing, Grimson Jane, Wade Vincent, Richardson Ray, & O'Sullivan D. An Overview of Legacy Information System Migration, APSEC 97, ICSC 97, 1997
- John K. Bergey, Linda M. Northrop, Dennis B. Smith Enterprise Framework for the Disciplined Evolution of Legacy Systems, SEI CMU October 1997.
- ��� ���-��������� ����� �������������� �������?, Computerworld, ���, 1998.
- Michael L. Brodie, Michael Stonebraker Migrating Legacy Systems. Gateways, Interfaces & The Incremental Approach, Morgan Kaufmann Publishers, Inc., 1995
- Weiderman N., Northrop L., Smith D., Tilley S., Wallnau K. Implications of Distributed Object Technology for Reengineering, CMU/SEI-97-TR-005, SEI CMU June 1997.
- Tilley S. A Reverse-Engineering Environment Framework, SEI CMU April 1998
- Bergey J., Smith D., Tilley S., Weiderman N., Woods S. Why Reengineering Projects Fail, SEI CMU April 1999.
- Kazman R., O'Brein L., Verhoef Ch. Architecture Reconstruction Cuidelines, SEI CMU August 2001.
- Kazman R., Woods S., Carriere S. Requirements for Integrating Software Architecture and Reengineering Models: CORUM II, SEI CMU, October 1998.
- Carriere S.J., Woods S. Kazman R. Software Architectural Transformation, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, October 1999.
- John Bergey, Dennis Smith, Nelson Weiderman DoD Software Migration Planning, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, August 2001.
- www.ispras.ru
- Kruchten P. The Rational Unified Process: an introduction. Reading: Addison Wesley, 1999.
- Rational Unified Process, version 2002.05.00.25, Rational Software Corporation.
- Ducasse S., Richner �, Nebbe R. Type-Check Elimination: Two Object-Oriented Reengineering Patterns, Proceedings WCRE, 1999.
- Demeyer S., Ducasse S. , Nierstrasz O. Object-Oriented Reengineering Patterns, Morgan Kaufmann Publishers, Inc., 2002.
- Ducasse S. , Demeyer S., Nierstrasz O. A Pattern Language for Reverse Engineering, Proceedings of EuroPLoP, 2000.
- Pooley R., Stivens P. Software Reengineering Patterns, University of Edinburg, Department of computer science, http://www.reengineering.ed.ac.uk/.
- Dewar R. Characteristics of Legacy System Reengineering, The University of Edinburgh, Division of Informatics, http://www.reengineering.ed.ac.uk/.
- Olsem M. R., Sittenauer Ch. Reengineering, Software Technology Support Center, Technology Report, Volume 2, April 1995, http://www.stsc.hill.af.mil/reng/.
- Ducasse S., Lanza M, Tichelaar S. The Moose Reengineering Environment, University of Berne, Software Composition Group, 2001.
- Software Reengineering Assessment Handbook, Technical Report, Version 3.0, 1997, http://www.stsc.hill.af.mil/
- Sander T. Modeling Object-Oriented Software for Reverse Engineering and Refactoring, Thesis, University of Bern, 2001.
- Ducasse S. R�etro-Conception d'Application `a Objets Reengineering Object-Oriented Applications, Universit�e Pierre et Marie Curie, 2001.
- The FAMOOS Object-Oriented Reengineering Handbook, http://www.iam.unibe.ch/_famoos/handbook/.
- Olsem M. R., Sittenauer Ch. Reengineering, Software Technology Support Center, Technology Report, Volume 1, April 1995, http://www.stsc.hill.af.mil/reng/.
- IEEE Computer Society TCSE, 1990, http://tcse.org/.
- �������� ANSI/IEEE Std. 729-1983.
- Joint Logistic Commanders Computer Resources Management group (JLC/CRM), 1992, http://www.stsc.hill.af.mil/reng/.
6. ���������� �. ��������� ������� � ��������.
- ������������ ������-��������� (Business Process Reengineering)
- ��������������� �������������� � ����������� ������������������ ������-��������� ��� ���������� ������������ ��������� � ����� �������� ��� ������������ ������� ����������� ����������������, ��� �������, ��������, ������� ������������ � ������������� [40].
- �������������� ���� ������ (Data name rationalization (DNR))
- ���������� ���������� ������, ���������� ����������� ������� ������������� ������. ����������� �� �������� ������������� ���������� �� ���������� �� ���� ����������� �������� [40].
- ������������ ������ (Data Reengineering)
- ���������� ���� ������� �������������, ����������� � �������� �����, �� ������������� � ������ ������ [40].
- �������������� ����������� �������������� (Design recovery)
- ������������ ��������� �����������, � ������� ������ ���������� �������, ������� ����������, ���������� ������ ��� �������� �������� ����������� �� �������� ��� ������������ �������� �������. ����� �������������� ����������� �������������� �������� ��������� �������� ��������������� ����������, � ���������� � ���, ������� ���� �������� � �������� ����������������� ������������ (��������) ������� [38].
- ������ ���������� (Forward engineering)
- ������������ ������� �������� �� ��������������� ���������� � �����������, ������������ �� ���������� �������������� � ���������� ���������� ������� [38].
- ������������ ����� ������� �� ���������� � ���������������� ��������������, � ����� � ��������������� �������������� � ���������� [36].
- ������������ ����� ��������� ����� ������������ �� ����������� �������, �� ���� ������� ��� ������������ ����� ������� ������� ��������� �������� � ���������, ����������� �� �������������� ����������� �������, � ����� ���������� [40].
- �����������
- �������� ������� ������� ����������� �� ������������� ����������� � ���, ��� � ������ ������������� ��������� �� ������������ ���������� (������������ �������).
- �������� ������� ������� ����������� �� ����������� � ����� ����������� � ���, ��� �� ���� ������� ����������� ��������� ���������� ������������� [40].
- ������������������ (Redocumentation)
- ����� ����������������, ��� �������������� ������������ ������������� ������������� ������� �������� �������������� ��������, ��������������� ��� ��� ���������� ��������� [38].
- ������� ������� ������� � ����� �������� ���������� ���� �������������� �� ������������. �������� � ���� ��� �������� ���������� ������������, ��� � ������������������ �������� ��������� ���� [40].
- ������������ (Reengineering)
- ������������ (��������, ������������) � ����������� �������� ������� � ����� �� ����������� � ����� ����� � ����������� ����������� ���� ����� ����� [38].
- �����������
- ������� ������������� �������� � ���� ����� �����������, ��� �������� ����������, ����������������, ������������������, ������ ���������� � �������������� [40]. ��� �������, ������������ ������������ ������� � ����� ����������� �� ������������ ����������� ����� ���������� [36].
- ����������� (Refactoring)
- ����������� ��� ����������������, � ������ ���������������� �� ������ ������������ ����, ������� ��������-��������������� ��������. �������� ��������� ��������� ����������� �������, ������������ �� ��������� ���������� ��������� ������������ ����, �� �� ���������� �������� ��������� ��������� [34, 36].
- ���������������� (Restructuring)
- ������������� ������� �� ����� ����� ������������� � ������ �� ����� � ��� �� ������ ����������. ����� ������������� ��������� ��������� � ������� ��������� (����������������) ��������� [38, 40].
- �������������� (Retargeting)
- ������� ������������� � �������� (��������) ������������ ������� � ����� ������������ [40].
- �����������
- ��������, ������� �� ����� ���������� ���������, ��� ����� ������������ �������, ��� ����� CASE - ��������.
- �������� ���������� (�������� ��������������) (Reverse engineering)
- ������� ������� �������� �������, ������������ 2 ���� � ������� ���������� ������� � ��������� ����� ����, � ������� ������������� ������� � ������ ����� ��� �� ����� ������� ������ ���������� [38].
- ������� ���������� ��������� �������, �� ������� � ��������������� �� ����������� � ����� ����� �������������, ��������������� ����� �������� ������ ���������� [40].
- ������� ���������� ���������� �� ������������ ����������� ������� [36]. � ����� ������ �������� �������������� ��������� ��� ���������� ���������� �� ������� ������ ����������, �������� ���������� ������ �������������� �� ������ ������������ ����.
- ������������� ����������� ��������� (Software maintenance)
- ����������� ������������ �������� ����� ��� �������� � ����� ����������� ������, ��������� ������������������ � ������ ��������� ��������, ��� ��������� �������� � ���������� ��������� (������� �����) [39].
- ���������� ��������� ���� (Source Code Translation)
- ���������� ��������� ���� � ������ ����� ���������������� �� ������ ��� � ����� ������ � ������ �� ��� �� ����� ����� ���������������� [40].
- ���������� ������ (Systems Engineering)
- ��������������� ������� ��������� ������, ������������ �� ���������� ������������ ������� ���� ����������� � ��� ����������� [40].
[1] ����� � ��������� ������ ��� ������������ ������������ ������� ������������� ������������ ������������, ������������ �������� �����. ��� ���� � �������� �������� �������� ������������ ����������� ������������� ��, ���������� � [1].