[Новая версия системной архитектуры] Уточнены знания из всего руководства по проектированию системной архитектуры.
[Новая версия системной архитектуры] Уточнены знания из всего руководства по проектированию системной архитектуры.

Глава 1. Введение

Определение архитектуры:

1、Архитектураотражено в компонентаходининдивидуальныйсистемабазовая организация、Взаимосвязь между друг другом и окружающей средой и принципы, лежащие в основе ее проектирования и развития. 2、системаОрганизовать достижение чего-либоодинконкретные функции илиодин Набор компонентов для групповых функций 3、окружающая среда или контекстрешенныйверноэтотиндивидуальныйсистемаразработка、Операция、Политики и настройки среды, влияющие на систему 4、Задачасделан изодининдивидуальныйили большеиндивидуальный Заинтересованные стороны проходятсистемадостигатьодиннекоторые целиодининдивидуальный Цель или действие

Роль архитектурного проектирования:

1. Решение относительно сложных задач анализа спроса. 2. Решать проблемы проектирования, когда нефункциональные атрибуты занимают важное место в системе. 3. Решить общие проблемы структуры системы с длительным жизненным циклом и высокими требованиями к масштабируемости. 4. Решение проблем системной интеграции на основе потребностей компонентов. 5. Решить сложную задачу реинжиниринга бизнес-процессов.

Типичная классификация архитектуры

1. Многоуровневая архитектура (Многоуровневая Архитектура): наиболее распространенная архитектура программного обеспечения, стандартная архитектура де-факто, наиболее распространенный уровень: уровень представления. уровень), бизнес-уровень (Бизнес слой), слой персистентности (Persistence Layer)、база данных(Database Layer) 2. Архитектура, управляемая событиями: архитектура программного обеспечения, которая взаимодействует посредством событий, разделенная на 4 части: очередь событий, распределитель, канал событий и обработчик событий. 3. Архитектура микроядра: также называется архитектурой плагинов. Это означает, что ядро ​​программного обеспечения относительно небольшое, а основные функции и бизнес-логика реализуются через плагины. 4. Микросервисная архитектура. Это сервис-ориентированная архитектура. Каждая служба представляет собой независимую единицу развертывания. Эти единицы распределены, отделены друг от друга, подключены через протоколы удаленного доступа и разделены на три режима: RESTful. Режим API, RESTful Режим приложения, режим централизованного сообщения 5. Облачная Архитектура: в основном решает проблему масштабируемости и параллелизма. Наиболее легко масштабируемая Архитектура разделена на две части: процессорное устройство и виртуальное промежуточное. программное обеспечение

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

В соответствии с различными направлениями моделирования модели архитектуры программного обеспечения можно разделить на: структурную модель, модель структуры, динамическую модель и модель процесса.

Профессиональные качества, которыми должны обладать архитектурные дизайнеры

1. Овладение знаниями в сферах бизнеса 2. Овладеть техническими знаниями 3. Овладейте навыками дизайна. 4. Иметь навыки программирования 5. Иметь коммуникативные навыки 6. Иметь способность принимать решения 7. Знайте организационную стратегию 8. Должен быть экспертом по переговорам

Структура знаний архитектурного дизайнера

1. Возможности стратегического планирования 2. Возможности моделирования бизнес-процессов 3. Возможности архитектуры информационных данных 4. Возможности проектирования и реализации технической архитектуры. 5. Способность решать и реализовывать архитектуру прикладной системы. 6. Базовые знания в области ИТ и умение распределять инфраструктуру и ресурсы. 7. Техническая поддержка информационной безопасности и возможности обеспечения управления. 8. Возможности анализа и приобретения ИТ-аудита, управления и основных потребностей. 9. Возможности службы обеспечения качества для надежности программной системы и жизненного цикла системы. 10. Способность понимать, осваивать и анализировать новые технологии и концепции.

Как оценить хорошего архитектора

1. Как технический руководитель 2. Как разработчик 3. Как системный интегратор 4. Имейте мышление на уровне предприятия 5. Обладать компромиссным и тактическим мышлением стратегического и технического эксперта. 6. Иметь хорошие коммуникативные навыки

Глава 2. Базовые знания компьютерных систем

компьютерное оборудование

1. Процессор: CISC (сложный набор инструкций), RISC (сокращенный набор инструкций). 2. Память: в зависимости от физического расстояния от процессора: встроенный кеш, внешний кеш, основная память, внешняя память. 3. Шина: разделена в зависимости от положения шины в компьютере: внутренняя шина, системная шина, внешняя шина, параллельная шина и последовательная шина. 4. Интерфейс: относится к правилам связи между различными функциональными уровнями одного компьютера. 5. Внешние устройства. Также называемые периферийными устройствами. К общим относятся: все устройства ввода и вывода, а также некоторые устройства хранения данных.

компьютерное программное обеспечение

обычно делят на:системапрограммное обеспечениеиприкладное программное обеспечение

Операционная система

Операционная Характеристики системы: параллелизм, совместное использование, виртуальность, неопределенность. Операционная Классификация системы: Пакетная обработка Операционная система, разделение времени Эксплуатационная система、в реальном времени Операционная система、сеть Операционная система、распределенный Операционная система, микрокомпьютер, в рабочем состоянии система、Встроенный Операционная система

база данных

база Классификация данных: По системе хранения, база реляционного типа. данных、База ключевых значений данных、Хранение столбцовбаза данных、База документов данные, база поисковых систем данных

Большойбаза данныхуправлятьсистемаиз Функции 1. база на основе сетевого окружения система администрирования данных. Может использоваться для базы структуры C/S. система приложения данных, также может использоваться для баз со структурой B/S данныхприложениесистема 2. Поддержка крупномасштабных приложений. 3. Предусмотренная функция автоматической блокировки позволяет одновременным пользователям безопасно и эффективно получать доступ к данным. 4. Может обеспечить высокую безопасность системы. 5. Предоставьте удобные и гибкие методы резервного копирования и восстановления данных, а также функции зеркалирования устройств, а также вы можете использовать Операционную. Система обеспечивает отказоустойчивость, гарантируя, что данные в хорошо спроектированных приложениях могут быть восстановлены в максимально возможной степени в случае непредвиденных событий. 6. Предоставьте несколько средств для поддержания целостности данных. 7. Обеспечивает удобные и простые в использовании функции распределенной обработки.

файловая система

Тип файла: 1. Классификация по природе и назначению файлов: системные файлы, файлы библиотек и файлы пользователя. 2. Классификация по сроку хранения информации: временные файлы, архивные файлы и постоянные файлы. 3. Классификация по методу защиты файлов: файлы только для чтения, файлы для чтения/записи, исполняемые файлы и незащищенные файлы. 4. Система UNIX делит файлы на обычные файлы, файлы каталогов и файлы устройств (специальные файлы).

Часто используемые типы файлов: FAT, VFAT, NTFS, Ext2, HPFS.

Логическая структура файла: 1. Файл структурированной записи, файл, состоящий из более чем одной записи. 2. Неструктурированный потоковый файл, файл, состоящий из последовательности последовательных потоков символов.

Физическая структура файла: 1. Непрерывная структура, также называемая последовательной структурой. 2. Структура ссылок 3. Структура индекса 4. Индексная таблица нескольких физических блоков

сетевой протокол

Часто используемые протоколы: LAN, WAN, протокол беспроводной сети и протокол мобильной сети. В Интернете используется набор протоколов TCP/IP.

промежуточное программное обеспечение

промежуточное программное обеспечение Классификация: 1. Обработка связи (сообщения) промежуточное программное обеспечение 2. Обработка транзакции (транзакция) промежуточное программное обеспечение 3、данныедоступуправлятьпромежуточное программное обеспечение 4、Webсерверпромежуточное программное обеспечение 5、Безопасностьпромежуточное программное обеспечение 6. Кроссплатформенное промежуточное программное обеспечение 7. Специальная платформа промежуточное. программное обеспечение

программные компоненты

Компонент, также известный как компонент, представляет собой автономную сборку многократного использования. 1、программные Модель сборки компонентов 2. Стандарты коммерческих компонентов: CORBA, J2EE, DNA. 2000

прикладное программное обеспечение

1. Общее программное обеспечение 2. Специальное программное обеспечение

Встроенные системы и программное обеспечение

Состав встроенной системы: Встроенный процессор、Сопутствующее вспомогательное оборудование、Встроенный Операционная система、Программное обеспечение поддержки、прикладное программное обеспечениекомпозиция

Характеристики встраиваемых систем: сильная специфичность, технологическая интеграция, программная интеграция аппаратного и программного обеспечения, меньше ресурсов, чем у компьютеров общего назначения, программный код, закрепленный в энергонезависимой памяти, необходимость в специализированных инструментах и ​​средах разработки, небольшой размер, низкая стоимость. цена, передовые технологии и т.д., высокие требования к безопасности и надежности.

Классификация встроенных систем: система реального времени, система безопасности и защиты.

Самая большая особенность встроенных систем: работа и разработка системы осуществляются в разных средах.

С точки зрения современной встроенной системы: аппаратный уровень、слой абстракции、Операционная системаслой、промежуточное программное уровень обеспечения, уровень приложений

Основные характеристики встроенного программного обеспечения: адаптируемость, настраиваемость, высокая производительность в реальном времени, безопасность, надежность и высокая уверенность.

компьютерная сеть

компьютерная сетьиз Функция:данныекоммуникация、Совместное использование ресурсов、Централизованное управление、Внедрить распределенную обработку、балансировка нагрузки

Индикаторы, связанные с сетью: 1. Показатели производительности (скорость, пропускная способность, пропускная способность, задержка, время прохождения туда и обратно, загрузка) 2. Показатели неэффективности (стоимость, качество, стандартизация, надежность, масштабируемость, модернизируемость, управляемость, ремонтопригодность)

Пропускная способность канала: максимальная скорость передачи канала.

C=B*\log_2(1+\dfrac{S}{N})

C представляет пропускную способность канала, единица измерения — бит/с. B представляет полосу пропускания сигнала, единица измерения — Гц. S представляет собой среднюю мощность сигнала, единица измерения — Вт. N представляет собой среднюю мощность шума, единица измерения — Вт. S/N означает отношение сигнал/шум, единица измерения — д Б (децибел). Чтобы увеличить пропускную способность канала, вы можете использовать большую полосу пропускания для уменьшения отношения сигнал/шум. Вы также можете использовать меньшую полосу пропускания для увеличения отношения сигнал/шум;

Обработка сигнала, выполняемая передатчиком, включает кодирование источника, кодирование канала, перемежение, формирование импульса и модуляцию. Обработка сигнала, выполняемая приемником, включает в себя демодуляцию, принятие решения о выборке, обращенное перемежение, код трансляции канала и декодирование источника. 1. Исходное кодирование: преобразуйте аналоговый сигнал в аналого-цифровой формат, затем выполните кодирование сжатия (удаление избыточной информации) и, наконец, сформируйте цифровой сигнал. 2. Канальное кодирование. Канальное кодирование решает проблему ошибок, вызванных каналом, шумом и помехами, путем добавления избыточной информации для обнаружения и исправления ошибок на принимающей стороне. Как правило, оно может исправлять только спорадические ошибки и не может ничего сделать с постоянными ошибками. 3. Чередование: для решения проблемы непрерывных битовых ошибок. 4. Формирование импульса. Чтобы снизить требования к полосе пропускания, преобразуйте отправленные данные в подходящую форму сигнала. 5. Модуляция: процесс переноса информации в высокочастотный сигнал несущей, который соответствует требованиям к сигналу.

Технология мультиплексирования: относится к технологии одновременной передачи нескольких каналов данных по одному каналу. Технология множественного доступа: относится к технологии одновременной передачи нескольких пользовательских данных по линии.

Связь 5G: 1. Форма сигнала и множественный доступ на основе оптимизации OFDM 2. Внедрить масштабируемую конфигурацию параметров интервала OFDM. 3. Управление окнами OFDM повышает эффективность многоканальной передачи. 4. Гибкая конструкция рамки. 5. Массивный MIMO 6. Миллиметровая волна 7. Совместное использование спектра 8. Усовершенствованная конструкция кодирования каналов.

Сети подразделяются в зависимости от зоны покрытия сети и характеристик среды связи: локальная сеть (LAN), беспроводная локальная сеть (WLAN), городская сеть (MAN), глобальная сеть (WAN) и сеть мобильной связи.

локальная сеть: 1. Топология сети (звездообразная структура, древовидная структура, шинная структура, кольцевая структура, ячеистая структура) 2. Технология Ethernet (структура кадра Ethernet, минимальная длина кадра, максимальное расстояние передачи, управление потоком)

Беспроводная локальная сеть: 1. Стандарт WLAN (новый стандарт 802.11n, скорость до 200 Мбит/с и более) 2. Топология WLAN (точка-точка, HUB, полностью распределенная)

ВАН: 1. Технологии, связанные с глобальными сетями (синхронная оптическая сеть, сеть цифровой передачи данных, ретрансляция кадров, технология асинхронной передачи) 2. Характеристики глобальной сети (в основном предоставление услуг, ориентированных на передачу данных, широкий охват, большая дальность связи, отсутствие фиксированной топологии, предоставляются телекоммуникационными отделами или компонентами компании за определенную плату) 3. Классификация глобальных сетей (сеть передачи общего пользования, выделенная сеть передачи, сеть беспроводной передачи)

Городская сеть: обычно делится на базовый уровень, уровень агрегации и уровень доступа.

Сетевое оборудование: концентраторы, ретрансляторы, мосты, коммутаторы, маршрутизаторы, межсетевые экраны и т. д.

Архитектура сети OSI (снизу вверх): физический уровень, уровень канала передачи данных, сетевой уровень, транспортный уровень, сеансовый уровень, уровень представления, уровень приложений.

Возможности переключателя: 1. Функция кластеризации линий, обеспечивающая большое количество портов для кабельного подключения для достижения цели развертывания сети с топологией звезды. 2. Функция реле, восстанавливающая неискаженные электрические сигналы при пересылке кадров. 3. Функция моста, использующая ту же логику пересылки и фильтрации на встроенном порту. 4. Функция изоляции конфликтных доменов делит развернутую локальную сеть на несколько конфликтных доменов, при этом каждый конфликтный домен имеет собственную независимую полосу пропускания для повышения общей эффективности использования полосы пропускания коммутатора.

Протоколы маршрутизации: протокол внутреннего шлюза (IGP) и протокол внешнего шлюза (EGP).

Сетевое проектирование. Проектирование построения сети можно разделить на три звена: планирование сети, проектирование сети и реализация сети.

компьютерный язык

компьютерный Язык в основном состоит из набора инструкций, которые обычно включают три части: выражения, управление потоком и коллекции. Выражения включают переменные, константы, литералы и операторы. Управление потоком включает ветвления, циклы, функции и исключения. Коллекции содержат структуры данных, такие как строки, массивы, хеш-таблицы и т. д.

компьютерный Классификация языка 1. Машинный язык (двоичный код, инструкция включает в себя: код операции, адрес операнда, адрес хранения результата операции, адрес следующей инструкции) 2. Язык ассемблера (существует 3 типа операторов: операторы инструкций, операторы псевдоинструкций и макроинструкции). 3. Языки высокого уровня (C, C++, Java) 4. Язык моделирования (UML-UML предоставляет 13 типов диаграмм: диаграмма классов, диаграмма объектов, диаграмма вариантов использования, диаграмма последовательности, диаграмма связи, диаграмма состояний, диаграмма деятельности, диаграмма компонентов, диаграмма развертывания, диаграмма структуры комбинации, диаграмма пакета, взаимодействие. Диаграмма Обзорная диаграмма, временная диаграмма), (5 представлений: представление вариантов использования, логическое представление, представление процесса, представление реализации, представление развертывания) 5. Официальный язык

Жизненный цикл программного обеспечения: технико-экономическое обоснование, анализ требований, проектирование архитектуры, детальное проектирование, кодирование и тестирование выпуска.

мультимедиа

СМИ можно разделить на: 1. Сенсорные средства: например, зрение, слух, осязание и т. д. 2. Представлять медиа: например, изображения, звуки, видео и т. д. 3. Средства выражения: такие как клавиатура, мышь, сканер, монитор и т. д. 4. Средства передачи: такие как кабели, оптические кабели и т. д.

мультимедиаизважныйособенность: 1. Многомерность 2. Интеграция 3. Интерактивность 4. В режиме реального времени

мультимедиасистемаизсостав: 1. Мультимедиа Аппаратное обеспечение: основная конфигурация компьютера и внешних устройств и интерфейсы управления различными внешними устройствами. 2. Мультимедийное программное обеспечение: программное обеспечение мультимедийного драйвера, мультимедиа Операционная. система, программное обеспечение для обработки мультимедиа, средство создания мультимедиа, программное обеспечение имультимедиаприкладное программное обеспечениеждать

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

Системная инженерия использует системный метод для планирования системы.、Исследовать、дизайн、производство、Тестирование и применимые методы организационного управления

Системная инженерияметодиз Функции:честность、Всесторонний、Координация、научный、Практичность

Системная 7 основных стадий жизненного цикла процесса инженерии: 1. Этап поисковых исследований 2. Этап концепции 3. Этап разработки 4. Этап производства (цель — произвести систему и провести проверку и проверку) 5. Фаза использования (цель — запустить систему для удовлетворения потребностей пользователя) 6. Этап поддержки (цель — обеспечить непрерывные возможности системы) 7. Фаза вывода из эксплуатации (цель — сохранить, заархивировать или выйти из системы)

Производительность системы

Показатели эффективности: 1. Показатели компьютеров эффективность: тактовая частота (основная частота), скорость работы, точность работы, емкость памяти, цикл доступа к памяти, скорость обработки данных (PDR), пропускная способность, различное время отклика, различные коэффициенты использования, характеристики RASIS (надежная производительность, доступность, ремонтопригодность). целостность, безопасность), среднее время реакции на сбой, совместимость, масштабируемость и экономичность. 2. Показатели производительности роутера 3. Показатели производительности коммутатора 4. Показатели эффективности сети 5、Операционная Показатели эффективности системы 6、база данныхуправлять Показатели эффективности системы 7. Показатели производительности веб-сервера

Расчет индекса производительности: методы включают метод определения, метод формулы, метод обнаружения программы и метод обнаружения инструмента.

Глава 3 – Базовые знания информационных систем

Обзор информационных систем

Пять основных функций информационных систем: ввод, хранение, обработка, вывод и контроль.

Разработка информационных систем: Модель Нолана: начальный этап, этап распространения, этап контроля, этап интеграции, этап управления данными, этап зрелости.

Классификация информационных систем: Традиционные информационные системы делятся на пять категорий: системы обработки бизнеса (данных), информационные системы управления (MIS), системы поддержки принятия решений (DSS), экспертные системы (ES) и системы автоматизации делопроизводства (OAS).

Жизненный цикл информационной системы: 1. Стадия генерации 2. Этап разработки (общее планирование, системный анализ, проектирование системы, внедрение системы, этап приемки системы) 3. Этап эксплуатации 4. Стадия смерти

Принципы построения информационной системы: 1. Принцип вмешательства старшего руководства 2. Участие пользователей в принципах разработки 3. Принцип планирования сверху вниз. 4. Инженерные принципы (принципы инноваций, честности, развития и экономики)

Методы разработки информационных систем:

  • структурированный подход Функции: Уточнение целей развития, стилизация. рабочей сцены、Стандартизация документации по разработке、дизайнструктурирование метода
  • метод прототипа
  • объектно-ориентированный подход
  • сервис-ориентированный подход

Функции системы бизнес-процессинга (СДП): Входные, обрабатываемые и выходные данные, которые встречаются в повседневных делах управления предприятием. Цикл обработки данных TPS состоит из следующих 5 этапов: ввод данных, обработка данных, база Ведение данных, формирование файловых отчетов и обработка запросов

Информационная система управления (ИСУ): Информационная система, которая представляет большое количество методов управления на основе TPS для обработки общей информации предприятия и использует эту информацию для прогнозирования, контроля, планирования и оказания помощи в общем управлении предприятием. Информационная система управления состоит из четырех основных компонентов: источника информации, процессора информации, пользователя информации и менеджера информации.

Система поддержки принятия решений (DSS) Функция: 1. Используется для организации и предоставления различных данных, связанных с вопросами принятия решений в этой системе. 2. Возможность собирать и предоставлять своевременную информацию о различных действиях, включая ядро ​​системы и информацию, связанную с системой. 3. Собирать, хранить и предоставлять своевременную внешнюю информацию, связанную с принятием решений, насколько это возможно. 4. Возможность хранить и управлять различными моделями, связанными с принятием решений. 5. Обеспечить хранение и управление общеиспользуемыми математическими методами, статистическими методами и методами оперативных исследований. 6. Возможность эффективно управлять различными данными, моделями и методами и предоставлять пользователям такие оперативные функции, как поиск, изменение, добавление и экспертиза. 7. Используйте предоставленные модели и методы для обработки данных и получения информации, которая эффективно поддерживает принятие решений. 8. С диалоговым интерфейсом человек-компьютер и функциями обработки графики и вывода. 9. Следует поддерживать методы распределенного использования и обеспечивать эффективные функции передачи, чтобы гарантировать, что пользователи, разбросанные в разных местах, могут совместно использовать модели, методы и общие данные, предоставляемые системой.

Функции: 1. Для лиц, принимающих решения, требования и операции, которым следует система во время разработки, являются основой и принципами проектирования системы. 2. Поддержка принятия решений по полуструктурированным проблемам. 3. Оказывать помощь лицам, принимающим решения, и поддерживать лиц, принимающих решения. 4. Отражать динамику процесса принятия решений 5. Продвигайте интерактивную обработку

состав: 1. Реорганизация и подтверждение данных 2. Создание словаря данных 3. Интеллектуальный анализ данных и разведка 4. Создание модели

Экспертная система (ЭС) Функции: 1. За пределами ограничений по времени 2. Низкие эксплуатационные расходы 3. Легко передавать и назначать 4. Последовательные методы обработки 5. Хорошо преодолевает трудности. 6. Применимо к конкретным полям

состав: 1. База знаний 2. Комплексная база данных 3. Механизм вывода 4. Приобретение знаний 5. Объясните программу 6. Человеко-машинный интерфейс

Система автоматизации делопроизводства (ОАС) Функция: 1. Обработка транзакций 2. Управление информацией 3. Помощь в принятии решений

состав: 1. Вычислительное оборудование 2. Офисное оборудование 3. Передача данных и сетевое оборудование. 4. Система программного обеспечения

Планирование ресурсов предприятия (ERP) Базовые модули: 1. Прогноз добычи 2. Управление продажами (планирование) 3. Бизнес-план (набросок производственного плана) 4. Генеральный план производства 5. Планирование потребности в материалах 6. Планирование потребности в мощности 7. План работы мастерской 8. Управление закупками и запасами 9. Управление качеством и оборудованием 10. Финансовый менеджмент 11. Расширенные прикладные модули, связанные с ERP.

Методы информатизации предприятия: 1. Метод реконструкции бизнес-процесса. 2. Основные методы бизнес-приложений 3. Методы построения информационных систем. 4. Тематическая база данныхметод 5. Методы управления ресурсами 6. Методы инвестирования в человеческие ресурсы

Глава 4. Базовые знания в области технологий информационной безопасности

Основы информационной безопасности

1. Пять элементов информационной безопасности: конфиденциальность, целостность, доступность, управляемость и проверяемость.

2. В сферу информационной безопасности входят: безопасность оборудования, безопасность данных, безопасность контента и поведенческая безопасность.

  • оборудование Безопасность:это информациясистема Безопасностьиз Первый вопрос,Это материальная основа информационной безопасности.,включать3индивидуальныйаспект:оборудованиеиз Стабилизироватьсекс、Надежность оборудования、оборудованиеиз Доступность
  • данные Безопасность:принять меры, чтобы обеспечитьданныезащитить от несанкционированногоиз Уступи дорогу,вмешиваться и уничтожать,включать3индивидуальныйаспект:данныеизсекретсекс、данныеизчестность、данныеиз Доступность
  • Безопасность контента: это требование информационной безопасности на политическом, юридическом и моральном уровнях, в том числе: информационный контент является политически здоровым, соответствует законам и правилам страны и соответствует высоким этическим нормам китайской нации.
  • Поведение Безопасность:даобратитесь кнаконец прошло Поведениепредоставляется пользователям,Обеспечьте безопасность вашей информации,Только так можно в конечном итоге обеспечить информационную безопасность системы.,Характеристики:Поведениеизсекретсекс、Поведениеизчестность、управляемость поведения

3. Безопасность хранения информации: безопасность использования информации (например, идентификация и проверка пользователей, ограничение прав доступа пользователей, отслеживание проблем безопасности и т. д.), мониторинг безопасности системы, предотвращение компьютерных вирусов, шифрование данных и предотвращение незаконных атак и т. д. 1. Безопасность использования информации

  • Идентификация и верификация пользователя: идентификация на основе физических характеристик человека (метод распознавания подписи, отпечаток пальца, голос), идентификация специальных предметов безопасности, принадлежащих пользователю (смарт-карта с IC, карта с магнитной полосой)
  • Ограничение прав доступа пользователей: метод изолированного контроля, метод ограничения прав.

2. Мониторинг безопасности системы 3. Профилактика и контроль компьютерных вирусов

Четыре、сетевая безопасность 1、сетевая Уязвимости безопасности (физическая безопасность, уязвимости безопасности программного обеспечения, несовместимое использование уязвимостей безопасности, выбор соответствующей философии безопасности) 2、сетевая угрозы безопасности (несанкционированный доступ, утечка или потеря информации, нарушение целостности данных, атаки типа «отказ в обслуживании») 3. Цели мер безопасности (контроль доступа, аутентификация, целостность, аудит, конфиденциальность)

Структура состава системы информационной безопасности

Основу обычно составляют техническая система, организационная структура и система управления. 1. Техническая система включает в себя: базовое охранное оборудование, компьютеры сетевые. безопасность、Операционная система Безопасность、база безопасность данных, безопасность терминального оборудования и т. д. 2. Организационная система: система, состоящая из трех модулей: организация, должность и кадровая организация. 3. Система управления: это душа безопасности информационной системы, состоящая из юридического управления, системного управления и управления обучением.

Технология шифрования и дешифрования информации

Алгоритм шифрования с симметричным ключом: ключ шифрования и ключ дешифрования одинаковы, DES, IDEA, AES. Алгоритм шифрования с асимметричным ключом: ключ шифрования и ключ дешифрования не совпадают, RSA Шифрование с открытым ключом и расшифровка с закрытым ключом могут обеспечить конфиденциальную связь. Шифрование с закрытым ключом, а расшифровка с открытым ключом может обеспечить цифровые подписи;

Технология управления ключами

Управление ключами системы шифрования с открытым ключом: публичный выпуск, публичный каталог, сертификат открытого ключа

Технология контроля доступа и цифровой подписи

Базовая модель контроля доступа: субъект, объект, стратегия управления Технология реализации контроля доступа: матрица контроля доступа, таблица контроля доступа, таблица возможностей, таблица отношений авторизации.

Цифровая подпись: A отправляет подписанное сообщение P B: 1. B может проверить, что сообщение P действительно пришло от A. 2. А не может отказаться от отправки Р в будущем. 3. B не может сфабриковать или изменить сообщение P.

Противоатаковая технология для информационной безопасности

1. Факторы, которые необходимо учитывать при генерации ключей: увеличение пространства ключей, выбор надежных ключей и случайность ключей.

2. Атака и защита от отказа в обслуживании 1. Классификация традиционных атак типа «отказ в обслуживании»: Потребляйте ресурсы, уничтожайте или изменяйте информацию о конфигурации, физически повреждайте или изменяйте сетевые компоненты, используйте ошибки обработки в сервисных программах, чтобы вызвать сбой в обслуживании.

2. Распределенная атака типа «отказ в обслуживании» DDoS Феномен после DDoS-атаки:

  • Атакованный хост имеет большое количество ожидающих TCP-соединений.
  • Большое количество поступающих пакетов данных не является частью подключения к службе веб-сайта и часто направляется на произвольные порты на машине.
  • Сеть наводнена большим количеством бесполезных пакетов данных с поддельными адресами источника.
  • производствовысокий трафикизбесполезныйданныепричинасетьскопление,Предотвращение нормального общения хоста-жертвы с внешним миром
  • Воспользовавшись недостатками сервисов и протоколов передачи, предоставляемых хостом-жертвой, он неоднократно выдает запросы на обслуживание, что делает невозможным для хоста-жертвы своевременную обработку всех обычных запросов.
  • В тяжелых случаях это может привести к сбою

3. Методы защиты от атак типа «отказ в обслуживании»

  • Улучшить распознавание функций пакетов данных.
  • Настройте брандмауэр для мониторинга использования порта локального хоста.
  • Статистика объема коммуникаций также может предоставить информацию о месте и количестве атак.
  • Максимально исправьте обнаруженные проблемы и уязвимости

4. Обман, атака и защита

  • Подмена ARP (укрепление таблицы ARP, использование сервера ARP, двусторонняя привязка, программное обеспечение для защиты ARP)
  • Подмена DNS (обнаружение пассивного прослушивания, обнаружение ложных пакетов, перекрестный запрос)
  • Подмена IP (удалить de/etc/hosts.equiv и $HOME/.rhosts в UNIX, изменить /etc/inetd.conf так, чтобы механизм RPC не мог применяться, настроить брандмауэр для фильтрации пакетов извне, кроме адреса источника это внутренний IP)

5. Сканирование портов

3. Сканирование уязвимостей системы 1. Сетевое сканирование уязвимостей. 2. Сканирование уязвимостей на хосте (преимущества: большое количество сканируемых уязвимостей, централизованное управление, небольшая нагрузка сетевого трафика)

Система обеспечения информационной безопасности и методы ее оценки

1. Уровень защиты компьютерной информационной системы. 1. Уровень защиты, независимый от пользователя. 2. Уровень защиты системного аудита 3. Уровень защиты знака безопасности. 4. Уровень структурной защиты 5. Уровень защиты проверки доступа

2. Управление рисками безопасности Прежде чем проводить оценку риска, необходимо учитывать: 1. Определить объем оценки рисков 2. Определить цели оценки рисков 3. Создать соответствующую организационную структуру 4. Установите систематический метод оценки рисков. 5. Получите одобрение высшего руководства для планирования оценки рисков.

Процесс расчета риска выглядит следующим образом: 1. Определить информационные активы и присвоить им ценность. 2. Проанализируйте угрозы и присвойте значение вероятности возникновения угроз. 3. Определить уязвимости информационных активов и присвоить значение серьезности уязвимостей. 4. Рассчитать вероятность инцидентов безопасности на основе угроз и уязвимостей. 5. Рассчитайте стоимость риска информационных активов, исходя из важности информационных активов и возможности инцидентов безопасности.

Глава 5. Основы разработки программного обеспечения

разработка программного обеспечения

1. Модель процесса разработки программного обеспечения 1. Модель водопада

Особенности: Выход предыдущего этапа работы является входом последующего этапа работы. недостаток:

  • Определить полноту и корректность требований к программному обеспечению сложно, даже невозможно и нереально;
  • Водопадная модель — это строго сериализованная модель процесса.,Пользователям и руководителям программных проектов требуется много времени, чтобы получить видимое программное обеспечение. Если оно не соответствует ожиданиям пользователя,или требовать изменений,приведет к значительным потерям;
  • Основной принцип водопадной модели – полностью решить работу каждого этапа за один раз, без пропусков, ошибок и т.п. На самом деле это нереально или невозможно.

2. Прототипирование модели также известный как быстрое прототипирование

Основные этапы создания прототипа модели:

  • Стадия разработки прототипа: на основе определения программного обеспечения, предложенного пользователем.,Быстро разработать прототип,Прототип содержит ключевые моменты целевой системы и отражает общий вид целевой системы.,Продемонстрировать все или часть функций, производительности и т. д. целевой системы.
  • Целевой этап разработки программного обеспечения

Последующие модели прототипов делятся на одноразовые прототипы и эволюционные прототипы в соответствии с различными функциями прототипов.

3. Спиральная модель Она расширена на основе быстрого прототипирования. Эта модель делит весь процесс разработки программного обеспечения на несколько этапов, каждый этап состоит из 4 частей и подходит для крупномасштабной разработки программного обеспечения.

  • Постановка целей: анализ спроса, подтверждение спроса, план развития, план жизненного цикла.
  • анализ рисков
  • Разработка и валидация
  • Обзор

2. Гибкая модель 1. Гибкие методы Особенности: адаптируемый и заранее заданный (используйте механизмы обратной связи для управления непредсказуемыми процессами), ориентированный на людей, а не на процесс (способствует личному общению). Основная идея: адаптивный, непредсказуемый, ориентированный на людей, неориентированный на процесс, итеративный и инкрементальный процесс разработки. Основные гибкие методы:

  • Экстремальное программирование: легкое, строгое, начиная с программных проектов: укрепляйте общение, начинайте с простого, ищите обратную связь и ищите истину в фактах.
  • Метод кристаллических серий: продвижение «мобильного» подхода
  • Scrum: фокусируется на управлении проектами и включает в себя набор практик и скелет предопределенных ролей (процесс, план, модель и процесс для эффективной разработки программного обеспечения).
  • Метод разработки, основанный на функциях: FDD — это итеративная модель разработки с 3 элементами (люди, процессы, технологии) и 5 ​​основными процессами (разработка общей объектной модели, построение списка функций, планирование разработки функций, проектирование функций и построение функций).

3. Модель единого процесса (РУП). RUP — это сложный процесс, двумерная модель разработки программного обеспечения с девятью основными рабочими процессами:

  • бизнес-моделирование:Понимать, чтобы развиватьсясистема Местосуществоватьизорганизации и их бизнес Операция,Убедитесь, что все участники имеют общее представление об учреждении, в котором разрабатывается система.,Оцените влияние предлагаемого проекта на вашу организацию.
  • Требования: Определить функциональность системы и пользовательский интерфейс.,Сообщите клиентам о функциях системы,Заставить разработчиков понять потребности системы,бюджет проекта ипланобеспечить основу
  • Анализ и проектирование. Преобразование результатов анализа спроса в модели анализа и проектирования.
  • выполнить:Пучокдизайн Модель конвертируется ввыполнитьрезультат,Модульное тестирование разработанного кода,Интегрируйте модули, разработанные разными разработчиками, в исполняемые файлы.
  • тест:Проверьте каждый сабвуферсистема Измеждуизвзаимодействие、интегрированный。验证Место有нуждатьсяданет все верновыполнить,Документ обнаружил дефекты качества программного обеспечения,Вносить предложения по улучшению качества программного обеспечения
  • Развертывание: Упаковка、распределение、Установитьпрограммное обеспечение,Обновить старую систему,Обучение пользователей и торгового персонала,и обеспечим техническую поддержку
  • Конфигурацияи измененияуправлять:Отслеживайте и обслуживайтесистемаразвиватьпроцесспроизведено виз Место有制品изчестностьиодин Последовательность
  • Управление проектами: предоставление рекомендаций по планированию, распределению персонала, исполнению, мониторингу и т. д. для проектов разработки программного обеспечения, а также создание основы для управления рисками.
  • Среда: предоставить среду разработки программного обеспечения для организаций, занимающихся разработкой программного обеспечения, то есть обеспечить управление процессами и поддержку инструментов.

RUP разделяет жизненный цикл разработки программного обеспечения. Каждый цикл создает новую версию продукта. Каждый цикл состоит из 4 последовательных этапов.

  • Начальный этап: определение окончательного вида продукта и бизнес-модели.,и определить объем системы
  • стадия уточнения:дизайни подтвердитесистемаиз Архитектура,Развивать работуплани потребности в ресурсах
  • Этап строительства: создайте продукт и продолжайте развивать требования, архитектуру и планы до момента отправки продукта.
  • Этап передачи: передача продукта пользователям для использования.

Основные концепции RUP:

  • Роль: описывает действия и обязанности человека или группы.
  • Деятельность: представляет собой самостоятельную единицу работы с четкой целью.
  • Артефакт: Артефакт — это часть информации, сгенерированная, созданная или измененная в результате действия.
  • Рабочий процесс: Рабочий процесс описывает осмысленную непрерывную последовательность действий, каждый продукт рабочего процесса представляет собой ценный продукт, и показывает взаимосвязь между ролями.

Характеристики RUP: архитектурно-ориентированный, итеративный и поэтапный процесс разработки программного обеспечения.

  • На основе сценариев использования, анализ требований, проектирование, внедрение и тестирование — все действия основаны на сценариях использования.
  • Ориентированность на архитектуру: архитектура программного обеспечения представляет собой многомерную структуру, и для описания архитектуры программного обеспечения используются несколько представлений, представление «4+1».
  • Итерация и приращение: разделите всю разработку проекта на несколько итеративных процессов. Каждая итерация основана на завершенных частях и каждый раз добавляет новые функции. выгода: 1. С критическими и серьезными рисками можно справиться на ранних стадиях разработки программного обеспечения. 2. Можно предложить архитектуру программного обеспечения для руководства разработкой. 3. Может лучше справляться с неизбежными изменениями спроса 4. Вы сможете раньше получить работоспособную систему, поднять боевой дух команды и повысить уверенность в успехе проекта. 5. Предоставьте разработчикам более эффективный процесс разработки.

4. Модель зрелости возможностей программного обеспечения 5 уровней зрелости:

  • Уровень 1 Начальный уровень: Этот процесс бессистемен и хаотичен: продукты и услуги производятся, но часто превышают бюджет и затраты.
  • Уровень 2 Управляемый уровень: Чтобы обеспечить планирование, документирование, выполнение, надзор и контроль процесса на уровне проекта, необходимо установить четкие цели для процесса, чтобы достичь целей по стоимости, графику, качеству и т. д.
  • Уровень 3, определенный уровень Определите подходящие стандартные процессы в соответствии с вашими особыми обстоятельствами, институционализируйте этот набор систем и процессов управления и в то же время накапливайте проекты и собирайте корпоративные активы.
  • Уровень 4. Уровень количественного управления. Установите количественные цели в отношении качества продукции, качества обслуживания и эффективности процессов.
  • Уровень оптимизации 5 Постоянно улучшайте производительность процессов за счет поэтапных и инновационных усовершенствований процессов и технологий.

разработка требований

Существует три уровня требований к программному обеспечению:

  • Бизнес-потребности: отражают требования организации или клиента к системе.、Требования к целям высокого уровня продукта
  • Потребности пользователя: описывает, чего пользователи должны достичь при использовании продукта.,Это ожидания пользователя от программного продукта.,
  • Функциональные требования: Определите функциональные возможности программного обеспечения, которые должны реализовать разработчики.

разработка Требования относятся к применению проверенных эффективных принципов и методов с помощью соответствующих инструментов и символов для систематического описания разрабатываемого объекта, его характеристик и связанных с ними ограничений. идея требований Охватывает архитектурудизайн Извпередизкаждый项развивать Активность,В основном включает в себя анализ требований клиентов и определение различных функциональных и нефункциональных требований на будущее.,Цель: определить потребности клиента.,Определите все внешние характеристики воображаемой системы.

Этапы деятельности по спросу: приобретение спроса, анализ спроса, формирование спецификации спроса (документация спроса), подтверждение и проверка спроса, управление спросом. Деятельность по управлению требованиями начинается с момента создания первого проекта документа с требованиями. Акцент делается на следующем: 1. Контролируйте изменения базового уровня спроса 2. Следите за тем, чтобы планы проекта соответствовали требованиям. 3. Контролировать статус версий отдельных требований и документов требований. 4. Управляйте требованиями и цепочкой контактов или управляйте зависимостями между отдельными требованиями и другими результатами проекта. 5. Отслеживайте статус требований в базовом плане

1. Получение требований Этапы получения требований: 1. Разработка бизнес-моделей высокого уровня 2. Определите масштаб проекта и общие требования. 3. Определите роли пользователей и представителей пользователей. 4. Определите бизнес-процесс целевой системы. 5. Сортировка и обобщение требований (функциональные требования, требования к производительности, требования к надежности, требования безопасности и конфиденциальности, требования к пользовательскому интерфейсу, требования к использованию ресурсов, требования к затратам на программное обеспечение и требованиям к ходу разработки и т. д.).

Как получить требования: 1. Интервью с пользователями 2. Симпозиум по требованиям (Преимущества: помогает создать эффективную команду вокруг цели успеха проекта, все держатели рисков могут высказываться свободно, способствуют достижению консенсуса между держателями рисков и командами разработчиков, выявляют и решают проблемы, которые препятствуют успеху проекта. Административные вопросы, можно быстро создавать предварительные определения системы и могут эффективно разрешать противоречивые потребности между различными заинтересованными сторонами) 3. Анкетный опрос 4. Наблюдение на месте 5. Метод прототипирования 6. Мозговой штурм

2. Изменения требований Процесс управления изменениями требований: 1. Анализ проблемы и описание изменений 2. Анализ изменений и расчет затрат. 3. Изменить реализацию

Общие стратегии изменения требований: 1. Все изменения требований должны следовать процессу контроля изменений. 2. Работы по проектированию и внедрению не следует проводить для утвержденных изменений. 3. Изменения должны быть решены Советом по контролю за изменениями проекта, какие изменения следует реализовать. 4. Держатели рисков проекта должны быть в состоянии понять содержание изменений. 5. Никогда не удаляйте и не изменяйте исходный документ запроса на изменение в библиотеке конфигурации проекта. 6. Каждое интегрированное изменение требований должно быть прослежено до утвержденного запроса на изменение, чтобы обеспечить горизонтальную прослеживаемость.

Процесс принятия решений и рабочие этапы Совета по контролю изменений: 1. Принимайте решения 2. Ситуация со связью 3. Перезаключить соглашение

3. Отслеживание спроса Отслеживание требований обеспечивает возможность четкого анализа всего процесса, от требований до реализации продукта. Цель состоит в том, чтобы установить и поддерживать согласованность между «требованиями, проектированием, программированием и тестированием», а также гарантировать, что все результаты работы соответствуют потребностям пользователей.

Два способа отслеживания требований: 1. Форвардное отслеживание (спецификации требований к продукции) 2. Обратное отслеживание

Системный анализ и проектирование

1. Структурированный подход Структурный анализ: дайте мне набор принципов и методов, которые помогут системным аналитикам создавать функциональные спецификации. шаг: 1. Проанализируйте бизнес-ситуацию и создайте диаграмму потока данных (DFD), отражающую текущую физическую модель. 2. Выведите эквивалентную логическую модель DFD. 3. Разработать новую логическую систему и создать словарь данных и описания примитивов. 4. Установить человеко-машинный интерфейс и предложить альтернативный DFD физической модели целевой системы. 5. Определить стоимость и уровень риска различных вариантов и соответствующим образом проанализировать различные варианты. 6. Выберите план 7. Составьте полное техническое задание

Структурированный дизайн: подход к проектированию, ориентированный на поток данных.

Структурированное программирование: используя нисходящий метод поэтапного уточнения, каждый модуль подключается через структуру управления «последовательность, выбор, цикл» и имеет только один вход и один выход.

Проектирование базы данные: Контент включает в себя анализ требований, проектирование концептуальной структуры, проектирование логической структуры, проектирование физической структуры, базу данных. данныхизосуществлятьибаза Эксплуатация и обслуживание данных

2. Объектно-ориентированный метод Используйте ориентированный на конкретный случай, ориентированный на архитектуру, итеративный и поэтапный процесс разработки, в основном включающий анализ требований, системный анализ, проектирование системы и внедрение системы.

Объектно-ориентированный анализ (ООА) Объектно-ориентированный анализ: Принципы ООА: абстракция, инкапсуляция, наследование, классификация, агрегация, ассоциация, передача сообщений, детальный контроль, анализ поведения. Основной шаг: Определить класс объекта, Определить структуру、Определите тему、Определить атрибуты、Метод определения

Объектно-ориентированное проектирование (ООД): В ООД классы можно разделить на классы сущностей, классы управления и граничные классы.

Объектно-ориентированное программирование (ООП): Основные возможности: инкапсуляция, наследование, полиморфизм.

данные Выносливостьибаза данных: Как правило, уровень устойчивости вводится, чтобы сосредоточиться на сохранении данных, связать пользователей данных с объектами данных и добиться разделения бизнес-логики и логики данных на уровне обработки данных.

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

1. Метод испытания В зависимости от статуса выполнения программы в процессе тестирования его можно разделить на статическое тестирование (ST) и динамическое тестирование (DT). В зависимости от конкретных деталей реализации алгоритма и внутренней структуры системы его можно разделить на тестирование черного ящика, тестирование белого ящика и тестирование серого ящика. Классификация по способу выполнения программы, ручное тестирование и автоматическое тестирование.

2. Этап тестирования 1. Модульное тестирование 2. Интеграционное тестирование 3. Тестирование системы (функциональное тестирование, тестирование производительности, приемочное тестирование, стресс-тестирование и т.д.)

чистая комнатаразработка программного обеспечения(CSE)

Проектирование «чистых помещений», которое позволяет избежать необходимости дорогостоящих процессов устранения ошибок за счет правильного написания приращений кода с первого раза и проверки их правильности перед тестированием.

Теоретическая основа: теория функций и теория выборки.

Технические средства: поэтапная разработка под статистическим контролем процесса, функциональное определение и проектирование, проверка правильности, статистическое тестирование и сертификация программного обеспечения.

на основечленизразработка программного обеспечения(CBSE)

CBSE — это подход повторного использования программного обеспечения, основанный на технологии распределенных объектов, в котором упор делается на проектирование и создание программных систем с помощью повторно используемых компонентов. Характеристики компонентов, используемых в CBSE: сборка, возможность развертывания, документация, независимость и стандартизация.

Основные виды деятельности процесса CBSE: 1. Обзор системных требований 2. Определите компоненты-кандидаты 3. Измените требования на основе обнаруженных компонентов. 4. Проектирование структуры системы 5. Настройка и адаптация компонентов. 6. Соберите компоненты и создайте систему.

Сборка компонентов: последовательная сборка, иерархическая сборка, сборка суперпозиции.

Управление программными проектами

1. Управление прогрессом программного обеспечения Структура иерархии работ (WBS)

Требования WBS: 1. Пакет работ WBS контролируем и управляем и не может быть слишком сложным. 2. Декомпозиция задач не может быть слишком подробной. В целом древовидная структура WBS не должна превышать 6 слоев. 3. Каждый пакет работ должен иметь результат. 4. Каждая задача должна иметь четко определенные критерии выполнения. 5. WBS должна способствовать распределению обязанностей

диаграмма активности задачи После декомпозиции работы получается набор задач деятельности. Определяется каждое действие и определяется взаимосвязь между действиями, то есть порядок выполнения действий. На основе диаграммы активности задачи можно получить. порядок действий.

2. Управление конфигурацией программного обеспечения. Основное содержание — контроль версий и контроль изменений.

3. Управление качеством программного обеспечения С точки зрения управления факторы, влияющие на качество программного обеспечения, делятся на: работу продукта, модификацию продукта и передачу продукта.

4. Управление рисками программного обеспечения Основная цель — предотвратить риски. При управлении рисками программного проекта необходимо идентифицировать риски, оценивать возникающие концепции и воздействия, а также разрабатывать план управления рисками.

Глава 6. Базовые знания по проектированию баз данных

Основные понятия базы данных

Базовой структурой базы данных является модель данных. Тремя элементами модели данных являются структура данных, операции с данными и ограничения данных.

Режим базы данныхLevel 3: Просмотр слоя、логический уровень、физический уровень

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

С точки зрения системы управления базой данных: внешний режим.、концептуальная модель、внутренний режим

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

реляционная база данных

один、реляционная база данныхизбазовыйтермин

  • Атрибуты: опишите характеристики транзакции, такие как имя, номер студента и т. д.
  • Домен: диапазон значений каждого атрибута соответствует набору значений, который называется доменом атрибута. Например, домен идентификатора учащегося представляет собой 6-значное целое число.
  • Порядок или степень: Порядок или степень относятся к количеству атрибутов в отношениях.
  • Код-кандидат: если значение определенного атрибута или группы атрибутов в связи может однозначно идентифицировать кортеж, атрибут или группа атрибутов называется кодом-кандидатом.
  • Первичный ключ: также называется первичным ключом. Если для связи существует несколько потенциальных ключей, один из них будет выбран в качестве первичного ключа.
  • Первичные атрибуты. Атрибуты, включенные в любой код-кандидат, называются первичными атрибутами, а атрибуты, не включенные ни в один код-кандидат, называются неосновными атрибутами.
  • Внешний ключ: если атрибут или группа атрибутов в схеме отношения R не является ключом отношения.,Но это код других отношений,Тогда набор атрибутов является внешним ключом реляционной схемы R.
  • Полный код: все группы атрибутов реляционной модели являются кодами-кандидатами для этой реляционной модели, которая называется полным кодом.
  • Декартово произведение

К основному атрибуту реляционной схемы добавляется сплошное подчеркивание для обозначения атрибута первичного ключа; к атрибуту реляционной схемы добавляется пунктирное подчеркивание для обозначения атрибута внешнего ключа.

2. Реляционные операции

1NF: каждое значение атрибута реляционной схемы R является неделимым атомарным значением. 2NF: Устранить частичную зависимость неосновных атрибутов от ключа (ключа-кандидата). 3NF: Устранить транзитивную зависимость неосновных атрибутов от кодов. BCNF: устранить транзитивную зависимость первичных атрибутов от кодов 4NF: между атрибутами не допускаются нетривиальные и нефункциональные многозначные зависимости.

Если рассматриваются функциональные зависимости, самой высокой спецификацией реляционной схемы является BCNF. Если рассматриваются многозначные зависимости, самой высокой спецификацией является 4NF.

Проектирование базы данных

один、Проектирование базы данныхшаг 1. Анализ потребностей пользователей с использованием определенных вспомогательных инструментов для научного анализа функций, производительности, ограничений и т. д. объекта приложения. 2. Проектирование концептуальной структуры — это анализ и определение информации, например, моделирование представлений, анализ представлений и обобщение. Идеальным инструментом является диаграмма ER. 3. Проектирование логической структуры, преобразующее абстрактную концептуальную модель в логическую модель, соответствующую модели данных, поддерживаемой выбранным продуктом СУБД, является основой проектирования физической структуры, включая проектирование исходной схемы, проектирование подсхемы, проектирование приложения, Оценка схемы и уточнение модели 4. Проектирование физической структуры — это конкретная реализация логической модели на компьютере. 5、база этап реализации данных 6、база данных Этап эксплуатации и обслуживания

2. Анализ потребностей в данных Задачи на этапе анализа требований: синтезировать требования к приложению каждого пользователя, провести детальное исследование объектов, с которыми предстоит иметь дело в реальном мире (организации, подразделения, предприятия и т. д.), и собрать системы поддержки в процессе понимания. обзор текущей системы и определение функций новой системы. Основные данные и методы обработки цели.

3. Концептуальный структурный проект. Диаграмма ER классифицирует, агрегирует и обобщает данные, полученные на этапе анализа требований, а также определяет сущности, атрибуты и связи. Этапы работы по проектированию включают: выбор локальных приложений, поочередное проектирование диаграмм ER и объединение диаграмм ER.

4. Разработка логической структуры. Проектирование модели данных осуществляется на основе проектирования концептуальных структур, таких как иерархическая модель, сетевая модель и реляционная модель. Основная работа этого этапа включает в себя определение модели данных, преобразование диаграммы ER в заданную модель данных, определение ограничений целостности и определение представлений пользователей.

Отношения в диаграммах ER: один-к-одному, один-ко-многим, многие-ко-многим (необходимо добавить новые отношения)

5. Физический дизайн Основная работа: Определение распределения, структуры хранения и метода доступа к данным.

шесть、база данныхосуществлять Создайте актуальную базу на своем компьютере структура данных, загрузка данных, процесс опытной эксплуатации и оценки

Семь、база данных Эксплуатация и обслуживание Основное содержание включает в себя введение в базу мониторинг и улучшение производительности данных, восстановление после сбоев, база Реорганизация и реконструкция данных

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

Интерфейс доступа к уровню функций библиотеки: база Язык программирования высокого уровня самого низкого уровня, предоставляемый данными, обращается к интерфейсу данных, например OCI. Интерфейс доступа к встроенному SQL. Встроенный SQL — это способ прямой записи операторов SQL на некоторые языки программирования высокого уровня. Универсальный стандарт интерфейса данных: ODBC (Открытая база данных). dataconnection) решить гетерогенную базу данныхмеждуданныеобщий Интерфейс доступа к ORM: Реляционное отображение объектов (ORM) используется для преобразования между различными типами системаданных в объектно-ориентированных языках программирования ORM описывает объекты с помощью использования. Элемент данных, который сопоставляет данные, объект в программе и реляционные данные. база данные сопоставляют друг друга для решения базы Неоднородность между данными и программами

База данных NoSQL

NoSQLбаза данных Классификация:

  • База хранения колонок данных:в соответствии сбаза столбцы данных для организации и хранения данных, базы данных Чжун каждыйиндивидуальный Оглавлениеодинцепочка страниц группыизсобиратькомпозиция,Каждая цепочка страниц соответствует столбцу хранилища в таблице.,Продукты включают: Cassandra, HBase и т. д.
  • База данных хранения пар «ключ-значение». Типичная структура данных представляет собой связанный список массива, а продукты включают Redis и т. д.
  • Тип документабаза данные: этот тип модели данных представляет собой документ с поддержкой версий. Полуструктурированные документы хранятся в определенном формате. При обработке сложных данных, таких как веб-страницы, это лучше, чем традиционная база данных «ключ-значение». Эффективность запросов данных высока, и ее продукты включают CouchDB, MongoDB и т. д.
  • База данных графа: использование гибких графовых моделей,Возможность масштабирования на несколько серверов,Продукты включают Neo4J, InfoGrid и т. д.

Возможности NoSQL: легкая масштабируемость, большой объем данных, высокая производительность, гибкая модель данных, высокая доступность.

Глава 7. Базовые знания по проектированию системной архитектуры.

Концепции архитектуры программного обеспечения (SA)

1. Проектирование архитектуры программного обеспечения и жизненный цикл

  1. этап анализа требований
  2. На этапе проектирования исследование SA включает: описание модели SA (3 уровня: базовые концепции, язык описания архитектуры, многовидовое представление), методы проектирования и анализа модели SA, обобщение и повторное использование опыта проектирования SA.
  3. этап реализации
  4. этап сборки компонентов
  5. Этап развертывания
  6. Этап пост-разработки (динамическая архитектура программного обеспечения, восстановление и реконструкция архитектуры)

2. Важность архитектуры программного обеспечения

  1. Архитектурадизайнспособен удовлетворитьсистемаизкачество
  2. Архитектурадизайнпозволить бенефициарам достичьодин Киз Цель
  3. Архитектурадизайнспособен поддержатьпланпроцесс подготовки
  4. Архитектурадизайнверносистемаразвиватьизобратитесь кгидсекс
  5. Архитектурадизайнспособен эффективноуправлятьсложныйсекс
  6. Архитектурадизайн Закладывает основу для повторного использования
  7. Архитектурадизайн Может снизить затраты на техническое обслуживание
  8. Архитектурадизайнспособен поддержатьконфликтанализировать

Подход к разработке программного обеспечения на основе архитектуры

Подход к проектированию программного обеспечения на основе архитектуры (ABSD) основан на архитектуре, то есть на сочетании бизнес-требований, требований к качеству и функциональности, составляющих архитектуру. Есть три основы: декомпозиция функций, достижение качества и бизнес-требований за счет выбора архитектурного стиля и использование шаблонов программного обеспечения.

ABSD — это нисходящий рекурсивный метод уточнения.

1. Модель развития Модель ABSD делит весь процесс разработки программного обеспечения на основе архитектуры на шесть подпроцессов: требования к архитектуре, проектирование, документирование, анализ, внедрение и развитие.

Процесс требований к архитектуре

2. Проектирование структуры системы

3. Архитектурная документация Документация является средством связи между проектировщиками и разработчиками систем на каждом этапе развития системы и является основой для предварительного анализа, выполняемого для проверки архитектурных проектов и уточнения или изменения этих проектов (при необходимости).

Основные выходные результаты процесса документирования архитектуры: спецификации архитектуры, спецификации качества проектирования для тестирования требований к архитектуре.

4. Обзор структуры системы Целью проверки является выявление потенциальных рисков и обнаружение недостатков и ошибок в проектировании архитектуры на ранней стадии.

5. Реализация структуры системы

6. Эволюция структуры системы

стиль архитектуры программного обеспечения

  • Стиль Архитектура отражает структурные и семантические свойства, общие для многих систем в этой области.,иобратитесь кгид如何将каждыйиндивидуальныйчленэффективныйизорганизован водининдивидуальныйвесьизсистема
  • Архитектурастильопределениеиспользуется дляописыватьсистемаизтермин表иодингрупповое руководствостроитьсистемаизправило

Пять архитектурных стилей

подстиль

стиль потока данных

периодического действия, конвейер-фильтр

стиль вызова/возврата

Основная программа/подпрограмма, объектно-ориентированная, иерархическая структура

независимый стиль компонента

Процесс коммуникации, система, управляемая событиями (неявный вызов)

Стиль виртуальной машины

Переводчик, система правил

складской стиль

база данныхсистема、система доски、Гипертекстовая система

стиль потока данных

впередодиншагиз处理результатданазадодиншагиз Введите контент【данныеводить машину】

преимущество

недостаток

Пример

1. Слабая связь [высокая связность – низкая связанность] 2. Хорошая возможность повторного использования и обслуживания 3. Масштабируемость [адаптация стандартного интерфейса] 4. Хорошая маскировка 5. Поддержка параллелизма

1. Плохая интерактивность 2. Высокая сложность 3. Низкая производительность (каждый фильтр требует анализа и синтеза данных)

Традиционная обработка сетевых сообщений компилятора

стиль вызова/возврата

Это должно быть легко понять, поскольку оно чаще всего используется в программах.

подстиль:

Подробно объясните стиль многослойной архитектуры «подстиль»:

независимый стиль компонента

Компонент независимого стиля включает в себя: стиль системы событий процесса связи.

преимущество

недостаток

Функции

1. Слабая связь. 2. Хорошая возможность повторного использования, модификации и масштабируемости.

1、членсдалсяверносистемавычислитьизконтроль。одининдивидуальныйчленкурокодининдивидуальныйсобытие,Не уверен, что другой компонент ответит. Даже если вы знаете, какие компоненты зарегистрированы на мероприятие,也不способный保证этот些процессназываетсяиззаказ2、данные Обмен Вопрос 3、Семантика процедуры должна зависеть от контекста инициируемого события.

Система состоит из нескольких подсистем и становится единым целым; подсистемы делятся на ведущие и подчиненные; каждая подсистема имеет свой механизм сбора и обработки событий;

Стиль виртуальной машины
складской стиль

Например база данных、данные Средняя платформаждать

другой
стиль управления с замкнутым контуром
  • Подходит для встраиваемой системы,Используется для решения простых задач управления с обратной связью.
  • Классические приложения: контроль температуры кондиционера, круиз-контроль.
стиль C2

Основные правила архитектуры C2:

  • Члены и соединители имеют верхнюю и нижнюю часть.
  • Верхняя часть компонента должна быть соединена с нижней частью разъема, а нижняя часть компонента должна быть соединена с верхней частью разъема. Прямые соединения между компонентами не допускаются.
  • одининдивидуальный Разъем Можетвыпить любое количествоиздругойчлени Разъемное соединение
  • Когда два разъема подключаются напрямую, это должно быть снизу одного к верху другого.

Повторное использование архитектуры программного обеспечения

Повторное использование архитектуры программного обеспечениявключать Шансповторное использованиеисистемаповторное использование。

К многократно используемым активам относятся: требования, архитектурное проектирование, элементы, моделирование и анализ, тестирование, планирование проекта, методы и инструменты процессов, люди, образцы систем, устранение дефектов.

один、Повторное использование архитектуры программного Основной процесс обеспечения Он включает в себя 3 этапа: создание/получение повторно используемых программных активов, во-вторых, управление этими активами и, наконец, выбор повторно используемых частей из этих активов для разработки прикладных систем, отвечающих конкретным потребностям.

Архитектура программного обеспечения, специфичная для предметной области (DSSA)

Необходимые характеристики DSSA следующие:

  1. Строго определенная проблемная область и область решения проблемы.
  2. Быть универсальным, позволяя использовать его при разработке конкретного приложения в данной области.
  3. Соответствующая абстракция модели организации компонентов в масштабах предметной области.
  4. Иметь фиксированные и повторно используемые элементы в процессе развития телекоммуникаций в этой области.

С точки зрения функционального покрытия:

  1. вертикальная область:определениеодининдивидуальныйидентификацияизсистемаклан,Содержит несколько систем во всем семействе систем.,Результаты доступны в поле каксистемаиз Можетрешениеизодининдивидуальный Универсальныйпрограммное обеспечение Архитектура
  2. Горизонтальная область: определяет общие части функциональных областей в нескольких системах и нескольких семействах систем.,Охватывает отдельные части функциональности нескольких семейств систем на уровне подсистемы.

1. Основная деятельность DSSA

  1. Анализ предметной области: получение модели предметной области
  2. Дизайн предметной области: получите DSSA
  3. Реализация предметной области: разработка и организация многократно используемой информации на основе модели предметной области и DSSA.

2. Персонал, участвующий в DSSA Эксперты предметной области, аналитики предметной области, дизайнеры предметной области, разработчики предметной области

2. Процесс создания DSSA Процесс создания делится на 5 этапов:

  1. Определить область домена
  2. элементы, специфичные для предметной области
  3. Определить ограничения требований к проектированию и реализации для конкретной предметной области
  4. Определить модель предметной области и архитектуру
  5. Создавайте и собирайте многоразовые единицы продукции

Глава 8. Атрибуты качества системы и оценка архитектуры

Атрибуты качества программной системы

Атрибуты качества программной системыдаодининдивидуальныйсистемаиз Можетмера или Можеттестизродсекс,Используется для описания степени, в которой система отвечает потребностям заинтересованных сторон.

С точки зрения управления основные факторы, влияющие на качество программного обеспечения, можно разделить на: функциональность, надежность, простота использования, эффективность, ремонтопригодность и переносимость. Функциональность: пригодность, точность, совместимость, соответствие требованиям, безопасность. Надежность: отказоустойчивость, простота восстановления, зрелость. Простота использования: легко освоить, легко понять, легко работать. Эффективность: ресурсные характеристики, временные характеристики Ремонтопригодность: тестируемость, модифицируемость, стабильность, простота анализа. Портативность: применимость, простота установки, согласованность, заменяемость.

Атрибуты качества программных систем можно разделить на атрибуты качества в период разработки и атрибуты качества во время выполнения. Атрибуты качества, на которых сосредоточено внимание при разработке: понятность, масштабируемость, возможность повторного использования, тестируемость, ремонтопригодность, переносимость. Атрибуты качества, вызывающие беспокойство во время выполнения: производительность, безопасность, масштабируемость и работоспособность, надежность, доступность и надежность.

1. Атрибуты качества для оценки архитектуры В процессе архитектурной оценки оценщики заявили, что сосредоточили внимание на качественных характеристиках системы, в том числе:

  • Производительность: относится к отзывчивости системы.,То есть, сколько времени требуется, чтобы отреагировать на событие,Или количество событий, которые система может обработать в рамках определенного события.
  • Надежность (отказоустойчивость, надежность): относится к способности программного обеспечения противостоять ошибкам приложения или приложений.,Возможность сохранить функциональные характеристики программного обеспечения в случае случайного или неправильного использования.,Измеряется средним временем наработки на отказ (MTTF) и средним временем наработки на отказ (MTBF).
  • Доступность:обратитесь ксистемаспособен нормально работатьизчасмежду Сравниватьпример,Выражается как промежуток времени между двумя сбоями или скорость, с которой система может вернуться в нормальное состояние при возникновении сбоя.
  • Безопасностьсекс:обратитесь ксистемасуществовать Предоставлять услуги законным пользователямиз同часспособный够阻止非授权用户使用из Попытаться или отклонить услугуизспособность
  • Может Исправлятьсекс(Ремонтопригодность、Масштабируемость、реструктуризация、Портативность): относится к возможности быстро и экономично вносить изменения в систему.
  • Функциональность: относится к способности системы выполнять желаемую работу.
  • Изменяемость: относится к способности Архитектуры расширяться или изменяться, чтобы стать новой Архитектурой.
  • Совместимость: не существует изолированно,Обычно взаимодействует с другой системой или собственной средой.

2. Сценарий атрибута качества Сценарий атрибута качества в основном фокусируется на: удобстве использования, модифицируемости, производительности, тестируемости, простоте использования и безопасности.

  • Доступность:сосредоточиться насистема Происходит сбойизчастота、Что происходит, когда что-то идет не так、Разрешить системе, как долго будет работать нормальная работа、Когда безопасно потерпеть неудачу?、Как предотвратить возникновение сбоев、Какое уведомление требуется в случае сбоя?
  • Изменяемый: сосредоточиться насистемафункция изменения、质量родсексчаснуждатьсяплатитьизрасходыитрудность,Может Исправлятьсекс质量родсекссцена Можетможет случитьсясуществоватьсистемадизайн、компилировать、строить、В различных ситуациях и средах, таких как эксплуатация
  • Производительность: В основном скорость реакции фокуса насистемы,может быть достигнуто за счет эффективности、время ответа、Пропускная способность、Нагрузка для объективной оценки производительности
  • Можеттестсекс:основнойсосредоточиться насистематестпроцесссерединаизэффективность,Насколько легко обнаружить дефект или неисправность
  • Простота использования: основной акцент на Пользователь используетсистемачасизпростота,включатьсистемаизкривая обучения、Оперативность в выполнении операций、Удовлетворенность процессом использования системы
  • Безопасностьсекс:основнойсосредоточиться насистемасуществовать Безопасностьсексаспектизэлемент,Измеряйте систему при предоставлении услуг законным пользователям,Возможность запретить использование неавторизованными пользователями.

Оценка архитектуры системы

Методы оценки структуры системы обычно делятся на 3 категории: методы, основанные на анкетах или контрольных списках.、Сценарный подход、метрический подход

один、Оценка архитектуры системыметод Метод SAAM (метод анализа архитектуры программного обеспечения): включает 5 шагов, разработку сценария, описание архитектуры, оценку отдельного сценария, взаимодействие сценариев и общую оценку.

Метод ATAM (метод архитектурного компромиссного анализа): использует дерево эффективности для классификации и определения приоритетности атрибутов качества. Атрибуты качества, на которых он фокусируется: производительность, безопасность, модифицируемость и доступность.

Метод CBAM: начинается в конце ATAM, используя результаты оценки ATAM.

другой метод оценки: метод SAEM、метод SAABNet、метод SACMM、метод САСАМ、метод АЛРРА、метод МАИ

2. Практика оценки архитектуры метода ATAM

Его работа разделена на 4 основных этапа: Демонстрация, Исследование и Анализ, Тестирование и Отчетность ATAM.

Глава 9. Базовые знания о надежности программного обеспечения.

Основные понятия надежности программного обеспечения

Надежность программного обеспечения — это способность программного продукта выполнять заданные функции в заданных условиях и в течение заданного интервала времени.

Серьезность сбоя — это набор сбоев, которые оказывают одинаковое влияние на пользователей.

Тестирование надежности — это средство исследования, анализа и оценки надежности программных продуктов. Его цель можно резюмировать следующим образом:

  1. Откройте для себя востребованную программную систему、дизайн、кодирование、тестиосуществлятьждатьаспектизразличные дефекты
  2. Обеспечить надежность использования и обслуживания данных программного обеспечения.
  3. Подтвердите, соответствует ли программное обеспечение количественным требованиям надежности.

Моделирование надежности программного обеспечения

Модель надежности программного обеспечения — это блок-схема надежности и математическая модель, созданная для прогнозирования или оценки надежности программного обеспечения. Модель надежности создается для пошагового разложения надежности сложных систем на надежность простых систем, чтобы облегчить количественное прогнозирование. Назначайте, оценивайте и оценивайте надежность сложных систем.

С технической точки зрения основными факторами, влияющими на надежность программного обеспечения, являются следующие:

  1. Рабочий профиль (среда). Определение надежности программного обеспечения зависит от операционной среды. Различные среды имеют разные показатели надежности.
  2. Масштаб программного обеспечения
  3. внутренняя структура программного обеспечения
  4. Методы разработки программного обеспечения и среда разработки
  5. Инвестиции в надежность программного обеспечения

Моделирование надежности программного обеспеченияметод Один обычно состоит из следующих частей: Допущения модели.、Показатели производительности、Метод оценки параметров、данные Требовать

Хорошая модель надежности программного обеспечения имеет следующие характеристики: основана на надежных предположениях, проста, рассчитывает некоторые полезные величины, дает хорошее отображение поведения отказов и может широко использоваться.

Классификация надежности программного обеспечения: модель начального метода, модель интенсивности отказов, модель аппроксимации кривой, модель роста надежности, модель анализа структуры программы, модель классификации входной области, модель метода анализа пути выполнения, модель неоднородного процесса Пуассона, модель процесса Марра Кова, байесовский анализ модель

Управление надежностью программного обеспечения Управление надежностью программного обеспеченияизсодержаниевключатьразработка программного обеспечениякаждыйиндивидуальныйэтапиз Может Зависит отсекс Активностьиз Цель、план、расписание、Любые корректирующие меры и т. д.

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

Наиболее эффективным, экономичным и важным средством обеспечения надежности программного обеспечения является принятие мер по контролю надежности на этапе проектирования программного обеспечения.

Проектирование надежности программного Технологии обеспечения в основном включают в себя: технологию отказоустойчивости, дизайн обнаружения ошибок, Уменьшите. сложность конструкцииждатьтехнология

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

  1. долженсуществоватьпрограммное обеспечениеизобщийдизайниспользуется в рамках,и не может использоваться сдругойдизайнконфликт принципов
  2. Учитывая требования по улучшению качества программного обеспечения, конечной целью является улучшение и обеспечение надежности программного обеспечения.
  3. Должен быть определен целевой уровень надежности программного обеспечения, который не может расширяться до бесконечности и должен учитываться после функциональности, потребностей пользователей и затрат на разработку.

Технология отказоустойчивого проектирования В основном включает в себя конструкцию блока восстановления, программирование версии N, конструкцию резервирования.

технология обнаружения ошибок технология обнаружения ошибоквыполнить代价低于容错технологияирезервная технология,недостаток не может автоматически решить проблему,Если после возникновения сбоя не было ручного вмешательства,,Это приведет к неправильной работе программного обеспечения.

Уменьшите сложность конструкции Сложность программного обеспечения делится на сложность модуля и структурную сложность.

Технология настройки системы В основном включает в себя технологию горячего резервного копирования с двумя компьютерами и технологию кластера серверов.

Оценка надежности программного обеспечения

Оценка надежности программного обеспечения относится к выбору или созданию соответствующей математической модели надежности.,Использование статистических методов и других средств,Обработать сбои программного обеспечения, собранные в ходе работы системы тестирования надежности программного обеспечения.,и оценить процесс прогнозирования надежности программного обеспечения,Этот процесс включает в себя:выбирать Может Зависит отсекс Модель、Сбор достоверных、Оценка и прогноз надежности

Глава 10. Эволюция и сопровождение архитектуры программного обеспечения

Взаимосвязь между эволюцией и определением архитектуры программного обеспечения

Важность архитектурной эволюции:

  1. Архитектура программного обеспечения служит основой системы программного обеспечения и поддерживает всю систему.,Это важная гарантия того, что программная система имеет множество хороших функций.
  2. программное обеспечение Архитектуракакпрограммное обеспечениеBlueprint обеспечивает макро-контроль для людейпрограммное обеспечениесистемаиз整体сложныйсексиизменятьсекспредоставилодинэффективные способы,Более того, стоимость обнаружения и модификации программного обеспечения на основе программной Архитектуры относительно невелика.

Эволюция архитектуры программного обеспечения может лучше обеспечить согласованность и правильность эволюции программного обеспечения, значительно снизить затраты на эволюцию программного обеспечения и сделать эволюцию программной системы более удобной по трем причинам:

  1. Формальное и визуальное представление программного обеспечения системы. Архитектура улучшает конструктивность программного обеспечения.,Содействие развитию программного обеспечения
  2. программное обеспечение Архитектурадизайн Планирование покрытияизобщая структураинформация、Информация о конфигурации、Информация об ограничениях и т. д. помогает разработчикам полностью учитывать эволюционные проблемы, которые могут возникнуть в будущем.、Эволюционная ситуация и эволюционная среда
  3. Архитектурадизайнчасверносистема组件Измеждуизмуфтаописыватьполезныйпрограммное обеспечениесистемаиз Динамическая регулировка

Процесс эволюции объектно-ориентированной архитектуры программного обеспечения

Эволюция объекта, эволюция сообщения, эволюция составного фрагмента, эволюция ограничений

Классификация методов эволюции архитектуры программного обеспечения

3 типичных метода классификации:

  1. Классификация ПО по способу реализации. Архитектура и степень детализации реализации: на основе эволюции процессов и функций.、Эволюция объектно-ориентированного подхода、Эволюция на основе компонентов и эволюция на основе архитектуры
  2. в соответствии с В соответствии с Исследоватьметод Классификация:Нет.одиндобрыйверноэволюцияизподдерживать,Второй тип инструментов управления версиями и проектами,Формальный метод третьего вида трансформации Архитектуры.,Нет.Четыредобрый Архитектураэволюцияизрасходы收益анализировать
  3. В зависимости от того, находится ли процесс эволюции программного обеспечения Архитектуры во времени работы системы: статическая эволюция и динамическая эволюция.

Периоды развития архитектуры программного обеспечения: эволюция во время разработки, эволюция перед запуском, ограниченная эволюция во время выполнения, эволюция во время выполнения.

Принципы эволюции архитектуры программного обеспечения

Принцип управления затратами на эволюцию, принцип управляемости по расписанию, принцип управляемости рисками, принцип тематического обслуживания, принцип оптимизации общей структуры системы, принцип плавной эволюции, принцип согласованности целей, принцип независимой от модуля эволюции, принцип контролируемого воздействия, принцип контролируемой сложности и принцип, способствующий реконструкция, принцип благоприятности к повторному использованию, принцип соответствия проекта, принцип адаптации к новым технологиям, принцип экологической адаптивности, принцип соответствия стандартам, принцип повышения качества, принцип адаптации к новым потребностям

Метод оценки эволюции архитектуры программного обеспечения

В зависимости от того, известен процесс эволюции или нет, процесс оценки можно разделить на: оценку с известным процессом эволюции и оценку с неизвестным процессом эволюции.

Примеры эволюции архитектуры крупных веб-сайтов

Этап первый: монолитная архитектура Этап 2: Вертикальная архитектура (разделение приложений и данных) Этап 3. Кэширование повышает производительность веб-сайта. Этап 4. Использование кластеров служб для улучшения возможностей параллельной обработки веб-сайтов. Пятый этап: база разделение чтения и записи Этап 6. Используйте обратный прокси-сервер и CDN для ускорения ответа веб-сайта. Этап седьмой: Использование распределенных файлов системаираспределенныйбаза данныхсистема Этап восьмой: использование NoSQL и поисковых систем Этап 9: Выделение бизнеса Этап 10: Распределенные сервисы

Обслуживание архитектуры программного обеспечения

Обслуживание архитектуры программного Обеспечение неотделимо от развития. Сопровождение требует отслеживания и контроля процесса развития Архитектуры программного обеспечения, чтобы гарантировать, что процесс развития Архитектуры программного обеспечения может удовлетворить потребности, Обслуживание. архитектуры программного обеспеченияпроцессдизайн Архитектура Знаниеуправлять、Управление модификациями архитектуры、Управление версиями архитектуры и т. д.

Глава 11. Информационные интегрированные технологии будущего.

технология искусственного интеллекта

Ключевые технологии включают в себя: обработку естественного языка (NLP), компьютерное зрение, граф знаний, взаимодействие человека и компьютера (HCI), виртуальную или дополненную реальность и машинное обучение.

Классификация роботов: операционные роботы, программируемые роботы, обучающие и репродукционные роботы, интеллектуальные роботы, комплексные роботы.

По отраслевому применению: промышленные роботы, сервисные роботы, специальные полевые роботы.

периферийные вычисления

Бизнес-суть периферийных вычислений: расширение облачных вычислений и эволюция узла конвергенции за пределами дата-центра,включатькрай облака、Краевое облако、Облачный шлюз

периферийные вычисленияиз Функции:

  1. Возможности подключения периферийные Основа вычислений, разнообразие подключенных физических объектов и разнообразие сценариев применения требуют периферийных расчет имеет богатые функции подключения
  2. данные Нет.один Вход
  3. Ограничения, с высокими требованиями к суровым условиям труда и рабочей среде, таким как электромагнитная защита, пыленепроницаемость и энергопотребление.
  4. Распределение, поддержка распределенных вычислений и хранения, реализация динамического планирования и унифицированного управления распределенными ресурсами, распределенный интеллект и распределенная безопасность и т. д.

Совместная работа в периферийном облаке: Облако хорошо подходит для глобальной, не в реальном времени, долгосрочной обработки и анализа больших данных и может проявить свои преимущества в долгосрочном обслуживании, поддержке бизнес-решений и других областях. периферийные вычисления Больше подходит для местного использования.секс、в реальном времени、короткий циклданныеизобработка санализировать,Может лучше поддерживать местный бизнесизв реальном времени Интеллектуальное принятие и исполнение решений

Возможности и смысл совместной работы в периферийном облаке включают в себя комплексное сотрудничество на всех уровнях Laas, PaaS и SaaS и в основном включают шесть типов сотрудничества: совместная работа над ресурсами, совместная работа с данными, интеллектуальная совместная работа, совместная работа по управлению приложениями, совместная работа по управлению бизнесом и сервис. сотрудничество.

  1. Совместная работа с ресурсами: предоставляет ресурсы инфраструктуры, такие как вычисления, хранилище, сеть и виртуализация, а также имеет возможности планирования и управления локальными ресурсами. Он также может взаимодействовать с облаком для принятия и выполнения политик планирования и управления облачными ресурсами, включая управление устройствами на пограничных узлах. управление ресурсами и управление сетевыми подключениями
  2. совместная работа с данными: пограничный узел в основном отвечает за сбор данных на месте/терминале.,Предварительная обработка и анализ данных согласно правилам или модели данных.,Загружайте результаты обработки и связанные с ними данные в облако, обеспечивая хранение, анализ и анализ огромных объемов данных.
  3. Интеллектуальное сотрудничество: граничные узлы выполняют выводы в соответствии с моделью ИИ для достижения распределенного интеллекта. Облако выполняет централизованное обучение модели ИИ и доставляет ее на граничные узлы.
  4. Совместная работа по управлению приложениями. Пограничный узел обеспечивает развертывание и операционную среду приложений, а также управляет и планирует жизненные циклы нескольких приложений на этом узле. Облако в основном обеспечивает разработку приложений, среду тестирования и возможности управления жизненным циклом приложений.
  5. Сотрудничество в сфере управления бизнесом: периферийные узлы предоставляют модульные цифровые приложения на основе микросервисов. двойник/сетевые и другие приложения Пример, облако в основном предоставляет приложения, основанные на потребностях клиента/цифровой Возможности бизнес-оркестрации двойника/сети и т. д.
  6. Сотрудничество в сфере услуг. Пограничный узел реализует некоторые услуги ECSaaS в соответствии с облачной стратегией и реализует услуги SaaS по требованию для клиентов посредством сотрудничества между ECSaaS и облачным SaaS. Облако в основном обеспечивает стратегию распределения услуг SaaS в облаке и на периферии. узлы, а также услуги SaaS, предоставляемые облаком.

цифровой двойник

цифровой двойник Ключевые технологии: Моделирование、моделирование、Цифровая нить на основе объединения данных

облачные вычисления

Сверху вниз оно включает в себя программное обеспечение как услугу (SaaS), платформу как услугу (PaaS) и инфраструктуру как услугу (IaaS).

С точки зрения гибкости, последовательных улучшений, SaaS -> PaaS -> IaaS С точки зрения удобства он улучшен на порядок, IaaS -> PaaS -> SaaS

облачные вычисления Модель развертывания: Публичное облако,облако сообщества,Частное облако, гибридное облако

Глава 12. Теория и практика проектирования архитектуры информационных систем.

Определение архитектуры информационной системы

информациясистема Определение архитектуры:

  1. Архитектура — это абстракция системы,Отразите эту абстракцию, описывая элементы, их внешне видимые свойства и отношения между элементами.
  2. Архитектура состоит из нескольких структур,Структура описывает отношения между элементами с функциональной точки зрения.,Конкретная структура передает определенный аспект Архитектуры.
  3. Любой софт существует Архитектура,но нетодин Должно бытьверно Должен Архитектураизконкретное выражениедокумент
  4. Коллекция элементов и их поведения составляет содержание Архитектуры.,Абстракция двумя способами: со статической стороны,сосредоточиться Крупнозернистую (макро) общую структуру системы с точки зрения динамики сосредоточить Общие характеристики ключевых моделей поведения внутри системы
  5. Архитектура базовая,Обычно предполагает общее решение различных типов критических повторяющихся проблем (повторное использование).,а такжесистемадизайнсередина Влияние深远изкаждый项важный决策
  6. Архитектура подразумевает «решение».,Прямо сейчас Архитектурасделан из Архитектурадизайнучитель на основе ключаиз Функцияи非Функциясекснуждаться(质量родсекси связанных с проектомизограничение)руководитьдизайни принятие решенийизрезультат

Классификация архитектуры информационных систем

  1. Физическая структура информационной системы (централизованная структура)、распределенная структура)
  2. Логическая структура информационной системы (горизонтальный синтез、вертикальная интеграция、Вертикальное и горизонтальное комплексное)

4 часто используемые архитектурные модели в информационных системах

  1. Автономный режим приложения
  2. Модель клиент/сервер (двухуровневая структура C/S, трехуровневая структура C/S и B/S, многоуровневая структура CS, MVC)
  3. Шаблон сервис-ориентированной архитектуры (SOA) (сервис-ориентированная архитектура, веб-сервис, суть сервис-ориентированной архитектуры)
  4. Шина коммутации корпоративных данных

Общая структура корпоративных информационных систем Архитектура информационной системы (ISA), многомерная, иерархическая и высокоинтегрированная модель.

Общая структура архитектуры информационной системы состоит из: стратегической системы, бизнес-системы, системы приложений и информационной инфраструктуры.

Методы проектирования архитектуры информационной системы

TOGAF — это стандарт структуры открытой архитектуры предприятия, основанный на итеративной модели процессов, которая поддерживает лучшие практики и многократно используемый набор существующих архитектурных активов, что позволяет проектировать, оценивать и создавать правильную архитектуру для организации.

Эта структура помогает предприятиям организовывать и удовлетворять все критически важные потребности бизнеса посредством достижения четырех целей:

  1. Обеспечение того, чтобы все пользователи, от ключевых заинтересованных сторон до членов команды, говорили на одном языке, помогает всем одинаково понимать структуру, контент и цели, а также позволяет поддерживать единство всего бизнеса, устраняя любые коммуникационные барьеры.
  2. Избегайте «привязки» к проприетарным решениям корпоративной архитектуры.,При условии, что компания использует TOGAF внутри компании, а не в коммерческих целях.,Фреймворк бесплатен
  3. Экономьте время и деньги и более эффективно используйте ресурсы
  4. Достичь значительной рентабельности инвестиций (ROI)

TOGAF состоит из шести компонентов:

  1. Архитектура Метод разработки,Это ядро ​​TOGAF.,Описывает метод разработки архитектуры TOGAF (ADM).,Прямо сейчасодинвид развивающего предприятия Архитектураиз分шагметод
  2. Рекомендации и методы ADM содержат ряд рекомендаций и методов применения ADM.
  3. Рамка содержимого «Архитектура»,В этом разделе описывается структура контента TOGAF.,Включает структурированную метамодель артефакта Архитектуры, использование повторно используемых строительных блоков Архитектуры (ABB) и обзор типичных результатов Архитектуры.
  4. Корпоративный континуум и инструменты,Обсуждение таксономий и инструментов,Используется для классификации и хранения результатов деятельности Архитектуры на предприятии.
  5. Эталонная модель TOGAF,Предоставляются две эталонные модели архитектуры.,То есть эталонная модель технологии TOGAF (TRM) и эталонная модель интегрированной информационной инфраструктуры (III-RM).
  6. Структура компетенций Архитектура,Обсудите организацию, необходимую для создания и управления практикой Архитектуры в рамках бизнеса.,процесс,Навык,Роли и обязанности

Основные идеи структуры: модульная архитектура, структура контента, руководство по расширению, архитектурный стиль.

Модель полного жизненного цикла метода разработки архитектуры ADM

Основные мероприятия на каждом этапе:

  • Подготовительный этап: подготовка к реализации успешного проекта Архитектура предприятия.,включатьопределение Организационная структура、Конкретная структура архитектуры、Принципы архитектуры и инструменты
  • Управление требованиями: завершение идентификации, хранения и доставки требований. Соответствующий этап ADM обрабатывает требования в порядке приоритета. Каждый этап проекта TOGAF основан на бизнес-требованиях и требует подтверждения требований.
  • Архитектура Видение: определение масштабов, ограничений и ожиданий проекта TOGAF,Создание видения архитектуры включает в себя: Определение заинтересованных сторон.,Подтвердите бизнес-контекст,Создать техническое задание Архитектура,Получить одобрение от начальства
  • Б Бизнес Архитектура,Cинформациясистема Архитектура,Технология D Архитектура: Архитектура разработана на основе трех уровней технологии бизнеса и информационных систем.,существовать Каждыйодининдивидуальныйслой面分别完成к下Активность:базовый уровень разработки Архитектураописывать、Цели развития Описание архитектуры、Выполните анализ пробелов
  • E Возможности и решения: Проведение первоначального планирования внедрения,и подтвердить форму результатов для различных строительных блоков, определенных на предыдущих этапах.,Конечноосновнойосуществлятьпроект、Сгруппируйте элементы и включите их в Архитектуру.、Решение о подходе(производство/Купить/повторное использование、аутсорсинг、коммерческий、открытый исходный код)、Оцените приоритеты、Определить зависимости
  • F Планирование миграции: провести анализ эффективности и оценку рисков проектов, определенных на этапе E, и разработать подробный план реализации и миграции.
  • G Управление реализацией: Определить ограничения проекта реализации: Обеспечить надзор за проектом реализации.、Выдача Архитектура контракта на реализацию проекта、Мониторинг проектов внедрения для обеспечения соответствия требованиям архитектуры.
  • Архитектураизменятьуправлять:Обеспечить постоянный мониторингиизменятьуправлятьизпроцесс,Обеспечить, чтобы Архитектура могла реагировать на потребности предприятия и будет Архитектура для Максимизации ценности бизнеса.

Информационные характеристики: Простота использования, надежность (платформа, гибкость, масштабируемость), безопасность (портализация, интеграция), мобильность

Жизненный цикл информационной системы:системапланирование、системаанализировать、системадизайн、внедрение системы、система Эксплуатация и обслуживание

Методология генерального планирования информационной фабрики: в основном метод критического фактора успеха、Метод трансформации набора стратегических целей、Система предприятия Плановое право、другой также имеет технологии анализа и интеграции корпоративной информации.、Анализ результатов/методов、метод возмещения инвестиций、Закон о Леви、бюджетирование с нулевой строкой、метод ступенчатого камня

Глава 13. Теория и практика проектирования иерархической архитектуры

иерархическая архитектура

Архитектура программного обеспечения проходит через весь жизненный цикл разработки программного обеспечения и оказывает важное влияние. Она будет рассмотрена с точки зрения следующих трех аспектов:

  1. Коммуникация между заинтересованными сторонами,Подавляющее большинство заинтересованных сторон, включая программистов, полагаются на архитектуру программного обеспечения как на основу взаимного общения.
  2. системадизайнизвпередрешение о периоде
  3. Абстракция уровня транзитивной системы

Большинство многоуровневых архитектур делятся на уровень представления (уровень представления), средний уровень (бизнес-уровень), уровень доступа к данным (уровень постоянства) и уровень данных.

Проектирование структуры уровня представления

Шаблоны проектирования уровня представления: шаблон MVC, шаблон MVP, шаблон MVVM.

Проектирование архитектуры среднего уровня

Компоненты бизнес-логики разделены на две части: интерфейс и класс реализации.

Проектирование уровня доступа к данным

Режим доступа к данным: онлайн-доступ, объект DataAccess, объект передачи данных (DTO), автономный режим данных, объектное/реляционное сопоставление.

Проектирование иерархической архитектуры Интернета вещей

Уровни Интернета вещей делятся на: Нижний уровень используется для сбора данных с использованием датчиков, QR-кодов, RFID и других устройств для получения информации об объекте. Второй уровень — сетевой уровень передачи и обработки данных, то есть за счет интеграции различных сенсорных сетей и Интернета текущая информация об объекте точно передается в реальном времени. Третий уровень — это прикладной уровень, объединенный с потребностями отрасли, то есть посредством интеллектуальных вычислений, облачных расчет и т. д. для разумного управления объектами

Глава 14. Теория и практика проектирования облачной архитектуры

Облачная архитектура

С технической точки зрения Облачная архитектура — это собрание принципов архитектуры и шаблонов проектирования, основанных на облачных технологиях.,Целью является максимальное удаление частей кода, не связанных с бизнесом, в облачных приложениях.,Это позволяет облачным средствам взять на себя большое количество нефункциональных функций, изначально присутствующих в приложениях (таких как эластичность, отказоустойчивость, безопасность, наблюдаемость, оттенки серого и т. д.).,Чтобы бизнес больше не беспокоили нефункциональные перерывы в работе.,Легкий、гибкий、Высокоавтоматизированные функции

Собственный облачный код обычно включает в себя: бизнес-код, стороннее программное обеспечение и код, который обрабатывает нефункциональные функции.

Облачная архитектурав принципе Принцип сервитизации, принцип эластичности, принцип наблюдаемости, принцип устойчивости, принцип автоматизации всех процессов, принцип нулевого доверия, принцип непрерывного развития архитектуры.

Основные архитектурные образцы

  1. Модель сервисизации архитектуры (микросервисы、небольшой сервис)
  2. Режим сетки
  3. Бессерверный режим (подходит для событийно-ориентированных вычислений данных).、Приложения запроса/ответа с коротким временем вычислений、Длительные периоды без сложных взаимных звонков Задача)
  4. Режим разделения хранения и вычислений
  5. Модель распределенных транзакций
  6. Наблюдаемая Архитектура
  7. событийная архитектура

Глава 15. Теория и практика проектирования сервис-ориентированной архитектуры.

Сервис-ориентированная архитектура (SOA)

  • С точки зрения приложения: SOA представляет собой структуру приложений, разделяющую их на отдельные бизнес-функции и процессы, которые являются так называемыми сервисами.
  • Из основ программного обеспечения: SOA — это компонентная модель, которая соединяет различные функциональные единицы приложения (называемые сервисами) через четко определенные интерфейсы и контракты между этими сервисами.

Разница между SOA и микросервисами:

  1. Микросервисы более сложны, чем SOA. Микросервисы существуют скорее как независимые процессы и не влияют друг на друга.
  2. Интерфейс, предоставляемый микросервисами, является более общим.
  3. Микросервисы более склонны к распределенному и децентрализованному методу развертывания, который больше подходит для сценариев интернет-бизнеса.

Эталонная архитектура SOA

С точки зрения сервисов, архитектуру интеграции предприятия можно разделить на: услуги бизнес-логики, услуги управления, услуги подключения, услуги по инновациям и оптимизации бизнеса, услуги разработки и управление ИТ-услугами.

Основные протоколы и спецификации SOA

  • UDDIпротокол:системаодинописывать、Обнаружитьиинтегрированныйпротокол,Определите, как они взаимодействуют в Интернете.,исуществоватьодининдивидуальныйпо всему мируиз Система регистрации Архитектурасерединаобщийинформация
  • Спецификация WSDL: Язык описания веб-служб, язык XML, используемый для описания веб-служб и объяснения того, как взаимодействовать с веб-службами.
  • Протокол SOAP: это простой протокол для обмена информацией в децентрализованной или распределенной среде. Это протокол на основе XML, включающий инкапсуляцию SOAP, правила кодирования SOAP, представление SOAP RPC и привязку SOAP.
  • Спецификация REST

Стандартные требования к проектированию SOA

Стандартизация документов, стандарты протоколов связи, единая регистрация и интеграция приложений, качество обслуживания

Шаблоны проектирования SOA: шаблон реестра служб, шаблон ESB

Шаблон микросервиса

Участвующие шаблоны проектирования микросервисов: шаблон проектирования микросервиса агрегатора, шаблон проектирования микросервиса агента, шаблон проектирования цепочки микросервисов, шаблон проектирования микросервиса филиала, шаблон проектирования микросервиса совместного использования данных, шаблон проектирования микросервиса асинхронного обмена сообщениями и т. д.

Основные проблемы, вызванные микросервисной архитектурой:

  1. Сложность, которую создают микросервисы. Архитектура распределенных функций.
  2. Разбиение микросервисов Архитектура базы система данных, разные сервисы имеют разную базу данных

Глава 16. Теория и практика проектирования архитектуры встроенных систем

Глава 17. Теория и практика проектирования архитектуры систем связи.

Сетевая архитектура системы связи

Архитектура сети локальной сети Одноядерная архитектура

Функции одноядерной сети,

  1. В коммутационном оборудовании ядра обычно используются коммутаторы уровня 2, уровня 3 и выше.,Если используется трехуровневый коммутатор или выше, его можно разделить на VLAN.,Переадресация каналов передачи данных уровня 2 используется внутри VLAN.,Маршрутизация уровня 3 используется для пересылки между VLAN.
  2. Устройство коммутации доступа использует коммутатор уровня 2, который реализует только пересылку каналов уровня 2.
  3. Соединения Ethernet, такие как 100M/GE/10GE, используются между базовым коммутационным оборудованием и оборудованием доступа. Преимущество: структура сети проста и может сэкономить инвестиции в оборудование. Недостатки: географический охват сети ограничен, коммутационное оборудование базовой сети имеет единственную точку отказа, а возможности расширения сети ограничены. При наличии большого количества сетевого оборудования плотность портов базового коммутационного оборудования должна быть соответствующей. высокий.

Двухъядерная архитектура: Двухъядерное обычно относится к основному коммутационному оборудованию, обычно использующему трехуровневые и вышепереключатели.

Доступ между каждой VLAN осуществляется через два основных коммутационных устройства. Только основное коммутационное устройство имеет функцию маршрутизации, а устройство доступа обеспечивает только функцию пересылки уровня 2.

Кольцевая архитектура: Кольцевая локальная сеть состоит из нескольких основных коммутационных устройств, соединенных в двойное динамическое эластичное пакетное кольцо RPR, образующее ядро ​​сети. RPR имеет функцию защиты самовосстановления и время самовосстановления 50 мс на уровне MAC. RPR использует технологию пространственного повторного использования для эффективного использования полосы пропускания в кольце. Компоненты RPR используются в крупномасштабных локальных сетях. Несколько колец могут взаимодействовать друг с другом только через сервисные интерфейсы и не могут обеспечить прямую сетевую связь.

Иерархическая архитектура локальной сети: Иерархическая локальная сеть (многоуровневая локальная сеть) состоит из коммутационного оборудования базового уровня, коммутационного оборудования уровня агрегации, коммутационного оборудования уровня доступа и пользовательского оборудования.

Архитектура сети WAN Одноядерная глобальная сеть: обычно состоит из основного устройства маршрутизации и каждой локальной сети. Двухъядерная глобальная сеть: обычно состоит из двух основных устройств маршрутизации и каждой локальной сети. Кольцевая глобальная сеть: обычно три или более основных маршрутизатора используются для формирования петли маршрутизации для подключения различных локальных сетей. Полурезервированная глобальная сеть: состоит из нескольких основных устройств маршрутизации, соединяющих различные локальные сети. Одноранговый субдомен WAN. Путем разделения оборудования маршрутизации WAN на два независимых субдомена каждое оборудование маршрутизации субдомена соединено между собой полурезервированным образом. Иерархический субдомен WAN: разделите большое оборудование маршрутизации глобальной сети на несколько относительно независимых субдоменов. Оборудование маршрутизации в каждом субдомене соединено между собой полурезервным образом. Между каждым субдоменом существует иерархическая связь, соединяющая несколько субдоменов низкого уровня. иерархический поддомен

Архитектура сети хранения данных

  1. Хранилище с прямым подключением (DAS), способ прямого доступа компьютеров к устройствам хранения данных через порты ввода-вывода.
  2. Сетевое хранилище (NAS), способ доступа компьютеров к устройствам хранения данных через распределенную файловую систему.
  3. Сеть хранения данных (SAN) — способ доступа компьютеров к устройствам хранения данных через независимую сеть хранения данных.

общийNASпротокол:общественныйInternetфайловый сервис/серверблок сообщений,CIFS/SMB,сетьфайловая система(NFS) Общие протоколы SAN: протокол Fibre Channel (FCP), Интернет. Интерфейс малой компьютерной системы (iSCSI), Fibre Channel over Ethernet (FCoE), стандарт энергонезависимой памяти на основе Fibre Channel (FC-NVMe)

Сходства и различия между NAS и SAN: Оба могут использоваться для централизованного управления хранилищем и предоставления общего хранилища для нескольких хостов (серверы NAS обычно основаны на Ethernet, а SAN основан на Ethernet или Fibre Channel, ориентированном на простоту использования, простоту управления, масштабируемость и низкую общую производительность). стоимость владения (TCO), тогда как сети SAN ориентированы на высокую производительность и низкую задержку.

Ключевые технологии построения сетей

Технология перехода к сосуществованию сетей IPv4 и IPv6: двойной стек протоколов, технология туннелирования (туннель ISATAP, туннель 6to4, туннель 4over6, туннель 6over4), механизм трансляции адресов

сетевая безопасность

осуществлятьсетевая технологии, связанные с безопасностью: развертывание межсетевого экрана, технология VPN, технология контроля доступа, сетевая безопасностьизоляция、сетевая безопасностьпротокол、сетевая безопасностьаудит

Глава 18. Теория и практика проектирования архитектуры безопасности

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

Ключевые соображения при проектировании безопасности информационных систем: система обеспечения безопасности системы, архитектура системы информационной безопасности. Система безопасности системы:

  1. Определение стратегий зон безопасности. На основании разделения зон безопасности компетентные органы должны сформулировать целевые стратегии безопасности.
  2. системаодин Конфигурацияиуправлять Антивируссистема,Компетентные органы должны разработать общую стратегию защиты.,квыполнитьсистемаодиниз Конфигурацияиуправлять
  3. сетевая безопасностьуправлять,укреплятьсетевая управление безопасностью, формулирование соответствующих правил и положений

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

Проектирование целостности базы данныхв принципе:

  1. По данным базы Тип ограничения целостности данных определяет систему и способ его реализации и заранее учитывает Производительность. системы В целом, в базу должны быть включены статические ограничения. В режиме данных динамические ограничения реализуются приложением.
  2. сущностьчестностьограничение、Цитироватьчестностьограничениедареляционная база данных最важныйизчестностьограничение,Применяйте его как можно чаще, не влияя на ключевые характеристики системы.
  3. Будьте осторожны при использовании триггерных функций, поддерживаемых текущими основными СУБД. С одной стороны, затраты на производительность триггеров велики, а с другой стороны, многоуровневый запуск триггеров трудно контролировать, и возможны ошибки.
  4. существоватьэтап анализа требованийдолжен быть сформулированчестностьограничениеиз Соглашение об именах,Старайтесь использовать осмысленныеиз Английские слова、аббревиатура、имя таблицы、Комбинации названий столбцов и знаков подчеркивания
  5. база по бизнес-правилам данныхчестностьруководить细Кизтест,к尽早排除隐含изчестностьограничениемеждуизконфликтиверносексспособныйиз Влияние
  6. Должен быть штатный Проектирование базы команда данных, отвечающая за базу от начала до конца данныхизанализировать、дизайн、тест、Внедрение и раннее обслуживание
  7. Чтобы уменьшить Проектирование, следует использовать соответствующие CASE-инструменты. базы данных Загруженность каждого этапа

уязвимость программного обеспечения

уязвимость программного обеспечениявключатьиз4индивидуальныйаспект:

  1. Хрупкийсексдапрограммное обеспечениесистемасередина隐藏изодининдивидуальный Слабость,Сам по себе вреда не причиняет,但被利用назад会产生严重из Безопасностьв результате
  2. В процессе разработки программного обеспечения логические ошибки, вносимые сознательно или неосознанно, являются основным источником большинства уязвимостей.
  3. Это тесно связано с конкретной средой системы, и любые различия в среде системы могут привести к различным проблемам с уязвимостями.
  4. Коллеги, у которых исправлены или исправлены старые уязвимости, могут создать новые уязвимости, тем самым усугубляя проблемы с уязвимостями.

Типичные методы классификации: классификация ISOS, классификация PA, классификация Ландвера, классификация Аслама, классификация Бишопа, классификация IBM.

Таксономия ISOS: Классификация аспектов безопасности и конфиденциальности информационных систем. Цель состоит в том, чтобы помочь менеджерам информационных систем понять проблемы безопасности и предоставить соответствующую информацию для улучшения безопасности системы. Классификация ПО: Основная научно-исследовательская Операционная Ошибки в системе, связанные с включением безопасности Классификация Ландвера: классификация, основанная на трех измерениях: причина дефекта, время появления и место распространения. По каждому измерению его можно классифицировать и описать более подробно на нескольких уровнях. Таксономия Аслама: для Unix Операционная Гарантию безопасности в системе можно разделить на две категории: сбой кодирования и внезапный сбой с точки зрения жизненного цикла программного обеспечения. Таксономия Бишопа: метод классификации в области информационной безопасности, описывающий метод классификации уязвимостей Unix и сетевых уязвимостей. Таксономия IBM: Используя таксономию Ландвера в качестве основы структуры классификации, она расширяется и трансформируется с учетом возникающих недостатков безопасности, чтобы адаптироваться к изменениям в сегодняшних уязвимостях.

Глава 19. Теория и практика проектирования архитектуры больших данных.

Архитектура системы обработки больших данных

Системы обработки больших данных сталкиваются с проблемами

  1. Как использовать информационные технологии и другие средства для работы с неструктурированными и полуструктурированными данными.
  2. Как изучить метод определения характеристик сложности и неопределенности больших данных и систему моделирования больших данных
  3. Влияние взаимосвязи между неоднородностью данных и неоднородностью принятия решений на обнаружение больших знаний о данных и решения по управлению

Архитектура системы обработки больших данныхособенность

  1. Надежность и отказоустойчивость
  2. Возможности чтения и обновления с низкой задержкой
  3. Горизонтальное расширение
  4. Универсальность
  5. Пластичность
  6. Возможности специальных запросов
  7. Минимальные возможности обслуживания
  8. Регулируемость

Лямбда-архитектура

Лямбда-архитектура Для одновременной обработки оффлайнив реальном времениданные,отказоустойчивый,Масштабируемая распределенная система,Он отличается высокой надежностью, низкой задержкой и постоянными обновлениями.

Лямбда-архитектура разделена на три слоя: пакетный слой、слой ускорения、уровень обслуживания

Основные функции уровня пакетной обработки: хранение наборов данных и создание пакетных представлений. Данные в наборе основных данных должны иметь следующие три атрибута: данные являются исходными, данные неизменяемыми и данные всегда верны.

Лямбда-архитектураотличныйнедостаток: Преимущества: Хорошая отказоустойчивость, высокая гибкость запросов, легкость масштабирования и расширения. недостаток:全сцена覆盖带来изкодированиенакладные расходы,Переобучение в автономном режиме для конкретных сценариев малоэффективно.,Перераспределение и миграция обходятся дорого

Каппа архитектура

Kappa отличается от Lambda одновременным вычислением, пакетным вычислением и объединением представлений. Он рассчитывает и генерирует представления только через один канал передачи данных потокового расчета. Каппа Принцип архитектуры: Оптимизируйте на Lambda и удалите пакетную обработку Многоуровневая архитектура заменяет канал данных очередью сообщений и по-прежнему фокусируется на потоковой обработке. Данные хранятся на уровне озера данных. Когда требуется автономный анализ или пересчет, данные в озере данных снова воспроизводятся через очередь сообщений. .

С точки зрения сценариев использования, Каппа Между архитектурой и Лямбда-архитектурой есть два основных различия:

  1. Kappa не является заменой Lambda Архитектура,представляет собой упрощенную версию,Kappa отказывается от поддержки пакетной обработки,Лучше анализирует потребности самого бизнеса для сценариев поэтапной записи данных.,Например, различные сцены с временными данными.,Концепция естественных временных окон,Потоковые вычисления напрямую отвечают его требованиям реальном временивычислитьиисторическая компенсация Задачануждаться
  2. Lambda напрямую поддерживает пакетную обработку,Больше подходит для анализа исторических данных и сценариев запросов.,Например, аналитикам данных необходимо провести исследовательский анализ исторических данных на основе любой комбинации условий.,И есть определенный спрос на вреальное время.,Ждём скорейшего получения результатов анализа,Пакетная обработка может удовлетворить эти потребности более непосредственно и эффективно.

Лямбда-архитектураи Каппа архитектураверно Сравнивать

Сравнить контент

Лямбда-архитектура

Каппа архитектура

Сложность и затраты на разработку и обслуживание

Необходимо обслуживать две системы (двигателя), что является сложным, а разработка и обслуживание дорогостоящими.

Необходимо поддерживать только одну систему (движок) с низкой сложностью, низкими затратами на разработку и обслуживание.

Вычислительные накладные расходы

нуждатьсяодин Пакетная обработка прямого запускаив реальном временивычислить,Вычислительные накладные расходыбольшой

При необходимости выполнять полные расчеты. накладные расходы относительно невелики

в реальном времени

удовлетворитьв реальном времени

удовлетворитьв реальном времени

Возможности обработки исторических данных

Полная пакетная обработка,Высокая пропускная способность,Возможности обработки исторических данныхмощный

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

boy illustration
RasaGpt — платформа чат-ботов на основе Rasa и LLM.
boy illustration
Nomic Embed: воспроизводимая модель внедрения SOTA с открытым исходным кодом.
boy illustration
Улучшение YOLOv8: EMA основана на эффективном многомасштабном внимании, основанном на межпространственном обучении, и эффект лучше, чем у ECA, CBAM и CA. Малые цели имеют очевидные преимущества | ICASSP2023
boy illustration
Урок 1 серии Libtorch: Тензорная библиотека Silky C++
boy illustration
Руководство по локальному развертыванию Stable Diffusion: подробные шаги и анализ распространенных проблем
boy illustration
Полностью автоматический инструмент для работы с видео в один клик: VideoLingo
boy illustration
Улучшения оптимизации RT-DETR: облегченные улучшения магистрали | Support Paddle облегченный rtdetr-r18, rtdetr-r34, rtdetr-r50, rtdet
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | Деформируемое внимание с большим ядром (D-LKA Attention), большое ядро ​​​​свертки улучшает механизм внимания восприимчивых полей с различными функциями
boy illustration
Создано Datawhale: выпущено «Руководство по тонкой настройке развертывания большой модели GLM-4»!
boy illustration
7B превышает десятки миллиардов, aiXcoder-7B с открытым исходным кодом Пекинского университета — это самая мощная модель большого кода, лучший выбор для корпоративного развертывания.
boy illustration
Используйте модель Huggingface, чтобы заменить интерфейс внедрения OpenAI в китайской среде.
boy illustration
Оригинальные улучшения YOLOv8: несколько новых улучшений | Сохранение исходной информации — алгоритм отделяемой по глубине свертки (MDSConv) |
boy illustration
Второй пилот облачной разработки | Быстро поиграйте со средствами разработки на базе искусственного интеллекта
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция с нулевым кодированием и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
Решенная Ошибка | Загрузка PyTorch медленная: TimeoutError: [Errno 110] При загрузке факела истекло время ожидания — Cat Head Tiger
boy illustration
Brother OCR, библиотека с открытым исходным кодом для Python, которая распознает коды проверки.
boy illustration
Новейшее подробное руководство по загрузке и использованию последней демонстрационной версии набора данных COCO.
boy illustration
Выпущен отчет о крупной модели финансовой отрасли за 2023 год | Полный текст включен в загрузку |
boy illustration
Обычные компьютеры также могут работать с большими моделями, и вы можете получить личного помощника с искусственным интеллектом за три шага | Руководство для начинающих по локальному развертыванию LLaMA-3
boy illustration
Одной статьи достаточно для анализа фактора транскрипции SCENIC на Python (4)
boy illustration
Бросая вызов ограничениям производительности небольших видеокарт, он научит вас запускать большие модели глубокого обучения с ограниченными ресурсами, а также предоставит полное руководство по оценке и эффективному использованию памяти графического процессора!
boy illustration
Команда Fudan NLP опубликовала 80-страничный обзор крупномасштабных модельных агентов, в котором в одной статье представлен обзор текущего состояния и будущего агентов ИИ.
boy illustration
[Эксклюзив] Вы должны знать о новой функции JetBrains 2024.1 «Полнострочное завершение кода», чтобы решить вашу путаницу!
boy illustration
Краткое изложение базовых знаний о регистрации изображений 1.0
boy illustration
Новейшее подробное руководство по установке и использованию библиотеки cv2 (OpenCV, opencv-python) в Python.
boy illustration
Легко создайте локальную базу знаний для крупных моделей на основе Ollama+AnythingLLM.
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание решения. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Одна статья поможет вам понять RAG (Retrival Enhanced Generation) | Введение в концепцию и теорию + практику работы с кодом (включая исходный код).
boy illustration
Эволюция архитектуры шлюза облачной разработки
boy illustration
Docker и Kubernetes [Разработка контейнерных приложений с помощью Python]