Зворо́тне семанти́чне трасува́ння (ЗСТ) — метод контролю якості, який дозволяє знаходити помилки, втрату або спотворення інформації в ході створення артефактів проекту: документації, коду тощо. Метод має найбільшу цінність на ранніх стадіях розробки програмного забезпечення, коли створюються та аналізуються вимоги та архітектура майбутньої системи, але коли ще немає коду для тестування. ЗСТ є частиною англ. P-Modeling Framework.
Вступ
Кожний етап процесу розробки програмного забезпечення можна розглядати як серію "перекладів" з однієї мови на іншу. На початку проекту замовник повідомляє команді свої вимоги до програми природною мовою (українською, англійською і т.і.). Ці побажання замовника часто виявляються неповними, нечіткими або можуть навіть суперечити одне одному. Першим кроком у низці "перекладів" є визначення і аналіз вимог замовника, перетворення їх у формальний список вимог до програмного забезпечення. Потім вимоги стають вихідним матеріалом для архітектури системи і її дизайну. Так крок за кроком команда створює мегабайти коду, написаного на досить формальній мові програмування.
Під час перекладу завжди присутній ризик помилки, неправильного тлумачення або втрати інформації. Інколи це не має значення, але іноді навіть невеликий дефект у специфікації вимог може викликати серйозні переробки системи на пізніх етапах проекту.
Зворотне семантичне трасування найчастіше використовується для:
- Перевірки UML моделей;
- Тестування виправлень помилок в коді;
- Перевірки змін у вимогах;
- Швидкої адаптації нового члена команди (людині дають завдання провести ЗСТ сесію - таким чином вона знайомиться з програмою, документацією, кодом і т.і. значно швидше, тому що їй потрібно не просто прочитати матеріал, але й проаналізувати його зміст та структуру).
Ролі
В процесі реалізації зворотного семантичного трасування головними дійовими особами є:
- автори артефактів (як вихідного, так і результуючого представлень);
- реверс-інженери;
- група експертів для оцінки якості артефакту;
- менеджер проекту, який здійснює подальше його просування.
Процес
Визначити всі артефакти проекту та їхній зв'язок
Зворотне семантичне трасування, як метод контролю якості, може бути застосоване до будь-якого артефакту проекту, навіть до будь-якої частини артефакту, навіть до одного рядка документу або коду. Це дозволяє виявити детально структуру помилок.
Проте очевидно, що виконання такої процедури для всіх документів і змін, може створити непотрібне навантаження для проектної команди. Аби запобігти цьому, застосування ЗСТ має бути обґрунтоване.
Який обсяг ЗСТ потрібно провести для забезпечення якості - вирішує компанія (відповідно до стандартів якості і процесів, прийнятих в компанії) і менеджер проекту (керуючись специфікою проекту).
В загальному випадку, кількість ЗСТ сесій визначається важливістю артефактів для проекту і рівнем контролю якості для цього артефакту (тестування, верифікація, рецензування тощо) .
Кількість ЗСТ сесій визначається на етапі планування проекту.
Насамперед менеджер проекту створює список всіх артефактів, які будуть створюватись у ході роботи над проектом. Цей список може бути зображений у вигляді дерева, що відображає зв'язки та співвідношення між артефактами. Артефакти можуть бути представлені як в єдиному екземплярі (наприклад, документ, що описує бачення проекту), так і в багатьох екземплярах (наприклад, завдання, помилки або ризики виконання з помилкою). Цей список може змінюватися впродовж проекту, але принцип прийняття рішення про ЗСТ буде незмінним.
Розставити пріоритети артефактів
Наступний крок - аналіз важливості артефактів і рівня контролю якості артефакту. Важливість документу - це ступінь його впливу на успіх проекту і якість фінального продукту. Важливість умовно можна виміряти за наступною шкалою:
- Дуже висока(1): якість артефакту є дуже важливою для загальної якості продукту і впливає на успіх проекту в цілому. Приклади таких артефактів: специфікація вимог, архітектура системи, виправлення критичних помилок в системі, ризики з високою ймовірністю.
- Висока(2): артефакт має вплив на якість фінального продукту. Наприклад: тест кейси, вимоги до інтерфейсу та юзабіліті, дефекти з високим пріоритетом, ризики з високою ймовірністю.
- Середня(3): артефакт має середній або побічний вплив на якість кінцевого продукту. Наприклад: план проекту, дефекти з середнім пріоритетом.
- Низька(4): артефакт має незначний вплив на якість створюваного програмного продукту. Наприклад: задачі програмістів, косметичні дефекти, ризики з низькою ймовірністю.
Рівень контролю якості для артефакту визначається відповідно до обсягу робіт з забезпечення якості артефакту, ймовірністю виникнення непорозумінь або спотворень інформації в ході його створення.
- Низький(1): Не передбачені тестування або перевірки (рецензії), ймовірні непорозуміння або втрата інформації, над артефактом працює розподілена географічно команда, існує мовний бар'єр і т.п.
- Середній(2): Рецензії не передбачені, над артефактом працює не розподілена команда.
- Достатній(3): Передбачене рецензування або парне програмування, над артефактом працює нерозподілена команда.
- Відмінний(4): Для артефакту передбачені парне програмування, верифікація та\або тестування, або юніт тестування. Є інструменти для створення чи тестування артефактів.
Визначити, хто буде проводити сесію ЗСТ
Успіх ЗСТ сесій в багатьох випадках залежить від правильного вибору реверс-інженерів - вони повинні мати достатню компетенцію, щоб зуміти відновити вихідний артефакт. Але в той же час, реверс-інженери не повинні знати деталей проекту, щоб уникнути упередженості під час відновлення інформації. В ідеалі, це мають бути спеціалісти з іншого проекту з подібними технологіями чи процесами.
Здійснити ЗСТ
Зворотне семантичне трасування починається, коли рішення про його необхідність прийнято і призначені відповідальні інженери для його виконання.
Менеджер проекту визначає які саме документи мають бути вхідними для даної сесії ЗСТ. Наприклад, це може бути додаткова інформація, яка дозволить реверс-інженеру відновити вхідний артефакт більш повно. Рекомендується також надати інформацію про розмір артефакту, що відновлюється, щоб допомогти реверс-інженерам визначити обсяг робіт: це може бути один-два рядка або декілька сторінок тексту. Хоча відновлений текст може не збігатися з вихідним за кількістю слів, але ці величини повинні бути співмірні.
Після цього реверс-інженери беруть артефакт і відновлюють вихідний текст. ЗСТ сесія зазвичай триває близько години (для 1 сторінки тексту, приблизно 750 слів).
Оцінити якість артефактів
Щоб завершити ЗСТ сесію, необхідно порівняти початковий і відновлений текст і оцінити якість артефактів. Рішення про переробку, доопрацювання і виправлення артефактів робиться на підставі цієї оцінки.
Для оцінки формується група експертів. Експерти повинні мати уявлення про наочну область проекту і мати достатньо досвіду, щоб оцінити якість артефакту. Наприклад, аналітик може бути експертом для порівняння і оцінки документа проекту, що описує бачення, і бачення, відновленого з вимог і сценаріїв.
Критерії оцінки і шкала:
- Відновлений і оригінальний тексти мають дуже великі змістовні відмінності і втрати критичної інформації.
- Відновлений і оригінальний тексти мають змістовні відмінності, втрату або спотворення важливої інформації.
- Відновлений і оригінальний тексти мають змістовні відмінності, незначну втрату або спотворення інформації.
- Відновлений і оригінальний тексти близькі за змістом, незначне спотворення інформації.
- Відновлений і оригінальний тексти дуже близькі, інформацію не втрачено (спотворена).
Кожен експерт дає свою оцінку, потім обчислюється середня оцінка (середнє арифметичне). Залежно від цієї оцінки, менеджер проекту ухвалює рішення про виправлення артефактів, їх переробку або доопрацюванню.
- Якщо оцінка ЗСТ знаходиться між 1 і 2 - якість артефакту дуже низька. Рекомендується переробити не тільки тестований артефакт, але і батьківський, для того, щоб внести однозначність до представленої там інформації. В цьому випадку може потрібно декілька сесій ЗСТ після доопрацювання артефактів.
- Для артефактів з оцінкою від 2 до 3 потрібне доопрацювання оцінюваного артефакту і рекомендується перегляд батьківського артефакту для того, щоб зрозуміти, що саме привело до втрати інформації. Додаткові ЗСТ-сесії не потрібні.
- Якщо середня оцінка від 3 до 4, потрібне доопрацювання тестованого артефакту, щоб виправити неточності.
- Якщо оцінка більше 4, це означає, що артефакт задовільної якості, доопрацювання не передбачається.
Фінальне рішення ухвалює менеджер проекту, воно повинне враховувати причини розбіжностей в початковому і відновленому текстах.
Оцінка впливу зворотного трасування на надійність ПЗ
Цілком очевидно, що використання зворотного трасування надає двоякий вплив на об'єктно-орієнтовані метрики складності розроблюваного програмного забезпечення:
- 1. З одного боку, збільшується складність розроблюваного програмного коду зважаючи на внесення додаткової інформації.
Тим самим повинно відбуватися зниження надійності програмного забезпечення.
- 2. З іншого боку, поліпшується супровід програмного забезпечення, що повинно приводити до поліпшення надійності створюваного ПЗ.
Перший чинник впливу зворотного трасування на надійність програмного забезпечення враховується автоматично з огляду на те, що використовувані при описі відносин між об'єктами зв'язку враховуються при розрахунку об'єктно-орієнтованих метрик складності.
Другий чинник впливу зворотного трасування на надійність програмного забезпечення вимагає внесення поправки в процес трасування.
Щоб врахувати вплив методу зворотного трасування пропонується наступний підхід. На підставі даних статистики помилок, які виявляються при розробці програмного забезпечення, проводиться оцінювання частки помилок різного класу. Для цього можна скористатися, наприклад даними по статистиці помилок, представленими та ін. Далі з допомогою експертних оцінок визначається відсоток помилок, які нейтралізуються за допомогою методу зворотного трасування програм. На цій основі робиться висновок про те, наскільки знижується кількість помилок у програмі завдяки проведенню зворотного трасування програми.
Посилання
Це незавершена стаття про інформаційні технології. Ви можете проєкту, виправивши або дописавши її. |
Ця стаття не містить . (листопад 2015) |
Ця стаття потребує додаткових для поліпшення її . (листопад 2015) |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Zvoro tne semanti chne trasuva nnya ZST metod kontrolyu yakosti yakij dozvolyaye znahoditi pomilki vtratu abo spotvorennya informaciyi v hodi stvorennya artefaktiv proektu dokumentaciyi kodu tosho Metod maye najbilshu cinnist na rannih stadiyah rozrobki programnogo zabezpechennya koli stvoryuyutsya ta analizuyutsya vimogi ta arhitektura majbutnoyi sistemi ale koli she nemaye kodu dlya testuvannya ZST ye chastinoyu angl P Modeling Framework VstupKozhnij etap procesu rozrobki programnogo zabezpechennya mozhna rozglyadati yak seriyu perekladiv z odniyeyi movi na inshu Na pochatku proektu zamovnik povidomlyaye komandi svoyi vimogi do programi prirodnoyu movoyu ukrayinskoyu anglijskoyu i t i Ci pobazhannya zamovnika chasto viyavlyayutsya nepovnimi nechitkimi abo mozhut navit superechiti odne odnomu Pershim krokom u nizci perekladiv ye viznachennya i analiz vimog zamovnika peretvorennya yih u formalnij spisok vimog do programnogo zabezpechennya Potim vimogi stayut vihidnim materialom dlya arhitekturi sistemi i yiyi dizajnu Tak krok za krokom komanda stvoryuye megabajti kodu napisanogo na dosit formalnij movi programuvannya Pid chas perekladu zavzhdi prisutnij rizik pomilki nepravilnogo tlumachennya abo vtrati informaciyi Inkoli ce ne maye znachennya ale inodi navit nevelikij defekt u specifikaciyi vimog mozhe viklikati serjozni pererobki sistemi na piznih etapah proektu Zvorotne semantichne trasuvannya najchastishe vikoristovuyetsya dlya Perevirki UML modelej Testuvannya vipravlen pomilok v kodi Perevirki zmin u vimogah Shvidkoyi adaptaciyi novogo chlena komandi lyudini dayut zavdannya provesti ZST sesiyu takim chinom vona znajomitsya z programoyu dokumentaciyeyu kodom i t i znachno shvidshe tomu sho yij potribno ne prosto prochitati material ale j proanalizuvati jogo zmist ta strukturu RoliV procesi realizaciyi zvorotnogo semantichnogo trasuvannya golovnimi dijovimi osobami ye avtori artefaktiv yak vihidnogo tak i rezultuyuchogo predstavlen revers inzheneri grupa ekspertiv dlya ocinki yakosti artefaktu menedzher proektu yakij zdijsnyuye podalshe jogo prosuvannya ProcesViznachiti vsi artefakti proektu ta yihnij zv yazok Zvorotne semantichne trasuvannya yak metod kontrolyu yakosti mozhe buti zastosovane do bud yakogo artefaktu proektu navit do bud yakoyi chastini artefaktu navit do odnogo ryadka dokumentu abo kodu Ce dozvolyaye viyaviti detalno strukturu pomilok Prote ochevidno sho vikonannya takoyi proceduri dlya vsih dokumentiv i zmin mozhe stvoriti nepotribne navantazhennya dlya proektnoyi komandi Abi zapobigti comu zastosuvannya ZST maye buti obgruntovane Yakij obsyag ZST potribno provesti dlya zabezpechennya yakosti virishuye kompaniya vidpovidno do standartiv yakosti i procesiv prijnyatih v kompaniyi i menedzher proektu keruyuchis specifikoyu proektu V zagalnomu vipadku kilkist ZST sesij viznachayetsya vazhlivistyu artefaktiv dlya proektu i rivnem kontrolyu yakosti dlya cogo artefaktu testuvannya verifikaciya recenzuvannya tosho Kilkist ZST sesij viznachayetsya na etapi planuvannya proektu Nasampered menedzher proektu stvoryuye spisok vsih artefaktiv yaki budut stvoryuvatis u hodi roboti nad proektom Cej spisok mozhe buti zobrazhenij u viglyadi dereva sho vidobrazhaye zv yazki ta spivvidnoshennya mizh artefaktami Artefakti mozhut buti predstavleni yak v yedinomu ekzemplyari napriklad dokument sho opisuye bachennya proektu tak i v bagatoh ekzemplyarah napriklad zavdannya pomilki abo riziki vikonannya z pomilkoyu Cej spisok mozhe zminyuvatisya vprodovzh proektu ale princip prijnyattya rishennya pro ZST bude nezminnim Rozstaviti prioriteti artefaktiv Nastupnij krok analiz vazhlivosti artefaktiv i rivnya kontrolyu yakosti artefaktu Vazhlivist dokumentu ce stupin jogo vplivu na uspih proektu i yakist finalnogo produktu Vazhlivist umovno mozhna vimiryati za nastupnoyu shkaloyu Duzhe visoka 1 yakist artefaktu ye duzhe vazhlivoyu dlya zagalnoyi yakosti produktu i vplivaye na uspih proektu v cilomu Prikladi takih artefaktiv specifikaciya vimog arhitektura sistemi vipravlennya kritichnih pomilok v sistemi riziki z visokoyu jmovirnistyu Visoka 2 artefakt maye vpliv na yakist finalnogo produktu Napriklad test kejsi vimogi do interfejsu ta yuzabiliti defekti z visokim prioritetom riziki z visokoyu jmovirnistyu Serednya 3 artefakt maye serednij abo pobichnij vpliv na yakist kincevogo produktu Napriklad plan proektu defekti z serednim prioritetom Nizka 4 artefakt maye neznachnij vpliv na yakist stvoryuvanogo programnogo produktu Napriklad zadachi programistiv kosmetichni defekti riziki z nizkoyu jmovirnistyu Riven kontrolyu yakosti dlya artefaktu viznachayetsya vidpovidno do obsyagu robit z zabezpechennya yakosti artefaktu jmovirnistyu viniknennya neporozumin abo spotvoren informaciyi v hodi jogo stvorennya Nizkij 1 Ne peredbacheni testuvannya abo perevirki recenziyi jmovirni neporozuminnya abo vtrata informaciyi nad artefaktom pracyuye rozpodilena geografichno komanda isnuye movnij bar yer i t p Serednij 2 Recenziyi ne peredbacheni nad artefaktom pracyuye ne rozpodilena komanda Dostatnij 3 Peredbachene recenzuvannya abo parne programuvannya nad artefaktom pracyuye nerozpodilena komanda Vidminnij 4 Dlya artefaktu peredbacheni parne programuvannya verifikaciya ta abo testuvannya abo yunit testuvannya Ye instrumenti dlya stvorennya chi testuvannya artefaktiv Viznachiti hto bude provoditi sesiyu ZST Uspih ZST sesij v bagatoh vipadkah zalezhit vid pravilnogo viboru revers inzheneriv voni povinni mati dostatnyu kompetenciyu shob zumiti vidnoviti vihidnij artefakt Ale v toj zhe chas revers inzheneri ne povinni znati detalej proektu shob uniknuti uperedzhenosti pid chas vidnovlennya informaciyi V ideali ce mayut buti specialisti z inshogo proektu z podibnimi tehnologiyami chi procesami Zdijsniti ZST Zvorotne semantichne trasuvannya pochinayetsya koli rishennya pro jogo neobhidnist prijnyato i priznacheni vidpovidalni inzheneri dlya jogo vikonannya Menedzher proektu viznachaye yaki same dokumenti mayut buti vhidnimi dlya danoyi sesiyi ZST Napriklad ce mozhe buti dodatkova informaciya yaka dozvolit revers inzheneru vidnoviti vhidnij artefakt bilsh povno Rekomenduyetsya takozh nadati informaciyu pro rozmir artefaktu sho vidnovlyuyetsya shob dopomogti revers inzheneram viznachiti obsyag robit ce mozhe buti odin dva ryadka abo dekilka storinok tekstu Hocha vidnovlenij tekst mozhe ne zbigatisya z vihidnim za kilkistyu sliv ale ci velichini povinni buti spivmirni Pislya cogo revers inzheneri berut artefakt i vidnovlyuyut vihidnij tekst ZST sesiya zazvichaj trivaye blizko godini dlya 1 storinki tekstu priblizno 750 sliv Ociniti yakist artefaktiv Shob zavershiti ZST sesiyu neobhidno porivnyati pochatkovij i vidnovlenij tekst i ociniti yakist artefaktiv Rishennya pro pererobku doopracyuvannya i vipravlennya artefaktiv robitsya na pidstavi ciyeyi ocinki Dlya ocinki formuyetsya grupa ekspertiv Eksperti povinni mati uyavlennya pro naochnu oblast proektu i mati dostatno dosvidu shob ociniti yakist artefaktu Napriklad analitik mozhe buti ekspertom dlya porivnyannya i ocinki dokumenta proektu sho opisuye bachennya i bachennya vidnovlenogo z vimog i scenariyiv Kriteriyi ocinki i shkala Vidnovlenij i originalnij teksti mayut duzhe veliki zmistovni vidminnosti i vtrati kritichnoyi informaciyi Vidnovlenij i originalnij teksti mayut zmistovni vidminnosti vtratu abo spotvorennya vazhlivoyi informaciyi Vidnovlenij i originalnij teksti mayut zmistovni vidminnosti neznachnu vtratu abo spotvorennya informaciyi Vidnovlenij i originalnij teksti blizki za zmistom neznachne spotvorennya informaciyi Vidnovlenij i originalnij teksti duzhe blizki informaciyu ne vtracheno spotvorena Kozhen ekspert daye svoyu ocinku potim obchislyuyetsya serednya ocinka serednye arifmetichne Zalezhno vid ciyeyi ocinki menedzher proektu uhvalyuye rishennya pro vipravlennya artefaktiv yih pererobku abo doopracyuvannyu Yaksho ocinka ZST znahoditsya mizh 1 i 2 yakist artefaktu duzhe nizka Rekomenduyetsya pererobiti ne tilki testovanij artefakt ale i batkivskij dlya togo shob vnesti odnoznachnist do predstavlenoyi tam informaciyi V comu vipadku mozhe potribno dekilka sesij ZST pislya doopracyuvannya artefaktiv Dlya artefaktiv z ocinkoyu vid 2 do 3 potribne doopracyuvannya ocinyuvanogo artefaktu i rekomenduyetsya pereglyad batkivskogo artefaktu dlya togo shob zrozumiti sho same privelo do vtrati informaciyi Dodatkovi ZST sesiyi ne potribni Yaksho serednya ocinka vid 3 do 4 potribne doopracyuvannya testovanogo artefaktu shob vipraviti netochnosti Yaksho ocinka bilshe 4 ce oznachaye sho artefakt zadovilnoyi yakosti doopracyuvannya ne peredbachayetsya Finalne rishennya uhvalyuye menedzher proektu vono povinne vrahovuvati prichini rozbizhnostej v pochatkovomu i vidnovlenomu tekstah Ocinka vplivu zvorotnogo trasuvannya na nadijnist PZ Cilkom ochevidno sho vikoristannya zvorotnogo trasuvannya nadaye dvoyakij vpliv na ob yektno oriyentovani metriki skladnosti rozroblyuvanogo programnogo zabezpechennya 1 Z odnogo boku zbilshuyetsya skladnist rozroblyuvanogo programnogo kodu zvazhayuchi na vnesennya dodatkovoyi informaciyi Tim samim povinno vidbuvatisya znizhennya nadijnosti programnogo zabezpechennya 2 Z inshogo boku polipshuyetsya suprovid programnogo zabezpechennya sho povinno privoditi do polipshennya nadijnosti stvoryuvanogo PZ Pershij chinnik vplivu zvorotnogo trasuvannya na nadijnist programnogo zabezpechennya vrahovuyetsya avtomatichno z oglyadu na te sho vikoristovuvani pri opisi vidnosin mizh ob yektami zv yazku vrahovuyutsya pri rozrahunku ob yektno oriyentovanih metrik skladnosti Drugij chinnik vplivu zvorotnogo trasuvannya na nadijnist programnogo zabezpechennya vimagaye vnesennya popravki v proces trasuvannya Shob vrahuvati vpliv metodu zvorotnogo trasuvannya proponuyetsya nastupnij pidhid Na pidstavi danih statistiki pomilok yaki viyavlyayutsya pri rozrobci programnogo zabezpechennya provoditsya ocinyuvannya chastki pomilok riznogo klasu Dlya cogo mozhna skoristatisya napriklad danimi po statistici pomilok predstavlenimi ta in Dali z dopomogoyu ekspertnih ocinok viznachayetsya vidsotok pomilok yaki nejtralizuyutsya za dopomogoyu metodu zvorotnogo trasuvannya program Na cij osnovi robitsya visnovok pro te naskilki znizhuyetsya kilkist pomilok u programi zavdyaki provedennyu zvorotnogo trasuvannya programi PosilannyaCe nezavershena stattya pro informacijni tehnologiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno listopad 2015 Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno listopad 2015