Модули. Предпосылки возникновения модульного подхода. (Лекция 6)

Содержание

Слайд 2

Предпосылки возникновения модульного подхода: возрастающие объемы ПС; увеличивающаяся внутренняя сложность ПС; коллективный характер разработки ПС

Предпосылки возникновения модульного подхода:

возрастающие объемы ПС;
увеличивающаяся внутренняя сложность ПС;
коллективный характер разработки

ПС
Слайд 3

Df: Набор связанных процедур вместе с данными которые они обрабатывают, называют

Df: Набор связанных процедур вместе с данными которые они обрабатывают, называют

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

Критерии приемлемости модуля (по Майерсу) Размер модуля – измеряется числом содержащихся

Критерии приемлемости модуля (по Майерсу)

Размер модуля – измеряется числом содержащихся в

нем строк или операторов.
Прочность модуля – это мера его внутренних связей. Логическая независимость, результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей. Функциональная прочность, модуль выполняет перечень регламентируемых операций для реализации каждой отдельной функции, причем полностью. Информационная прочность – это модуль, реализующий несколько функций над одной и той же структурой данных, которая считается неизвестной вне этого модуля.
Сцепление модуля – это мера его зависимости по данным от других модулей. Слабые информационные связи, обмен информацией между модулями должен быть минимизирован.
Рутинность модуля – это его независимость от предыстории обращения к нему.
Слайд 5

Структура модуля

Структура модуля

Слайд 6

Интерфейсная часть (секция связи)

Интерфейсная часть (секция связи)

Слайд 7

Слайд 8

Секция реализации

Секция реализации

Слайд 9

Инициализирующая часть

Инициализирующая часть

Слайд 10

Задача: Выполнить сортировку элементов массива в том случаи, если его сумма является положительной.

Задача: Выполнить сортировку элементов массива в том случаи, если его сумма

является положительной.
Слайд 11

Этапы разработки ПС

Этапы разработки ПС

Слайд 12

Функциональная структуры алгоритма

Функциональная структуры алгоритма

Слайд 13

Основная программа uses op, obrabotki; var mas : massiv; m :

Основная программа

uses
op, obrabotki;
var
mas : massiv;
m : integer;
begin

writeln(‘Введите количество элементов массива’);
readln(m);
vvod(mas, m);
rezul(mas, m);
if summ(mas, m)>0 then sortr(mas, m);
rezul(mas, m);
end.
Слайд 14

Модуль содержащий описания используемые, как в основной программе так и в

Модуль содержащий описания используемые, как в основной программе так и в

других модулях

unit op;
Interface
const k=200;
type massiv=array[1..k] of integer;
implementation
end.

Слайд 15

Модуль обработки unit obrabotki; interface uses op; procedure vvod(var ma :massiv;

Модуль обработки

unit obrabotki;
interface
uses op;
procedure vvod(var ma :massiv; n :integer);
procedure sortr(var

ma :massiv; n :integer);
procedure rezul(var ma :massiv; n :integer);
function summ(var ma :massiv; n :integer) :real;
Слайд 16

implementation var i : integer; procedure vvod(var ma :massiv; n :integer);

implementation
var i : integer;
procedure vvod(var ma :massiv; n :integer);
begin
randomize;
for

i:=1 to n do
ma[i]:=random(12);
end;
procedure sortr(var ma :massiv; n :integer);
var j, temp, min : integer;
begin
for i:=1 to n-1 do begin
min:=i;
for j:=i+1 to n do
if ma[j] temp:=ma[i];
ma[i]:=ma[min];
ma[min]:=temp
end;
end;