КАТЕГОРИИ:


Астрономия- (809) Биология- (7483) Биотехнологии- (1457) Военное дело- (14632) Высокие технологии- (1363) География- (913) Геология- (1438) Государство- (451) Демография- (1065) Дом- (47672) Журналистика и СМИ- (912) Изобретательство- (14524) Иностранные языки- (4268) Информатика- (17799) Искусство- (1338) История- (13644) Компьютеры- (11121) Косметика- (55) Кулинария- (373) Культура- (8427) Лингвистика- (374) Литература- (1642) Маркетинг- (23702) Математика- (16968) Машиностроение- (1700) Медицина- (12668) Менеджмент- (24684) Механика- (15423) Науковедение- (506) Образование- (11852) Охрана труда- (3308) Педагогика- (5571) П Архитектура- (3434) Астрономия- (809) Биология- (7483) Биотехнологии- (1457) Война- (14632) Високи технологии- (1363) География- (913) Геология- (1438) Древна литература и фантастика Култура, Изкуство, Култура, Изкуство, Култура, Изкуство, Образование, Наука и Образование, Списания, Художествена литература (373) Култура- (8427) Лингвистика- (374 ) Медицина- (12668 ) Naukovedenie- (506) Образование- (11852) Защита на труда- ( 3308) Педагогика- (5571) P Политика- (7869) Право- (5454) Приборостроение- (1369) Программирование- (2801) Производство- (97182) Промышленность- (8706) Психология- (18388) Религия- (3217) Связь- (10668) Сельское хозяйство- (299) Социология- (6455) Спорт- (42831) Строительство- (4793) Торговля- (5050) Транспорт- (2929) Туризм- (1568) Физика- (3942) Философия- (17015) Финансы- (26596) Химия- (22929) Экология- (12095) Экономика- (9961) Электроника- (8441) Электротехника- (4623) Энергетика- (12629) Юриспруденция- (1492) Ядерная техника- (1748) Олимпиада- (1312) Политика- (7869) Право- (5454) Инструменти- ( 1369) Програмиране- (2801) Производство- (97182) Промишленост- (8706) Психология- (18388) Земеделие- (299) Социология- (6455) Спорт- (42831) Строителство- (4793) Търговия- (5050) Транспорт- (2929) Туризъм- (1568) Физика- (3942) ) Химия- (22929) Екология- (12095) Икономика- (9961) Електроника- (8441) Електротехника- (4623) Енергетика- (12629 )

А.4.2 Модули

Вижте също:
  1. GIRK каналите се модулират от фосфатидилинозитол-4,5-дифосфат, вътреклетъчни Na ​​йони, рН.
  2. IGBT модули
  3. IGBT модули
  4. Амплитудна модулация с комплексен модулиращ сигнал.
  5. Амплитудни модулирани и амплитудно манипулирани сигнали
  6. Амплитуден модулиран сигнал
  7. Амплитуден модулиран сигнал
  8. Аналогови входни модули с галванична изолация
  9. По принцип честотните модулирани сигнали са описани от функцията
  10. И компонентите, модулиращи квадратура, са дадени от изразите
  11. Комуникационни модули

Модулът обикновено е сравнително малък архитектурен елемент, който може да бъде определен по отношение на свойствата, разглеждани във вътрешната структура на TSF (ADV_INT). Когато в PP или ST присъстват изискванията на компонента ADV_TDS.3 "Основен модулен проект" (или по-висок) и изискванията на вътрешната структура на TSF (ADV_INT), "модулът" се отнася за същите изисквания за TOE (ADV_TDS) като "модул" в изискванията на вътрешната структура на TSF (ADV_INT). За разлика от подсистемите, модулите описват изпълнението на ниво подробности, което може да послужи като ръководство за валидиране на представянето на изпълнението.

Важно е да се отбележи, че в зависимост от TOE, модулите и подсистемите могат да принадлежат към същото ниво на абстракция. За компонентите на проект ADV_TDS.1 Base и ADV_TDS.2 Architecture Project (които не изискват описание на ниво модул), описанието на подсистемата осигурява най-ниското ниво на детайлност за TSF. За компонента ADV_TDS.3 "Основен модулен проект" (който изисква описания на модули) тези описания осигуряват най-ниско ниво на детайлност, докато описанията на подсистемите (ако съществуват като отделни обекти) служат само в контекста на прехода към описанието на модулите. Това означава, че не е необходимо да се предоставят подробни описания на подсистемите, ако има описания на модулите. В ОС, които са сравнително прости, не се изискват отделни "описания на подсистемите"; изискванията могат да бъдат изпълнени, като се използва документацията, предоставена за модулите. За комплексните ОО целта за описване на подсистемите (спрямо TSF) е да предостави на читателя контекст, така че да може да съсредоточи анализа си в съответствие. Това разграничение е показано на фигура A.3.

Модулът, който изпълнява FTB, е модул, който напълно или частично изпълнява изискванията за функционална безопасност (FTB) в ST. Такива модули могат да прилагат ИФБО, които дават възможност за въвеждане на FTB, но някои от функциите, описани в FTB (например функционалността за одитиране и повторно използване на обекти), може да не са пряко свързани с един IFBO. Както в случая на подсистемите, модулите, допринасящи за прилагането на FTB, са модулите, които зависят от модула, който осигурява изпълнението на FTB, но не са отговорни за директното въвеждане на FTB. Модулите, които не влияят върху ефективността на FTB, са модулите, които не са пряко или непряко свързани с осигуряването на прилагането на FTB.

Важно е да се отбележи, че определението за "директно изпълнява" е донякъде субективно. В тесен смисъл, той може да бъде интерпретиран като един или два реда код, които всъщност изпълняват сравнението, операцията за нулиране и т.н., които изпълняват изискването. Широкото тълкуване е, че системата включва модул, който се нарича в отговор на повикване до TSFB, което предвижда изпълнението на FTB, както и всички модули, които могат да бъдат използвани оттук от този модул (и така нататък, докато обаждането бъде завършено). Нито едно от тези интерпретации не е задоволително, тъй като ограниченията на първата интерпретация могат да доведат до неправилно класифициране на важни модули като модули, допринасящи за прилагането на FTB, а вторият до факта, че модулите, които всъщност не са модули, ще бъдат класифицирани като такива.



Описанието на модула трябва да бъде такова, че изпълнението на модула да може да бъде създадено от описанието и резултантното му изпълнение да е 1) идентично на действителното изпълнение на TSF по отношение на представените интерфейси, 2) идентично при прилагане на интерфейсите, специфицирани в проекта, и 3) функционално еквивалентно на описанието целта на модула на TSF. Например, RFC 793 предоставя описание на TCP протокола на високо ниво. Необходимо е да не зависи от изпълнението. Макар че е изпълнен с подробности, не е подходящо описание на проекта, тъй като не е от съществено значение за изпълнението му. Действителното внедряване може да допълни протокола, дефиниран в RFC, и изборите за внедряване (например използване на глобални данни вместо локални данни в различни части на изпълнението) могат да повлияят върху извършения анализ. Описанието на проекта TCP модул трябва да изброява интерфейсите, представени в изпълнението (а не тези, дефинирани в RFC 793), както и описанието на алгоритъма за обработка, свързан с модулите за внедряване на TCP (при условие че са част от TSF).

В проекта модулите са описани подробно по отношение на функциите (заданията), които те предоставят; интерфейсите, които те предоставят (ако се изискват от критериите); връща стойности от такива интерфейси; използваните от тях интерфейси (представени от други модули) (при условие че тези интерфейси също трябва да опишат); както и описание на начина, по който те предоставят функционалността си, използвайки технология, която е подходяща за метода на модула за внедряване.

Целта на модула трябва да бъде описана с указание за това, каква функция осигурява модулът. Достатъчно е читателят да получи обща представа коя функция на модула е в тази архитектура.

Интерфейсите, представени от модула, са тези интерфейси, които се използват от други модули, за да се извикат предоставените функции. Интерфейсите включват както изрични интерфейси (например поредица от повиквания, направени от други модули), така и имплицитни интерфейси (например глобални данни, които управлява модулът). Интерфейсите са описани по отношение на начина, по който се извикват, както и на всички връщащи се стойности. Това описание включва списък с параметри и описания на тези параметри. Ако се приеме, че даден параметър взема набор от стойности (например параметъра на флага), тогава ще трябва да определите пълния набор от стойности, които параметърът може да приеме и който може да повлияе на обработката на модула. Освен това, параметрите, представящи структурите на данни, са описани по такъв начин, че всяко поле на структурите на данните е дефинирано и описано. Глобалните данни трябва да бъдат описани до степента, необходима за разбирането на тяхната цел. Необходимо е нивото на описанието, което се изисква за глобалната структура на данните, да бъде идентично с описанието на модулните интерфейси, при което входните параметри и връщащите стойности съответстват на отделните полета и техните възможни стойности в структурата на данните. Глобалните структури от данни могат да бъдат описани отделно от модулите, които ги управляват или четат, тъй като модулният проект съдържа достатъчно информация за променящите се глобални структури от данни или информация, извлечена от глобалните структури от данни.

Трябва да се отбележи, че различните езици за програмиране могат да имат допълнителни "интерфейси", които не винаги са очевидни; Пример за това е операторът / функцията за претоварване в C ++. Този "имплицитен интерфейс" в описанието на класа също трябва да бъде описан като част от проекта на модула. Трябва да се отбележи, че макар модулът да може да представлява само един интерфейс, по-често един модул представлява малък набор от свързани интерфейси.

Когато е необходимо да се опишат интерфейсите, използвани от модула, или от описанието на проекта на модула, или от местоназначението на модула, трябва да е ясно коя услуга се очаква от модула. Например, ако модулът А е описан и използва подпрограмата за сортиране на модул В, тогава в описанието на взаимодействието между модулите е необходимо да се определи защо се подканва подпрограмата за сортиране на модула Б и какво прави това повикване към изпълнението на FTB. Интерфейсът и целта на подпрограмата за сортиране на мехурчета на модул B трябва да бъдат описани като част от интерфейсите на модул Б (при условие, че компонентното ниво на ADV_TDS семейството и класификацията на модул Б изискват описание на неговите интерфейси) и следователно в модул А е необходимо да се определи кои данни трябва да се сортират използвайки тази рутина. Достатъчно описание може да бъде: "Модул А нарича интерфейса на модул B като функция double_bubble (), за да сортира потребителските имена в азбучен ред.

Трябва да се отбележи, че ако това сортиране на потребителските имена не е от съществено значение за осигуряване на изпълнението на който и да е FTB (например, той се изпълнява за ускоряване на изпълнението и алгоритмично идентичното изпълнение на модул А би могло също да премахне сортираните потребителски имена), използването на подпрограмата за сортиране Б не гарантира изпълнението на FTB и е достатъчно да се обясни в описанието на модул А, че потребителските имена са подредени по азбучен ред, за да се подобри производителността. Модул Б може да бъде класифициран само като "допринасящ за изпълнението на FTB" и избраното ниво на компонента на семейството ADV_TDS показва дали е необходимо да се опишат интерфейсите на модулите, допринасящи за прилагането на FTB, или е достатъчно да се опише целта на модул Б.

Както беше споменато по-рано, алгоритмичното описание на модула трябва да опише алгоритмичния тип изпълнение на модула. Това може да се направи под формата на псевдо-код, като се използват блокови диаграми или (съгласно изискванията на компонента ADV_TDS.3 "Основен модулен дизайн") под формата на неформален текст. Той обсъжда как модулът за въвеждане и извикваните функции се използват за изпълнение на модулна функция. Той отбелязва промените в глобалните данни, състоянието на системата и стойностите, върнати от модула. На нивото на детайлност можете да получите подобно въвеждане, което би било много подобно на действителното внедряване на TOE.

Трябва да се отбележи, че изходният код не отговаря на изискванията на модулната документация. Въпреки че проектният модул описва изпълнението, той не е изпълнение. Коментарите, придружаващи изходния код, могат да бъдат достатъчно документирани, ако предоставят обяснение за целта на изходния код. Вградените коментари, които показват само това, което прави всеки ред от кода, са безполезни, тъй като те не дават обяснение за това какво прави модулът.

В елементите по-долу се използват етикети (които осигуряват внедряването на FTB, допринасящи за изпълнението на FTB и не засягат ефективността на FTB), разглеждани за подсистемите и модулите, за да се опише количеството и видът на информацията, която трябва да бъде предоставена на разработчика. Елементите бяха структурирани така, че да няма предположение, че разработчикът ще предостави само определена информация. Тоест, ако документацията на разработчика за TSF предоставя информация в изискванията по-долу, не се очаква разработчикът да промени документацията си и да маркира подсистемите и модулите, като прилага TSF, допринася за TSF и не засяга производителността на TSF. Основната цел на тази маркировка е да предостави на разработчиците по-малко утвърдени методологии за разработване (и свързаните с тях обекти като подробен интерфейс и проектна документация) да предоставят необходимите доказателства без ненужни разходи.

<== предишна лекция | следващата лекция ==>
А.4.1 Подсистеми | А.4.3 Подход към класирането

; Дата на добавяне: 2014-01-15 ; ; Виждания: 336 ; Нарушение на авторски права? ;


Вашето мнение е важно за нас! Дали публикуваният материал е полезен? Да | не



ТЪРСЕНЕ ПО САЙТА:


Препоръчителни страници:

Вижте също:



ailback.ru - Edu Doc (2013 - 2018) година. Всички материали, представени на сайта само с цел запознаване с читателите и не извършват търговски цели или нарушаване на авторски права! Последно добавяне на IP: 11.45.9.6
Повторно генериране на страницата: 0.002 сек.