- •Вопросы к экзамену по дисциплине «Технология разработки программного обеспечения»
- •Назовите и дайте определение основным понятиям технологии проектирования и создания программных средств.
- •Определите понятие структуры жизненного цикла по. Назовите группы процессов жцпо и перечислите их состав.
- •Опишите основные процессы жцпо. Какие действия и задачи включают в себя процессы разработки и эксплуатации по.
- •Опишите вспомогательные процессы. Какие действия и задачи включают в себя процесс управления конфигурацией.
- •Опишите процесс обеспечения качества проекта, определите понятие качество по.
- •Назовите показатели качества по и перечислите критерии оценки качества программы.
- •Опишите процессы верификации, проверки и тестирования.
- •Опишите организационные процессы. Какие действия и задачи включают в себя процесс управления проектом.
- •Определите понятие модели жцпо. Назовите основные модели жцпо, кратко их охарактеризуйте и объясните отличия.
- •Опишите каскадный способ разработки по: характеристики, схему, достоинства и недостатки.
- •Опишите основные характеристики спирального способа разработки по, приведите его схему, укажите достоинства и недостатки.
- •Определите понятия метода, методология и технология проектирования по.
- •Перечислите общие требования к технологии проектирования, разработки и сопровождения информационных систем.
- •Назовите стандарты применения технологии проектирования, разработки и сопровождения информационных систем и укажите, что устанавливает каждый стандарт.
- •Опишите методологию быстрой разработки приложений rad, укажите её основные элементы и перечислите основные принципы.
- •В чём заключается сущность структурного подхода к разработке информационных систем? Назовите и объясните общие принципы методологии структурного подхода к разработке информационных систем.
- •Назовите и кратко охарактеризуйте диаграммы структурного системного анализа.
- •Опишите методологию функционального моделирования sadt. Приведите примеры диаграмм.
- •Опишите методологию моделирования потоков данных dfd. Приведите примеры диаграмм.
- •Укажите цель и опишите процесс моделирования данных. Объясните правила построения диаграммы «сущность-связь» (erd). Приведите примеры диаграмм.
- •В чём заключается case-метод Баркера, Определите понятия сущности, атрибута, связи. Опишите основные шаги моделирования.
- •Определите основные понятия и содержание процесса тестирования программного обеспечения. Назовите основные принципы тестирования программного обеспечения.
- •В чём заключается сущность объектно-ориентированного подхода к разработке программных систем? Определите фундаментальные понятия объектно-ориентированного программирования.
- •Определите понятие объектной модели. Назовите и охарактеризуйте элементы объектной модели.
- •Для чего предназначен унифицированный язык моделирования uml? Опишите концептуальную модель uml, общие сведения, виды диаграмм.
- •Назовите цели диаграммы вариантов использования, определите основные понятия.
- •Перечислите и кратко охарактеризуйте элементы диаграммы вариантов использования. Приведите примеры
- •Назовите и охарактеризуйте отношения на диаграмме вариантов использования. Приведите примеры.
- •Что представляет из себя и для каких целей создается диаграмма классов. Определите основные понятия.
- •Приведите графическое изображение класса в uml. Определите понятие атрибутов и операций классов. Приведите примеры.
- •Назовите и охарактеризуйте виды отношений между классами в языке uml. Приведите примеры.
- •Что представляет из себя и для каких целей создается диаграмма состояний на языке uml.
- •Опишите элементы «состояние» и «переход» на диаграмме состояний, частные случаи состояния. Приведите примеры.
- •Начальное состояние
- •Опишите элементы «событие» и «сторожевое условие» на диаграмме состояний. Приведите примеры.
- •Что представляет из себя и для каких целей создается диаграмма деятельности на языке uml? Приведите примеры.
- •Определите понятия состояние действия и переход на диаграмме деятельности. Приведите примеры.
- •Опишите разделение и слияние потоков управления на диаграмме деятельности. Приведите графическое изображение в uml.
- •Что представляет из себя и для каких целей создается диаграмма последовательности на языке uml. Приведите примеры.
- •Опишите элементы диаграммы последовательности «линия жизни» и «фокус управления». Приведите примеры.
- •Что представляет из себя и для каких целей создается диаграмма кооперации на языке uml? Приведите структуру полного имени объекта на диаграмме кооперации.
- •Имя объекта / Имя роли классификатора : Имя классификатора
- •Опишите структуру полного имени объекта на диаграмме кооперации. Приведите примеры.
- •Имя объекта / Имя роли классификатора : Имя классификатора
- •Назовите отличия мультиобъекта от составного объекта на диаграмме кооперации. Приведите графическое изображение в uml.
- •Что представляет из себя и для каких целей создается диаграмма компонентов на языке uml.
- •Что является «компонентом» диаграммы компонентов? Назовите виды компонентов и соответствующие им способы изображения на диаграмме компонентов. Приведите примеры. Компонент
- •Имя компонента : имя типа
- •Определите понятие саse-технологии и опишите ключевые характеристики саse-технологий.
- •Определите понятие case-средств, проанализируйте критерии классификации и опишите классификацию case-средств.
- •Опишите процесс генерации программного кода проекта по существующей модели, созданной с помощью case-средства Rational Rose.
- •Опишите процесс реинжиниринга (обратного проектирования) по с помощью case – средства Rational Rose.
Опишите процессы верификации, проверки и тестирования.
Стандарт ИСО/МЭК 12207 дает такое определение процесса верификации.
Процесс верификации является процессом определения того, что про-
граммные продукты функционируют в полном соответствии с требованиями и
условиями, реализованными в предшествующих работах.
Термин верификация (verification) обозначает подтверждение с помощью
экспертизы и представления объективных доказательств того, что конкретные
требования полностью реализованы. Процесс верификации - это процесс
определения того, что результаты работы соответствуют требованиям или
условиям, установленным на входе данной работы.
Опишите организационные процессы. Какие действия и задачи включают в себя процесс управления проектом.
Организационные процессы жизненного цикла - это процессы, предна-
значенные для создания в некоторой организации и совершенствования органи-
зационных структур, охватывающих процессы ЖЦ и соответствующий персонал.
Обычно организационные процессы являются типовыми.
К организационным процессам относятся четыре процесса:
• управление;
• создание инфраструктуры;
• усовершенствование;
• обучение.
Ответственность за работы и задачи организационного процесса несет ор-
ганизация, выполняющая данный процесс.
Определите понятие модели жцпо. Назовите основные модели жцпо, кратко их охарактеризуйте и объясните отличия.
Под моделью ЖЦ понимается структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач, выполняемых на протяжении ЖЦ). Модель ЖЦ зависит от специфики ИС и специфики условий, в которых последняя создается и функционирует
К настоящему времени наибольшее распространение получили следующие две основные модели ЖЦ:
Каскадная модель (70-85 г.г.);
Спиральная модель (86-90 г.г.).
В изначально существовавших однородных программах каждое приложение представляло собой единое целое. Для разработки такого типа приложений применялся каскадный способ. Его основной характеристикой является разбиение всей разработки на этапы, причем переход с одного этапа на следующий происходит только после того, как будет полностью завершена работа на текущем (рис.1). Каждый этап завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Положительные стороны применения каскадного подхода заключаются в следующем:
На каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
Выполняемые в логичной последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты.
Сроки завершения всех работ и соответствующие затраты.
Каскадный подход хорошо зарекомендовал себя при построении программ, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования, с тем чтобы предоставить разработчикам свободу реализовать их как можно лучше с технической точки зрения. В эту категорию попадают сложные расчетные системы, системы реального времени и другие подобные задачи. Однако, в процессе использования этого подхода обнаружился ряд его недостатков, вызванных прежде всего тем, что реальный процесс создания ПО никогда полностью не укладывался в такую жесткую схему.
Разработка итерациями отражает объективно существующий спиральный цикл создания системы. Неполное завершение работ на каждом этапе позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем этапе. При итеративном способе разработки недостающую работу можно будет выполнить на следующей итерации. Главная же задача - как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований.
Основная проблема спирального цикла – определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.