Технологія створення програмних продуктів (2024)

Тема 6. Стандартизація ІТ-галузі

Лекція 11. Огляд основних вітчизняних та світових стандартів ІТ-галузі


Лекція 11

Огляд основних вітчизняних та світових стандартів ІТ-галузі

Як будь-яка діяльність, програмна інженерія розвивалась від творчих спроб знайти рішення нетривіальної проблеми до цілком формалізованих та чітко регульованих проектів, які поділяються на відомі типи. Тобто діяльність у цій галузі перейшла від «творчого безладу» до організованих проектів із визначеними технологіями.

В процесі упорядкування діяльності обов’язково виникають рекомендації, побудовані на галузевому досвіді, які спочатку трансформуються у нормативні документи підприємств, потім та паралельно виникають так звані галузеві стандарти – документи, що фіксують загально прийняті у певній діяльності методи та техніки. Коли та чи інша держава визнає діяльність важливою для своєї економіки, то вона створює регуляторні документи, які називають державними стандартами.

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

На слайді представлена класифікація стандартів за рівнем їх впливу на діяльність (від найширшого до найвужчого).

11.1        Загальна класифікація стандартів

11.2        Стандарти у ІТ-галузі

На слайді представлений частковий перелік стандартів у ІТ-галузі, розділений на групи.

11.2.1        Галузеві стандарти:

Усі провідні компанії-розробники програмних продуктів користуються широким спектром технологій створення ПЗ. Одна з найбільш формалізованих технологій, які претендують на роль світового корпоративного стандарту- Rational Unified Process (RUP), із цього процесу фактично виросла мова UML, метою якої є надання системним архітекторам, інженерам програмного забезпечення та розробникам програмного забезпечення інструментів для аналізу, проектування та впровадження програмних систем, (з 2012 р. UML є міжнародним стандартом на проектування ІС).

IEEE (Institute of Electrical and Electronics Engineers) організація, яка є розробником галузевих стандартів у ІТ-галузі та активно впливає на розвиток міжнародних стандартів;

SWEBOK (Guide to the Software Engineering Body of Knowledge) – Керівництво до зведення знань з програмної інженерії – галузевий стандарт IEEE, що систематизує основні види діяльності з програмної інженерії

Серед державних стандартів можна виділити:

GDPR (General Data Protection Regulation) - регламент щодо захисту персональних даних (діє в ЄС з 2018), глобалізація економік привела до того, що цей стандарт вплинув на усі міжнародні компанії, які діють на території ЄС;

ДСТУ – державні стандарти України;

CMM (Capability Maturity Model) – сукупність моделей вдосконалення процесів підприємств (переріс у галузевий);

TickIT – стандарт на систему управління якістю ПЗ, прийнятий у Великобританії та Швеції;

Міжнародні стандарти:

ISO – абривіатура показує, що документ розроблений Міжнародною організацією зі стандартизації

Класифікація стандартів розроблення програмних систем (Systems and software engineering)

  1. ISO/IEC 12207 Systems and software engineering – Software Life Cycle Processes - стандарт на процеси та организацію життєвого циклу всіх видів ПЗ;
  2. ISO/IEC 15288 Systems and software engineering - System life cycle processes - стандарт на процеси життєвого циклу систем;
  3. ISO 29148-2011 - Systems and software engineering -- Life cycle processes --Requirements engineering – замінив IEEE 830-1998 (Recommended Practice for Software Requirements Specifications – стандарт на документування вимог до ПП), IEEE 1233-1998, IEEE 1362-1998. 

GDPR (General Data Protection Regulation) - регламент щодо захисту персональних даних (діє в ЄС з 2018), глобалізація економік привела до того, що цей стандарт вплинув на усі міжнародні компанії, які діють на території ЄС;

ДСТУ – державні стандарти України (ГОСТ 34.xxx дія часткова, ЕСПД 19.ххх на цей час уже відмінений)

SWEBOK – Керівництво до зведення знань з програмної інженерії – галузевий стандарт IEEE, що систематизує основні види діяльності з програмної інженерії

TickIT – стандарт на систему управління якістю ПЗ, прийнятий у Великобританії та Швеції;

Нижче перелічені стандарти за походженням є державними, але фактично вже стали галузевими:

CMMI – сукупність моделей вдосконалення процесів підприємств (із США);

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

11.3        Організації- розробники міжнародних стандартів

ISO (International Organization for Standardization) - Міжнародною організацією зі стандартизації
IEC (International Electrotechnical Commission) – Міжнародний комітет з електротехніки. Входить до складу ISO

У цьому комітеті стандарти для ІТ-галузі розробляють JTC 1 Information technology (Об’єднаний комітет з інформаційних технологій), а у ньому за програмну та системну інженерію відповідає підкомітет SC 7 Software and systems engineering

Приклад позначення стандарту, який містить посилання на відповідальних за розробку:

ISO/IEC 15289:2017

Читаємо так: міжнародний стандарт номер 15289, розроблений Міжнародним комітетом з електротехніки, остання затверджена версія 2017 року.

11.3.1        ISO/IEC 12207:2017 Systems and software engineering – Software Life Cycle Processes

Основні процеси

Договірні процеси

Організаційні процеси

11.3.2        ISO/IEC 15288:2015 Systems and software engineering - System life cycle processes

Процеси підприємства

Проектні процеси

Технічні процеси

Договірні процеси

Спеціальні процеси

11.3.3        ISO/IEC 15289:2017 Systems and software engineering - Content of life-cycle information items (documentation)

Призначений для забезпечення вимог для ідентифікації та планування інформаційних елементів, які мають бути розроблені або модифіковані під час ЖЦ ІС або ПЗ, або під час сервісних процесів

Даний стандарт дає рекомендації для застосування вимог, пов'язаних з процесами, описаними в ISO 12207, ISO15288 та ISO 20000. Остання версія 2017 р.

11.3.4        ISO/IEC 19505:2012 Information technology – Object Management Group Unified Modeling Language (OMG UML)

ISO 19505 визначає UML 2.4.1 як міжнародний стандарт аналізу, проектування та реалізації систем на основі програмного забезпечення.

Найновіша офіційна версія UML 2.5.1 (2017)

Є невід'ємною частиною уніфікованого процесу розробки програмного забезпечення (RUP).

UML є мовою широкого профілю, це відкритий стандарт, що використовує графічні позначення для створення абстрактної моделі системи, називаної UML-моделлю.

11.3.5        ISO/IEC 20000:2017 Information technology - Service management

Визначає вимоги до якості надання IT-послуг, включаючи процеси планування, розробки, переходу, постачання та вдосконалення послуг для задоволення вимог до обслуговування та доставки.

Призначений для використання:

11.3.6        Родина стандартів ISO/IEC 27000 - Information technology - Security techniques - Information security management systems (ISMS)

Надають рекомендації щодо організації інформаційної безпеки (ІБ)

ISO 27002:2013

Code of practice for information security controls

Надає рекомендації щодо організації ІБ та методів управління ІБ

ISO 27017:2015

Code of practice for information security controls based on ISO/IEC 27002 for cloud services

Надає рекомендації щодо контролю ІБ при наданні хмарних сервісів

ISO 27018:2019

Code of practice for protection of personally identifiable information (PII) in public clouds acting as PII processors

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

Стандарт

Назва

Призначення

ISO 27000:2018

Overview and vocabulary

Огляд та словник систем ІБ

ISO 27001:2013

Requirements

Визначає вимоги щодо створення, впровадження, підтримки та постійного вдосконалення системи управління ІБ в організації

11.3.7        Група стандартів ISO/IEC 29110 Systems and software engineering - Life cycle profiles for Very Small Entities

Very Small Entities (VSE) – компанії, організації, відділи або проектні групи розміром до 25 осіб

Надає рекомендації щодо організації процесів усього ЖЦ програмної системи вході розробки у малих групах, які є підрядниками більших компаній. 

Частина 3

Certification and

Assessment guide

Описує процес, якому потрібно слідувати, для оцінювання можливостей наявних процесів та зрілості організаційного процесу

Частина 5

Management and engineering guide

Надає вказівки щодо впровадження та використання профілю - пакети розгортання (Deployment Packeges)

ISO 29110

Назва

Призначення

Частина 1

Overview

Представляє основні поняття, необхідні для розуміння та використання документів

Частина 2

Framework

Вказує елементи, загальні для всіх профілів (структура, відповідність, оцінка) і вводить каталог профілів стандарту

Частина 4

Profile specifications

Описує структуру профілю, надає нормативні посилання

11.3.8        Група стандартів ISO/IEC 29119 Systems and software engineering -  Software testing

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

Частина 3

Test documentation

Замінив стандарт IEEE 829-2008 - Software test documentation

Частина 5

Keyword-driven testing

ISO 29119

Назва

Примітка

Частина 1

Concepts and definitions

 

Частина 2

Test processes

 

Частина 4

Test techniques

 

11.3.9        ISO/IEC 29148:2018 Systems and software engineering - Life cycle processes - Requirements engineering

Замінив IEEE 830-1998, IEEE 1233-1998, IEEE 1362-1998. 

11.3.10        ISO/IEC 90003:2018 Software engineering -- Guidelines for the application of ISO 9001:2015 to computer software

Надає керівництво для застосування організаціями стандарту ISO 9001: 2015 до придбання, постачання, розробки, експлуатації та обслуговування комп'ютерного програмного забезпечення та пов'язаних з ними послуг з підтримки 

11.3.11        Інші міжнародні стандарти (https://www.iso.org)

  1. ISO/IEC/IEEE 24765:2017 Systems and software engineering - Vocabulary – містить словник термінів в галузі ІС та ПЗ.
  2. ISO 26512:2018 Systems and software engineering - Requirements for acquirers and suppliers of user documentation – огляд процесів забезпечення користувачів послідовною, повною, точною та корисною інформацією.
  3. ISO 26514:2008 Systems and software engineering - Requirements for designers and developers of user documentation - вимоги для проектування та розробки користувацької документації як частини процесів ЖЦ.
  4. ISO/IEC 9798-x Information technology - Security techniques – група стандартів з інформаційної безпеки.
  5. ISO/IEC 29100: Information technology - Security techniques - Privacy framework – визначає загальну термінологію, суб'єктів та їхні ролі в обробці персональної інформації (PII), описує принципи захисту конфіденційності.
  6. ISO/IEC 330xx Information Technology – Process Assessment  – родина стандартів оцінки процесів розробки та супроводу ПЗ.

11.4        Орган стандартизації україни

Державне підприємство “Український науково-дослідний і навчальний центр проблем стандартизації, сертифікації та якості” (ДП “УкрНДНЦ”)

http://uas.org.ua/ua/

11.5        Державні стандарти україни

На початок 2019 року перелік ДСТУ містив з інформаційних технологій 679 найменувань з інженерії систем і програмного забезпечення 122 найменуваня.

ДСТУ ISO/IEC/IEEE 12207:2018 Інженерія систем і програмних засобів. Процеси життєвого циклу програмних засобів (з 15.08.2018р.).

ДСТУ ISO/IEC/IEEE 15288:2016 Інженерія систем і програмних засобів. Процеси життєвого циклу програмних засобів (з 01.01.2018р.).

ДСТУ ISO/IEC TR 15271:2010 Інформаційні технології. Настанови щодо застосування ISO/IEC 12207 (Процеси життєвого циклу програмного забезпечення) (з 01.07.2012р.).

  1. ДСТУ ISO/IEC 15289:2014 Інженерія систем і програмного забезпечення. Контент життєвого циклу інформаційної продукції (документації) (з 01.01.2016р.).
  2. ДСТУ ISO/IEC/IEEE 24765:2017 Інженерія систем і програмних засобів. Словник термінів (з 15.08.2018р.).
  3. ДСТУ ISO/IEC/IEEE 29148:2015 Розроблення систем і програмного забезпечення. Процеси життєвого циклу. Розроблення вимог (з 01.01.2016р.).
  4. ДСТУ ISO 15910-2012 – Інформаційні технології. Документування програм. Документація користувача (з 01.07.2018р.).
  5. ЄСПД 19.ххх – Єдина система програмної документації (діяли до 01.01.2019р).
  6. ГОСТ 34.ххх – Нормативні вимоги до автоматизованих систем (частково діють).

Державні стандарти україни з інформаційних технологій

Позначення

Назва

Термін дії

ГОСТ 34.603-93

Виды испытаний автоматизированных систем

до 01.01.22

Комплекс стандартов на автоматизированные системы

ГОСТ 34.201-89

Виды, комплектность и обозначение документов при создании автоматизированных систем

ГОСТ 34.601-90

Автоматизированные системы. Стадии создания

ГОСТ 34.602-89

Техническое задание на создание автоматизированной системы

11.6        Стандарт CMMІ на зрілість процесів розробки ПЗ

Стандарт міністерства оборони США для вибору підрядника для виконання державних замовлень ПЗ.

  1. 1984 рік – у США створено Інститут інженерів-розробників програмного забезпечення (Software Engineering Institute, SEI).
  2. 1986 рік - SEI та корпорація Mitre почали розробку критеріїв оцінки зрілості технологічних процесів – Capability Maturity Model (CMM).
  3. 1987 р. Software Engineering Institute (SEI) розробив модель огляду зрілості процесів розроблення програмного забезпечення Capability Maturity Model (CMM). Модель розвивалась до 1997 р.
  4. 2002 р. розроблена Capability maturity model integration (CMMI) v.1.1 – методологія удосконалення процесів організації, спрямована на поліпшення зручності використання моделей зрілості шляхом інтеграції моделей в одну структуру
  5. 2010 р. вийшла версія 1.3 CMMI, яка містила підтримку гнучкої розробки та безперервної поставки ПЗ
  6. 2018 р. вийшла версія 2.0 CMMI, яка об’єднала три моделі в одну

Ключове поняття – Зрілість організації (Maturity)

Містить критерії оцінки зрілості компанії та перелік дій для подальшого вдосконалення

11.6.1        Capability Maturity Model Integration (CMMI)

Ключові області процесу (Key Process Area) на рівнях зрілості організації містять-

11.6.2        Рівні CMMI 2.0

Shape1

11.6.3        Ключові області керованого рівня (CMMI)

11.6.4        Ключові області визначеного рівня (CMMI)

11.6.5        Ключові області кількісно керованого рівня (CMMI)

11.6.6        Ключові області рівня оптимізації (CMMI)

11.7        Бібліотека інфраструктури інформаційних технологій (ITIL)

Information Technology Infrastructure Library (ITIL) - сукупність кращих світових практик організації підприємства чи підрозділу, що надає послуги у сфері інформаційних технологій

v.4.0 - лютий 2019р.

Мета - забезпечення гнучкої, скоординованої та інтегрованої системи ефективного управління IT-послугами

11.8        Регламент захисту персональних даних (GDPR)

General Data Protection Regulation (GDPR) - регламент щодо захисту персональних даних (діє в ЄС з 25.05.2018).

Поширюється не тільки на резидентів Євросоюзу, але й на компанії з третіх країн, які обробляють персональні дані європейських громадян.

Визначає, що процедура оцінки впливу на захист даних (Data Protection Impact Assessment, DPIA) повинна виявити високі ризики, які можуть виникнути в процесі обробки персональних даних громадян ЄС і має бути ініційована до початку їх обробки.

11.9        Організації- розробники галузевих стандартів

Асоціація обчислювальної техніки (Association for Computing Machinery, ACM)

Інституту інженерів з радіоелектроніки та електротехніки (Institute of Electrical and Electronics Engineers, IEEE) ieee.org

Рада з системної інженерії (Council on Systems Engineering, INCOSE)

Міжнародний інститут бізнес аналізу (International Institute of Business Analysis, IIBA) iiba.org

Інститут проектного менеджменту (Project Management Institute, PMI) pmi.org

11.10        Галузеві стандарти IEEE

  1. IEEE 1016-2009 Std for Software Design Descriptions – рекомендації до документів, які описують архітектуру ПЗ.
  2. IEEE 1012-2016 Std for Software Verification and Validation – стандарт на верифікацію та валідацію ПЗ.
  3. IEEE 829-2008 Std for Software and System Test Documentation – рекомендації до документів, які описують процес тестування ПЗ.
  4. IEEE 730-2014 Std for Software Quality Assurance Processes – стандарт містить вимоги щодо ініціювання, планування, контролю та виконання процесів із забезпечення якості ПЗ як під час розроблення, так і під час експлуатації.

11.11        Керівництво до зведення знань з програмної інженерії (SWEBoK)

Guide to the Software Engineering Body of Knowledge, SWEBoK - сукупність знань (15 галузей знань) та практичні рекомендації щодо ведення процесів програмної інженерії. Версія 3.0, 2014р.

Галузі знань (Knowledge Areas) SWEBOK v.3

Software Requirements 

Software Design

Software Construction 

Software Testing 

Software Maintenance 

Software Configuration Management

Software Engineering Management 

Software Engineering Process 

Software Engineering Tools and Methods 

Software Quality 

Software engineering professional practice 

Software engineering economics

Computing foundations

Mathematical foundations

Engineering foundations

11.12        Керівництво до зведення знань з системної інженерії (SEBOK)

Guide to the Systems Engineering Body of Knowledge (SEBoK) надає сукупність ключових галузей знань і посилань з системної інженерії. Постійно оновлюється. Версія 1.9.1, 2018р.

Склад SEBoK v.1.9.1

Introduction

Foundations of Systems Engineering

Systems Engineering and Management

Applications of Systems Engineering

Enabling Systems Engineering

Related Disciplines

Systems Engineering Implementation Examples

11.13        Керівництво до зведення знань з бізнес аналізу (BABOK)

Guide to the Business Analysis Body of Knowledge (BABoK) описує стандартні підходи до виконання бізнес-аналізу предметної області. Версія 3.0, 2015 р.

Галузі знань (Knowledge Areas) BABoK v.3

Business Analysis Planning and Monitoring

Elicitation and Collaboration

Requirements Life Cycle Management

Strategy Analysis

Requirements Analysis and Design Definition

Solution Evaluation

11.14        Стандарти оформлення коду

Programming style/ Code style/ Coding conventions - сукупність правил стильового оформлення програмного коду, практик та методів написання програм конкретною мовою програмування

Можуть бути:

11.15        Стандарти підприємств на розробку та супровід ПЗ


© 2023 СумДУ
created with Lectur'EDbeta