Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Надежность программного обеспечения систем обработки данных

..pdf
Скачиваний:
8
Добавлен:
12.11.2023
Размер:
8.74 Mб
Скачать

1) си стем а у п р ав л ен и я б азо й д ан н ы х;

2)ПО распределения памяти

3). программы загрузки базы данных;

4)программы обработки данных;

5)» другие программы, генерирующие изменения обновление базы данных.

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

Необходимо определить каждое, уникальное множество; файл.эаннеь, -элемент „иди единицу данных как содержа*

щую следующую информацию:

 

1)

идентификация. Имя н признак или метка;

2)

определение. Стандартное или уникальное, цель

в базнррданнн данных, . использование ПО,

формат „и

9б>ем, критерий ,и условия* иомецення .данных,

контроль

элементов илн единйц данных, графическое изображение; 3) соотношения. Высшие ц низшие соотношения,

изменение к выборка отношений.

Секция Физические характеристики включает инфор­ мацию о , памяти, доступе и рекомеявниям**'- области конструирования. Описание памяти содержит требования' « памяти для базы данных, а также .некоторые ограни* чення и условия. Приводится описание-методе»' доступа с определением их физической взаимосвязи.. Дается'опи­ сание рекомендаций в, области конструирования базог вых . данных с . целью .организации эффективной обра­ ботки.

Руководство пользователя., Цель руководства полы зователя — описание производственны» функций ПО в терминологии неавтоматической обработки данных, тако^, что организация пользователя может определить ее при? ценение и условия,использования. Руководство пользо­ вателя служит справочным документом для подготовки’ ввода данных и интерпретации результатов.. В руковод­ ство включены секции основной информации, примене­ ние, процедуры и требования. Первая секция аналогична ранее рассмотренным документам.

Секция Применение содержит информацию о том» где и как проектируемое ПО предусматривается; ис­ пользовать. Описание включает цель ПО, характерис­ тики, запас .улучшения рабочих возможностей и выпол­ няемые фушяинь Ври описанииопермриг.'требуется по­ казать рабочие отнвшетМг вымйиишмй» функций к opJ

20 1

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

В разделе «Оборудование» выполняется его опнсанне применительно к разработанному ПО. Структура ПО описывается в разрезе каждого из его компонентов Далее следует описание характеристик ПО, включающее количественные характеристики времени ввода, вывода, срабатывания, время обработки и частоты проявления ошибок. Кроме того, приводится качественная оценка гибкости н надежности ПО.

Вразделе описания базы данных должны быть опи­ саны все файлы данных, имеющие отношение к проекти­ руемому ПО. Описание должно включать цель, для ко­ торой каждый файл данных сохраняется

Секция Процедуры и требования содержит информа­ цию о включении процедур н подготовке данных, о пара метрах ввода для ПО. Сфера действия, качество и логи­ ческая структура информации должны позволять поль­ зователю подготовить требуемый ввод н объяснить в де талях характеристики н средства вывода Здесь дается описание ошибок, приемы восстановления после ошибок

нповторный запуск

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

Операционное руководство. Цель операционного руко­ водства — обеспечение работы персонала вычислительно­ го центра с разработанным программным обеспечением. В составе этого документа выделены секции основной информации, опнсанне ПО, описание работ, нестандарт­ ные процедуры и процедуры обработки на расстоянии. Содержание первой секции аналогично ранее описанным

документам Секция Описание ПО содержит информацию по ор­

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

202

к нему, порядка создания и обработки при помощи систем. Кроме того, должны быть включены заголовок, мнемо­ ническое обращение, виды н объем потребной памяти.

Секция Описание работ включает разделы выполне­ ния инвентаризации, выполнения работ н выполнения описаний. Инвентаризация предусматривает представле­ ние н описание списка работ с указанием по каждой из ннх цели, а также списка программ, обеспечивающих каждую из работ. При описании выполнения работ пре­ дусматривается достижение цели организации информа­ ции по каждой из работ в наиболее полном и полезном представленнн ее для центров обработки н для вовлечения обслуживающего персонала Эта информация включает описания контроля ввода, рабочей информации, файлов ввода-вывода, сообщений о выводе, процедур повторного пуска и возврата и т д. Выполнение описания предусмат­ ривает наличие информации о последующих выполнениях способами, сходными с представленными при описании работ.

Секция Нестандартные процедуры обеспечивает онисание нестандартных процедур или работ применительно к конкретному разработанному ПО в интересах его под­ держания в процессе эксплуатации.

Секция Обработка на расстоянии содержит описание процедур, обеспечивающих работу с удаленных термина­ лов и станций данных.

Руководство по обслуживанию. Цель руководства — обеспечение информацией, необходимой для понимания программ, их рабочей конфигурации н обслуживающих процедур. В составе руководства присутствуют секции основной информации, описания программ, оборудования операционной системы и обслуживающих процедур Пер­ вая секция аналогична ранее описанным.

Секция Описание программ содержит информацию по описанию программ в интересах программиста. Описание по одной программе включает сведения по идентифика­ ции программы; по решаемой проблеме и принятому ме­ тоду достижения цели, по выполняемому вводу данных с описанием носителей, формата н структуры данных, по совокупности проблем обработки информации, вклю­ чающих такие вопросы, как описание ошибок, ограниче­ ний н пределов и т д ; по описанию вывода; возможного интерфейса с другими программам»; по описанию работы. После завершения описания одной программы следует описание очередной программы и т. д

Секция Оборудование операционной системы включает всю необходимую информацию о взаимодействии разра ботаиного ПО с существующей операционной системой Секция Обслуживающие процедуры содержит сведе ния о' программных соглашениях, процедурах проверки, обнаружения н исправления ошибок, специальных обслу жцвающих процедурах, листингах н блок-схемах прог­ рамм. Эта информация представляется в объеме, необ­ ходимом для изучения и практического использования

на уровне программиста Тестовый план. Цель очередного документа — описа­

ние плана и процедур выполнения тестировании Доку, мент включает секции основной информации, собствен­ ного плана, спецификации, оценки и описания тестов. Первая секция содержит сведения, аналогичные ранее рассмотренным.

Секция План содержит сведения по вопросам описа­ ния ПО, разграничений событий и дат тестирования, идентификации размещения работ по тестированию. По­ следовательности Выполнения рйбоТ Наиболее полная И полезная Информация имеет место по разделу идентифи­ кации размещения работ н включает

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

2)формулировку требований- к оборудованию, соот­ ветствующему программному обеспечению н персоналу,

3)<список материалов, нужных для проведения тес* тировання,

4)обучение персонала тестам, включающее обучае­ мый н обучающий персонал, план обучения н т д.

Секция Спецификации и оценки содержит сведения о спецификациях (функциональных и, программных), ме­ тодах и ограничениях тестирования, критериях оценки и обработки данных тестнровання

Секция Описания тестов содержит идентификацию тес­ тов, описание последовательности выполнения работ, по­ лучаемых результатов и процедур пошагового выпол­ нения теста. Аналогичная информация приводится по ка­ ждому применяемому тесту

Отчет о тестовом анализеНазначение документа — обобщение результатов тестового анализа, демонстрация полученных данных, а также возможностей И недостатков тестируемого ПО Кроме того*, на базе этого документа

204

организуется обучение операторов пользованию системой ПО для последующего ее внедрения.

Документ включает секции основной информации, результатов тестирования (по количеству выполняемых тестов-), функций программного рборудовання и суммар­ ных итогов тестирования.

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

Раздел описания возможностей ПО представляется на основе результатов завершенного тестирования по функциям, заложенными процессе проектирования. Далее описываются ^недостатки, выявленные в результате тес­ тирования разработанного ПО Каждый нз обнаружен­ ных недостатков описывается отдельно с привлечением информации тестирования. Пршояенные недостатки оцениваются с учетом усилий, необходнмшивяя*х устра­ нения. В качестве рекомендаций по каждому-кз недостат­ ков сообщаются временные оцени* коррекции, ответст­ венные за проведение коррекции**/направление выпол­ нения норрмнриь В заключение документа приводится список литературы, способствующий последующему виедреникиразработанной системы ПО

Очевидный модульный принцип -построения рассмот­ ренной совокупности документов позволяет разрабаты­ вать документ любой структуры и-степени детализации в зависимости от конкретной ситуации и запросов поль­ зователей

10.3.КОРРЕКТИРОВКА ДОКУМЕНТАЦИИ

Всвязи с тем, что документация ПО состоит из ряда взаимосвязанных частей, изменения, выполненные в одном из документов, могут послужить причиной коррекции других документов или частей одного и того же документа. Процедура обновления включает решение задачи поиска, корректируемых мест документа (во взаимосвязанных до­ кументах) н коррекцию информации в найденных места*. Для облегчения решения задачи поиска уже прн конструи­ ровании документации должны быть предусмотрены не­ которые правила создания документа

1)

вн у тр и к аж д о й секц и и н (и л и )

р а з д ел а м а т е р н а я

д о л ж е й

б ы ть сгр у п п и р о в ан в С оответствии

с о п и сы в аем ы ­

209-

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

2) Внутри д о ку м ен та и к а ж д о й его секц ии д о л ж н а в ы д ер ж и в а т ь с я ед и н ая ст р у к т у р а н ум ерац и и , о б л егч аю ­

ща я поиск;

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

4)структура и оформление всех документов должны быть одинаковыми.

Выполнение этих правил позволяет различным поль­ зователям создавать документацию, подходящую для ннх.

Входе разработки системы ПО документация моди­ фицируется на нескольких шагах. Разработчик начинает свою работу с требований пользователя к будущей систе­

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

Каждый шаг в процессе разработки требует пересмотра документа предыдущего шага, так как на каждом шаге, ведущем к детализации проекта, может возникнуть не­ обходимость в изменениях Эти изменения должны найти отражение в предыдущих документах. Следовательно, процесс будет повторяться несколько раз между шагами и более часто — между емежнымн шагами разработки проекта.

Когда проектирование завершено, все обозначения и ссылки между документами должны быть проверены. Кроме того, необходимо убедиться в соответствии функ­ циональных и программных описаний. Все расхождения должны быть устранены в документации. Так как доку­ ментирование сложной системы ПО и его обновление требуют огромных усилий, то, естественно, привлечь для выполнения этой работы ЭВМ. Машина может быть ис­ пользована для выполнения таких операций, как запомн­

ив

нами* документации, выборочный поиск информации с вы­ дачей по запросам, поддержание документации в рабочем состоянии.

С помощью ЭВМ можно сгенерировать перекрестные ссылки между любыми именами нлн обозначениями, которые могут быть представлены пользователю. Напри­ мер, пользователь может пожелать быстро найти, каки­ ми модулями используются некоторые наборы данных. Эта возможность может быть особенно полезна, если система ПО разработана многими программистами, ра­ ботающими в различных местах. Если хранить в памяти имена разработчиков модулей, то можно достаточно быстро установить список модулей, затронутых измене­ ниями, и определить задания на коррекцию документации конкретным исполнителем.

Требования к программной документации установле­ ны Государственным комитетом СССР по стандартам в документе «Единая система программной документа­ ции» (М., 1982). Этот документ устанавливает целевое назначение, область распространения, классификацию и правила обозначения стандартов, входящих в комплекс единой системы программной документации.

Вопросы к главе 10

1 Сформулируйте основные цели документирования

2 Перечислите причины, вызывающие необходимость издания доку­ ментов иерархической структуры

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

4.Чем вызвано дублирование информации секций в документах?

5.Дайте характеристику основных правил создания документов

Г л а в а 11

ПЛАНИРОВАНИЕ РЕСУРСОВ РАЗРАБОТКИ

Для организации эффективной разработки програм­ много обеспечения на индустриальной основе необходимо учитывать экономические аспекты рационального распре­ деления затрат по этапам цикла жизни. Важность решения этой проблемы определяется прежде всего тем, что раз­ работка ПО характеризуется значительными временными, трудовыми и стоимостными затратами, соизмеримыми с аналогичными затратами в крупнейших отраслях промыш­ ленности.

Исторически сложилось так, что методы планирова­ ния ресурсов и оценки затрат на ПО разрабатывались

207

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

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

<1.1. ПРЯМЫЕ МЕТОДЫ

Под прямыми понимаются такие методы планнровання, которые базируются на реализации комплекса работ по оценке затрат технологического процесса разработки ПО. На основе первичных илн последующих вычислений для получения оценки могут быть выделены методы прото­ типов, базирующихся на показателях затрат аналогич­ ных проектов; оценочные методы, предусматривающие использование накопленных за предшествующий период данных о затратах на единицу ресурса; методы парамет­ рических уравнений, позволяющие с определенной сте­ пенью точности определить на основе используемых ресурсов потребности в конкретных операционных усло­ виях.

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

Ранее в гл. 4 рассматривались подходы к проведению оценки стоимости с использованием прямых методов. В литературе есть и другие методы проведения оценки, которые далее рассмотрим.

Метод Крауса [12] используется в проектах приклад­ ного программирования, в частности, для оценки вре­ мени разработки приложений экономического характера без ограничения объема программ. В оценку времени по проекту входит время на проектирование, кодирование, от­ ладку и документирование.

По этому методу выделяются следующие факторы для оценивания проекта:

размер- Это прогнозируемое количество машинных инструкций нли операторов языка высокого уровня;

Ш

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

используются в программе;

язык программирования; квалификация разработчика. Показатель, оценива­

ющий опыт конкретного разработчика.

Специалист, производящий оценку, использует свое собственное суждение, опыт и знания для более точного определения степени влияния перечисленных выше фак­ торов. Автор разработал таблицы, которые можно исполь­

зовать для определения степени влияния

факторов

(табл.

11.1)

 

 

 

 

Т а б л и ц а 111

 

Значения входных переменных по Краусу

 

Н аим енование

П ределы изм енения ф актора

Значение

ф акторов

 

Квэф ф иииснтя

Уровень сложности

малая сложность

1—2

 

 

промежуточная сложность

3 - 6

 

 

средняя сложность

7 -1 2

 

 

сложность в-ыше средней

13-19

 

 

очень большая сложность

20—30

 

 

экспериментальная

31—50

Тип устройства

устройство ввода с перфокарт

1

ввода вывода

карточный перфоратор

2

 

 

 

 

консоль (ПМ)

4

 

 

перфолента

6

 

 

магнитная лента

8

 

 

магнитный диск

10

 

 

магнитный барабан

12

 

 

устройства чтения знаков

15

 

 

терминальный пульт

15

 

 

графический терминал

15

 

 

звуковой терминал

15

 

 

устройство просмотра пленки

16

Язык

программи-

ручное программирование

2

рования

 

Ассемблер

5

 

 

Кобол. ПЛ/1

7

 

 

RPG

9

 

 

Фортран'

10

Квалификация

старший программист

0.6—1.0

разработчика

программист

0.9-1.4

 

 

младший программист

1.4—1,8

 

 

лицо, обучающееся программированию

1.7—5,0

Примечание По фактору размера программы устанавливается единич­ ный коэффициент на каждую тысячу операторов исходной программы

960

Использование представленного выше аппарата для оценки объема работ рекомендуется проводить для каж­ дого модуля с последующей оценкой суммарного объема работ на всю разработку Автор рекомендует также в общей временной оценке учитывать затраты, несвязан­ ные непосредственно с разработкой отпуска, выполнение административных обязанностей, проведение производст­ венных совещаний и т. д. Для учета потерь времени на эти виды деятельности вводится поправочный коэффи­ циент порядка 20—30%

Одной из детализации представленного выше метода является метод Хортадо [12] Этот метод предполагает использование данных, полученных эмпирическим путем, в качестве основы для таблиц с последующим расчетом по формулам Для проведения расчетов используется зависимость, позволяющая определить время на проекти­ рование и программирование*

 

е

 

М — N 'P + -J J '<X (чел-недель),

где Л/

количество программ в системе,

Р

коэффициент сложности программирования

S

коэффициент сложности проектирования

D

степень нлн категория документации,

акоэффициент масштаба разрабатываемой системы

Для расчета коэффициента сложности программиро­ вания используется зависимость

г 2Я. + р< 3

где Pt коэффициент характеризующий сложность логики програм мирования

Р коэффициент характеризующий тип устройства ввода вывода и используемый каждой программой

Коэффициент сложности проектирования системы мо­ жет быть вычислен из следующей зависимости

с25, + S,

*_

где 5 |

коэффициент характеризующий уровень сложности системы,

5

коэффициент, представляющий самый высокий уровень уст

 

ройств ввода вывода используемых системой

Коэффициент документирования вычисляется рз зави­ симости-

2 1 0

Соседние файлы в папке книги