- •1. Что такое промышленный программный продукт. Дать определения пакета прикладных программ, программной системы.
- •2. Основные причины неудач программных проектов. Критичность и масштабность программных проектов.
- •3. Жизненный цикл программного обеспечения. Дать краткую характеристику каждого этапа.
- •4. Каскадные модели разработки по.
- •5. Итеративные модели разработки по.
- •7. Техническое задание. Перечислить и охарактеризовать разделы, входящие в техническое задание.
- •8. Технология экстремального программирования.
- •9 . Унифицированный процесс разработки программного обеспечения. Жизненный цикл унифицированного процесса.
- •10. Унифицированный процесс разработки программного обеспечения. Первый этап.
- •11. Унифицированный процесс разработки программного обеспечения. Этап проектирования.
- •12. Унифицированный процесс разработки программного обеспечения. Этап внедрения.
- •13. Принципы унифицированного процесса.
- •14. Работа с кадрами. Перечислить роли разработчиков и дать характеристику каждой из них.
- •Дополнительные роли разработчиков в крупных программных проектах.
- •15. Дать определения проекта, процесса, продукта с точки зрения унифицированного процесса разработки программного обеспечения.
- •Использование языка uml при проектировании сложных программных систем. Какие диаграммы используются в uml для создания моделей программной системы.
- •Use case diagram (диаграммы сценариев);
- •Deployment diagram (диаграммы топологии);
- •Этап 3: Определение атрибутов классов
- •Этап 4: Выделение операторов (методов) классов.
- •Диаграмма вариантов использования, ее назначение. Рассказать о варианте использования и действующем лице. Правила построения диаграммы вариантов использования.
- •Диаграмма классов. Ее назначение. Что она включает. Рассказать об основных видах связей между классами.
- •Дать определение тестированию и отладке. Особенности и объекты тестирования. Автономное и комплексное тестирование.
- •Дать определение тестированию и отладке. Локализация ошибок. Классификация ошибок.
- •Оценки ошибок.
- •Правила и принципы построения интерфейса пользователя.
- •Документирование. Состав и содержание документов прилагаемых к программной системе.
- •Что такое качество с точки зрения квалиметрии. Дать определение свойству и показателю качества по. Основные задачи решаемые при оценке качества.
- •Оценка качества программного обеспечения. Методы оценки свойств программного обеспечения.
- •Система обеспечения качества по серии стандартов iso.
14. Работа с кадрами. Перечислить роли разработчиков и дать характеристику каждой из них.
Персонал – это физические лица, которые являются движущей силой программного проекта.
Роли разработчиков являются важнейшими при создании программного продукта с использованием унифицированного процесса.
Архитектор проекта
Ответственные за подсистему
Прикладные программисты
Архитектор проекта – это его творец, который отвечает за эволюцию и сопровождение архитектуры системы. Для малых и средних проектов требуется участие одного или максимум двух архитекторов. Для крупных проектов количество архитекторов может измеряться десятками. Архитектор проекта не обязательно самый главный разработчик, но он должен иметь достаточно власти, для того чтобы принимать стратегические решения. Архитекторы необязательно самые лучшие программисты, хотя они должны владеть программой в определенной степени. Архитекторы должны хорошо владеть средствами моделирования программных систем. Очень плохая практика нанимать архитектора со стороны.
Ответственные за подсистему – это те люди, которые проектируют программные структуры (классы) для реализации тех или иных функциональных возможностей. Они отвечают за проектирование целого ряда подсистем. Каждый ответственный в сотрудничестве с архитектором разрабатывает, обосновывает и согласовывает с другими разработчиками интерфейсы своих подсистем. Ответственные за подсистемы возглавляют их реализацию, тестирование и выпуск версий в течение всей эволюции системы. Ответственные за подсистемы должны хорошо знать систему обозначений и организацию процесса объектно-ориентированной разработки.
На прикладных программистов возлагается выполнение двух обязанностей:
Некоторые из них отвечают за реализацию подсистемы под руководством ее ведущего. Эта деятельность может включать в себя проектирование некоторых классов, но в основном она связана с реализацией и последующим тестированием спроектированных классов.
Другие, отвечают за написание классов спроектированных архитектором, реализуя тем самым функциональные точки системы.
Прикладные программисты должны быть хорошими программистами, знающими достоинства и недостатки различных языков программирования. Кроме того, они должны разбираться в системе обозначений используемых при моделировании программных систем на том уровне, чтобы иметь возможность прочитать готовый проект.
Дополнительные роли разработчиков в крупных программных проектах.
Менеджер проекта отвечает за управление материалами проекта, заданиями, ресурсами и графиком работ.
Аналитик отвечает за развитие и интерпретацию требований конечных пользователей. Он должен быть экспертом проблемной области.
Инженер по повторному использованию управляет хранилищем материалов проекта. Активно ищет общее и добивается его использования. Находит, разрабатывает и приспосабливает компоненты для общего использования в рамках проекта.
Контролер качества (тестер) измеряет результаты процесса разработки, задает общее направление и участвует в тестировании всех версий программного продукта.
Менеджер интеграции отвечает за сборку совместимых друг с другом версий, категорий и подсистем в релизе программной системы.
Ответственный за документацию (технический писатель) готовит документацию по выпускаемому продукту для конечного пользователя.
Системный администратор управляет физическими компьютерными ресурсами в проекте.
8. Технический писатель составляет техническую документацию
