Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МГТУ. Системная инженерия. Лекция No.9 [1.0]

.pdf
Скачиваний:
70
Добавлен:
10.02.2015
Размер:
2.34 Mб
Скачать

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Проблемы изготовления элементов в ПИ (1 / 2)

Соблюдение законов и принципов проектирования и разработки:

«корректность по построению» (англ. correctness by design);

контрактное и (или) защитное программирование (англ. code contracts vs. defensive programming);

«закон Деметра» (англ. Law of Demeter [for Functions / Methods]);

принципы S.O.L.I.D.

Использование промышленных архитектурных шаблонов (англ. architecture pattern, design pattern).

21

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Проблемы изготовления элементов в ПИ (2 / 2)

Соблюдение стандартов и соглашений (англ. style guide)

по разработке кода:

открытые: Google C++ Style Guide, Code Conventions for the Java Programming Language;

частные: корпоративные, командные и т.д.

Автоматическая генерация,

рефакторинг, комментирование

идокументирование кода.

22

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Архитектурные шаблоны в ПИ (1 / 2)

Шаблоны (жарг. паттерны) проектирования:

обобщенные типовые архитектурные решения задач архитектурного проектирования;

описание взаимодействия объектов и классов,

адаптированных для решения общей задачи проектирования в конкретном контексте.

Использование шаблонов проектирования позволяет:

повысить качество кода;

улучшить техническую документацию;

обеспечить качество сопровождения ПО.

23

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Архитектурные шаблоны в ПИ (2 / 2)

Наибольший авторитет в современной ПИ имеют:

шаблоны «банды четырех» (англ. Gang of Four, GoF) —

Эрих Гамма (нем. Erich Gamma) и др.;

шаблоны GRASP — Крейг Ларман (англ. Craig Larman, слева);

шаблоны корпоративных приложений PoEAA — Мартин Фаулер (англ. Martin Fowler, справа).

© wikipedia.org

© wikipedia.org

24

 

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Рефакторинг исходного кода

Рефакторинг (англ. refactoring) — систематическая (технологичная) деятельность по изменению внутренней структуры ПО с целью:

упростить понимание работы и модификацию исходного кода без изменения наблюдаемого (внешнего) поведения;

улучшить композицию ПО и ускорить написание кода.

+Продолжение проектирования во время разработки Поддержание качества при продолжении разработки

Необходимость внесения изменений в работающий код; необходимость (в ряде случаев) изменения интерфейсов

25

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

«Технический долг» как метафора

«Технический долг» (англ. technical debt) — метафора, введенная Уордом Каннингемом (англ. W. Cunningham) для обозначения:

временных архитектурных решений;

применения устаревших или устаревающих технологий;

требующих устранения ошибок и «мертвого» кода;

нереализованных тестов;

невыполненных работ по рефакторингу продукта.

26

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

«Технический долг»: накопление и снижение

Накоплению технического долга способствуют:

длительность разработки;

раздробленность коллектива на небольшие команды.

Стратегии снижения технического долга предполагают:

формирование выделенной команды;

введение «технического налога».

© wikipedia.org

27

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Верификация и валидация на V- модели ЖЦ [разработки] систем

 

 

 

Верификация

Эксплуатация

Концепция

и

валидация

и поддержка

[Concept]

 

 

[V & V]

[Operation]

 

 

 

 

 

Реализация

[Implementation]

28

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Процессы верификации и валидации системы (1 / 2)

Наим.

Цель выполнения

Результаты процесса

процесса

 

 

 

 

 

 

Подтверждение полноты

Стратегия верификации системы в течение ЖЦ

Процесс верификации

План верификации на базе системных требований

реализации заданных

Доказательства соответствия системы дизайну и

 

требований в системе и

Обнаруженные ограничения на дизайн

 

получение информации

Сведения и отчеты о результатах верификации,

 

отклонениях и корректирующих действиях

 

для устранения

 

 

 

недостатков

требованиям заинтересованных сторон

 

 

 

 

 

Процесс передачи

Достижение системой

Стратегия передачи

Система, поставленная на площадку и

способности оказывать

установленная на подготовленном для этого месте

услуги в операционной

согласно требованиям на ее установку, связанная с

среде в соответствии с

операционной средой согласно спецификации и

требованиями сторон

способная выполнять требуемые функции

 

29

С и с т е м н а я и н ж е н е р и я , 1 1 с е м е с т р

Процессы верификации и валидации системы (2 / 2)

Наим.

Цель выполнения

Результаты процесса

процесса

 

 

 

 

 

 

 

Стратегия валидации реализуемых функций в

 

 

операционной среде

Процесс валидации

Получение доказательств

План валидации

Сведения и отчеты о результатах валидации в

сторон

 

соответствия функций

соответствии с законодательством, требованиями

 

системы требованиям

 

регулирующих органов и пр., а также о

 

 

 

 

корректирующих действиях

 

 

Подтверждение готовности системы к выполнению

 

 

требуемых функций

 

 

 

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]