Программная инженерия — научная и инженерная дисциплина
Термин программная инженерия впервые произнесен на научной конференции НАТО в 1968 г. С тех пор на протяжении 40 лет понятие постепенно менялось и развивалось в среде программирование. Программирование вначале считалось искусством одиночек, потом техникой и наукой, а теперь оно переходит к инженерно...
Збережено в:
Дата: | 2008 |
---|---|
Автор: | |
Формат: | Стаття |
Мова: | Russian |
Опубліковано: |
Інститут кібернетики ім. В.М. Глушкова НАН України
2008
|
Назва видання: | Кибернетика и системный анализ |
Теми: | |
Онлайн доступ: | http://dspace.nbuv.gov.ua/handle/123456789/72060 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Цитувати: | Программная инженерия — научная и инженерная дисциплина / Е.М. Лаврищева // Кибернетика и системный анализ. — 2008. — № 3. — С. 19-28. — Бібліогр.: 9 назв. — рос. |
Репозитарії
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-72060 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-720602014-12-17T03:01:52Z Программная инженерия — научная и инженерная дисциплина Лаврищева, Е.М. Кибернетика Термин программная инженерия впервые произнесен на научной конференции НАТО в 1968 г. С тех пор на протяжении 40 лет понятие постепенно менялось и развивалось в среде программирование. Программирование вначале считалось искусством одиночек, потом техникой и наукой, а теперь оно переходит к инженерной деятельности, приближающей процесс разработки к конвейерному производству по принципу сборки из готовых "деталей". 2008 Article Программная инженерия — научная и инженерная дисциплина / Е.М. Лаврищева // Кибернетика и системный анализ. — 2008. — № 3. — С. 19-28. — Бібліогр.: 9 назв. — рос. http://dspace.nbuv.gov.ua/handle/123456789/72060 681.3.06 ru Кибернетика и системный анализ Інститут кібернетики ім. В.М. Глушкова НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
Russian |
topic |
Кибернетика Кибернетика |
spellingShingle |
Кибернетика Кибернетика Лаврищева, Е.М. Программная инженерия — научная и инженерная дисциплина Кибернетика и системный анализ |
description |
Термин программная инженерия впервые произнесен на научной конференции НАТО в 1968 г. С тех пор на протяжении 40 лет понятие постепенно менялось и развивалось в среде программирование. Программирование вначале считалось искусством одиночек, потом техникой и наукой, а теперь оно переходит к инженерной деятельности, приближающей процесс разработки к конвейерному производству по принципу сборки из готовых "деталей". |
format |
Article |
author |
Лаврищева, Е.М. |
author_facet |
Лаврищева, Е.М. |
author_sort |
Лаврищева, Е.М. |
title |
Программная инженерия — научная и инженерная дисциплина |
title_short |
Программная инженерия — научная и инженерная дисциплина |
title_full |
Программная инженерия — научная и инженерная дисциплина |
title_fullStr |
Программная инженерия — научная и инженерная дисциплина |
title_full_unstemmed |
Программная инженерия — научная и инженерная дисциплина |
title_sort |
программная инженерия — научная и инженерная дисциплина |
publisher |
Інститут кібернетики ім. В.М. Глушкова НАН України |
publishDate |
2008 |
topic_facet |
Кибернетика |
url |
http://dspace.nbuv.gov.ua/handle/123456789/72060 |
citation_txt |
Программная инженерия — научная и инженерная дисциплина / Е.М. Лаврищева // Кибернетика и системный анализ. — 2008. — № 3. — С. 19-28. — Бібліогр.: 9 назв. — рос. |
series |
Кибернетика и системный анализ |
work_keys_str_mv |
AT lavriŝevaem programmnaâinženeriânaučnaâiinženernaâdisciplina |
first_indexed |
2025-07-05T20:54:59Z |
last_indexed |
2025-07-05T20:54:59Z |
_version_ |
1836841853892165632 |
fulltext |
ÓÄÊ 681.3.06
Å.Ì. ËÀÂÐÈÙÅÂÀ
ÏÐÎÃÐÀÌÌÍÀß ÈÍÆÅÍÅÐÈß — ÍÀÓ×ÍÀß
È ÈÍÆÅÍÅÐÍÀß ÄÈÑÖÈÏËÈÍÀ
Êëþ÷åâûå ñëîâà: ïðîãðàììíàÿ èíæåíåðèÿ, íàó÷íàÿ äèñöèïëèíà, èíæåíåðíàÿ
äèñöèïëèíà, òåîðèÿ, ìåòîäû ïðîãðàììèðîâàíèÿ, ïðîãðàììíûå îáúåêòû, ÿäðî
çíàíèé SWEBOK (Software Engineering Body of Knowledge) è PMBOK (Project
Management Body of Knowledge), áàçîâûé ïðîöåññ, èíôðàñòðóêòóðà, ñòàíäàðòû.
ÂÂÅÄÅÍÈÅ
Òåðìèí ïðîãðàììíàÿ èíæåíåðèÿ âïåðâûå ïðîèçíåñåí íà íàó÷íîé êîíôåðåíöèè
ÍÀÒÎ â 1968 ã. Ñ òåõ ïîð íà ïðîòÿæåíèè 40 ëåò ýòî ïîíÿòèå ïîñòåïåííî ìåíÿ-
ëîñü è ðàçâèâàëîñü â ñðåäå ïðîãðàììèðîâàíèÿ. Ïðîãðàììèðîâàíèå âíà÷àëå ñ÷è-
òàëîñü èñêóññòâîì îäèíî÷åê, ïîòîì òåõíèêîé è íàóêîé, à òåïåðü îíî ïåðåõîäèò
ê èíæåíåðíîé äåÿòåëüíîñòè, ïðèáëèæàþùåé ïðîöåññ ðàçðàáîòêè ê êîíâåéåðíîìó
ïðîèçâîäñòâó ïî ïðèíöèïó ñáîðêè èç ãîòîâûõ «äåòàëåé» òèïà reuse, application,
asset provision è äð.  êà÷åñòâå ñðåäñòâ àâòîìàòèçàöèè ïðîèçâîäñòâà ïðîãðàì-
ìíûõ ïðîäóêòîâ âûñòóïàþò èíñòðóìåíòàëüíî–òåõíîëîãè÷åñêèå ñèñòåìû è ñðåäû.
 ðåçóëüòàòå ìíîãîëåòíåé äåÿòåëüíîñòè êîëëåêòèâîâ ïðîãðàììèñòîâ íàêîïè-
ëîñü áîëüøîå êîëè÷åñòâî ïðîãðàìì, ñðåäñòâ, à òàêæå çíàíèé è îïûòà ñîçäàíèÿ êîì-
ïüþòåðíûõ ïðîãðàìì. Ýòè çíàíèÿ îòîáðàæåíû â ïðîãðàììíûõ ïðîäóêòàõ ìàññîâî-
ãî ïðèìåíåíèÿ è ïðåäñòàâëåíû ìíîæåñòâîì òåîðåòè÷åñêèõ è ïðèêëàäíûõ ìåòîäîâ,
ñðåäñòâ, ïðèíöèïîâ, ïðàâèë, à òàêæå ïðîöåññîâ ïðîèçâîäñòâà ñèñòåì ñ ó÷àñòèåì
ïðîãðàììèñòîâ è èíæåíåðîâ (ïëàíîâèêîâ, êîíòðîëåðîâ ïðîãðàììíûõ ïðîäóêòîâ è
ïðîöåññîâ, òåñòîâèêîâ, èíæåíåðîâ ïî êà÷åñòâó è äð.).  ðàìêàõ äåÿòåëüíîñòè òåîðå-
òèêîâ è ïðàêòèêîâ ñôîðìèðîâàëèñü ôîðìàëüíûå ìåòîäû äîêàçàòåëüñòâà, âåðèôèêà-
öèè è òåñòèðîâàíèÿ ïðîãðàìì, ìàòåìàòè÷åñêèå ìîäåëè íàäåæíîñòè è ìåòîäû
îöåíèâàíèÿ ïîêàçàòåëåé êà÷åñòâà ïðîãðàììíûõ ïðîäóêòîâ.
Âñå ýòî îáóñëîâèëî íåîáõîäèìîñòü ñèñòåìàòèçèðîâàòü ïîëó÷åííûå çíàíèÿ è
îïðåäåëèòü èõ â âèäå ñàìîñòîÿòåëüíîé äèñöèïëèíû (ïðåäìåòà) äëÿ ïîíèìàíèÿ åå
âñåìè êîìïüþòåðíûìè ñîîáùåñòâàìè, îòäåëüíûìè ïðîãðàììèñòàìè è èíæåíåðàìè
ïðîãðàììíîãî îáåñïå÷åíèÿ (ÏÎ). Ñïåöèàëüíî ñîçäàííûé êîìèòåò ñïåöèàëèñòîâ ïî
èíôîðìàòèêå ïðè àññîöèàöèè âû÷èñëèòåëüíîé òåõíèêè ACM (Association for
Computing Machinery) è IEEE Computer Society, êîìïüþòåðíîå ñîîáùåñòâî èíñòè-
òóòà èíæåíåðîâ ïî ýëåêòðîòåõíèêå è ýëåêòðîíèêå IEEE (Institute of Electrical and
Electronics Engineers), ñôîðìèðîâàëè áàçîâîå ÿäðî çíàíèé ïî ïðîãðàììíîé èíæåíå-
ðèè SWEBOK (Software Engineering body of Knowledge), â êîòîðîì â êîíöåíòðèðî-
âàííîì âèäå ïðåäñòàâëåíî êîíöåïòóàëüíîå ñîäåðæàíèå äåñÿòè áàçîâûõ îáëàñòåé
(knowledge areas) è äåôèíèöèÿ ïðîãðàììíîé èíæåíåðèè (ÏÈ) [1–4].
Îïðåäåëåíèå 1. Ïðîãðàììíàÿ èíæåíåðèÿ (Software Engineering) — ñèñòåìà
ìåòîäîâ, ñïîñîáîâ è äèñöèïëèíû ïëàíèðîâàíèÿ, ðàçðàáîòêè, ýêñïëóàòàöèè è ñîïðî-
âîæäåíèÿ ÏÎ, ñïîñîáíàÿ ê ìàññîâîìó ïðîèçâîäñòâó. Ýòî èíæåíåðíàÿ ñòîðîíà äèñ-
öèïëèíû, îíà îõâàòûâàåò âñå àñïåêòû ñîçäàíèÿ ÏÎ, íà÷èíàÿ îò ôîðìóëèðîâàíèÿ
òðåáîâàíèé, ðàçðàáîòêè ïðîäóêòà, ñîïðîâîæäåíèÿ è äî åãî ñíÿòèÿ ñ ýêñïëóàòàöèè.
Íà íàø âçãëÿä, ýòà äåôèíèöèÿ SWEBOK ñóæàåò ñóùíîñòü ïîíÿòèÿ ïðîãðàì-
ìíîå îáåñïå÷åíèå êàê îáúåêòà ÏÈ è ñàì ïðåäìåò. Ïîýòîìó ïîïûòàåìñÿ îïðåäåëèòü
ïðîãðàììíóþ èíæåíåðèþ è åå îáúåêòû â áîëåå øèðîêîì ñìûñëå, ïðèâëåêàÿ àñïåê-
òû è àðãóìåíòû, êîòîðûå õàðàêòåðèçóþò ãëóáèííûå âîïðîñû ÏÈ è ïîçâîëÿþò
îïðåäåëèòü åå êàê íàó÷íóþ è èíæåíåðíóþ äèñöèïëèíó.
ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3 19
�Å.Ì. Ëàâðèùåâà, 2008
Èçâåñòíî, ÷òî ëþáàÿ íàóêà —
ýòî ñèñòåìà ïðîâåðåííûõ ïðàêòèêîé
çíàíèé, êîòîðûå îòîáðàæàþò åå îá-
ùèå âîïðîñû, ïîíÿòèÿ è çàêîíîìåð-
íîñòè èõ ðàçâèòèÿ. Îíà óñòàíàâëèâà-
åò ñâÿçè ñ äðóãèìè íàóêàìè è âëèÿåò
íà èõ ðàçâèòèå. Îòíîñèòåëüíî ÏÈ
ìîæíî ñêàçàòü, ÷òî îíà èíòåãðèðîâà-
ëà â ñåáå ïðèíöèïû ìàòåìàòèêè è
îñíîâíûå ïîëîæåíèÿ òàêèõ ôóíäà-
ìåíòàëüíûõ íàóê: òåîðèÿ àëãîðèò-
ìîâ, ìàòåìàòè÷åñêàÿ ëîãèêà, òåîðèÿ
óïðàâëåíèÿ, òåîðèÿ ìíîæåñòâ, äîêà-
çàòåëüñòâà è äð. (ðèñ. 1).
Ýòè íàóêè ñîçäàþò òåîðåòè-
÷åñêèé ôóíäàìåíò ïðîãðàììíîé
èíæåíåðèè, íåîáõîäèìûé äëÿ ïî-
ñòðîåíèÿ àáñòðàêöèé ïðîãðàìì ñ
ïîìîùüþ áàçîâûõ ïîíÿòèé è ïðèíöèïîâ, êîòîðûå ïðèâåäåíû íèæå ïî êàæäîé èç
ôóíäàìåíòàëüíûõ íàóê:
� â òåîðèè àëãîðèòìîâ — íîðìàëüíûå àëãîðèòìû, âû÷èñëèòåëüíûå ôóíêöèè,
ìàøèíà Òüþðèíãà, àëãîðèòìè÷åñêèå àëãåáðû, ãðàôû-ñõåìû, ìîäåëè àëãîðèòìîâ è
ïðîãðàìì è ò.ï.;
� â ìàòåìàòè÷åñêîé ëîãèêå — ïðàâèëà ëîãè÷åñêèõ èñ÷èñëåíèé è âûñêàçûâà-
íèé, ñïîñîáñòâóþùèõ ôîðìàëüíîìó îïðåäåëåíèþ ïðàâèëüíûõ óìîçàêëþ÷åíèé,
à òàêæå ëîãèêî-àëãåáðàè÷åñêèå ñïåöèôèêàöèè ïðîãðàìì;
� â òåîðèè äîêàçàòåëüñòâà — ìàòåìàòè÷åñêèé âûâîä òåîðåì è ïðîãðàìì ñ ïî-
ìîùüþ àêñèîì è óòâåðæäåíèé, òåîðèÿ íåïðîòèâîðå÷èâîñòè è àëãîðèòìè÷åñêè íå-
ðàçðåøèìûõ ïðîáëåì, òåîðèÿ âåðèôèêàöèè ïðîãðàìì (VDM, RAISE, Z, ìåòîäû Õî-
àðà, Äåéêñòðû è äð.);
� òåîðèÿ ìíîæåñòâ — êâàíòîðû âñåîáùíîñòè, ñóùåñòâîâàíèÿ è îïåðàöèè íàä
ìíîæåñòâàìè, êîòîðûå ïðèìåíÿþòñÿ äëÿ ôîðìàëüíîãî ïðåäñòàâëåíèÿ àêñèîì äëÿ
ðàçíûõ ñîâîêóïíîñòåé ïðîãðàììíûõ îáúåêòîâ;
� â òåîðèè óïðàâëåíèÿ — ïðèíöèïû, ìåòîäû è îáùèå çàêîíû ïëàíèðîâàíèÿ è
óïðàâëåíèÿ â öåëÿõ èíæåíåðíîãî ïîëó÷åíèÿ è îáðàáîòêè èíôîðìàöèè â ëþáûõ êè-
áåðíåòè÷åñêèõ è óïðàâëåí÷åñêèõ ñèñòåìàõ.
Êðîìå ýòîãî ôóíäàìåíòà, ê ñèñòåìå çíàíèé ÏÈ îòíîñÿòñÿ [5, 6]:
� ôîðìàëüíûå ìåòîäû ïðîãðàììèðîâàíèÿ — ñïåöèôèêàöèÿ ïðîãðàìì, èõ äîêàçà-
òåëüñòâî, âåðèôèêàöèÿ è òåñòèðîâàíèå, à òàêæå ìàòåìàòè÷åñêèå ìîäåëè íàäåæíîñòè è ò.ï.;
� ïðèêëàäíûå ìåòîäû, à èìåííî: ñðåäñòâà, ïðèíöèïû, ïðàâèëà è ïðîöåññû
æèçíåííîãî öèêëà (ÆÖ) ïðîèçâîäñòâà êîìïüþòåðíûõ ñèñòåì êàê èíñòðóìåíòîâ
êîëëåêòèâíîé ðàçðàáîòêè áîëüøèõ ïðîãðàììíûõ ïðîåêòîâ;
� ìåòîäû óïðàâëåíèÿ êîëëåêòèâàìè, à èìåííî: ïëàíèðîâàíèå ñåòåâûõ ãðàôè-
êîâ, êîíòðîëü ðàáîò íà ïðîöåññàõ ÆÖ, èçìåðåíèå è îöåíèâàíèå êà÷åñòâà ðàçðàáîò-
êè ïðîìåæóòî÷íîãî è êîíå÷íîãî ïðîäóêòîâ ïðîèçâîäñòâà, ðåãóëèðîâàíèå ñðîêîâ è
ñòîèìîñòè èõ èçãîòîâëåíèÿ è ñåðòèôèêàöèè.
ÏÈ âõîäèò â ñîñòàâ êîìïüþòåðíîé íàóêè (Ñomputer science), ïðååìíèöû íàóêè
ïðîãðàììèðîâàíèÿ âêëþ÷èëà âñå åå íàêîïëåííûå òåîðåòè÷åñêèå è ïðèêëàäíûå äîñ-
òèæåíèÿ, ðàçâèëà íîâûå ìåòîäû óïðàâëåíèÿ êîëëåêòèâíûì òðóäîì ðàçðàáîò÷èêîâ è
ìåòîäû èçìåðåíèÿ è îöåíèâàíèÿ ðåçóëüòàòîâ èõ äåÿòåëüíîñòè. Îíà ñôîðìèðîâà-
ëàñü êàê íàó÷íî-èíæåíåðíàÿ äèñöèïëèíà. Ïîýòîìó ïðèâåäåííîå îïðåäåëåíèå 1 åñòü
óçêèì êàê â ñìûñëå ïðåäìåòà ðàçðàáîòêè ÏÎ, òàê è ñàìîé åå äåôèíèöèè. Äàäèì
îïðåäåëåíèå 2, êîòîðîå áîëåå øèðîêîå è ñïîñîáñòâóåò ðàñêðûòèþ ñìûñëà íàó÷íîé
è èíæåíåðíîé ÷àñòè ÏÈ.
20 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3
Ïðîãðàììíàÿ
èíæåíåðèÿ
Òåîðèÿ
äîêàçà-
òåëüñòâà
Òåî
ðèÿ
ì
íîæ
åñ
òâ
Òåîðèÿ
àëãîðèò-
ìîâ
Òåîðèÿ
óïðàâëå-
íèèÿ
Ìàòåìàòè-
÷åñêàÿ
ëîãèêà
Ðèñ. 1. Òåîðåòè÷åñêèé ôóíäàìåíò ÏÈ
Îïðåäåëåíèå 2. Ïðîãðàììíàÿ èíæåíåðèÿ — ýòî ñèñòåìà ìåòîäîâ è ñðåäñòâ
ïðîãðàììèðîâàíèÿ, èíæåíåðèè ïëàíèðîâàíèÿ è óïðàâëåíèÿ êîëëåêòèâíûì ïðîöåñ-
ñîì ïðîèçâîäñòâà êîìïüþòåðíûõ ïðîãðàììíûõ ñèñòåì (ÏÎ, ïðèëîæåíèé, ñåìåéñòâ
ñèñòåì, ïðîãðàììíûõ ïðîåêòîâ), ìåòîäû èçìåðåíèÿ è îöåíèâàíèÿ ðàçëè÷íûõ èõ õà-
ðàêòåðèñòèê íà ñîîòâåòñòâèå òðåáîâàíèÿì çàêàç÷èêà. Ïðîèçâîäñòâî îðèåíòèðîâàíî
íà èñïîëüçîâàíèå áàçîâûõ îáúåêòîâ (ìîäóëåé, êîìïîíåíòîâ, àñïåêòîâ, ñåðâèñîâ è
ò.ï.) è àâòîìàòèçèðîâàííûå îïåðàöèè, áëèçêèå ê êîíâåéåðíîìó ïðîèçâîäñòâó.
Ïðè äàííîì òîëêîâàíèè ÏÈ èìååòñÿ â âèäó ñëîæèâøàÿñÿ òåîðèÿ ïðîãðàììè-
ðîâàíèÿ è îáðàçîâàâøàÿñÿ èíæåíåðèÿ óïðàâëåíèÿ èçãîòîâëåíèåì ïðîãðàììíûõ
ïðîäóêòîâ (ÏÏ) ïóòåì àäàïòàöèè ê çàäà÷àì èçãîòîâëåíèÿ ÏÏ îáùèõ ìåòîäîâ
óïðàâëåíèÿ (êðèòè÷åñêîãî ïóòè,
PERT, ïëàí-ãðàôèêîâ), ïëàíèðîâàíèÿ
è ðàñïðåäåëåíèÿ ðàáîò ìåæäó èñïîë-
íèòåëÿìè ïðîåêòà, îöåíêè âëîæåííûõ
èìè òðóäîçàòðàò è äîñòèãíóòîãî êà÷åñ-
òâà. Ïîýòîìó åñòåñòâåííî ïðîãðàì-
ìíóþ èíæåíåðèþ ðàññìàòðèâàòü êàê
íàó÷íóþ è èíæåíåðíóþ äèñöèïëèíû
èçãîòîâëåíèÿ ïðîãðàììíûõ ïðîäóêòîâ
(ðèñ. 2).
Íà ïåðåñå÷åíèè îáëàñòåé äèñöèïëèí (îâàëîâ íà ðèñ. 2) íàõîäèòñÿ òåîðèÿ è
ïðàêòèêà ïîñòðîåíèÿ ñëîæíûõ ïðîãðàììíûõ îáúåêòîâ. Òåîðèÿ ïîñòðîåíèÿ — ýòî
òåîðåòè÷åñêîå ïðîãðàììèðîâàíèå ñ ïîìîùüþ ñðåäñòâ àïïàðàòà àáñòðàêòíûõ ñïåöè-
ôèêàöèé (ãðàôîâûõ è ñòðóêòóðíûõ ñõåì, ôóíêöèé è êîìïîçèöèé, äåñêðèïòîðîâ è
íîìèíàöèé äàííûõ, use case-äèàãðàìì è äð.), à òàêæå ôîðìàëüíàÿ ïðîâåðêà ïðà-
âèëüíîñòè ñïåöèôèêàöèé ìåòîäàìè äîêàçàòåëüñòâà, âåðèôèêàöèè è îöåíêè íàäåæ-
íîñòè. Ïðàêòèêà ïîñòðîåíèÿ — ýòî ïðèìåíåíèå òåîðåòè÷åñêèõ è ñèñòåìíûõ ìåòî-
äîâ ïðîãðàììèðîâàíèÿ íà ïðîöåññàõ ïðîâåðêè (âåðèôèêàöèÿ, âàëèäàöèÿ, òåñòèðî-
âàíèå) ñïåöèôèêàöèé îáúåêòîâ, ïîñëåäîâàòåëüíîãî èõ ïðåîáðàçîâàíèÿ ê
âûõîäíîìó êîäó è èíæåíåðèÿ îöåíèâàíèÿ è ñåðòèôèêàöèè ðàçíûõ ïîêàçàòåëåé êà-
÷åñòâà (íàäåæíîñòü, ïðîèçâîäèòåëüíîñòü, ýôôåêòèâíîñòü è ò.ï.) ÏÏ.
ÏÐÎÃÐÀÌÌÍÀß ÈÍÆÅÍÅÐÈß ÊÀÊ ÍÀÓ×ÍÀß ÄÈÑÖÈÏËÈÍÀ
 îòëè÷èå îò ìàòåìàòè÷åñêîé èëè äðóãîé ôóíäàìåíòàëüíîé íàóêè, öåëüþ êîòî-
ðûõ åñòü ïîëó÷åíèå íîâûõ çíàíèé äëÿ ðåøåíèÿ ñîîòâåòñòâóþùèõ çàäà÷, â ÏÈ
çíàíèÿ — ýòî îáùàÿ òåîðèÿ ïîñòðîåíèÿ ïðîãðàìì äëÿ êîìïüþòåðîâ, îðèåíòèðî-
âàííàÿ íà èçãîòîâëåíèå ïðîäóêòà äëÿ ïîëó÷åíèÿ îò íåãî ðåçóëüòàòà.
Íàóêà ÏÈ — ýòî òåîðåòè÷åñêèå, ôîðìàëüíûå ìåòîäû è ñðåäñòâà ïîñòðîåíèÿ
ñëîæíûõ ïðîãðàììíûõ îáúåêòîâ. Ïîñòðîåíèå — ýòî àíàëèç ïðåäìåòíîé îáëàñòè,
ïðîåêòèðîâàíèå è îáðàçîâàíèå âûõîäíîãî êîäà äëÿ åãî âûïîëíåíèÿ íà êîìïüþòåðå.
Èíòåãðèðîâàííûå â ïðîãðàììíóþ èíæåíåðèþ ôóíäàìåíòàëüíûå íàóêè, êîòîðûå
ïðèâåäåííûå íà ðèñ. 1, à òàêæå íàóêà ïðîãðàììèðîâàíèÿ îáðàçóþò åå îáùèé òåîðå-
òè÷åñêèé ôóíäàìåíò, êîòîðûé ïðåäîñòàâëÿåò áàçîâûå ïîíÿòèÿ, îáúåêòû è ôîðìàëü-
íûå ìåõàíèçìû, íåîáõîäèìûå ïðè ñîçäàíèè îáùèõ è ñïåöèôè÷åñêèõ îñîáåííîñòåé
ïðîãðàììíûõ ïðîäóêòîâ â ñîîòâåòñòâèè ñ çàäàííûìè ê íåìó òðåáîâàíèÿìè. Êàê
íàóêà ÏÈ âêëþ÷àåò:
1) îñíîâíûå ïîíÿòèÿ è îáúåêòû;
2) òåîðèþ ïðîãðàììèðîâàíèÿ è ìåòîäû óïðàâëåíèÿ èçãîòîâëåíèåì ÏÏ;
3) ñðåäñòâà è èíñòðóìåíòû ïðîöåññîâ ðàçðàáîòêè ïðîäóêòà.
1. Îñíîâíûå ïîíÿòèÿ ÏÈ — ýòî äàííûå è èõ ñòðóêòóðû, ôóíêöèè è êîìïîçè-
öèè, áàçîâûå îáúåêòû (ìîäóëü, êîìïîíåíò, êàðêàñ, ïîâòîðíî èñïîëüçóåìûé êîìïî-
íåíò (ÏÈÊ) è äð.) è öåëåâûå îáúåêòû (ÏÎ, ïðîãðàììíàÿ ñèñòåìà, ñåìåéñòâî ñèñ-
òåì, ïðîãðàììíûé ïðîåêò, ñëîæíûå ïðîãðàììíûå ñèñòåìû).
ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3 21
Ðèñ. 2. Íàó÷íàÿ è èíæåíåðíàÿ äèñöèïëèíû ÏÈ
Ïðîñòûå îáúåêòû ðàçðàáàòûâàþòñÿ ñ ïîìîùüþ ýëåìåíòàðíûõ îïåðàöèé ôîðìàëüíî-
ãî èõ îïèñàíèÿ, à èçãîòîâëåíèå èç íèõ öåëåâûõ îáúåêòîâ îñóùåñòâëÿåòñÿ ïðèìåíåíèåì
èíæåíåðíûõ ìåòîäîâ óïðàâëåíèÿ êîëëåêòèâîì, èõ ðàáîòàìè, ñðîêàìè è ñòîèìîñòüþ.
Ïðèâåäåì îïðåäåëåíèå öåëåâûõ îáúåêòîâ ÏÈ [3, 6, 7].
Ïðîãðàììíàÿ ñèñòåìà (ÏÑ, Application) — êîìïëåêñ èíòåãðèðîâàííûõ ïðî-
ãðàìì è ñðåäñòâ, êîòîðûå ðåàëèçóþò íàáîð ôóíêöèé íåêîòîðîé ïðåäìåòíîé îáëàñ-
òè (ÏðÎ) â çàäàííîé ñðåäå.  êîìïëåêñ ìîãóò âõîäèòü: ÏÎ, ïðèêëàäíûå ñèñòåìû
(çàðïëàòà, ó÷åò è äð.), îáùåñèñòåìíûå êîìïîíåíòû (òðàíñëÿòîð, ðåäàêòîð, ñèñòåìà
óïðàâëåíèÿ áàçàìè äàííûõ (ÑÓÁÄ) è ò.ï.), ñèñòåìû çàùèòû, îáåñïå÷åíèÿ áåçîïàñ-
íîñòè ôóíêöèîíèðîâàíèÿ è äð. Ñïîñîá èçãîòîâëåíèÿ — èíæåíåðèÿ ÏÑ (application
engineering), êîòîðàÿ âêëþ÷àåò ïðîöåññû ÆÖ, ìåòîäû ðàçðàáîòêè, óïðàâëåíèÿ, îöå-
íèâàíèÿ ïðîäóêòîâ è ïðîöåññîâ äëÿ èõ âîçìîæíîãî óñîâåðøåíñòâîâàíèÿ.
Ïðîãðàììíîå îáåñïå÷åíèå — ñîâîêóïíîñòü ïðîãðàììíûõ ñðåäñòâ, êîòîðûå
ðåàëèçóþò ôóíêöèè êîìïüþòåðíîé ñèñòåìû (èëè ôóíêöèè àïïàðàòíî-ïðîãðàììíîé
ñèñòåìû), âêëþ÷àÿ îáùåñèñòåìíûå ñðåäñòâà (íàïðèìåð, îïåðàöèîííàÿ ñèñòåìà
(ÎÑ), ÑÓÁÄ, ñèñòåìû çàùèòû è ò.ï.), ïîñòðîåííûå ïîäñèñòåìû êîíòðîëÿ (ïîêàçàòå-
ëåé òåõíîëîãè÷åñêèõ ïðîöåññîâ, îáðàáîòêè ñèãíàëîâ) è ïðèêëàäíûå ïðîãðàììíûå
ñèñòåìû. Òàê, ôóíêöèè íåêîòîðîé ÎÑ — ýòî óïðàâëåíèå çàäà÷àìè, ïðîãðàììàìè,
äàííûìè è ò.ï. ÏÎ ìîæåò âõîäèòü â ñîñòàâ ÏÑ èëè áûòü èäåíòè÷íûì ôóíêöèÿì
ïðîãðàììíîé ñèñòåìû. Ñïîñîá èçãîòîâëåíèÿ — èíæåíåðèÿ ðåàëèçàöèè çàäà÷ ÏÎ.
Ñåìåéñòâî ñèñòåì (systems family) — ñîâîêóïíîñòü ÏÑ ñ îáùèì (íåèçìåííûì
äëÿ âñåõ ÷ëåíîâ ñåìåéñòâà) è óïðàâëÿåìûì èçìåíÿåìûì íàáîðîì åå õàðàêòåðèñòèê,
êîòîðûå óäîâëåòâîðÿþò îïðåäåëåííûì ïîòðåáíîñòÿì ïðèêëàäíîé îáëàñòè (äîìå-
íó). Ñïîñîá èçãîòîâëåíèÿ — èíæåíåðèÿ äîìåíà (Domain Engineering) èëè êîíâå-
éåðíîå ïðîèçâîäñòâî îäíîòèïíûõ ÏÏ ñ åäèíîé ñõåìîé íà îñíîâå êàðêàñà è ñïåöè-
àëüíî ðàçðàáîòàííûõ îòäåëüíûõ ÷ëåíîâ ñåìåéñòâà è äðóãèõ ãîòîâûõ ïðîãðàììíûõ
ðåñóðñîâ ñ ïîìîùüþ áàçîâîãî ïðîöåññà èëè ëèíåéêè ïðîäóêòà (product line).
Ïðîãðàììíûé ïðîåêò — óíèêàëüíûé è èíòåãðèðîâàííûé ïðîäóêò, â êîòîðîì
îòîáðàæåíû ñîâîêóïíîñòè ðåàëèçîâàííûõ öåëåé, çàäà÷ è ðåçóëüòàòîâ äåÿòåëüíîñòè,
óäîâëåòâîðÿþùèõ òðåáîâàíèÿì çàêàç÷èêà ïðîåêòà. Ñïîñîá èçãîòîâëåíèÿ — èíæå-
íåðèÿ ðàçðàáîòêè è ìåíåäæìåíòà ïðîåêòà.
Ñëîæíûå ïðîãðàììíûå îáúåêòû — ñîâîêóïíîñòü âçàèìîñâÿçàííûõ öåëåâûõ
îáúåêòîâ ðàçíûõ òèïîâ, êîòîðûå âûïîëíÿþò íåîáõîäèìûå ôóíêöèè â òàêîé ñèñòå-
ìå, ïðåäñòàâëåííûå âíîâü ðàçðàáîòàííûìè ïðîñòûìè îáúåêòàìè èëè âûáðàííûìè
ñ ðåïîçèòàðèÿ ãîòîâûõ ðåñóðñîâ ÏÈ.
2. Òåîðèÿ ïðîãðàììèðîâàíèÿ — ýòî ìíîæåñòâî ìåòîäîâ, ÿçûêîâ è ñðåäñòâ îïè-
ñàíèÿ (ñïåöèôèêàöèè) è ïðîåêòèðîâàíèÿ öåëåâûõ îáúåêòîâ, à òàêæå ìåòîäîâ èõ äîêà-
çàòåëüñòâà, âåðèôèêàöèè è òåñòèðîâàíèÿ. Êðîìå òîãî, â ÏÈ ïðèâëå÷åíû ôîðìàëüíûå
ìåòîäû óïðàâëåíèÿ ïðîåêòîì (ïåðñîíàëîì, ìàòåðèàëüíûìè è ôèíàíñîâûìè ðåñóðñà-
ìè) è îòäåëüíûìè åãî ïîêàçàòåëÿìè [6–8]. Ìåòîäû ïðîãðàììèðîâàíèÿ â ÏÈ ïðåäñòàâ-
ëåíû íà ðèñ. 3 è âêëþ÷àþò:
� ìåòîäû òåîðåòè÷åñêèå
(àëãåáðàè÷åñêèé, àëãîðèòìè-
÷åñêèé, VDM, RAISE è äð.) è
ïðèêëàäíûå (îáúåêòíûé, êîì-
ïîíåíòíûé, àñïåêòíûé è äð.),
ïðåäíàçíà÷åííûå äëÿ ïðîåêòè-
ðîâàíèÿ ðàçíûõ òèïîâ öåëå-
âûõ îáúåêòîâ;
� ìåòîäû ïðîâåðêè ïðà-
âèëüíîñòè ïðîãðàìì ôîð-
ìàëüíûìè ïðîöåäóðàìè
(óòâåðæäåíèÿ, âûâîäà, äîêà-
çàòåëüñòâà);
22 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3
Òåîðèÿ
ïðîãðàììèðîâàííèÿ
Òåîðåòè÷åñêèå
ìåòîäû
ïðîãðàììèðîâàíèÿ
Ïðèêëàäíûå
ìåòîäû
ïðîãðàììèðîâàíèÿ
Ìåòîäû
ïðîâåðêè
ïðàâèëüíîñòè
Ìåòîäû
îöåíèâàíèÿ
ðåçóëüòàòîâ
ïðîåêòèðîâàíèÿ
Ìåòîäû
óïðàâëåíèÿ
ïðîöåññàìè
ïðîåêòà
Ðèñ. 3. Ñîâîêóïíîñòü ìåòîäîâ ÏÈ
� ìåòîäû îöåíèâàíèÿ ðåçóëüòàòîâ ïîñëåäîâàòåëüíîãî ïðîåêòèðîâàíèÿ (ïðîìå-
æóòî÷íûõ ðàáî÷èõ ïðîäóêòîâ) íà ïðîöåññàõ ïðîåêòà è îöåíêè ïîêàçàòåëåé êà÷åñòâà
êîíå÷íîãî ïðîäóêòà (íàäåæíîñòè, òî÷íîñòè, ïðîèçâîäèòåëüíîñòè è ò.ï.);
� ìåòîäû óïðàâëåíèÿ ïëàíàìè ðàáîò è êîíòðîëÿ ïðîìåæóòî÷íûõ ðåçóëüòàòîâ
íà ïðîöåññàõ ïðîåêòà, à òàêæå äîïîëíèòåëüíûå ðàñ÷åòíûå ìåòîäû îöåíêè òðóäîçàò-
ðàò íà êàæäóþ ðàáîòó, åå ñòîèìîñòü è äð.
3. ßçûêè, ñðåäñòâà è èíñòðóìåíòû ÏÈ. Âñå îáúåêòû, êàê àðòåôàêòû ÏÏ,
âêëþ÷àþò ðàçíîãî ðîäà îïèñàíèÿ: òðåáîâàíèÿ ê ðàçðàáîòêå, ñîãëàñîâàííûå ñ çàêàç-
÷èêîì, àðõèòåêòóðó, ñòðóêòóðû äàííûõ, ñïåöèôèêàöèè ïðîãðàìì è ò.ï.
Ïðîåêòèðîâàíèå öåëåâûõ îáúåêòîâ îñóùåñòâëÿåòñÿ ñ ïîìîùüþ ñîâðåìåííûõ
ÿçûêîâ, â òîì ÷èñëå âèçóàëüíûõ (íàïðèìåð, Ñ++, Java, Pascal, UML è äð.), è ñîîòâå-
òñòâóþùèõ èíñòðóìåíòàëüíûõ ñðåä, êîòîðûå ñîäåðæàò íåîáõîäèìûå ÿçûêîâûå
ïðåîáðàçîâàòåëè è èíñòðóìåíòû ïîääåðæêè àðòåôàêòîâ ïðîöåññà ðàçðàáîòêè. Ê òà-
êèì ñðåäñòâàì òàêæå îòíîñÿòñÿ øàáëîíû, êàðêàñû, äèàãðàììû ïîòîêîâ äàííûõ,
êëàññîâ, ïîâåäåíèÿ è ò.ï.
Ïðîâåðêà ïðàâèëüíîñòè öåëåâûõ îáúåêòîâ îñóùåñòâëÿåòñÿ ìåòîäàìè ïðîãðàì-
ìèðîâàíèÿ è ñîîòâåòñòâóþùèìè èíñòðóìåíòàìè, ïðèñïîñîáëåííûìè äëÿ ðàçðàáîò-
êè ðàçíûõ çàäà÷ ïðîåêòà â ñîîòâåòñòâóþùåé ñðåäå ïðîåêòèðîâàíèÿ. Ãîòîâûé ïðî-
äóêò ïðîâåðÿåòñÿ íà ñîîòâåòñòâèå ðåàëèçîâàííûõ ôóíêöèé çàäàííûì òðåáîâàíèÿì,
òåñòèðóåòñÿ ñ ïîìîùüþ ñïåöèàëüíûõ ìåòîäèê, à òàêæå ïîäâåðãàåòñÿ èçìåðåíèþ è
îöåíèâàíèþ äëÿ ïîëó÷åíèÿ ïîêàçàòåëåé êà÷åñòâà ÏÏ.
 ðîëè ñðåä ïðîåêòèðîâàíèÿ öåëåâûõ îáúåêòîâ èñïîëüçóþòñÿ ïåðåäîâûå, ñî-
âðåìåííûå òåõíîëîãèè è ñîîòâåòñòâóþùèå ïàêåòû èíñòðóìåíòàëüíî-òåõíîëîãè÷åñ-
êèõ ñèñòåì (íàïðèìåð, Microsoft Visual Studio, MSF, RUP, Rational Rose è äð.). Èõ
èíñòðóìåíòû ïîääåðæèâàþò ïðîåêòèðîâàíèå ðàçíûõ òèïîâ öåëåâûõ îáúåêòîâ,
à òàêæå óïðàâëåíèå ìåíåäæìåíòîì ïðîåêòà, â ÷àñòíîñòè ïåðñîíàëîì, ïëàíàìè è êà-
÷åñòâîì ïðîäóêòîâ. Ýòè ñðåäñòâà è èíñòðóìåíòû óäîáíî èñïîëüçîâàòü â êîëëåêòèâ-
íîé ðàçðàáîòêå ïðîåêòà.
ÏÐÎÃÐÀÌÌÍÀß ÈÍÆÅÍÅÐÈß ÊÀÊ ÈÍÆÅÍÅÐÍÀß ÄÈÑÖÈÏËÈÍÀ
Èíæåíåðíàÿ äèñöèïëèíà (èëè èíæåíåðèÿ) â ÏÈ — ýòî ñïîñîáû âûïîëíåíèÿ äåÿ-
òåëüíîñòè, ñâÿçàííîé ñ èçãîòîâëåíèåì ÏÏ äëÿ ðàçíûõ âèäîâ öåëåâûõ îáúåêòîâ ñ
ïðèìåíåíèåì ìåòîäîâ, ñðåäñòâ è èíñòðóìåíòîâ íàó÷íîé äèñöèïëèíû ÏÈ [6–8].
Åå îñíîâó ñîñòàâëÿþò ñëåäóþùèå áàçîâûå ýëåìåíòû (ðèñ. 4):
1) ÿäðî çíàíèé SWEBOK
(www.swebok.com), êàê íàáîð òåîðåòè-
÷åñêèõ êîíöåïöèé è ôîðìàëüíûõ ïðà-
âèë, êîòîðûå ìîãóò ïðèìåíÿòüñÿ â ÏÈ;
2) áàçîâûé ïðîöåññ ÏÈ, êàê ñòåð-
æåíü ïðîöåññíîé äåÿòåëüíîñòè â îðãà-
íèçàöèè-ðàçðàáîò÷èêå ÏÏ;
3) ñòàíäàðòû, êàê íàáîð ðåãëàìåí-
òèðîâàííûõ ïðàâèë êîíñòðóèðîâàíèÿ
ïðîìåæóòî÷íûõ àðòåôàêòîâ íà ïðîöåñ-
ñàõ ÆÖ;
4) èíôðàñòðóêòóðà — ýòî óñëîâèÿ ñðåäû è ìåòîäè÷åñêîãî îáåñïå÷åíèÿ áàçîâî-
ãî ïðîöåññà ÏÈ è èñïîëíèòåëåé, êîòîðûå çàíèìàþòñÿ èçãîòîâëåíèåì ÏÏ;
5) ìåíåäæìåíò ïðîåêòà (www.pmi.com) — ýòî ñòàíäàðòíûå ïîëîæåíèÿ è ïðî-
öåññû, à òàêæå íàó÷íûå ïðèíöèïû, ìåòîäû ïëàíèðîâàíèÿ è êîíòðîëÿ ðàáîò ïðîåêòà.
Ñ èíæåíåðíîé òî÷êè çðåíèÿ, â ÏÈ ðåàëèçóþòñÿ çàäà÷è èçãîòîâëåíèÿ ÏÏ, êàê
òåõíîëîãè÷åñêèå ïðîöåññû ôîðìèðîâàíèÿ òðåáîâàíèé, ïðîåêòèðîâàíèÿ è ñîïðî-
âîæäåíèÿ ïðîäóêòà, à òàêæå ïðîâåðêè îïåðàöèé áàçîâîãî ïðîöåññà íà ïðàâèëüíîñòü
ðåàëèçàöèè ðàçíûõ ôóíêöèîíàëüíûõ çàäà÷ ïðîåêòà è âêëàäûâàíèÿ åãî ðàáîò â
çàäàííûé çàêàç÷èêîì ñðîê.
ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3 23
Èíæåíåðèÿ
ïðîãðàììèðîâàíèÿ
ßäðî çíàíèé ÏÈ Áàçîâûé ïðîöåññ ÏÈ
Ñòàíäàðòû ÏÈ Èíôðàñòðóêòóðà PMBOK
Ðèñ. 4. Ñîñòàâ áàçîâûõ ýëåìåíòîâ èíæåíåðíîé
äèñöèïëèíû
ÏÈ ìîæíî ðàññìàòðèâàòü ñ äâóõ òî÷åê çðåíèÿ:
— êàê èíæåíåðíóþ äåÿòåëüíîñòü, â êîòîðîé èíæåíåðû ðàçíûõ êàòåãîðèé îñó-
ùåñòâëÿþò ðàáîòû ïðîåêòà, ó÷èòûâàþò ñîîòâåòñòâóþùèå òåîðåòè÷åñêèå ìåòîäû è
ñðåäñòâà ÏÈ, êîòîðûå ðåêîìåíäîâàíû â ÿäðå çíàíèé SWEBOK, à òàêæå ïîëîæåíèÿ
ïðîöåññîâ ÆÖ ñòàíäàðòîâ è èçáðàííûõ äëÿ ïðîöåññîâ ìåòîäîâ;
— êàê ñèñòåìó óïðàâëåíèÿ ïðîåêòîì, êà÷åñòâîì è ðèñêàìè ñ ïðèâëå÷åíèåì
ïðàâèë è ïîëîæåíèé ñòàíäàðòîâ ÆÖ, êà÷åñòâà è ìåíåäæìåíòà ïðîåêòà [7, 8].
Èíæåíåðíàÿ äåÿòåëüíîñòü ïëàíèðóåòñÿ, â íåé ïðîâîäèòñÿ ðàñïðåäåëåíèå ïðî-
åêòà íà îòäåëüíûå ðàáîòû, êîòîðûå áóäóò âûïîëíÿòü èñïîëíèòåëè ïðîåêòà. Ìåíåä-
æåð ïðîåêòà — ýòî ãëàâíîå äåéñòâóþùåå ëèöî, îòâåòñòâåííûé çà ïðîåêòèðîâàíèå è
êîíòðîëü âûïîëíåíèÿ ýòèõ ðàáîò ðàçíèìè ñëóæáàìè èíôðàñòðóêòóðû ïðîåêòà â
îðãàíèçàöèè (âåðèôèêàöèè, òåñòèðîâàíèÿ, îöåíêè êà÷åñòâà è äð.). Ïðîäóêò êîëëåê-
òèâíîãî èçãîòîâëåíèÿ ïåðåäàåòñÿ çàêàç÷èêó äëÿ ñîïðîâîæäåíèÿ. Íàéäåííûå â íåì
îøèáêè è íåäîñòàòêè óñòðàíÿþòñÿ ðàçðàáîò÷èêàìè.
Ýòà äåÿòåëüíîñòü ïðàêòè÷åñêè óæå îòðàáîòàíà è ïî ñâîåé ñóùíîñòè áëèçêà ê
èíæåíåðíîé äåÿòåëüíîñòè â ïðîìûøëåííîñòè, ãäå èíæåíåðèÿ — ýòî ñïîñîá ïðèìå-
íåíèÿ íàó÷íûõ ðåçóëüòàòîâ â èçãîòîâëåíèè íåêîòîðûõ òåõíè÷åñêèõ èçäåëèé ñ ïî-
ìîùüþ òåõíîëîãè÷åñêèõ ïðàâèë è ïðîöåäóð, ìåòîäèê èçìåðåíèÿ, îöåíêè è
ñåðòèôèêàöèè èçãîòîâëåííîãî ïðîäóêòà.
Äàëåå äàåòñÿ îáùàÿ õàðàêòåðèñòèêà áàçîâûõ 1)–5) ýëåìåíòîâ èíæåíåðíîé äèñ-
öèïëèíû (ñì. ðèñ. 4).
1. ßäðî çíàíèé SWEBOK — ýòî ãëàâíàÿ ñîäåðæàòåëüíàÿ òðàêòîâêà è ïåðå-
÷åíü êîíöåïòóàëüíûõ îñíîâ ðàçäåëîâ ÏÈ. Ñòðóêòóðíî ÿäðî âêëþ÷àåò â ñåáÿ 10
ðàçäåëîâ (knowledge areas). Èõ óñëîâíî ïîäåëèì íà äâå êàòåãîðèè: ïðîåêòèðîâà-
íèå è îðãàíèçàöèîííàÿ, èíæåíåðíàÿ äåÿòåëüíîñòü. Ïåðâàÿ êàòåãîðèÿ — ýòî ìåòî-
äû è ñðåäñòâà ðàçðàáîòêè (ôîðìèðîâàíèå òðåáîâàíèé, ïðîåêòèðîâàíèå, êîíñòðóè-
ðîâàíèå, òåñòèðîâàíèå, ñîïðîâîæäåíèå). Âòîðàÿ êàòåãîðèÿ âêëþ÷àåò ìåòîäû
óïðàâëåíèÿ ïðîåêòîì, êîíôèãóðàöèåé, êà÷åñòâîì è áàçîâûì ïðîöåññîì îðãàíèçà-
öèè-ðàçðàáîò÷èêà.
Ìåòîäû ÿäðà çíàíèé SWEBOK ìåíåäæåð ïðîåêòà ñîïîñòàâëÿåò c çàäà÷àìè
ñòàíäàðòíûõ ïðîöåññîâ ÆÖ è îáåñïå÷èâàåò íàïîëíåíèå áàçîâîãî ïðîöåññà ýòèìè
ìåòîäàìè. Òåì ñàìûì ñîçäàåòñÿ áàçèñ èíæåíåðíîé äèñöèïëèíû èçãîòîâëåíèÿ ïðî-
äóêòà, âêëþ÷àþùèé ðåãëàìåíòèðîâàííóþ ïîñëåäîâàòåëüíîñòü ïðîöåññîâ ðàçðàáîò-
êè è ñîïðîâîæäåíèÿ ÏÏ. Íà íà÷àëüíûõ ïðîöåññàõ îïðåäåëÿþòñÿ òðåáîâàíèÿ ê ïðî-
äóêòó, ïðîåêòíûå ðåøåíèÿ è êàðêàñ (àáñòðàêòíàÿ àðõèòåêòóðà) áóäóùåãî ïðîäóêòà.
Íà îñíîâå òðåáîâàíèé è êàðêàñà ðàçðàáàòûâàþòñÿ íîâûå èëè ïîäáèðàþòñÿ ãîòîâûå
îáúåêòû äëÿ «çàïîëíåíèÿ» êàðêàñà êîíêðåòíûì ñîäåðæàíèåì è ïîñëåäóþùåé åãî
äîðàáîòêîé äî êîíå÷íîãî ÏÏ.
2. Áàçîâûé ïðîöåññ (ÁÏ) — ýòî ìåòàóðîâåíü äëÿ ïðîöåññèðîâàíèÿ èçãîòîâëå-
íèåì ïðîäóêòà. Îí ñîäåðæèò îñíîâíûå ïîíÿòèÿ, êîòîðûå îòíîñÿòñÿ ê îñíàñòêå,
îðãàíèçàöèîííîé ñòðóêòóðå êîëëåêòèâà ðàçðàáîò÷èêîâ è ìåòîäîëîãèè îöåíêè, èç-
ìåðåíèÿ, óïðàâëåíèÿ èçìåíåíèÿìè è ñîâåðøåíñòâîâàíèåì ñàìîãî ïðîöåññà. Â öå-
ëîì ÁÏ — ýòî ìíîæåñòâî ëîãè÷åñêè ñâÿçàííûõ ñ íèì âèäîâ èíæåíåðíîé äåÿòåëü-
íîñòè îðãàíèçàöèè-ðàçðàáîò÷èêà è íàáîð ñðåäñòâ è èíñòðóìåíòîâ, ïðåäíàçíà÷åí-
íûõ äëÿ èñïîëüçîâàíèÿ ïðè èçãîòîâëåíèè ÏÏ.
3. Èíôðàñòðóêòóðà — ýòî íàáîð òåõíè÷åñêèõ, òåõíîëîãè÷åñêèõ, ïðîãðàì-
ìíûõ (ìåòîäè÷åñêèõ) è ÷åëîâå÷åñêèõ ðåñóðñîâ îðãàíèçàöèè-ðàçðàáîò÷èêà, íåîáõî-
äèìûõ äëÿ âûïîëíåíèÿ ÁÏ, îðèåíòèðîâàííîãî íà âûïîëíåíèå äîãîâîðà ñ çàêàç÷è-
êîì ïðîãðàììíîãî ïðîåêòà. Ê òåõíè÷åñêèì ðåñóðñàì ïðîåêòà îòíîñÿòñÿ: êîìïüþòå-
ðû, óñòðîéñòâà (ïðèíòåðû, ñêàíåðû è ò.ï.), ñåðâåðû è ò.ï., à ê ïðîãðàììíûì — ÏÎ,
èíôîðìàöèîííîå è ñèñòåìíîå îáåñïå÷åíèå. Òåõíîëîãè÷åñêèå è ìåòîäè÷åñêèå ðå-
ñóðñû — ýòî ìåòîäèêè, ïðîöåäóðû, ïðàâèëà, ðåêîìåíäàöèè ñòàíäàðòîâ äëÿ ïðîöåñ-
ñà è óïðàâëåíèÿ ïåðñîíàëîì. ×åëîâå÷åñêèå ðåñóðñû — ýòî ãðóïïû ðàçðàáîò÷èêîâ è
ñëóæá óïðàâëåíèÿ ïðîåêòîì, ïëàíàìè, êà÷åñòâîì, ðèñêîì, êîíôèãóðàöèåé è ïðî-
24 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3
âåðêè ïðàâèëüíîñòè âûïîë-
íåíèÿ ïðîåêòà ðàçðàáîò÷è-
êàìè. Âìåñòå ýòî áàçîâûé
ïðîöåññ è êîìïëåêò äîêó-
ìåíòîâ ïî ðåãëàìåíòàöèè,
âûïîëíåíèþ è ðåãóëèðîâà-
íèþ ïðîöåññîâ ÆÖ ïîä êîí-
êðåòíûå öåëè ïðîåêòà [7].
Ñðåäñòâà, ïðîìåæóòî÷íûå
ðåçóëüòàòû ðàçðàáîòêè íà
ïðîöåññàõ ÆÖ, à òàêæå ìå-
òîäèêè ðóêîâîäñòâà ðåñóð-
ñàìè ÁÏ è ðåçóëüòàòû ïðèìåíåíèÿ ñîîòâåòñòâóþùèõ ìåòîäîâ ïðîãðàììèðîâàíèÿ
ñîõðàíÿþòñÿ â áàçå çíàíèé ïðîåêòà (ðèñ. 5).
Ïîñëå âûïîëíåíèÿ ïðîåêòà è ïðèîáðåòåíèÿ îïûòà ïîñòðîåíèÿ êîíêðåòíîãî
ïðîåêòà áàçîâûé ïðîöåññ è åãî ýëåìåíòû ìîãóò ñîâåðøåíñòâîâàòüñÿ (äîðàáîòêà, çà-
ìåíà, äîáàâëåíèå íîâûõ ñðåäñòâ) ñîîòâåòñòâåííî ñòàíäàðòó ISO/IEC TR 15504
(Information Technology — Software Process Assessment, Part 2: A reference model for
processes and process capability).
Ãîòîâíîñòü âñåõ âèäîâ ýëåìåíòîâ ïðîöåññà è ïåðñîíàëà îðãàíèçàöèè-ðàçðàáîò-
÷èêà ïðîèçâîäèòü êà÷åñòâåííûé ïðîäóêò — îñíîâà îöåíêè çðåëîñòè êàê ñàìîé
îðãàíèçàöèè, òàê è âûïóùåííîãî ïðîäóêòà. Äëÿ ýòîãî ïðèìåíÿåòñÿ ìîäåëü çðåëîñòè
CMM (Capability Maturity Model) Èíñòèòóòà ïðîãðàììíîé èíæåíåðèè SEI ÑØÀ.
Äëÿ ðàññìîòðåíèÿ ðàçíîé ñòåïåíè ãîòîâíîñòè îðãàíèçàöèè ñîçäàâàòü ÏÏ ìîäåëü
ðåêîìåíäóåò ñëåäóþùèå îöåíêè: óäîâëåòâîðèòåëüíî, ñðåäíå, õîðîøî è î÷åíü õîðî-
øî. Óðîâåíü ñòåïåíè ãîòîâíîñòè îïðåäåëÿåòñÿ íàëè÷èåì â îðãàíèçàöèè áàçîâîãî
ïðîöåññà, âñåõ íåîáõîäèìûõ äëÿ íåãî ðåñóðñîâ, ñîîòâåòñòâóþùèõ ñòàíäàðòîâ è ìå-
òîäèê, à òàêæå ïðîôåññèîíàëüíûõ ñïîñîáíîñòåé (çðåëîñòè) ÷ëåíîâ êîëëåêòèâà èç-
ãîòîâëÿòü ÏÏ â çàäàííûé ñðîê è âêëàäûâàòüñÿ â ñòîèìîñòü. Ìîäåëü ÑÌÌ — ïÿòè-
óðîâíåâàÿ. Ïåðâûé è âòîðîé óðîâíè îïðåäåëÿþò íåäîñòàòî÷íóþ ïîäãîòîâëåííîñòü
îðãàíèçàöèè âûïîëíÿòü çðåëî ïðîäóêò. Òðåòèé, ÷åòâåðòûé è ïÿòûé óðîâíè õàðàêòå-
ðèçóþò ñòåïåíü ãîòîâíîñòè, çðåëîñòè è ïðîôåññèîíàëèçìà ñïåöèàëèñòîâ îðãàíèçà-
öèè èçãîòàâëèâàòü ñîîòâåòñòâåííî ñðåäíèé, õîðîøèé è îòëè÷íûé ïðîäóêò. Êðîìå
áàçîâîé ìîäåëè, èñïîëüçóþòñÿ ñïåöèàëèçèðîâàííàÿ ìîäåëü SW ÑÌÌ (Software
CMM) äëÿ îöåíêè çðåëîñòè ÏÎ, èíòåãðèðîâàííàÿ ìîäåëü çðåëîñòè CMMI (ÑÌÌ
Integrated) äëÿ ó÷åòà ïîòðåáíîñòåé ãîñóäàðñòâåííûõ ñòðóêòóð â ÏÎ, Bootstrap —
äëÿ îöåíêè çðåëîñòè ìàëåíüêèõ è ñðåäíèõ êîììåð÷åñêèõ êîìïàíèé.
4. Ñòàíäàðòû ÏÈ — ýòî òåõíîëîãè÷åñêè îòðàáîòàííûé íàáîð ðàçíûõ âèäîâ
ïðîöåññîâ ñî ñòðîãî îïðåäåëåííûì è ðåãëàìåíòèðîâàííûì ïîðÿäêîì ïðîâåäåíèÿ
ðàáîò â ÏÈ, ñâÿçàííûõ ñ ðàçðàáîòêîé è îöåíèâàíèåì ïðîäóêòà íà êà÷åñòâî, ðèñêè è
ò.ï. Ñòàíäàðòû â îáëàñòè ÏÈ ðåãëàìåíòèðóþò ðàçíûå íàïðàâëåíèÿ äåÿòåëüíîñòè.
Îíè ñòàíäàðòèçèðóþò òåðìèíû è ïîíÿòèÿ, ÆÖ, êà÷åñòâî, èçìåðåíèå, îöåíêó ïðî-
äóêòîâ è ïðîöåññîâ. Íàèáîëåå âàæíûìè ñðåäè íèõ — ñòàíäàðò ISO/IEC 12207
«Ïðîöåññû æèçíåííîãî öèêëà ïðîãðàììíîãî îáåñïå÷åíèÿ», à òàêæå ñòàíäàðòû ñå-
ðèè ISO/IEC 9000 — 1, 2, 3, ÄÑÒÓ 2844–94 è 2850-94, ðåãëàìåíòèðóþùèå àñïåêòû
ñèñòåìû óïðàâëåíèÿ è îáåñïå÷åíèÿ êà÷åñòâà ÏÏ.
Ñòàíäàðò ISO/IEC 12207 ñîäåðæèò îðãàíèçàöèîííûå ïðîöåññû: ïëàíèðîâàíèå,
óïðàâëåíèå è ñîïðîâîæäåíèå. Ïðîöåññ ïëàíèðîâàíèÿ âêëþ÷àåò äåéñòâèÿ ïî ñîñòàâ-
ëåíèþ ïëàíîâ è ãðàôèêîâ ïðîåêòà, ïî ðàñïðåäåëåíèþ ðàáîò ìåæäó ðàçíûìè êàòåãî-
ðèÿìè ñïåöèàëèñòîâ, à òàêæå äåéñòâèÿ ïî êîíòðîëþ ïëàíîâ è âûïîëíåííûõ ðàáîò.
Ïðîöåññ óïðàâëåíèÿ ïðîåêòîì îïðåäåëÿåò ïðîöåññû óïðàâëåíèÿ ðàáîòàìè íà ïðî-
åêòå, êîòîðûå äîëæíû âûïîëíÿòü ñïåöèàëèñòû, âëàäåþùèå òåîðèåé óïðàâëåíèÿ,
ñïîñîáíûå ïëàíèðîâàòü è ñëåäèòü çà ñðîêàìè âûïîëíåíèÿ ïðîåêòà. Òðåòèé ïðî-
öåññ — ýòî ñîïðîâîæäåíèå ãîòîâîãî ïðîäóêòà ïðîåêòà, âûÿâëåíèå è óñòðàíåíèå
ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3 25
Èíôðàñòðóêòóðà
èíæåíåðèè
Òåõíèêî-
òåõíîëîãè÷åñêèå è
ïðîãðàììíûå ñðåäñòâà
Áàçîâûé ïðîöåññ ÏÈ
Êàäðîâûé ïîòåíöèàë
îðãàíèçàöèè -
ðàçðàáîò÷èêà
Ðåñóðñû è ñðåäà
ðàçðàáîòêè
Îñíàñòêà ÆÖ
ìåòîäàìè ÏÈ
Ñëóæáû êîíòðîëÿ
è îöåíîê
Ñòàíäàðòû ñâÿçåé,
èíñòðóêöèè îáó÷åíèÿ
Áàçà çíàíèé ïðîåêòà
Ðèñ. 5. Ýëåìåíòû èíôðàñòðóêòóðû ïðîåêòà
íàéäåííûõ â íåì íåäîñòàòêîâ, à òàêæå äîïîëíåíèå íîâûõ èëè óäàëåíèå íåêîòîðûõ
ôóíêöèé â ïðîäóêòå.
ßäðî çíàíèé SWEBOK è ñòàíäàðòû ÆÖ âçàèìîñâÿçàíû. Îíè èñïîëüçóþòñÿ
ïðè îïðåäåëåíèè ñòðóêòóðû áàçîâîãî ïðîöåññà ÏÈ è ðàçðàáîòêè íåîáõîäèìûõ ìå-
òîäèê è îãðàíè÷åíèé íà èçãîòîâëåíèå ïðîäóêòà. Ïðè ýòîì ìîãóò èñïîëüçîâàòüñÿ
ôóíäàìåíòàëüíûå ìîäåëè ÆÖ (âîäîïàäíàÿ, ñïèðàëüíàÿ è ò.ï.), êîòîðûå ðåàëèçóþò
çàëîæåííûé â íèõ ñòèëü ïðîåêòèðîâàíèÿ è ðåàëèçàöèè äëÿ íåêîòîðûõ âèäîâ
ïðîäóêòîâ.
5. Ìåíåäæìåíò ïðîåêòà — ýòî óïðàâëåíèå ðàçðàáîòêîé ïðîåêòà ñ èñïîëüçîâà-
íèåì àäàïòèðîâàííîé òåîðèè óïðàâëåíèÿ è ïðîöåññîâ ÿäðà çíàíèé ÐÌÂÎÊ ê òèïó
ïðîåêòà. Â ÐÌÂÎÊ ïðåäñòàâëåíû ïîëîæåíèÿ è ïðàâèëà ðóêîâîäñòâà â ñîîòâåò-
ñòâèè ñ çàäàííûì âðåìåíåì ïðîèçâîäñòâåííîãî öèêëà ïîñòðîåíèÿ óíèêàëüíîãî
ïðîäóêòà â ðàìêàõ íåêîòîðîãî ïðîåêòà [9]. ÐÌÂÎÊ — ýòî ñòàíäàðò IEEE
Std.1490:2003, êîòîðûé ðàçðàáîòàí àìåðèêàíñêèì Èíñòèòóòîì óïðàâëåíèÿ ïðîåêòà-
ìè (www.pmi.org) äëÿ ñîçäàíèÿ ÏÎ.
ßäðî çíàíèé ÐÌÂÎÊ ïîñòðîåíî àíàëîãè÷íî ÿäðó çíàíèé SWEBOK è ñîäåðæèò
îïèñàíèå ëåêñèêè, ñòðóêòóðû ïðîöåññîâ è îáëàñòåé çíàíèé, êîòîðûå îòîáðàæàþò
ñîâðåìåííóþ ïðàêòèêó óïðàâëåíèÿ ïðîåêòàìè â íåêîòîðûõ îáëàñòÿõ ïðîìûøëåí-
íîñòè è ÏÎ â ÷àñòíîñòè. ßäðî ñîäåðæèò ïðîöåññû è îïðåäåëÿåò ïðèíÿòèå ðåøåíèé
ïî ðåñóðñàì ïðîåêòà â êàæäûé ìîìåíò âðåìåíè âûïîëíåíèÿ è óïðàâëåíèÿ çàäà÷àìè
ïðîåêòà. Îáëàñòü çíàíèé — óïðàâëåíèå ñîäåðæàíèåì ïðîåêòà — ýòî ïðîöåññû, ðåã-
ëàìåíòèðóþùèå ïëàíèðîâàíèå, ðàçáèâêó ðàáîò íà áîëåå ïðîñòûå â öåëÿõ óïðîùå-
íèÿ ïðîöåññà óïðàâëåíèÿ. Îáëàñòü óïðàâëåíèÿ êà÷åñòâîì ñîäåðæèò ïðîöåññû è
îïåðàöèè äîñòèæåíèÿ öåëåé ïðîåêòà, à òàêæå ïðàâèëà è ïðîöåäóðû äëÿ óëó÷øåíèÿ
ïðîöåññà îáåñïå÷åíèÿ êà÷åñòâà â ñîîòâåòñòâèè ñ çàäàííûìè òðåáîâàíèÿìè çàêàç÷è-
êà è ïîëîæåíèÿìè ñòàíäàðòà êà÷åñòâà (ISO/IEC 9000 –1, 2, 3). Îáëàñòü óïðàâëåíèÿ
÷åëîâå÷åñêèìè ðåñóðñàìè âêëþ÷àåò ðàñïðåäåëåíèå ðàáîò ìåæäó èñïîëíèòåëÿìè â
ñîîòâåòñòâèè ñ èõ êâàëèôèêàöèåé è ïðîôåññèîíàëèçìîì.
Òàêèì îáðàçîì, ñòàíäàðò ÐÌÂÎÊ, êàê è ñòàíäàðò ISO/IEC 12207, èìååò ìíîãî
îáùåãî, êàñàþùåãîñÿ îðãàíèçàöèîííûõ ïðîöåññîâ óïðàâëåíèÿ ïðîåêòîì è åãî
ðåñóðñàìè.
ÏÐÎÃÐÀÌÌÍÀß ÈÍÆÅÍÅÐÈß Â ÏÐÀÊÒÈ×ÅÑÊÎÌ ÈÇÌÅÐÅÍÈÈ
Îáùåå íàçíà÷åíèå ÏÈ — ýòî ïðàêòèêà, ò.å. êîíêðåòíîå ïîñòðîåíèå êîìïüþòåð-
íûõ ïðîãðàìì, ñèñòåì è èíñòðóìåíòîâ ñ ïðèìåíåíèåì òåîðåòè÷åñêèõ è èíæåíåð-
íûõ ìåòîäîâ.
Ãëàâíàÿ îñîáåííîñòü ïðàêòèêè — ýòî èñïîëüçîâàíèå ðàçðàáîòàííûõ ãîòîâûõ
ïðîãðàìì è èíôîðìàöèîííûõ ðåñóðñîâ Èíòåðíåò (MatLab, Greenstone, Grid-ñèñòå-
ìû è äð.). Äîñòóï ê íèì ìîæåò îñóùåñòâèòü ëþáîé ïîëüçîâàòåëü è ïîëó÷èòü áåñ-
ïëàòíî èëè íà êîììåð÷åñêîé îñíîâå ãîòîâûé ðåñóðñ, êàê ñåðâèñ. Îí ìîæåò îäíîðà-
çîâî èñïîëüçîâàòüñÿ äëÿ ðåøåíèÿ ñîîòâåòñòâóþùåé çàäà÷è ëèáî êàê íåêîòîðàÿ ïðî-
ãðàììà ïîñòîÿííîãî è ìíîãîêðàòíîãî ïðèìåíåíèÿ â íåêîòîðîì äîìåíå. Ñåãîäíÿ
ñôîðìèðîâàëîñü òðè èíæåíåðíûõ ïîäõîäà ïî ïðèìåíåíèþ ãîòîâûõ ðåñóðñîâ:
reusing engineering, application engineering, domain engineering. Îíè ïðèìåíÿþò â êà-
÷åñòâå ãîòîâûõ ðåñóðñîâ ïîâòîðíî èñïîëüçóåìûå êîìïîíåíòû (ÏÈÊ), ïðèëîæåíèÿ
è ñèñòåìû. Ïðèìåíåíèå ãîòîâûõ ðåñóðñîâ, êàê ìíîãîêðàòíî èñïîëüçîâàííîãî ãîòî-
âîãî ïðîäóêòà, äàåò çíà÷èòåëüíóþ ýêîíîìèþ ïðè ïðîèçâîäñòâå èç íèõ íîâûõ
ïðîãðàììíûõ ñèñòåì è ñåìåéñòâ ñèñòåì. Âñå âèäû ÏÈÊ ñîõðàíÿþòñÿ â õðàíèëèùàõ
ïðîåêòà — ðåïîçèòàðèÿõ [6, 7].
Èíæåíåðèÿ ÏÈÊ — ýòî ñèñòåìàòè÷åñêàÿ è öåëåíàïðàâëåííàÿ äåÿòåëüíîñòü äëÿ
ïîäáîðà ðåàëèçîâàííûõ è ïðåäñòàâëåííûõ â ðåïîçèòàðèè ÏÈÊ. Ñèñòåìà ïðîåêòè-
ðóåòñÿ èç íèõ ñíèçó ââåðõ. Ñíà÷àëà ñîçäàåòñÿ îáùàÿ ñòðóêòóðà — êàðêàñ ïðîäóêòà,
äàåòñÿ åãî îïèñàíèå è ïî ýòîìó îïèñàíèþ ãîòîâûå êîìïîíåíòû è ÏÈÊ èíòåãðèðó-
þòñÿ â ñèñòåìó.
26 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3
Èíæåíåðèÿ ïðèëîæåíèé áàçèðóåòñÿ íà ìíîãîðàçîâîì èñïîëüçîâàíèè ÏÈÊ, à
òàêæå ãîòîâûõ ïðîãðàìì. Ïðîåêòèðîâàíèå îäèíî÷íûõ, ò.å. óíèêàëüíûõ ïðî-
ãðàìì-ïðèëîæåíèé — ýòî èíæåíåðèÿ ïðîãðàììèðîâàíèÿ èç ãîòîâûõ ÏÈÊ ïðèëî-
æåíèÿ. Ïðîöåññ ïîñòðîåíèÿ íà÷èíàåòñÿ ñ àíàëèçà ÏðÎ, îïðåäåëåíèÿ êîíöåïòóàëü-
íîé ìîäåëè, ðàçðàáîòêè ïðîåêòíûõ ðåøåíèé è ïðîâåäåíèÿ êîìïîçèöèè êîìïîíåí-
òîâ ñ èñïîëüçîâàíèåì øàáëîíîâ èëè êàðêàñîâ.
Èíæåíåðèÿ ÏðÎ — íàáîð ñðåäñòâ, èíñòðóìåíòîâ, ìíîæåñòâà ãîòîâûõ ðåñóðñîâ
è áàçîâîãî ïðîöåññà ïîñòðîåíèÿ èç íèõ ñèñòåì ñåìåéñòâà (äîìåíà) íà îñíîâå ìîäå-
ëè, ñîäåðæàùåé îáùèå è èçìåíÿåìûå õàðàêòåðèñòèêè ïðåäñòàâèòåëåé ñåìåéñòâà.
Âûáðàííûå ÏÈÊ èëè îäèíî÷íûå ïðèëîæåíèÿ âñòðàèâàþòñÿ â ìîäåëü äîìåíà. Òåõ-
íîëîãèÿ ðàçðàáîòêè ñåìåéñòâà ïëàíèðóåòñÿ êàê â ïëàíå ñîçäàíèÿ ìîäåëè äîìåíà,
òàê è ÷ëåíîâ ñåìåéñòâà. Îíà âêëþ÷àåò ïðîöåññû àíàëèçà, ïðîåêòèðîâàíèÿ è âñòðàè-
âàíèÿ ÏÈÊ â îòäåëüíûå ïðåäñòàâèòåëè ñåìåéñòâà. Ïî ñâîåìó õàðàêòåðó äàííàÿ èí-
æåíåðèÿ ïðèáëèæåíà ê êîíâåéåðíîìó ïðîèçâîäñòâó ïðîäóêòîâ èç ãîòîâûõ ðåñóð-
ñîâ. Óïðàâëåíèå ýòîé èíæåíåðèåé ñîñòîèò â ïëàíèðîâàíèè è ðàñïðåäåëåíèè ðàáîò
äëÿ êàæäîãî ó÷àñòíèêà ïðîöåññà ñîçäàíèÿ äîìåíà è êîíòðîëÿ èõ âûïîëíåíèÿ.
Òåõíîëîãè÷åñêèå ïðèåìû ïðîèçâîäñòâà ïðîãðàììíûõ ïðîäóêòîâ èç ãîòîâûõ
êîìïîíåíòîâ è ïðîãðàììíûõ ñèñòåì âîïëîùåíû â òàê íàçûâàåìûå ëèíåéêè ïðî-
äóêòîâ, êîòîðûå ñîîòâåòñòâóþò êîíâåéåðíîìó ïðîèçâîäñòâó ÏÏ íà îñíîâå ñïðîñà
ðûíêà.
Ïðàêòè÷åñêèå èíñòðóìåíòû ïðîèçâîäñòâà — ÿäðî çíàíèé SWEBOK, PMBOK è
ñòàíäàðòû, â êîòîðûõ ïðåäñòàâëåí ðåãëàìåíò îïèñàíèÿ ïðîöåññà èíæåíåðèè äîìå-
íîâ (Domain engineering process) êàê íîâîãî ïðîöåññà ÆÖ. Ñîãëàñíî ýòîìó ñòàíäàð-
òó ïðîöåññ èíæåíåðèè äîìåíîâ âêëþ÷àåò: àíàëèç äîìåíà (âûÿâëåíèå ñâÿçåé, ïîñòî-
ÿííûõ è èçìåíÿåìûõ òðåáîâàíèé, ïîíÿòèé è ìîäåëåé); ïðîåêòèðîâàíèå äîìåíà
(Domain design) — êàðêàñà äëÿ ÏÈÊ, àêòèâîâ (asset) è èíòåðôåéñîâ, ñîãëàñîâàííûõ
ñ ìîäåëüþ äîìåíà; òåõíîëîãèþ äîìåíà ñ ïîäïðîöåññàìè ôîðìèðîâàíèÿ ðåñóðñîâ
(asset provision), ðàçðàáîòêîé áàçû ðåñóðñîâ (asset-based development) è èõ ñîïðî-
âîæäåíèÿ. Â ðåçóëüòàòå ïðèìåíåíèÿ òåõíîëîãèè èíæåíåðèè äîìåíà â ñîôòâåðíîé
îðãàíèçàöèè áóäåò ñîçäàâàòüñÿ àðõèòåêòóðíûé áàçèñ ïðîèçâîäñòâà ÏÏ èç ìíîãîðà-
çîâûõ ÏÈÊ ðåïîçèòàðèÿ è ÿçûêîâ ñïåöèôèêàöèè äîìåíîâ.
Òàêèì îáðàçîì, íàóêà è èíæåíåðèÿ, SWEBOK, ÑÒÀÍÄÀÐÒÛ, PMBOK, êàê
ãëàâíûå ñîñòàâíûå ýëåìåíòû ïðîãðàììíîé èíæåíåðèè, ñâÿçàíû ìåæäó ñîáîé ïðî-
öåññàìè ÆÖ, ìåòîäàìè ïðîåêòèðîâàíèÿ è óïðàâëåíèÿ ðàçðàáîòêîé ïðîåêòà. Ñèìâî-
ëè÷åñêè ýòà âçàèìîñâÿçü ïðåäñòàâëåíà íà ðèñ. 7.
Ðàññìîòðåííûå áàçîâûå òåîðèè è ñîñòàâíûå
ýëåìåíòû ÏÈ îðèåíòèðîâàíû íà ðàçðàáîòêó ïðè-
êëàäíûõ ñèñòåì ðàçíîãî íàçíà÷åíèÿ. Ïðè èõ ðàçðà-
áîòêå íåîáõîäèìû èíñòðóìåíòàëüíî-òåõíîëîãè÷-
íûå ñèñòåìû è ñðåäû ñ íàáîðîì íåîáõîäèìûõ
èíñòðóìåíòîâ. Ïðèìåð òàêîé ñðåäû è ðåàëèçàöèè â
íåé èíæåíåðíîãî ïîäõîäà ê ïðîåêòèðîâàíèþ —
ñèñòåìà Visual Studio Teams Systems ôèðìû
Microsoft. Â íåé ðåàëèçîâàíà òåõíîëîãèÿ ïðîåêòè-
ðîâàíèÿ, êîäèðîâàíèÿ, òåñòèðîâàíèÿ è âíåäðåíèÿ
ïðîãðàììíûõ ïðîäóêòîâ. Â ýòîé ñðåäå îïðåäåëåíà
òåõíîëîãèÿ ïîäáîðà, ðàñïðåäåëåíèÿ è âûïîëíåíèÿ
ðàáîò ìåæäó ðàçíûìè ãðóïïàìè ñïåöèàëèñòîâ,
èìåþùèìè ðàçíûå óðîâíè çíàíèé è íàâûêîâ â îáëàñòè ïðîãðàììèðîâàíèÿ. Îíè ðàçäåëå-
íû íà ÷åòûðå êàòåãîðèè ñïåöèàëèñòîâ, â êîòîðîé êàæäûé ïîëó÷àåò ðàáîòó ïî ñâîèì
ñïîñîáíîñòÿì. Ïåðåõîä â áîëåå êâàëèôèöèðîâàííóþ ãðóïïó çàâèñèò îò êà÷åñòâà
âûïîëíåííûõ ðàáîò ïðåäûäóùåé çàäà÷è è îò ïîëó÷åííîãî îïûòà. ×åòâåðòàÿ ãðóï-
ïà — ýòî ñïåöèàëèñòû âûñîêîé êâàëèôèêàöèè, îíè îòâå÷àþò çà ïðàâèëüíîñòü ðàç-
ðàáîòêè ïðîåêòà â äàííîé ñðåäå.
ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3 27
ÑòàíäàðòûP
M
B
O
K SWEBOK
Èíæåíåðèÿ
Í à ó ê à
Ðèñ. 7. Ñîñòàâíûå ýëåìåíòû ÏÈ
ÇÀÊËÞ×ÅÍÈÅ
 íàñòîÿùåé ðàáîòå ïðåäñòàâëåí ñèñòåìíûé àíàëèç ÏÈ â íàó÷íîì, èíæåíåðíîì
è ïðàêòè÷åñêîì èçìåðåíèè. Äàíî åå îáùåå òîëêîâàíèå, ïðèâåäåíû àðãóìåíòû è
îïðåäåëåíèÿ êàê îáúåêòîâ, òàê è ñàìîé äåôèíèöèè. Ïðîâåäåíà åå ñòðóêòóðèçàöèÿ
â âèäå íàó÷íîé, èíæåíåðíîé è ïðàêòè÷åñêîé äèñöèïëèí, ñôîðìóëèðîâàíû ñîäåð-
æàíèå è èõ íàçíà÷åíèå. Ïðåäëîæåí èíæåíåðíûé è ïðàêòè÷åñêèé àñïåêòû ïî-
ñòðîåíèÿ öåëåâûõ ïðîãðàììíûõ îáúåêòîâ (ïðîãðàììíîãî îáåñïå÷åíèÿ, ïðèëîæå-
íèé è äîìåíîâ) èç ãîòîâûõ ÏÈÊ. Ïîêàçàíà ðîëü áàçîâîãî ïðîöåññà ÏÈ, êàê ïðî-
öåññíîé îñíîâû ðàçðàáîòêè êîìïüþòåðíûõ ïðîãðàìì ñ èñïîëüçîâàíèåì ÿäðà
çíàíèé, ñòàíäàðòîâ ÆÖ, èíôðàñòðóêòóðû è ìåíåäæìåíòà â îðãàíèçàöèè–ðàçðà-
áîò÷èêå.
Ðàññìîòðåííûé ïîäõîä ê îïðåäåëåíèþ ÏÈ îáñóæäàëñÿ, äèñêóòèðîâàëñÿ è
óòî÷íÿëñÿ â îòäåëå Èíñòèòóòà ïðîãðàììíûõ ñèñòåì, íà Âñåóêðàèíñêîé êîíôåðåí-
öèè ïðåïîäàâàòåëåé è ñòóäåíòîâ «Ïðîãðàììíàÿ èíæåíåðèÿ — íàïðàâëåíèÿ îáó÷å-
íèÿ», ïðîâåäåííîé Íàöèîíàëüíûì àâèàöèîííûì óíèâåðñèòåòîì (3–5 äåêàáðÿ 2007
ã.), íà ñåìèíàðå ïðåïîäàâàòåëåé è ñòóäåíòîâ (6 äåêàáðÿ 2007 ã.), ÷òåíèè êóðñà ëåê-
öèé ñòóäåíòàì íà ôàêóëüòåòå êèáåðíåòèêè Êèåâñêîãî íàöèîíàëüíîãî óíèâåðñèòåòà
èìåíè Òàðàñà Øåâ÷åíêî è â ôèëèàëå ÌÔÒÈ ïðè Èíñòèòóòå êèáåðíåòèêè èìåíè
Ãëóøêîâà ÍÀÍ Óêðàèíû. Àâòîð âûðàæàåò áëàãîäàðíîñòü âñåì, êòî ïðèíÿë ó÷àñòèå
â îáñóæäåíèè ïðåäìåòà ÏÈ.
ÑÏÈÑÎÊ ËÈÒÅÐÀÒÓÐÛ
1. J a c o b s o n I . Object-oriented Software Engineering. A use case Driven Approach, Revised Printing. —
New York: Addison Wesley, Publ. Co, 1994. — 529 ð.
2. À í ä î í Ô . È . , Ë à â ð è ù å â à Å . Ì . Ìåòîäû èíæåíåðèè ðàñïðåäåëåííûõ êîìïüþòåðíûõ
ïðèëîæåíèé. — Êèåâ.: Íàóê. äóìêà, 1998. — 228 ñ.
3. Á à á å í ê î Ë . Ï . , Ë à â ð ³ ù å â à Ê . Ì . Îñíîâè ïðîãðàìíî¿ ³íæåíåð³¿. — Êè¿â: Çíàííÿ, 2001. —
269 ñ.
4. Ñ î ì å ð â è ë ë È . Èíæåíåðèÿ ïðîãðàììíîãî îáåñïå÷åíèÿ. — Ì.; Ñàíêò–Ïåòåðáóðã; Êèåâ: Èçä. äîì
«Âèëüÿìñ», 2002. — 623 ñ.
5. Ã ð è ù å í ê î Â . Í . , Ë à â ð è ù å â à Å . Ì . Ìåòîäû è ñðåäñòâà êîìïîíåíòíîãî ïðîãðàìóâàííÿ //
Êèáåðíåòèêà è ñèñòåìíûé àíàëèç. — 2003. — ¹ 1. — Ñ. 39–55.
6. Ë à â ð è ù å â à Å . Ì . Ìåòîäû ïðîãðàììèðîâàíèÿ. Òåîðèÿ, èíæåíåðèÿ, ïðàêòèêà. — Êèåâ: Íàóê.
äóìêà, 2006. — 450 ñ.
7. Î ñ í î â û èíæåíåðèè êà÷åñòâà ïðîãðàììíûõ ñèñòåì / Ô.È. Àíäîí, Ã.È. Êîâàëü, Ò.Ì. Êîðîòóí,
Å.Ì. Ëàâðèùåâà, Â.Þ. Ñóñëîâ: 2-å èçä. — Êèåâ: Àêàäåìïåðèîäèêà, 2007. — 672 ñ.
8. Ë à â ð è ù å â à Å . Ì . , Ê î â à ë ü à . È . , Ê î ð î ò ó í Ò Ì . Ïîäõîä ê óïðàâëåíèþ êà÷åñòâîì
ïðîãðàììíûõ ñèñòåì îáðàáîòêè äàííûõ // Êèáåðíåòèêà è ñèñòåìíûé àíàëèç. — 2006. — ¹ 5. —
Ñ. 174–185.
9. Ç à ä î ð î æ í à Í . Ò . , Ë à â ð ³ ù å â à Ê . Ì . Ìåíåäæìåíò äîêóìåíòîîá³ãó â ³íôîðìàö³éíèõ ñèñòå-
ìàõ îñâ³òè. — Êè¿â: Ïåä. äóìêà, 2007. — 220 ñ.
Ïîñòóïèëà 15.02.2007
28 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2008, ¹ 3
|