ОРГАНИЗАЦИЯ ВП_2021_1_и_2_лабораторные

Содержание

Слайд 2

Ссылки, пособия, материалы Группа в ВК: https://vk.com/cp_org Электронный журнал: https://docs.google.com/spreadsheets/d/1HKfe7Rt8qAsbtY9jOZrCNmVHwQd2iV1kn8pk-oKIxZk/edit?usp=sharing Capella/Arcadia:

Ссылки, пособия, материалы
Группа в ВК: https://vk.com/cp_org
Электронный журнал: https://docs.google.com/spreadsheets/d/1HKfe7Rt8qAsbtY9jOZrCNmVHwQd2iV1kn8pk-oKIxZk/edit?usp=sharing
Capella/Arcadia: https://www.polarsys.org/capella/arcadia.html
https://esd.sutd.edu.sg/40014-capella-tutorial/index.html
Информация по стенду

SDK-1.1M: http://cs-blog.ru/
А.Е. Платунов, Н.П. Постников. Высокоуровневое проектирование встраиваемых систем.
Левенчук А.И. Системное мышление.
Брукс Ф. Мифический человеко-месяц, или как создаются программные системы.
Слайд 3

Лабораторные работы В рамках выполнения лабораторных работ требуется: Провести архитектурное (системное)

Лабораторные работы

В рамках выполнения лабораторных работ требуется:
Провести архитектурное (системное) проектирование

с исследованием пространства проектных решений для сложной и комплексной задачи.
Произвести сравнение реализаций части системы на разных вычислительных платформах/с использованием разных моделей вычислений/с принципиально отличной структурной организацией.
Лабораторные имеют одну сквозную тему, которая выбирается на первых занятиях.
Каждая отдельная лабораторная является этапом одной большой работы.
Отчёты лучше в электронном виде, но можно в бумажном.
Для направления «встраиваемые системы» задания индивидуальны, остальные могут выполнять в группах по 2-3 человека.
Этапы работы (примерные):
Составление технического задания;
Operational analysis в Capella
System Need analysis в Capella;
Описание Logical Architecture в Capella;
Исследование пространства проектных решений (Physical Architecture в Capella);
Сравнение двух альтернативных реализаций части системы и обоснованный выбор оптимальной архитектуры.
Слайд 4

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

Требования к выбору темы лабораторных

В качестве задания должна быть выбрана реально

существующая прикладная задача или продукт, требующие разработки программно-аппаратного решения.
Проектируемая система должна быть достаточно сложной.
Желательно, чтобы присутствовали элементы с трудоёмкими выключениями и задачи управления с соответствующими ограничениями (требования реального времени, пониженного энергопотребления, надёжности и т.д.).
Примеры:
1. Система управления «умным домом» с видеонаблюдением и распознаванием изображений/речи (выполнение определённых действий при распознавании лица хозяина/автомобильного номера, или по голосовой команде хозяина).
2. Система распределённых вычислений на базе управляющих устройств, каждое из которых выполняет некую функцию управления в реальном времени.
3. Прикладная вычислительная система, реализованная с использованием своего компилятора/транслятора.
4. Прикладная вычислительная система, реализующая высокопроизводительные вычисления средствами GPU, DSP-сопроцессоров или эффективно использующая параллельное программирование.
5. Виртуальная машина, построенная поверх системы управления, позволяющая в некоторых рамках «программировать» её, которая реализует некоторый прикладной функционал, но скрывает ненужные подробности.
Слайд 5

Лабораторная 1. Техническое задание Требуется выполнить обзор (не менее трёх, лучше

Лабораторная 1. Техническое задание

Требуется выполнить обзор (не менее трёх, лучше больше)

существующих технических решений (системы аналогичного назначения, альтернативные подходы, если нет прямых аналогов – хотя бы частично подходящие) по выбранной теме курсовой работы. Привести и сравнить основные типы применяемых решений, выделить их преимущества и недостатки.
Требования должны содержать:
• подробное описание функциональности и режимов работы;
• подробный список нефункциональных требований (энергопотребление, требования реального времени, безопасность, надёжность, эргономика и т.д.).
При желании, требования можно фиксировать с применением подходящих выразительных средств: таблицы, диаграммы языка UML, блок-схемы, структурные схемы и т.п.
Слайд 6

Нефункциональные требования • безопасность, защита от атак и «от дурака»; •

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

• безопасность, защита от атак и «от дурака»;
• надёжность, отказоустойчивость, ремонтопригодность;
• повторное использование

решений в других проектах;
• переносимость (например, программных решений на другие платформы);
• инструментальный аспект;
• экономический аспект;
• верифицируемость и пригодность к тестированию;
• трассируемость, возможность выявлять ошибки в ходе выполнения;
• возможность лёгкой доработки и обновления функционала, включая удалённое обновление ПО;
• проблемы интеграции готовых блоков и ведения существующих проектов;
• ограничения по энергопотреблению;
• выполнение в реальном времени;
• физические кондиции, вес, размеры;
• устойчивость к климатическим факторам;
• устойчивость к электромагнитным помехам;
• устойчивость к радиации;
• простота использования конечным пользователем;
• факторы, создающие комфорт конечному пользователю.
Кроме этого, требования могут содержать такие разделы, как:
описание режимов работы,
ограничения на применение,
ограничения на реализацию,
перспективные возможности с учетом ограничений.
Слайд 7

Capella

Capella

Слайд 8

Capella Ссылка для скачивания: https://www.eclipse.org/capella/download.html Ссылки на различные полезные ресурсы: 1.

Capella

Ссылка для скачивания: https://www.eclipse.org/capella/download.html
Ссылки на различные полезные ресурсы:
1. Предустановленный пример;
2. Встроенная

справка (Help→Help Contents→Capella Guide), она же доступна по https://wiki.eclipse.org/Capella
3. Хороший, понятный tutorial на примере игрушечной катапульты: https://esd.sutd.edu.sg/40014-capella-tutorial/index.html
4. Канал на youtube (для начального знакомства смотреть плейлист Getting Started With Arcadia and Capella): https://www.youtube.com/c/EclipseCapella
5. Пример с радиочасами (он же есть и во встроенной справке):
https://wiki.eclipse.org/Capella/Samples/ClockRadio
6. «Даташит» (относительно бесполезный):
https://www.eclipse.org/capella/resources/Datasheet_Arcadia.pdf
7. Ссылки на кучу всего: https://www.eclipse.org/capella/resources.html
Слайд 9

Capella

Capella

Слайд 10

Capella

Capella

Слайд 11

Capella

Capella

Слайд 12

Capella

Capella

Слайд 13

Capella

Capella

Слайд 14

Capella

Capella

Слайд 15

Capella

Capella

Слайд 16

Capella

Capella

Слайд 17

Capella

Capella

Слайд 18

Capella: Operational Analysis Operational Analysis stage focuses on defining stakeholder needs

Capella: Operational Analysis

Operational Analysis stage focuses on defining stakeholder needs

and the system context.
The explanation given in the Workflow window is as follows:
Capture and consolidate operational needs from stakeholders
Define what the users of the system have to accomplish
Identify entities, actors, roles, activities, concepts
After completing the steps in this section, we will have an Operational Architecture that defines high-level interactions among actors/entities and the system capabilities they require. We will be using the word "model" to refer to all of the entities and relationships, diagrams and architectures created in this project.
An Operational Entity is a real world entity (other System, device, group or organization...), interacting with the System (or software, equipment, hardware...) under study, or with its users.
An Operational Actor is a usually human Operational Entity, associated to a human resource.
An Operational Activity is a Process step or function performed by an Operational Entity on order to achieve some objective.
A Capability is the ability of the System to provide a service that supports the achievement of high-level operational goals. A Capability is described by scenarios and functional chains, all illustrating possible use cases. Capabilities can be used to structure the Functional Analysis. In Logical and Physical Architectures, Capabilities are called "Capability Realizations".