 
        
        - •Оглавление
- •1 Жизненный цикл информационной системы. Гост 51 904
- •2 Модели жизненного цикла информационной системы. Гост 15 271
- •3 Методологии проектирования. Каноническое проектирование. Гост 34.601-90
- •4 Методологии проектирования. Типовое проектирование.
- •5 Процессы жизненного цикла информационной системы. Гост 12 207
- •6 Процессы жизненного цикла информационной системы. Процессы планирования
- •7 Процессы жизненного цикла информационной системы. Процессы определений требований к ис.
- •8 Процессы жизненного цикла информационной системы. Процессы проектирования.
- •9 Процессы жизненного цикла информационных систем. Процессы кодирования.
- •10 Процессы жизненного цикла информационных систем. Процессы интеграции.
- •11 Процессы планирования. Планирование инфраструктуры проекта.
- •12 Процессы планирования. Планирование ресурсов проекта.
- •13 Стратегии и методы проектирования информационных систем
- •14 Анализ объекта автоматизации. Методологии анализа.
- •15 Анализ объекта автоматизации. Инструментальные средства поддержки процессов анализа.
- •16 Процессы проектирования. Проектирование системной архитектуры.
- •17 Процессы проектирования. Методики описания системной архитектуры.
- •Ieee 1471
- •18 Процессы проектирования. Архитектурные стили и шаблоны проектирования.
- •19 Процессы проектирования. Проектирование информационной архитектуры.
- •20 Процессы проектирования. Построение er модели. Виды нотации
- •21 Процессы проектирования. Построение логической модели данных.
- •22 Процессы проектирования. Построение физической модели данных.
- •23 Процессы проектирования. Шаблоны информационной архитектуры.
- •24 Процессы проектирования. Проектирование программной архитектуры.
- •25 Процессы проектирования. Модели описания программной архитектуры.
- •26 Процессы проектирования. Шаблоны программной архитектуры.
- •27 Процессы проектирования. Проектирование инфраструктуры.
- •28 Процессы проектирования. Проектирование интерфейсов
24 Процессы проектирования. Проектирование программной архитектуры.
Разработка архитектуры – процесс разработки подсистем, составляющих систему, и определение системы взаимодействия и контроля подсистем. (architecturaldesign)
Результатом является программная архитектура (softwarearchitecture)
Программная архитектура - слой между данными и платформой. Естественно, каждая отдельная платформа накладывает свои ограничения на процесс проектирования. Всегда существует вероятность, что ограничения окажутся слишком жесткими и не позволят реализовать необходимые функциональные требования. Например, из-за накладываемых ограничений может быть увеличено время отклика и пропускная способность.
Программную архитектуру разделяют по реализации:
- Монолитное приложение (один модуль) 
используется только для очень небольших приложений
- Многомодульное приложение 
модульность зависит от следующих характеристик:
- размера модуля; 
- прочности (связности) модуля; 
- сцепления модуля с другими модулями; 
- рутинности (идемпотентность, независимость от предыдущих обращений) модуля. 
Существует два подхода к обращению к данным: напрямую и через абстракцию (на консультации Иванов говорил, что захочет услышать плюсы и минусы этих подходов)
Существует два подхода к проектированию программной архитектуры:
- Анализ выполнения функций с точки зрения пользователя, а затем преобразование вывода в логику работы с данными 
Решение проверяют на:
- Оптимизацию алгоритмов 
- Правильность 
- Устойчивость 
- Производительность 
В результате получаем сложный, ресурсоемкий процесс, но на 100% отвечающий требованиям заказчика, этот подход устарел в связи с увеличением количества готовых решений.
- Подход на основе шаблонов (примеры шаблонов можно найти в вопросе 26) 
Стандартная структура подхода на основе шаблонов:
- Имя паттерна 
- Задача паттерна 
- Описание решения (алгоритм без привязки к реализации) 
- Плюсы применения паттерна 
- Минусы применения паттерна 
Иногда 4 и 5 пункт заменяют рекомендацией.
Плюсы применения шаблонов проектирования:
Инструмент для решения простых задач на любом языке, разработчикам легче взаимодействовать, увеличивается скорость программирования.
Минусы применения шаблонов проектирования:
Зацикливание разработчика на готовых алгоритмах, усложнение конечных алгоритмов бизнес-логики у конкретного заказчика.
Шаблон проверяют на:
- Целостность и непротиворечивость 
- Конструкция полностью покрывает заявленные требования к функционалу 
- Устойчивость и производительность 
Два подхода проектирования:
- От общих функций к реализации 
- От частного к общему 
При тестировании реализации проверяют:
- Покрытие функциональных требований 
- Совместимость модулей и функций 
- Программная архитектура полностью покрывает модель данных 
- Реализуемость 
25 Процессы проектирования. Модели описания программной архитектуры.
Рассказать про IEEE 1471, модель Захмана,TOGAF – указать, где там есть описание программной архитектуры + упомянуть в каких нотациях может быть выполнено описание.
