
- •1. Использование системного подхода при проектировании программного обеспечения
- •2. Основные проблемы разработки и проектирования ПО и методы их преодоления
- •3. Понятие жизненного цикла ПО и его роль в проектировании информационных систем
- •4. Понятие модели ЖЦ в проектировании информационных систем, терминология моделей ЖЦ
- •5. Основные модели ЖЦ и рекомендации по их использованию
- •6. Преимущества и недостатки использования каскадной модели ЖЦ
- •7. Преимущества и недостатки использования эволюционной модели ЖЦ
- •8. Сравнение эволюционной и итерационной моделей ЖЦ
- •10. Понятие "сложности" в современном проектировании информационных систем и способы её преодоления
- •11. Использование принципа декомпозиции в процессе проектирования информационных систем
- •14. Основные понятия объектно-ориентированного подхода к проектированию информационных систем
- •16. Понятие гибкого моделирования, манифест и основные принципы гибкого процесса проектирования
- •17. Понятие гибкого унифицированного процесса проектирования
- •18. Фазы и дисциплины унифицированного процесса проектирования, распределение работ на различных фазах для основных дисциплин
- •19. Начальная фаза унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования
- •20. Понятие требования к информационной системе, типы и категории требований
- •21. Понятие прецедента в процессе моделирования требований к информационной системе, модель прецедентов.
- •23. Артефакты унифицированного процесса, используемые для описания нефункциональных требований к информационной системе
- •24. Фаза развития унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования
- •25. Задачи фазы развития унифицированного процесса и планирование итераций на этой фазе проектирования
- •26. Моделирование предметной области и основные понятия модели предметной области
- •27. Использование классов описаний и производных атрибутов в процессе моделирования предметной области
- •28. Понятие системного события и идентификация системных событий
- •29. Открытый системный интерфейс и описание операций в рамках унифицированного процесса проектирования
- •30. Проектирование динамической структуры ПО с использованием UML в рамках объектно ориентированного подхода
- •31. Средства UML для выражения полиморфных сообщений в контексте проектирования динамической структуры ПО
- •32. Средства UML для выражения асинхронных вызовов в контексте проектирования динамической структуры ПО
- •34. Средства UML для представления атрибутов коллекций в контексте проектирования статической структуры ПО
- •35. Признаки существования зависимости между классами в контексте проектирования статической структуры ПО
- •36. Стадии создания информационной системы в рамках канонического проектирования
- •37. Обследование и технико-экономическое обоснование проекта
- •39. Состав эскизного и технического проектов
- •40. Типовое проектирование информационных систем
1. |
Использование системного подхода при проектировании программного |
||
обеспечения......................................................................................................... |
3 |
||
2. |
Основные проблемы разработки и проектирования ПО и методы их |
|
|
преодоления......................................................................................................... |
3 |
||
3. |
Понятие жизненного цикла ПО и его роль в проектировании |
|
|
информационных систем................................................................................... |
5 |
||
4. |
Понятие модели ЖЦ в проектировании информационных систем, |
|
|
терминология моделей ЖЦ................................................................................ |
6 |
||
5. |
Основные модели ЖЦ и рекомендации по их использованию................... |
8 |
|
6. |
Преимущества и недостатки использования каскадной модели ЖЦ....... |
12 |
|
7. |
Преимущества и недостатки использования эволюционной модели ЖЦ... |
||
14 |
|
|
|
8. |
Сравнение эволюционной и итерационной моделей ЖЦ......................... |
15 |
|
9. |
Понятие архитектуры программного обеспечения и причины |
|
|
возникновения такого понятия в рамках процесса создания |
|
||
информационных систем................................................................................. |
18 |
||
10. |
Понятие "сложности" в современном проектировании |
|
|
информационных систем и способы её преодоления.................................... |
19 |
||
11. Использование принципа декомпозиции в процессе проектирования |
|
||
информационных систем................................................................................. |
20 |
||
12. |
Проектирование архитектуры информационной системы в |
|
|
соответствии с моделью представлений "4+1", понятие модели ПО.......... |
21 |
||
13. |
Принципы объектно-ориентированного подхода к проектированию |
|
|
информационных систем................................................................................. |
23 |
||
14. |
Основные понятия объектно-ориентированного подхода к |
|
|
проектированию информационных систем.................................................... |
25 |
||
15. |
Понятие соединения между элементами объектной модели и различные |
||
виды соединений............................................................................................... |
27 |
||
16. |
Понятие гибкого моделирования, манифест и основные принципы |
|
|
гибкого процесса проектирования.................................................................. |
28 |
||
17. |
Понятие гибкого унифицированного процесса проектирования........... |
29 |
|
18. |
Фазы и дисциплины унифицированного процесса проектирования, |
|
|
распределение работ на различных фазах для основных дисциплин.......... |
30 |
||
19. |
Начальная фаза унифицированного процесса и артефакты, которые |
|
|
могут создаваться на этой фазе процесса проектирования........................... |
32 |
||
20. |
Понятие требования к информационной системе, типы и категории |
|
|
требований......................................................................................................... |
33 |
21. |
Понятие прецедента в процессе моделирования требований к |
|
информационной системе, модель прецедентов............................................ |
36 |
|
22. |
Понятие исполнителя в процессе формализации требований к |
|
информационной системе................................................................................ |
37 |
|
23. |
Артефакты унифицированного процесса, используемые для описания |
|
нефункциональных требований к информационной системе...................... |
37 |
|
24. |
Фаза развития унифицированного процесса и артефакты, которые |
|
могут создаваться на этой фазе процесса проектирования........................... |
39 |
|
25. |
Задачи фазы развития унифицированного процесса и планирование |
|
итераций на этой фазе проектирования.......................................................... |
40 |
|
26. |
Моделирование предметной области и основные понятия модели |
|
предметной области.......................................................................................... |
41 |
|
27. |
Использование классов описаний и производных атрибутов в процессе |
|
моделирования предметной области............................................................... |
42 |
28.Понятие системного события и идентификация системных событий...43
29.Открытый системный интерфейс и описание операций в рамках
унифицированного процесса проектирования............................................... |
44 |
|
30. |
Проектирование динамической структуры ПО с использованием UML |
|
в рамках объектно ориентированного подхода.............................................. |
46 |
|
31. |
Средства UML для выражения полиморфных сообщений в контексте |
|
проектирования динамической структуры ПО.............................................. |
47 |
|
32. |
Средства UML для выражения асинхронных вызовов в контексте |
|
проектирования динамической структуры ПО.............................................. |
48 |
|
33. |
Проектирование статической структуры ПО с использованием UML в |
|
рамках объектно ориентированного подхода................................................. |
49 |
|
34. |
Средства UML для представления атрибутов коллекций в контексте |
|
проектирования статической структуры ПО.................................................. |
50 |
|
35. |
Признаки существования зависимости между классами в контексте |
|
проектирования статической структуры ПО.................................................. |
52 |
|
36. |
Стадии создания информационной системы в рамках канонического |
|
проектирования................................................................................................. |
53 |
|
37. |
Обследование и технико-экономическое обоснование проекта............. |
54 |
38. |
Разработка технического задания в соответствии с ГОСТ 34.602-89.... |
56 |
39. |
Состав эскизного и технического проектов............................................. |
59 |
40. |
Типовое проектирование информационных систем................................ |
63 |
1. Использование системного подхода при проектировании программного обеспечения
Основой проектирования программного обеспечения является так называемый системный подход.
Системный подход — это способ смотреть на объект как на целостную систему, где все части взаимосвязаны и работают вместе ради общего результата. Главное отличие системы — её поведение не сводится просто к поведению отдельных частей. Система — это не просто сумма элементов, а нечто большее.
Когда мы говорим о программном обеспечении (ПО), мы имеем в виду не только сами программы, но и документацию, данные и всё, что нужно для правильной работы программы. Это и есть система.
Проектирование ПО — это процесс создания технического плана (спецификаций) на основе требований заказчика.
Проект ПО — это набор таких спецификаций, который позволяет реализовать программу в определённой среде.
2. Основные проблемы разработки и проектирования ПО и методы их преодоления
Особенности и проблемы современных проектов ПО:
1. Сложность – программное обеспечение часто включает множество компонентов и взаимосвязей, что затрудняет его понимание и сопровождение.
2. Уникальность – чаще всего создаётся новое ПО, а не копируется уже готовое.
3. Наследование – необходимо учитывать старые системы и интегрировать их с новыми.
4. Распределённость – системы работают в разных точках, на разных устройствах, в разных условиях.
5. Много участников – над проектом работает команда с разными ролями и опытом, что усложняет координацию.
Особенности и проблемы процесса разработки:
1. Неформальные требования – часто не хватает чёткой постановки задачи.
2. Творческий подход – разработка требует не только логики, но и креативности.
3. Двойственная природа ПО – это одновременно и код (статический объект), и работающая система (динамика).
4. Неизнашиваемость – в отличие от физических объектов, ПО не ломается от времени, но требует обновлений.
5. Неощутимость – ПО нельзя потрогать, полностью войти в контекст что создаёт иллюзию простоты и приводит к частым переделкам.
Решение данных проблем: программная инженерия
Для борьбы с этими трудностями создана программная инженерия
— это использование инженерных методов для планомерного, качественного и управляемого создания ПО.
Фундаментальной идеей программной инженерии является следующее утверждение: Проектирование ПО – формальный процесс, который можно изучать и совершенствовать.
Программная инженерия опирается на жизненный цикл программного обеспечения, то есть последовательность этапов от идеи до поддержки готовой системы.
3. Понятие жизненного цикла ПО и его роль в проектировании информационных систем
Основным понятием программной инженерии является понятие жизненного цикла программного обеспечения.
Жизненный цикл ПО – период времени, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации. (Основной нормативный документ регламентирующий жизненный цикл ПО – стандарт ISO/IEC 12207 Information technology software live cyrcle process. Российский аналог
–ГОСТ Р ИСО/МЭК 12207-99.)
Сточки зрения статической структуры жизненный цикл является совокупностью процессов жизненного цикла. Процесс жизненного цикла
–набор взаимосвязанных действий, преобразующих некоторые входные данные и ресурсы в результирующие данные и ресурсы.
Каждый процесс характеризуется задачами, методами их решения, действующими лицами и результатами. Процессы жизненного цикла могут протекать параллельно. Каждый процесс разделен на набор действий, каждое действие на набор задач. Каждый процесс, действие или задача инициируется и выполняется по мере необходимости. Причем не существует заранее определенных последовательностей выполнения. В соответствие со стандартом жизненного цикла все процессы делятся на следующие группы:
1. Основные (приобретение, поставка, разработка, эксплуатация, сопровождение);
2. Вспомогательные процессы (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, совместная оценка, аудит, разрешение проблем);
3. Организационные процессы (управление, создание инфраструктуры, усовершенствование, обучение).
Роль в проектировании информационных систем:
● Структурирование процесса: ЖЦ обеспечивает четкую последовательность действий, что упрощает управление проектом.
● Контроль качества: Каждый этап включает проверку и тестирование, что повышает надежность системы.
● Управление рисками: Позволяет выявлять и устранять проблемы на ранних стадиях.
● Планирование ресурсов: Помогает эффективно распределять время, бюджет и человеческие ресурсы.
● Гибкость: Выбор подходящей модели ЖЦ позволяет адаптировать процесс под конкретный проект.
4. Понятие модели ЖЦ в проектировании информационных систем, терминология моделей ЖЦ
Другим измерением жизненного цикла, дополняющее статическое является динамическое, определяющее развитие жизненного цикла во времени в виде модели жизненного цикла.
Модель жизненного цикла – это структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении всего ЖЦ.
В любой модели ЖЦ рассматривается как совокупность стадий ЖЦ. Стадия ЖЦ – это часть ЖЦ ограниченная временными рамками, по завершении которой достигается определенный важный результат в соответствии с требованиями для данной стадии ЖЦ. Между двумя стадиями, следующими друг за другом, находится контрольная точка
(веха), так называют момент времени, разделяющий стадии жизненного цикла (или итерации, если они предусмотрены в модели ЖЦ), по наступлении которого должны достигаться результаты важные для всего проекта и должны приниматься решения о дальнейшем управлении проектом.
Модели ЖЦ:
1.каскадная (водопадная);
2.эволюционная;
3.основанная на формальных преобразованиях;
4.итерационные (пошаговая и спиральная).
Выбор модели зависит от требований проекта, его сложности и степени неопределенности.
Терминология моделей ЖЦ:
● Этап — отдельная фаза разработки (например, тестирование, внедрение).
● Итерация — повторение этапов для улучшения продукта. ● Артефакт — результат этапа (документация, код, тесты).
● Веха (контрольная точка) — момент времени, разделяющий стадии жизненного цикла.
● Цикл — полный проход через этапы ЖЦ, включая обратную связь. ● Инкремент — добавление новой функциональности в продукт.