
- •3. Проектирование сложных объектов основные принципы проектирования.
- •4. Аспекты и стадии проектирования
- •5. Нисходящее и восходящее проектирование и программирование
- •6. Развитие парадигмы программирования (Операциональное программирование, нисходящая технология конструирования программ. Структурное, модульное, объектное и объектно-ориентированное программирование)
- •7. Суть и метод структурного анализа. Основные этапы структурного анализа.
- •8. Программные системы и их жизненный цикл.
- •Процессы жизненного цикла по
- •9. Анализ целевых и разработка требований к программным системам.
- •10. Функциональное моделирование. Стандарты idef0, idef3.
- •11. Информационное моделирование. Стандарты idef1, idef1x
- •12. Методы, модели, современные технологические и инструментальные средства структурного анализа, достоинства и недостатки. Разработка функциональных и информационных моделей.
- •13. Понятие и метод объектно-ориентированного анализа.
- •15. Стадии объектно-ориентированного анализа и определение основных абстракций и механизмов.
- •16. Методы и средства представления. Нотации представления результатов анализа.
- •17. Основы проектирования программных систем, принципы аспекты проектирования. Понятие проекта, методологии проектирования.
- •18. Автоматизация и системы автоматизации проектирования. Процессы разработки проектных решений и проектных процедур.
- •19. Классические методы проектирования и модели представления проектных решений.
- •20. Методы структурного проектирования. Этапы проектирования программных систем.
- •21. Жизненный цикл и этапы проектирования программного обеспечения.
- •Этапы жизненного цикла по:
- •Основные:
- •Модели жизненного цикла по: Водопадная (каскадная, последовательная) модель
- •Итерационная модель
- •Спиральная модель
- •22. Классические технологии разработки программного обеспечения.
- •23. Нисходящее и восходящее проектирование.
- •24. Структурное программирование. Модульное программирование
- •25. Абстракция и абстрагирование. Фундаментальные свойства и принципы объектно-ориентированного представления программных систем.
- •26. Понятие системы, системность, сложная система, системный эффект.
- •Классы, объекты, общая характеристика и отношения между классами и объектами в объектно-ориентированном проектировании.
- •Объектно-ориентированные методы проектирования. Нотации и процессы объектно-ориентированного проектирования
- •Языки визуального моделирования. Язык uml (Unified Modeling Language). Базовые отношения, термины и понятия.
- •Ключевые абстракции и механизмы. Отношения, общие механизмы и диаграммы. Типичные приемы моделирования Общие механизмы языка uml:
- •31. Средства и элементы статических и динамических моделей объектно-ориентированных систем (статические и динамические диаграммы uml).
- •32. Методы и приемы разработки моделей объектно-ориентированных программных систем.
- •33. Основные диаграммы uml (в вопросе по 2-е из 12 основных диаграмм). Представление, сущность, использование.
- •34. Элементы и разработка поведенческих моделей объектно-ориентированных систем. Модели реализации объектно-ориентированных программных систем.
- •35. Паттерны (образцы) проектирования: виды шаблонов и их классификация, распределение «обязанностей» между шаблонами.
- •40. Факторы качества написания программного кода:
- •41. Методы и средства конструирования высококачественного кода.
- •42 Совместная разработка: методы и средства.
- •Методы и средства тестирования и отладки программных приложений.
- •Широкое использование проверенных внешних библиотек.
- •Рефакторинг и оптимизация программного кода.
- •45. Сборка, внедрение и поставка по
- •Выбираем инсталлятор, описываем в нем процесс установки/удаления программы и настраиваем сборку дистрибутива
- •Технологии и средства развертывания, наладки и обслуживания проектов.
- •Язык xml: средства, назначения и особенности использования. Xml и dtd.
- •Методы и средства обработки xml документов с использованием моделей dom и sax, преимущества и недостатки.
- •Языки Extensible Markup Language(xsl) и xsl Transformations (xslt): назначение и особенности использования.
- •Процесс выполнения xslt-преобразования
- •51. Язык xPath и его применение для доступа к элементам xml.
- •52. Унифицированный процесс разработки (rup): общее понятие и терминология.
- •53. Фазы, итерации и циклы разработки. Рабочие процессы, модели и артефакты.
- •54. Модели разработки объектно-ориентированных программных систем и управление рисками.
- •55. Особенности проектирования и разработки распределенных информационных систем.
52. Унифицированный процесс разработки (rup): общее понятие и терминология.
Rational Unified Process (RUP) - методология разработки программного обеспечения (ПО) фирмы Rational Software Corporation. Методология оформлена в виде базы знаний, которая снабжена поисковой системой. Методология обеспечивает формализованный подход к определению задач и обязанностей по их решению внутри организации разработчика программного обеспечения.Цель методологии создать программное обеспечение в запланированные сроки и бюджет и отвечающее нуждам конечных пользователей. Основными принципами являются:
Итерационный и инкрементный (наращиваемый) подход к созданию ПО.
Планирование и управление проектом на основе вариантов использования.
Построение системы на базе архитектуры ПО.
О
бщее
представление RUP:
горизонтальное измерение представляет время, отражает динамические аспекты процессов и оперирует такими понятиями, как стадии, итерации и контрольные точки;
вертикальное измерение отражает статические аспекты процессов и оперирует такими понятиями, как виды деятельности, рабочие продукты, исполнители и дисциплины.
Понятие «роль» (role) определяет поведение и ответственность личности или группы личностей, составляющих проектную команду. Одна личность может играть в проекте много различных ролей.Под видом деятельности конкретного исполнителя понимается единица выполняемой им работы. Вид деятельности (activity) соответствует понятию технологической операции.
Дисциплина (discipline) соответствует понятию технологического процесса и представляет собой последовательность действий, приводящую к получению значимого результата.
53. Фазы, итерации и циклы разработки. Рабочие процессы, модели и артефакты.
Жизненный цикл ПО разбивается на отдельные циклы. Каждый отдельный цикл отражает очередной этап совершенствования версии программного продукта.
Отдельный цикл включает 4 фазы разработки:
1. Начальная стадия разработки (Inception) ;
2. Стадия уточнения требований (Elaboration) ;
3. Стадия детального проектирования (Construction) ;
4. Стадия внедрения конечного продукта (Transition) .
Завершение каждой фазы разработки заранее определено с точки зрения момента окончания – контрольной точки завершения фазы (milestone) . При этом должны быть реализованы запланированные принципиальные решения, отражающие основную цель проектирования ПО на данной фазе.
Первая версия ПО (внендренная и поддерживаемая, не прототип !) является результатом первого цикла прохождения процесса разработкичерез 4 фазы. Этот первый цикл называется начальным циклом (initial development cycle) .
Каждая фаза RUP может разбиваться на итерации. Итерация – законченный цикл разработки, результатом которого является версия программного продукта (для внешнего или внутреннего использования). До тех пор, пока продукт сопровождается, производится его модернизация. Процесс модернизации может включать несколько циклов, сходных по структуре с начальным циклом разработки. Эти циклы называются циклами эволюции (совершенствования) ПО (evolution cycles) . Результатом каждого такого цикла является новая работоспособная и внедренная версия ПО. Процесс – это последовательность этапов, направленных на достижение определенной цели. При разработке ПО целью является разработка программного продукта, или доработка существующего ПО.Процесс разработки ПО – процесс развития системы на основе определения первоначальных требований к системе или измененных требований.
Основные этапы RUP
1. Моделирование процессов предметной области (Business Modeling) ;
2. Определение требований (Requirements) ;
3. Анализ и проектирование (Analysis & Design) ;
4. Разаработка (Implementation) ;
5. Тестирование (Test) ;
6. Внедрение (Deployment) .
Вспомогательными этапами являются:
1. Управление конфигурацией и изменениями (Configuration & Change Management) ;
2. Управление проектом (Project Management) ;
3. Адаптации RUP к требованиям конкретного проекта или организации (Environment) ;