С учетом назначения функциональной спецификации ПС и тяжелых последствий неточностей и ошибок в этом документе, функциональная спецификация должна быть математически точной.
Category Archives for Технология программирования
Технология программирования
Основные подходы к спецификации семантики функций
Для спецификации семантики функций используются следующие подходы: табличный, алгебраический и логический, а также графический.
Методы контроля внешнего описания ПС
Разработка внешнего описания обязательно должна завершаться проведением тщательного и разнообразного контроля правильности внешнего описания. Целью этого процесса является найти как можно больше ошибок, сделанных на этом этапе.
Понятие архитектуры программного средства
Архитектура ПС ? это представление ПС как системы, состоящей из некоторой совокупности взаимодействующих подсистем. В качестве таких подсистем выступают обычно отдельные программы.
Основные классы архитектур программных средств
Различают следующие основные классы архитектур программных средств: • цельная программа; • комплекс автономно выполняемых программ; • слоистая программная система;
Контроль архитектуры программных средств
Для контроля архитектуры ПС используется смежный контроль и ручная имитация.
Цель модульного программирования
Приступая к разработке каждой программы ПС, следует иметь в виду, что она, как правило, является большой системой, поэтому мы должны принять меры для ее упрощения. Для этого такую программу разрабатывают по частям, которые называются программными модулями.
Основные характеристики программного модуля
Выделить хороший с этой точки зрения модуль является серьезной творческой задачей. Для оценки приемлемости выделенного модуля используются некоторые критерии. Майерс предложил для оценки приемлемости программного модуля использовать более конструктивные его характеристики:
Методы разработки структуры программы
В качестве модульной структуры программы принято использовать древовидную структуру, включая деревья со сросшимися ветвями. В узлах такого дерева размещаются программные модули, а направленные дуги (стрелки) показывают статическую подчиненность модулей, т.е. каждая дуга показывает, что в тексте модуля, из которого она исходит, имеется ссылка на модуль, в который она входит.
Метод восходящей разработки
Метод восходящей разработки заключается в следующем. Сначала строится модульная структура программы в виде дерева. Затем поочередно программируются модули программы, начиная с модулей самого нижнего уровня (листья дерева модульной структуры программы), в таком порядке, чтобы для каждого программируемого модуля были уже запрограммированы все модули, к которым он может обращаться.
Метод нисходящей разработки
Метод нисходящей разработки заключается в следующем. Как и в предыдущем методе сначала строится модульная структура программы в виде дерева. Затем поочередно программируются модули программы, начиная с модуля самого верхнего уровня (головного), переходя к программированию какого-либо другого модуля только в том случае, если уже запрограммирован модуль, который к нему обращается.
Метод нисходящей разработки
Метод нисходящей разработки заключается в следующем. Как и в предыдущем методе сначала строится модульная структура программы в виде дерева. Затем поочередно программируются модули программы, начиная с модуля самого верхнего уровня (головного), переходя к программированию какого-либо другого мо-дуля только в том случае, если уже запрограммирован модуль, который к нему об-ращается.
Контроль структуры программы
Для контроля структуры программы можно использовать три метода: • статический контроль, • смежный контроль, • сквозной контроль.
Порядок разработки программного модуля
При разработке программного модуля целесообразно придерживаться следующего порядка: • изучение и проверка спецификации модуля, выбор языка программирования;
Структурное программирование
При программировании модуля следует иметь в виду, что программа должна быть понятной не только компьютеру, но и человеку: и разработчик модуля, и лица, проверяющие модуль, и тестовики, готовящие тесты для отладки модуля, и сопроводители ПС, осуществляющие требуемые изменения модуля, вынуждены будут многократно разбирать логику работы модуля.
Пошаговая детализация и понятие о псевдокоде
Часто программирование модуля начинают с построения его блок-схемы, описывающей в общих чертах логику его работы. Однако современная технология программирования не рекомендует этого делать без подходящей компьютерной поддержки.
Контроль программного модуля
Применяются следующие методы контроля программного модуля: • статическая проверка текста модуля; • сквозное прослеживание;
ТЕСТИРОВАНИЕ И ОТЛАДКА ПРОГРАММНОГО СРЕДСТВА
Отладка ПС ? это деятельность, направленная на обнаружение и исправление ошибок в ПС с использованием процессов выполнения его программ.
Принципы и виды отладки программного средства
При отладке ПС отыскиваются и устраняются, в основном, те ошибки, наличие которых в ПС устанавливается при тестировании. Как было уже отмечено, тестирование не может доказать правильность ПС, в лучшем случае оно может продемонстрировать наличие в нем ошибки.
Заповеди отладки программного средства
Ниже приводятся рекомендации по организации отладки в форме заповедей.
Автономная отладка программного средства
При автономной отладке ПС каждый модуль на самом деле тестируется в некотором программном окружении, кроме случая, когда отлаживаемая программа состоит только из одного модуля.
Комплексная отладка программного средства
Как уже было сказано выше, при комплексной отладке тестируется ПС в целом, причем тесты готовятся по каждому из документов ПС. Тестирование этих документов производится, как правило, в порядке, обратном их разработке. Тестирование архитектуры ПС.
Документация, создаваемая и используемая в процессе разработки ПС
При разработке ПС создается и используется большой объем разнообразной документации. Она необходима как средство передачи информации между разработчиками ПС, как средство управления разработкой ПС и как средство передачи пользователям информации, необходимой для применения и сопровождения ПС.
Пользовательская документация программных средств
Пользовательская документация ПС (user documentation) объясняет пользователям, как они должны действовать, чтобы применить разрабатываемое ПС. Она необходима, если ПС предполагает какое-либо взаимодействие с пользователями.
Документация по сопровождению программных средств
Документация по сопровождению ПС (system documentation) описывает ПС с точки зрения ее разработки. Эта документация необходима, если ПС предполагает изучение того, как оно устроена (сконструирована), и модернизацию его программ.
Список литературы
1. Г. Майерс. Надежность программного обеспечения. — М.: Мир, 1980. 2. E.W. Dijkstra. The Structure of the THE-Multiprogramming // Communications of the ACM. 1968, 11(5). 3. Е.А. Жоголев. Введение в технологию программирования (конспект лекций). — М.:
Новые возможности C++Builder
C++Builder обеспечивает не только поддержку ANSI C++, но и расширяет язык новыми возможностями. Программистам использующим C++Builder для визуальной разработки приложений теперь доступны:компоненты, св-ва, методы, обработка событий и шаблоны, пространство имен, явные и непостоянные объявления, исключения.
Общая характеристика интегрированной среды C++Builder
Одним из мощных средств визуального стиля программирования явл. C++Builder компонии INPRISE(Borland) который относится к системам быстрой разработки приложений RAD. Система интегрирована палитрой компонент, разделенной карто-течными вкладками на несколько функциональных групп.
События.
После того как классы проинициализированы, начинается настоящая работа. В самом простом случае программа выполняется с помощью простого сценария :
Основная программа.
На основную программу в рассматриваемой архитектуре возложено 3 задачи: 1.Вызов различных операций инициализации классов 2.Создание внешних событий , которые инициализируют или продолжают канал управления
