
- •Вопросы по uml
- •1. Место моделирования в проектировании больших программных систем. Моделируемые аспекты программных систем.
- •2. Основные понятия объектно-ориентированного подхода к проектированию программ. Абстрагирование. Ограничение доступа. Модульность. Иерархия.
- •3. Основные понятия объектно-ориентированного подхода к проектированию программ. Понятие класса. Понятие объекта. Инкапсуляция данных и методов.
- •4. Основные понятия объектно-ориентированного подхода к проектированию программ. Роль наследования в ооп.
- •5. Основные понятия объектно-ориентированного подхода к проектированию программ. Свойство полиморфизма.
- •6. Основные понятия объектно-ориентированного подхода к проектированию программ. Понятие типизации.
- •7. Назначение и основные свойства языка uml
- •8. Язык uml. Понятия сущности, отношения, диаграммы.
- •9. Язык uml. Типы сущностей.
- •10. Язык uml. Типы отношений.
- •11. Язык uml. Диаграмма прецедентов (использования). Вид диаграммы. Назначение диаграммы.
- •Включение.
- •12. Язык uml. Диаграмма классов. Вид диаграммы. Назначение диаграммы.
- •13. Язык uml. Диаграмма объектов. Вид диаграммы. Назначение диаграммы.
- •14. Язык uml. Диаграммы взаимодействий. Диаграмма последовательностей. Вид диаграммы. Назначение диаграммы.
- •15. Язык uml. Диаграммы взаимодействий. Диаграмма коопераций. Вид диаграммы. Назначение диаграммы.
- •16. Язык uml. Диаграмма состояний. Вид диаграммы. Назначение диаграммы.
- •17. Язык uml. Диаграмма деятельности. Вид диаграммы. Назначение диаграммы.
- •18. Язык uml. Диаграмма компонентов. Вид диаграммы. Назначение диаграммы.
- •19. Язык uml. Диаграмма развертывания. Вид диаграммы. Назначение диаграммы.
- •20. Язык uml. Понятие прямого и обратного проектирования.
- •21. Язык uml. Элементы описания класса на диаграмме классов
- •Вопросы по технологии проектирования
- •1. Стадии проектирования программных систем. Итерационное проектирование
- •2. Проблема сложности при проектировании программного обеспечения. Различные виды сложности при проектировании программного обеспечения.
- •3. Основные характерные особенности больших программных систем
- •4. Определение требований к проектируемому программному обеспечению. Управление требованиями.
- •5. Документирование процесса проектирования. Назначение документирования. Требование к документированию.
- •6. Использование декомпозиции при проектировании больших программных систем. Декомпозиция при алгоритмическом подходе. Декомпозиция при объектно-ориентированном подходе.
- •7. Требования к программным модулям при проведении декомпозиции.
- •8. Роль абстракции в процессе проектирования. Барьер абстракции. Абстракции сущности и абстракции поведения.
- •9. Уровень реализации. Критерии выбора языка программирования и стандартов программирования.
- •10. Проектирование программных систем. Главный программист, его задачи и функции
- •11. Тестирование программ. Тестирование модулей. Тестирование скомпонованной программы.
- •12. Управление разработкой программ. Управление сроками. Управление кадрами. Управление организационной структурой.
- •13. Управление разработкой программ. Значение внутренних стандартов. Документирование разработки.
- •14. Методы интеграции информационных систем. Интеграция однородных и разнородных систем.
- •15. Методы интеграции информационных систем. Сервис ориентированная архитектура
ВОПРОСЫ ПО UML 3
1. Место моделирования в проектировании больших программных систем. Моделируемые аспекты программных систем. 3
2. Основные понятия объектно-ориентированного подхода к проектированию программ. Абстрагирование. Ограничение доступа. Модульность. Иерархия. 4
3. Основные понятия объектно-ориентированного подхода к проектированию программ. Понятие класса. Понятие объекта. Инкапсуляция данных и методов. 5
4. Основные понятия объектно-ориентированного подхода к проектированию программ. Роль наследования в ООП. 6
5. Основные понятия объектно-ориентированного подхода к проектированию программ. Свойство полиморфизма. 7
6. Основные понятия объектно-ориентированного подхода к проектированию программ. Понятие типизации. 8
7. Назначение и основные свойства языка UML 9
8. Язык UML. Понятия сущности, отношения, диаграммы. 10
9. Язык UML. Типы сущностей. 11
10. Язык UML. Типы отношений. 12
11. Язык UML. Диаграмма прецедентов (использования). Вид диаграммы. Назначение диаграммы. 13
включение. 13
12. Язык UML. Диаграмма классов. Вид диаграммы. Назначение диаграммы. 14
13. Язык UML. Диаграмма объектов. Вид диаграммы. Назначение диаграммы. 15
14. Язык UML. Диаграммы взаимодействий. Диаграмма последовательностей. Вид диаграммы. Назначение диаграммы. 16
15. Язык UML. Диаграммы взаимодействий. Диаграмма коопераций. Вид диаграммы. Назначение диаграммы. 17
16. Язык UML. Диаграмма состояний. Вид диаграммы. Назначение диаграммы. 18
17. Язык UML. Диаграмма деятельности. Вид диаграммы. Назначение диаграммы. 19
18. Язык UML. Диаграмма компонентов. Вид диаграммы. Назначение диаграммы. 20
19. Язык UML. Диаграмма развертывания. Вид диаграммы. Назначение диаграммы. 21
20. Язык UML. Понятие прямого и обратного проектирования. 22
21. Язык UML. Элементы описания класса на диаграмме классов 23
ВОПРОСЫ ПО ТЕХНОЛОГИИ ПРОЕКТИРОВАНИЯ 24
1. Стадии проектирования программных систем. Итерационное проектирование 24
2. Проблема сложности при проектировании программного обеспечения. Различные виды сложности при проектировании программного обеспечения. 25
3. Основные характерные особенности больших программных систем 26
4. Определение требований к проектируемому программному обеспечению. Управление требованиями. 27
5. Документирование процесса проектирования. Назначение документирования. Требование к документированию. 28
6. Использование декомпозиции при проектировании больших программных систем. Декомпозиция при алгоритмическом подходе. Декомпозиция при объектно-ориентированном подходе. 29
8. Роль абстракции в процессе проектирования. Барьер абстракции. Абстракции сущности и абстракции поведения. 31
9. Уровень реализации. Критерии выбора языка программирования и стандартов программирования. 32
10. Проектирование программных систем. Главный программист, его задачи и функции 33
11. Тестирование программ. Тестирование модулей. Тестирование скомпонованной программы. 34
12. Управление разработкой программ. Управление сроками. Управление кадрами. Управление организационной структурой. 35
13. Управление разработкой программ. Значение внутренних стандартов. Документирование разработки. 36
14. Методы интеграции информационных систем. Интеграция однородных и разнородных систем. 37
15. Методы интеграции информационных систем. Сервис ориентированная архитектура 38
Вопросы по uml
1. Место моделирования в проектировании больших программных систем. Моделируемые аспекты программных систем.
Моделирование программных систем позволяет:
визуализировать систему в ее текущем или желательном для нас состоянии;
определить структуру или поведение системы;
получить шаблон, позволяющий затем сконструировать систему;
документировать принимаемые решения, используя полученные модели.
Логичность и формализованность компьютерных моделей позволяет выявить основные факторы, определяющие свойства изучаемого объекта-оргинала (или целого класса объектов), в частности, исследовать отклик моделируемой физической системы на изменения ее параметров и начальных условий.
Различают аналитическое и имитационное моделирование. При аналитическом моделировании изучаются абстрактные модели реального объекта в виде математических уравнений, а также предусматривающих осуществление однозначной вычислительной процедуры, приводящей к их точному решению. При имитационном моделировании исследуются математические модели в виде алгоритма(ов), воспроизводящего функционирование исследуемой системы путем последовательного выполнения большого количества элементарных операций.
Система моделей включает описание процессов, функций, потоков, данных и других статических и динамических аспектов функционирования системы.
2. Основные понятия объектно-ориентированного подхода к проектированию программ. Абстрагирование. Ограничение доступа. Модульность. Иерархия.
Преимущества объектной модели:
В полной мере используются возможности языков программирования
Повышается уровень унификации разработки и пригодность для повторного использования
Система строится на основе стабильных промежуточных описаний, что упрощает внесение изменений
Уменьшается риск разработки
Единственная методология позволяющая справиться со сложностью очень больших систем
Абстракция:
Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя
Абстракция разделяет смысл и реализацию объекта
Инкапсуляция:
Инкапсуляция реализует абстракцию, скрывая внутреннюю структуру объекта и предоставляя вовне только внешнее поведение – интерфейс, соответствующий принятому уровню абстракции
Абстракция и инкапсуляция дополняют друг друга: абстрагирование направлено на наблюдаемое поведение объекта, а инкапсуляция занимается внутренним устройством
Данные и методы могут иметь модификаторы public, private и protected определяющие степень доступности.
Модульность:
Это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули
Модули выполняют роль физических контейнеров, в которые помещаются определения классов и объектов
Принципы абстрагирования, инкапсуляции и модульности являются взаимодополняющими
Иерархия:
Это упорядочение абстракций, расположение их по уровням.
Значительное упрощение в понимании сложных задач достигается за счет образования из абстракций иерархической структуры
Один из видов иерархии – концепция наследования «обобщение-специализация» (is-a)
Другой вид иерархии – агрегация (part-of)