- •Введение Основные понятия дисциплины
- •Взаимодействие между процессами жцпо
- •Модели жц разработки пп
- •Критерии оценки качества программного обеспечения
- •Надежность программного обеспечения
- •Виды программ, программной и эксплуатационной документации по еспд
- •Основные требования и правила оформления структурных схем алгоритмов
- •Технологические методы и средства разработки по
- •Стиль программирования
- •Выбор и обоснование языка программирования
- •Анализ требований и определение спецификаций по
- •Проектирование программного обеспечения при объектном подходе
- •Отношения между классами
- •Эффективность программ
- •Отладка и сопровождение программных продуктов
- •Методы отладки по
- •Методы и средства получения дополнительной информации об ошибке
- •Тестирование и виды тестирования
- •Тестирование модулей и комплексное тестирование
- •Оценочное тестирование
- •Методы тестирования «черного» и «белого» ящика
- •Разработка пользовательских интерфейсов
- •Корректность программ Защита программных продуктов
Стиль программирования
С точки зрения технологичности хорошим считают стиль оформления программы, облегчающий ее восприятие как самим авторам, так и другими программистами, которым придется ее проверять или модифицировать. Исходя из этого, следует придерживаться определенного стиля написания программы, который включает в себя:
Правило именования объектов программы (переменные, функции, процедуры и т.д.).
Имя объекта должно соответствовать его содержанию;
Если позволяет язык программирования, то для разделения слов в имени можно использовать нижнее подчеркивание;
Избегать близких по написанию имен.
Правило оформления модулей. Каждый модуль должен быть оснащен заголовком, который должен содержать:
Название модуля;
Краткое описание назначения;
Описание входных и выходных параметров;
Список используемых модулей;
Описание алгоритма или ограничений;
Ф.И.О. автора программы;
Идентифицирующую информацию.
Стиль оформления текстов, модулей определяет использование отступов, пропусков строк и комментариев, облегчающих понимание программы. Как правило, пропуски строк и комментарии используют для визуального разделения частей модуля.
Выбор и обоснование языка программирования
На начальных этапах процесса разработки должны быть приняты решения, определяющие этот процесс качества и трудоемкость разработки.
Решения:
Выбор архитектуры ПО – это совокупность базовой концепции его построения. Она определяется сложностью решаемых задач, уровнем универсальности и числом пользователей.
Выбор типа интерфейса – различают четыре типа:
Примитивный;
Интерфейс меню;
Интерфейс со свободной навигацией;
Прямого манипулирования.
Выбор подхода к разработкам. Для интерфейса со свободной навигацией предлагается использование событийного программирования и объектного подхода. Для примитивного интерфейса используют структурный подход и объектный.
Выбор языка. Проблемы в выборе языка не существует. Программист выбирает наиболее знакомый и удобный для работы язык программирования.
Выбор или формирование стандартов разработки:
Стандарт проектирования (определяет набор моделей на каждой стадии, требования конфигурации рабочих мест, правило фиксации решения, механизм подсистем проекта);
Стандарт оформления документации (состав и структура, требования к содержанию и оформлению, подготовка и утверждение документации);
Стандарт интерфейса пользователя (правило оформления экранов, включение элементов управления, правило пользования периферийными устройствами и перечень стандартных сообщений).
22.01.2010
Анализ требований и определение спецификаций по
Один из самых ответственных этапов создания программ – это этап постановки задач. Здесь принимаются решения относительно функций создаваемого ПО, эксплуатационных ограничений, выбора архитектуры, среды разработки ПО, интерфейса пользователя и другие. От правильности выбора зависит качество и стоимость конечного продукта.
Функциональные требования
Функциональные требования описывают сервисы, предоставляемые программной системой, ее поведение в определенных ситуациях, реакцию на те или иные входные данные и действия, которые система позволит выполнять пользователю. При написании функциональных требований необходимо учитывать, что чем они будут подробнее, тем более точная оценка работ будет произведена по стоимости и срокам. Функциональные требования документируются в спецификации, где описывается как можно более точное поведение системы. Функциональная спецификация состоит из трех частей:
Описания внешней функциональной среды;
Определение функций ПО, т. е. вводится обозначение всех входных данных, результатов выполнения, указываются типы данных и задаются ограничения;
Описание исключительных ситуаций, если такие могут произойти или возникнуть при выполнении программ и реакция на эти ситуации, которые должны обеспечить соответствующие программы.
Эксплуатационные требования
Эксплуатационные требования определяют характеристики ПО, проявляемые в процессе его использования.
Правильность – это функционирование ПО в соответствии с техническим заданием.
Универсальность – это обеспечение правильной работы ПО при любых допустимых данных и защиты от неправильных данных.
Надежность – это обеспечение полной повторяемости результатов, т. е. обеспечение их правильности при наличии сбоев.
Проверяемость – это возможность проверки полученного результата.
Точность результата – это обеспечение погрешности не выше заданной.
Защищенность – обеспечение конфиденциальности.
Программная совместимость – это возможность совместного функционирования с другим ПО;
Аппаратная совместимость – это возможность совместного функционирования с некоторым оборудованием.
Эффективность – использование минимально возможного количества ресурсов, технических средств.
Адаптируемость – это возможность быстрой модификации с целью приспособления к изменяемым условиям.
Реентабельность – это возможность параллельного использования несколькими процессами.
Структурный метод построения ПО
На этом этапе необходимо построить модели ПО во взаимодействии с окружающей средой. Процессы могут быть представлены в виде псевдокодов, блок-схем алгоритмов, flow-форм, диаграмм и просто текстового описания. При структурном подходе различают три вида вычислительного процесса: линейный, разветвленный и циклический.
Псевдокод – это формализованное текстовое описание алгоритма.
Flow-формы представляют собой графическое описание алгоритмов, которое иллюстрирует вложенность структур.