KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » М. Сидоров - ВСТУП ДО ІНЖЕНЕРІЇ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

М. Сидоров - ВСТУП ДО ІНЖЕНЕРІЇ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн М. Сидоров, "ВСТУП ДО ІНЖЕНЕРІЇ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ" бесплатно, без регистрации.
Перейти на страницу:

З мстою збереження властивостей обох типів моделей була роз­ роблена інтегрована модель СММІ - СММ Integrated.

Модель містить 25 областей удосконалення, що розбиваються на чотири рівні зрілості уявленні і на чотири категорії процесів у безперервному уявленні.

Розділ 3. ПРОГРАМНІ ПРОДУКТИ І СИСТЕМИ


3.1. Програми і програмування

Суть метолів, засобів і процесів, що розглядаються в інженерії програмного забезпечення, пов'язана з двома головними поняттями - «програма» (комп'ютерна програма) і «програмування». Перше поняття позначає засіб, який керує діями комп'ютера, а другий - процес, який спрямовано на створення програм.

3.1.1. Програма

Програма - це опис обчислень. Обчислення - це дії, здійснення яких доручається певному виконавцеві. Виконавці можуть бути різ­ ними і обов'язкова умова - виконавець повинен «розуміти» програму, ІЗ основі опису дій лежить поняття алгоритму. Мета обчислень - отримати результат. Основними об'єктами обчислень і результатом є значення. Значення - це конкретні елементи програми, об'єкти, що в обчисленнях замінюють змінні. Змінні - це програмні об'єкти що зберігають значення. Програма описує багато обчислень. Залежно від конкретних значень виконавець здійснює одне з них.

3.1.2. Комп'ютерні програми

Якщо виконавець програми - комп'ютер, то вона називається комп'ютерною. Комп'ютер - це «механістичний, рутинний» пристрій, тому дуже важливо, аби комп'ютерна програма містила всі вказівки про те, як необхідно виконувати обчислення. А це озна­чає, що поняття алгоритму, що лежить в основі програми, повинно мати точний, конструктивний характер. Оскільки комп'ютер що і математична машина, то для представлення алгоритму було розро­блено багато математичних способів. Проте, незалежно від способу представлення, алгоритму комп'ютерній програмі властиві такі аспекти:

- повна деталізація і визначеність опису обчислень і, тим самим, закінченість;

- масовість обчислень

- орієнтація на загальні зміни змінної;

- виконавець обчислень - комп'ютер;

- форми програми - текст;

- засіб запису програми - спеціальна мова.

Державний стандарт (ДСТУ 2844-94) визначає комп'ютерну програму (computer program) як послідовність інструкцій, які може виконувати ЕОМ.

3.1.3. Програмування

Процеси, пов'язані З написанням комп'ютерних програм, нази­ваються програмуванням, У найзагальнішому вигляді програму­вання - це виконання трьох процесів:

- складання схеми програми - опис обчислень за допомогою спеціальних засобів (мови специфікацій) - псевдокоди, блок-схеми або формальні (математичні) мови;

- складання тексту програми - опис обчислень за допомогою спеціального засобу - мова програмування з використанням схеми програми;

- налагодження програми - виконання програми з використан­ням спеціально підібраних значень з метою пошуку і усунення дефек­тів, допущених у програмах при реалізації перших двох процесів,

Два ключові об'єкта беруть участь у Програмуванні - програміст і мова програмування.

Програміст - це спеціально підготовлений суб'єкт (професіонал), який знає одну або декілька мов специфікацій і програмування та вміє виконувати процеси програмування.

Мова програмування — це штучна знакова система, призначена для запису комп'ютерних програм. Як будь-яка знакова система мова програмування задається синтаксисом - множина правил, що визначають вид пропозицій (мови), і семантикою - множина правил, що визначають операційне значення (сенс) пропозицій мови. Кожна мова програмування за допомогою синтаксису і семантики описує певного носія мови, яким ця мова визначається однозначно. Носій мови входить до складу перекладачів (трансляторів), які здійснюють переклад програми з мови програмування на мову ви­конавця. Теоретичну основу мов програмування складають алгоритмічні мови (засоби для запису алгоритмів), при цьому набори опи­сових засопів мов програмування перевищують мінімальні набори, необхідні для їх алгоритмічної універсальності, що викликане практичною орієнтацією МОВ програмування. За весь період розвит­ку програмування було розроблено значну кількість мов програму­вання (рис.3.1).

Рис 3.1. Мови програмування

3.2. Продукти інженерії програмного забезпечення, продукція і програмне забезпечення

Нині для комп'ютерів розроблено і продовжує розроблялися значна кількість програм. Серед них особливе місце займають програми, які називаються продуктами інженерії програмного забезпе­чення і продукцією.

3.2.1. Продукти інженерії програмного забезпечення

Стандарт ISO/IEC 14598-1 визначає продукт інженерії програмного забезпечення (продукт програмного забезпечення, програмний продукт, software product) як безліч комп'ютерних програм, процедур і пов'язаних з ними документації та даних. До того ж, підкреслюється, що продукти можуть бути таких типів:

- для постачання користувачеві;

- інтегральні частини інших продуктів;

- для розробників і супроводжуючих.

Таким чином, ті, хто використовує продукт інженерії програмного забезпечення, можуть бути таких типів;

- користувач (user) - особа або організація, які використовують продукт для виконання своїх специфічних функцій;

- розробник (developer) - особа або організація, які виконують специфічні дії в контексті життєвого циклу програмного забезпечення та, які зорієнтовані на розробку продукту;

- супроводжуючий (mainteiner) - особа або організація, які виконують специфічні дії, пов'язані з супроводом продукту.

Український стандарт ДСТУ 2844-94 визначає продукт інженерії програмного забезпечення як програмний засіб (програмне забезпечення, software), призначений для постачання користувачеві. Якщо розглядати користувачів вказаних трьох типів, то це визначення і визначення ISO/IEC збігаються.

Таким чином, термін «продукт програмного забезпечення» використовується для позначення двох типів об'єктів:

- по-перше, так називаються комп'ютерні програми, що відповідають додатковим вимогам, що пов'язані з їх тривалим застосуванням користувачами. Ці вимоги здійснюються шляхом створення додаткових описів, інструкцій і даних;

- по-друге, так називаються результати виконання фаз життєвого циклу програмного забезпечення (робочий продукт), коли результати є інтегральними частинами розробленого продукту. Тому, продуктом може бути не тільки комп'ютерна програма, й специфікація вимог, документація або проект програми, що розробляється.

3.2.2. Продукція інженерії програмного забезпечення

У зв'язку з розвитком і застосуванням інженерних методів у розробці і використанні комп'ютерних програм змінилося ставлення до результатів праці в цій галузі. Розширення асортименту розробників і користувачів продуктів призвело до необхідності класифікувати їх і визначити належність до того або іншого виду продукції.

Продукція інженерії програмного забезпечення - це сукупність Програм, програмних засобів і продуктів, що мають загальну класифікаційну ознаку (за приналежністю, місцем розробки, призначенням).

Нині розрізняють продукцію інженерії програмного забезпечення країни, галузі і підприємства.

3.2.3. Програмне забезпечення

Таким чином, у комп'ютері може знаходитися безліч комп'ютерних програм двох типів. До першого типу належать будь-які комп'ютерні програми, які користувач комп'ютера встановив з тих чи інших причин. До другого - належать комп'ютерні програми - продукти (продукція).

Безліч комп'ютерних програм у комп'ютері називається програмним забезпеченням (software) і є однією з двох найважливіших частин комп'ютерної системи. Інша частина - апаратне забезпечення (hardware) є власне комп'ютером. Зараз починає вирізнятися ще і третя частина - інтелектуальне забезпечення (know ware).

Стандарт ISO/IEC визначає програмне забезпечення (software) як все або частина програм, процедур, правил і пов'язаної з ними документації інформаційної обчислювальної системи.

Український стандарт визначає програмне забезпечення (software) як програмний засіб, тобто взаємозв'язану сукупність програм, процедур, правил, документації і даних, що стосуються функціонування обчислювальної системи.

3.3. Системи програмного забезпечення

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*