- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания ВСТУП ДО ІНЖЕНЕРІЇ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ - М. Сидоров
Шрифт:
Интервал:
Закладка:
З мстою збереження властивостей обох типів моделей була роз роблена інтегрована модель СММІ - СММ 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. Системи програмного забезпечення