Скачиваний:
0
Добавлен:
16.05.2024
Размер:
94.72 Кб
Скачать

Список экзаменационных вопросов по курсу "Методы и средства проектирования информационных систем и технологий"

  1. Использование системного подхода при проектировании программного обеспечения

  2. Основные проблемы разработки и проектирования ПО и методы их преодоления

  3. Понятие жизненного цикла ПО и его роль в проектировании информационных систем

  4. Понятие модели ЖЦ в проектировании информационных систем, терминология моделей ЖЦ

  5. Основные модели ЖЦ и рекомендации по их использованию

  6. Преимущества и недостатки использования каскадной модели ЖЦ

  7. Преимущества и недостатки использования эволюционной модели ЖЦ

  8. Сравнение эволюционной и итерационной моделей ЖЦ

  9. Понятие архитектуры программного обеспечения и причины возникновения такого понятия в рамках процесса создания информационных систем

  10. Понятие "сложности" в современном проектировании информационных систем и способы её преодоления

  11. Использование принципа декомпозиции в процессе проектирования информационных систем

  12. Проектирование архитектуры информационной системы в соответствии с моделью представлений "4+1", понятие модели ПО

  13. Принципы объектно-ориентированного подхода к проектированию информационных систем

  14. Основные понятия объектно-ориентированного подхода к проектированию информационных систем

  15. Понятие соединения между элементами объектной модели и различные виды соединений

  16. Понятие гибкого моделирования, манифест и основные принципы гибкого процесса проектирования

  17. Понятие гибкого унифицированного процесса проектирования

  18. Фазы и дисциплины унифицированного процесса проектирования, распределение работ на различных фазах для основных дисциплин

  19. Начальная фаза унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования

  20. Понятие требования к информационной системе, типы и категории требований

  21. Понятие прецедента в процессе моделирования требований к информационной системе, модель прецедентов.

  22. Понятие исполнителя в процессе формализации требований к информационной системе

  23. Артефакты унифицированного процесса, используемые для описания нефункциональных требований к информационной системе

  24. Фаза развития унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования

  25. Задачи фазы развития унифицированного процесса и планирование итераций на этой фазе проектирования

  26. Моделирование предметной области и основные понятия модели предметной области

  27. Использование классов описаний и производных атрибутов в процессе моделирования предметной области

  28. Понятие системного события и идентификация системных событий

  29. Открытый системный интерфейс и описание операций в рамках унифицированного процесса проектирования

  30. Проектирование динамической структуры ПО с использованием UML в рамках объектно-ориентированного подхода

  31. Средства UML для выражения полиморфных сообщений в контексте проектирования динамической структуры ПО

  32. Средства UML для выражения асинхронных вызовов в контексте проектирования динамической структуры ПО

  33. Проектирование статической структуры ПО с использованием UML в рамках объектно-ориентированного подхода

  34. Средства UML для представления атрибутов коллекций в контексте проектирования статической структуры ПО

  35. Признаки существования зависимости между классами в контексте проектирования статической структуры ПО

  36. Стадии создания информационной системы в рамках канонического проектирования

  37. Обследование и технико-экономическое обоснование проекта

  38. Разработка технического задания в соответствии с ГОСТ 34.602-89

  39. Состав эскизного и технического проектов

  40. Типовое проектирование информационных систем

Оглавление

Основные модели ЖЦ 10

Преимущества и недостатки использования эволюционной модели ЖЦ 13

Системный подход при проектировании программного обеспечения — это методология, которая предполагает рассмотрение создаваемого ПО как системы, функционирующей в рамках более широкого окружения. Это включает в себя анализ требований, определение взаимодействия с другими системами, а также планирование архитектуры и компонентов таким образом, чтобы обеспечить нужный уровень производительности, надежности, гибкости и поддерживаемости. Использование системного подхода способствует созданию более эффективного и адаптивного программного продукта.

Основные принципы системного подхода в проектировании ПО:

1. Целостность и взаимосвязь. Программное обеспечение рассматривается как совокупность взаимосвязанных элементов, функционирующих ради достижения общей цели. Это означает, что при изменении одного элемента необходимо учитывать влияние на весь проект.

2. Иерархичность. Сложная система разбивается на подсистемы и компоненты, что упрощает управление проектом, его понимание, разработку, тестирование и поддержку.

3. Модульность. Система состоит из модулей, которые можно разрабатывать, тестировать и изменять независимо друг от друга, но которые вместе обеспечивают выполнение всех требований к системе.

4. Адаптивность и гибкость. Система проектируется с возможностью легкой адаптации к изменениям в требованиях и окружающей среде.

5. Управляемость и контроль. В процессе проектирования внедряются механизмы для мониторинга, управления и контроля за работой системы в целом.

Этапы использования системного подхода:

1. Формулировка и анализ требований. На первом этапе определяются цели создаваемой системы, ее функциональные и нефункциональные требования.

2. Разработка концепции системы. Определяются основные подсистемы и компоненты, их функции и взаимодействия.

3. Детальное проектирование. Разрабатываются архитектура системы и детальные спецификации для каждого компонента.

4. Реализация. На этом этапе осуществляется программирование, сборка и интеграция компонентов системы.

5. Тестирование. Проводится комплексное тестирование системы на соответствие требованиям и спецификациям.

6. Внедрение и поддержка. Включает запуск системы в эксплуатацию и ее последующую поддержку и обновление.

Использование системного подхода позволяет создавать сложные и качественные программные продукты, учитывая при этом все аспекты их взаимодействия с окружающей средой и пользователями. Это способствует повышению удовлетворенности пользователя и снижению затрат на последующие модификации и поддержку программного обеспечения.

Разработка и проектирование программного обеспечения (ПО) сопровождается рядом проблем, каждая из которых может замедлить процесс разработки, увеличить бюджет или снизить качество конечного продукта. В отдельные категории выделяют технические, управленческие и коммуникационные проблемы. Рассмотрим основные из них и методы их преодоления.

Основные проблемы разработки и проектирования ПО:

1. Нечетко формулированные требования.

Недостаточно точно сформулированные требования к ПО могут привести к неправильному пониманию задачи разработчиками.

Решение: Используйте итеративные подходы как Agile, чтобы постепенно уточнять требования в процессе разработки. Вовлеките заказчика и конечных пользователей в процесс уточнения требований.

2. Сложность проекта и архитектурные ошибки.

Сложные системы часто сталкиваются с проблемами масштабирования и интеграции.

Решение: Применяйте принципы модульного и объектно-ориентированного проектирования, чтобы облегчить масштабирование и модификацию системы.

3. Изменение требований.

Требования к проекту могут меняться даже на поздних этапах разработки.

Решение: Применение гибких методологий (Agile, Scrum) позволяет адаптироваться к изменениям в требованиях без значительных потерь.

4. Недостаточное тестирование.

Недостаточное или плохо планируемое тестирование может пропустить серьезные ошибки.

Решение: Внедрите непрерывное тестирование в процесс разработки, используйте автоматизацию тестов.

5. Проблемы с коммуникациями в команде.

Недопонимание внутри команды и с заказчиком ведет к ошибкам и задержкам.

Решение: Установите эффективные каналы связи, регулярно проводите встречи и стендапы, используйте инструменты для совместной работы.

6. Необходимость соблюдения стандартов качества и безопасности.

Работа с данными и информационная безопасность требуют соблюдения строгих стандартов.

Решение: Применяйте методы защиты данных и шифрования с самого начала проекта, следуйте международным стандартам и практикам.

### Методы преодоления:

1. Использование гибких методологий.

Гибкие методики такие, как Agile и Scrum, помогают адаптироваться к изменениям и улучшить коммуникацию в команде.

2. Модульное проектирование.

Разделение системы на модули упрощает управление проектом, его разработку и тестирование.

3. Совершенствование процесса сбора требований.

Включение всех заинтересованных сторон в процесс сбора требований обеспечивает полноту и точность требований.

4. Автоматизация тестирования.

Позволяет сократить время на тестирование и повысить его эффективность.

5. Непрерывное обучение и развитие команды.

Регулярное повышение квалификации разработчиков помогает использовать самые современные подходы и технологии.

6. Культура постоянного улучшения.

Регулярный анализ и улучшение процессов разработки и проектирования повышает эффективность команды и качество продукта.

Использование этих подходов и методов позволит минимизировать риски проекта, улучшить качество конечного продукта и оптимизировать процесс разработки и проектирования программного обеспечения.

Жизненный цикл программного обеспечения (ПО) — это период времени от момента возникновения идеи о создании продукта до момента его полного изъятия из эксплуатации. Этот цикл описывает последовательность фаз разработки и поддержки ПО, которые необходимо пройти, чтобы обеспечить качество и удовлетворение требований пользователей. Рассмотрение ПО в контексте его жизненного цикла позволяет лучше планировать проект, эффективно управлять ресурсами, учитывать риски на каждом этапе проекта и обеспечить соответствие продукта ожиданиям заказчиков.

### Этапы жизненного цикла ПО:

Хотя существуют разные модели жизненного цикла (например, каскадная, итеративная, Agile), они обычно включают следующие фазы:

1. Планирование и определение требований. На этом этапе определяются цели проекта, собираются и анализируются требования пользователей, оцениваются затраты и ресурсы.

2. Проектирование архитектуры. Разрабатывается общая структура системы, определяются основные модули и их взаимодействия.

3. Разработка и кодирование. На этой стадии программный продукт фактически создается. Разработчики пишут код, реализуя функциональные требования к системе.

4. Тестирование. Проверка работы системы на соответствие заданным требованиям, поиск и исправление ошибок.

5. Развертывание и внедрение. Установка ПО на целевых платформах пользователей, настройка системы под конкретные задачи заказчика.

6. Эксплуатация и поддержка. Содержит наблюдение за работой системы, устранение возникающих проблем и обновление ПО для улучшения функциональности или исправления ошибок.

7. Вывод из эксплуатации. Замена, удаление ПО или перенос данных при исчерпании ресурсов системы или при появлении более эффективных решений.

### Роль жизненного цикла ПО в проектировании информационных систем:

1. Структурирование процесса разработки. Модель жизненного цикла позволяет организовать работу команды, выстроить последовательность шагов разработки и поддержки.

2. Управление проектом. Эффективное планирование, оценка рисков и распределение ресурсов на основе понимания всех этапов жизненного цикла.

3. Качество и соответствие требованиям. Системное тестирование и контроль качества на разных этапах обеспечивают создание продукта, отвечающего потребностям заказчиков.

4. Гибкость и адаптивность. Использование итеративных и гибких подходов в рамках жизненного цикла позволяет адаптировать проект под изменяющиеся требования или условия рынка.

5. Экономическая эффективность. Понимание и управление жизненным циклом помогает минимизировать издержки за счет более точного планирования и использования ресурсов.

Таким образом, понимание и применение концепции жизненного цикла ПО играют ключевую роль в успешном проектировании и реализации информационных систем, обеспечивая их качество, соответствие требованиям и экономическую эффективность.

Модель жизненного цикла (ЖЦ) в проектировании информационных систем представляет собой концептуальный фреймворк, описывающий последовательность этапов, через которые проходит проект от его начала до конца. Эта модель позволяет структурировать процесс разработки, определить основные задачи и результаты на каждом этапе, а также обеспечить качественное управление проектом на всех его стадиях. Введение в модели ЖЦ включает в себя терминологию, которая помогает повысить понимание и эффективность процесса проектирования.

### Основные термины моделей ЖЦ

1. Сбор и анализ требований — первый этап, на котором определяются цели системы, собираются и анализируются требования пользователей и других заинтересованных сторон.

2. Проектирование — этап, на котором на основе собранных требований создается архитектура системы, определяется структура данных, алгоритмы обработки и пользовательский интерфейс.

3. Разработка (кодирование) — процесс создания информационной системы путем написания программного кода, реализующего функциональность, предусмотренную на этапе проектирования.

4. Тестирование — проверка корректности работоспособности системы, выявление и исправление ошибок, обеспечение соответствия системы заявленным требованиям.

5. Внедрение и развертывание — процесс установки, настройки системы в целевой среде, обучение пользователей и переход к эксплуатации системы.

6. Поддержка и обслуживание — этап жизненного цикла после внедрения системы, включающий работы по исправлению ошибок, улучшению функциональности и обновлению системы.

7. Вывод из эксплуатации — завершающая фаза жизненного цикла, когда система больше не используется или заменяется новым решением.

### Модели ЖЦ информационных систем

1. Каскадная модель — линейная последовательность этапов, где каждый следующий начинается после завершения предыдущего.

2. Инкрементальная модель — подразумевает поэтапную разработку и внедрение системы, когда большой проект делится на меньшие части, которые реализуются и внедряются поочередно.

3. Итеративная модель — предполагает разработку проекта через повторение циклов разработки, что позволяет уточнять требования и функционал на протяжении всего процесса создания системы.

4. Агил (Agile) модели — гибкие методики, например, SCRUM, которые фокусируются на быстрой и гибкой разработке, активном вовлечении клиента в процесс и адаптации к изменяющимся требованиям.

Выбор конкретной модели ЖЦ зависит от многих факторов, таких как размер проекта, сроки, требования к качеству и безопасности, а также от специфики команды и проекта. Понимание и грамотное применение моделей жизненного цикла позволяет повысить эффективность процесса разработки, снизить риски и достичь поставленных целей.