Отчет по производственной практике на базе организации ООО "Систем Сервис"


СОЗДАНИЕ ПРОГРАММЫ ПО РАЗРАБОТАННОМУ АЛГОРИТМУ КАК ОТДЕЛЬНЫЙ МОДУЛЬ



бет7/24
Дата16.05.2023
өлшемі107,14 Kb.
#93587
түріОтчет
1   2   3   4   5   6   7   8   9   10   ...   24

СОЗДАНИЕ ПРОГРАММЫ ПО РАЗРАБОТАННОМУ АЛГОРИТМУ КАК ОТДЕЛЬНЫЙ МОДУЛЬ

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


Приступая к разработке каждой программы ПС, следует иметь ввиду, что она является большой системой, поэтому нужно принимать меры для ее упрощения. Для этого программу разрабатывают по частям, которые называются программными модулями. Такой метод программирования называют модульным программированием.
Модуль – это самостоятельная часть программы, имеющая определенное значение и обеспечивающая заданные функции обработки автономно от других программных модулей.
Каждый программный модуль программируется, компилируется и отлаживается отдельно от других модулей программы, и тем самым физически разделен с другими программными модулями.
Каждый программный модуль может включаться в состав разных программ, если выполнены условия его использования, описанные в документации по ее использованию. Т.е. хорошо продуманный модуль позволяет избежать дублирования в программировании.
Любое ПС имеет свою структуру, которая разрабатывается для удобства:

  1. разработки;

  2. программирования;

  3. отладки;

  4. внесения изменений.

Также структуризация ПС позволяет:

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

  2. построить календарные графики проектных работ и осуществлять их координацию в процессе создания ПИ.

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

Свойства модуля:

  1. один вход и один выход – на входе программный модуль получает определенный набор исходных данных, выполняет обработку данных и возвращает результат

  2. функциональная завершенность – модуль выполняет перечень операций для реализации каждой отдельной функции в полном составе.

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

  4. слабые информационные связи с другими программными модулями – обмен информации между модулями должен быть по возможности минимизирован.

  5. обозримый по размеру и сложности.

Каждый модуль состоит из спецификации и тела модуля. Спецификация – правила использования модуля. Тело – способ реализации процесса обработки.
Принцип модульного программирования ПС:

  1. Определение состава и подчиненность функций

  2. определение набора программных модулей, реализующих эти функции

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

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

  2. функциональную спецификацию модуля (описание всех функций, выполняемых этим модулем).

Существуют разные методы разработки структуры программы. Обычно используют 2 метода:

  1. метод восходящей разработки;

  2. метод нисходящей разработки.

Метод восходящей разработки. Сначала строится модульная структура программы в виде дерева. Затем поочередно программируются модули программы, начиная с модулей самого нижнего уровня, в таком порядке, чтобы для каждого программируемого модуля были уже запрограммированы все модули, к которым он может обращаться. После того, как все модули программы запрограммированы, производится их поочередное тестирование и отладка в принципе в таком же (восходящем) порядке, в каком велось их программирование.
На первый взгляд такой порядок разработки программы кажется вполне естественным: каждый модуль при программировании выражается через уже запрограммированные непосредственно подчиненные модули, а при тестировании использует уже отлаженные модули. Не рекомендуется, т.к.:

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

  2. каждая программа в какой-то степени подчиняется некоторым внутренним для нее, но глобальным для ее модулей соображениям (принципам реализации, предположениям, структурам данных и т.п.), что определяет ее концептуальную целостность и формируется в процессе ее разработки. При восходящей разработке эта глобальная информация для модулей нижних уровней еще не ясна в полном объеме, поэтому очень часто приходится их перепрограммировать;

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

Метод нисходящей разработки - cначала строится модульная структура программы в виде дерева. Затем поочередно программируются модули программы, начиная с модуля самого верхнего уровня (головного), переходя к программированию какого-либо другого модуля только в том случае, если уже запрограммирован модуль, который к нему обращается. После того, как все модули программы запрограммированы, производится их поочередное тестирование и отладка в таком же (нисходящем) порядке.
Положительные стороны:

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

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

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



    1. Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   ...   24




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет