
- •1. Методы создания программных средств. Основные направления.
- •2. Различия программирования и разработки.
- •3. Виды программ, программной и эксплуатационной документации по еспд.
- •4. Понятие о классификации технологий разработки программного обеспечения.
- •5. Постановка задачи.
- •6. Выбор и обоснование метода решения.
- •7. Понятие и основные модели жизненного цикла программного продукта.
- •Спиральная модель жизненного цикла программного продукта, ее достоинства и недостатки.
- •9. Перечень, содержание и приемы выполнения работ на этапе разработки программного продукта.
- •10. Определение основных понятий программирования: алгоритм, программа, абстракция, операторная схема, оператор языка программирования, оператор перехода, цикл, программный модуль.
- •11. Технологии программирования. Основные понятия.
- •12. Основные этапы развития программирования как науки.
- •13. Понятие case – технологии и ее фундаментальные принципы. Основные составляющие case-технологии.
- •14. Система стандартов iso 9001.
- •15. Управление конфигурацией. Case-системы.
- •16. Понятие технологии программирования
- •17. Этапы решения задачи на эвм
- •18. Основные положения решения задач на эвм
- •19. Разработка технического проекта
- •20. Виды языков программирования (по поколениям используемого исходного кода, по проблемной ориентации языка)
- •21. Структурное программирование
- •22. Нисходящее проектирование
- •23. Восходящее проектирование
- •24. Проектирование, разработка и сопровождение информационных систем
- •25. Системный анализ предметной области
- •26. Подготовка документации на программные средства в соответствии с госТами
- •27. Модульное программирование
- •Прочность по совпадению.
- •28. Организация связей между модулями
- •29. Коллективная работа по созданию программного обеспечения
- •30. Программная инженерия: назначение, основные принципы и понятия
- •31. Метод программной инженерии
- •32. Введение в объектно-ориентированное программирование(ооп).
- •33. Ооп. Структуры
- •35. Основные этапы проектирования программы
- •36. Основные направления в программировании
- •38. Основные этапы технологического процесса разработки программ
- •39. Разработка технического задания на программную систему. Функциональные требования
- •40. Пояснительная записка
- •41. Качество программного изделия
- •42. Стиль программирования
- •43. Тестирование программного обеспечения. Основные принципы разработки тестов для программных продуктов. Особенности тестирования объектно - ориентированных программ.
- •44. Основные понятия и определения теории тестирования. Подходы к тестированию. Стратегии тестирования. Критерии тестирования.
- •45. Способы тестирования программ, состоящих из модулей (блоков).
- •46. Два критерия полноты тестирования. Причины появления второго критерия.
- •47. Отладка программы. Программные ошибки. Категории программных ошибок.
- •48. Методы отладки программного обеспечения
- •49. Критерии черного ящика.
- •Методы стратегии чёрного ящика:
- •50. Критерии белого ящика
- •51. Минимально грубое тестирование
- •52. Модели надежности программных систем
- •53. Измерения и оценка качества программного обеспечения
- •54. Динамическая модель Шумана
- •56. Статические модели надежности
- •57. Модель Миллса
- •58. Простая интуитивная модель
- •59. Модель Коркорэна
- •60. Типы пользовательских интерфейсов и этапы их разработки
- •61. Пользовательская и программная модели интерфейсов
- •62. Пользовательские интерфейсы прямого манипулирования и их проектирование
- •63. Классификации диалогов и общие принципы их разработки
- •64. Каскадная модель жизненного цикла программного продукта. Ее достоинства и недостатки.
- •72. Построение концептуальной модели предметной области
41. Качество программного изделия
Качество программного обеспечения — характеристика программного обеспечения (ПО) как степени его соответствия требованиям.
Качество кода может определяться различными критериями. К примеру, следующими:
Читаемость кода.
Лёгкость поддержки, тестирования, отладки, исправления ошибок, изменения и портируемости.
Низкая сложность кода.
Низкое использование ресурсов: памяти и процессорного времени.
Корректная обработка исключительных ситуаций.
Малое число предупреждений при компиляции .
Фактор качества ПО — это нефункциональное требование к программе, которое обычно не описывается в договоре с заказчиком, но, тем не менее, является желательным требованием, повышающим качество программы.
Некоторые из факторов качества:
Понятность – назначение ПО должно быть понятным, из самой программы и документации.
Полнота – все необходимые части программы должны быть представлены и полностью реализованы.
Краткость – отсутствие лишней, дублирующейся информации. Повторяющиеся части кода должны быть преобразованы в вызов общей процедуры. То же касается и документации.
Портируемость – лёгкость в адаптации программы к другому окружению: другой архитектуре, платформе, операционной системе или её версии.
Согласованность – по всей программе и в документации должны использоваться одни и те же соглашения, форматы и обозначения.
Сопровождаемость – насколько сложно изменить программу для удовлетворения новых требований. Это требование также указывает, что программа должна быть хорошо документирована, не слишком запутана, и иметь резерв роста по использованию ресурсов (память, процессор).
Тестируемость – позволяет ли программа выполнить проверку приёмочных характеристик, поддерживается ли возможность измерения производительности.
Удобство использования – простота и удобство использования программы. Это требование относится прежде всего к интерфейсу пользователя.
Надёжность – отсутствие отказов и сбоев в работе программ, а также простота исправления дефектов и ошибок;
Структурированность;
Эффективность – насколько рационально программа относится к ресурсам (память, процессор) при выполнении своих задач.
Безопасность;
42. Стиль программирования
Стиль программирования определяет набор правил, приёмов и форм, применяемых в ходе программирования. Программы должны составляться таким образом, чтобы их могли читать люди.
Три фактора хорошего стиля программирования:
требования простоты, лёгкости и удобочитаемости программы;
использование программистом особенностей языка программирования;
стремление программиста повысить эффективность программы в результате тщательного анализа структуры данных и ресурсов.
43. Тестирование программного обеспечения. Основные принципы разработки тестов для программных продуктов. Особенности тестирования объектно - ориентированных программ.
Тестирование – выполнение программы с целью обнаружения факта наличия в программе ошибок.
Отладка – выявление места, где происходит ошибка, и внесение исправлений в программу.
Цель тестирования – обнаружение ошибок в программе.
Этапы тестирования:
1. Проверка нормальных условий. Тестирование на основе данных, характерных для реальных условий функционирования программы.
2. Проверка в экстремальных условиях. Тестовые данные включают граничные значения области изменения исходных переменных, которые должны восприниматься программой как правильные данные. Типичными примерами могут служить очень маленькие и очень большие числа или отсутствие данных.
3. Проверка в исключительных ситуациях . Проводится с использованием данных, значения которых лежат за пределами допустимой области изменения. Для табличных и литерных величин проверяются граничные объемы данных.
Принципы:
Ошибки в программе есть всегда.
Тестовые данные должны быть достаточно просты для проверки.
Готовятся тесты заранее до выхода на машину.
Перед началом тестирования должны быть сформулированы цели, которые должны быть достигнуты в ходе тестирования.
Результаты тестирования должны быть зафиксированы.
Тесты должны быть одинаково как для правильных исходных данных, так и для неправильных.
Необходимо проверить два момента:
программа делает то, что должна делать;
программа не делает то, чего она делать не должна.
Результаты тестов необходимо тщательно анализировать.
Ради упрощения тестирования недопустимо изменять саму программу.
После исправления ошибки необходимо заново проводить тестирование.
Ошибки кучкуются, чем больше обнаружено ошибок, тем больше вероятность того, что в программе присутствуют другие ошибки.