12. Архитектура программных систем
Архитектура ПС - это его строение как оно видно (или должно быть видно) извне, т.е. представление ПС как системы, состоящей из некоторой совокупности взаимодействующих подсистем.(Это структура программы или вычислительной системы, которая включает программные компоненты, видимые снаружи свойства этих компонентов, а также отношения между ними.) В качестве таких подсистем выступают обычно отдельные программы. Разработка архитектуры является первым этапом борьбы со сложностью ПС, на котором реализуется принцип выделения относительно независимых компонентов.
Основные задачи разработки архитектуры ПС:
выделение программных подсистем и отображение на них внешних функций (заданных во внешнем описании) ПС;
определение способов взаимодействия между выделенными программными подсистемами.
С учетом принимаемых на этом этапе решений производится дальнейшая конкретизация функциональных спецификаций.
Архитектура программной системы - есть совокупность решений относительно:
организации программной системы;
выбора структурных элементов, составляющих систему, и их интерфейсов;
поведения этих элементов, специфицированного в кооперациях с другими элементами;
составления из этих структурных и поведенческих элементов все более и более крупных подсистем;
архитектурного стиля, направляющего и определяющего всю организацию системы: статические и динамические элементы, их интерфейсы, кооперации и способы их объединения.
Архитектура программной системы охватывает структурные и поведенческие аспекты, а также использование, функциональность, производительность, гибкость, возможности повторного применения, полноту, экономические и технологические ограничения и компромиссы, а также эстетические вопросы.
Для визуализации, специфицирования, конструирования и документирования программных систем необходимо рассматривать их с различных точек зрения как:
конечные пользователи,
системные аналитики,
руководители проекта,
разработчики,
тестеры,
технические писатели,
менеджеры
Системная архитектура управляет всевозможными точками зрения и тем самым способствует итеративной и инкрементной разработке системы на всем промежутке ее жизненного цикла.
Итеративный (iterative) процесс предполагает управление потоком исполняемых версий системы.
Инкрементный (incremental) процесс подразумевает постоянное развитие системной архитектуры при выпуске новых версий системы, причем каждая следующая версия усовершенствована по сравнению с предыдущей.
- Разработка и стандартизация программных систем
- 1. Три типа жизненных циклов программных систем.
- Водопадная (каскадная, последовательная) модель
- Итерационная модель
- Спиральная модель
- 3. Стандарт iso серии 9000 при разработке программных систем.
- Iso 9000 — серия международных стандартов, описывающих требования к системе менеджмента качества организаций и предприятий.
- 4. Стандарты Единой системы программной документации (еспд)
- Классификация:
- 5. Стандарты рф (гост р) на документирование пс
- 6. Организация группы проекта при разработке программных систем.
- 7. Три способа определения требований к программной системе.
- 8. Спецификация требований к программной системе.
- 9. Методы контроля спецификации требований.
- 10. Спецификация качества программных систем.
- 11. Функциональная спецификация программных систем.
- 12. Архитектура программных систем
- 13. Основные классы архитектур программных систем.
- 14. Основные модели при разработке программных систем.
- (См. Вопрос 1!)
- 15. Принципы объектно-ориентированного анализа и проектирования пс
- 16. Принципы компонентной архитектуры информационных систем.
- 17. Стандарты семейства idef
- 18. Принципы построения модели idef0
- 19. Принципы разработки моделей as-is и то-ве
- 20. Диаграммы в стандарте idef0
- 21. Понятие работы в стандарте idef0
- 22. Описание взаимодействия работ в стандарте idef0
- 23. Типы связей работ в стандарте idef0
- 24. Стандарт idef1x
- 26. Диаграммы потоков данных.
- 27. Архитектурные виды программной системы.
- 28. Фазы, итерации и циклы разработки программных систем - руп.
- 29. Рабочие процессы создания программных систем - руп.
- 30. Основные артефакты при разработке программных систем.
- 31. Концепция языка uml
- 32. Язык uml как система визуализации, специфицирования, конструирования, документирования
- 33. Понятия модели и системы в языке uml
- 34. Принципы моделирования системной архитектуры в языке uml.
- 35. Принципы представления системы в языке uml.
- 36. Понятие сущностей в языке uml
- 37. Структурные сущности предметной области.
- 38. Отношения в языке uml
- 39. Диаграммы в языке uml
- 40. Правила языка uml.
- 41. Общие механизмы языка uml
- 42. Прецедент как спецификация поведения программных систем.
- 43. Организация прецедентов в языке uml.
- 44. Приемы анализа прецедентов в языке uml
- 45. Диаграммы прецедентов.
- 46. Моделирование требований к системе с помощью диаграмм прецедентов.
- 47. Критерии сравнения инструментальных систем разработки программных систем.
- 48. Технико-экономические показатели разработки программных средств
- 49. Сертификация программных средств
- 50. R-технология программирования