Главная страница
Навигация по странице:

  • 2. Виды документации

  • 3. Средства автоматизации документирования

  • Контрольные вопросы

  • Классификация видов защиты информации

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


    Скачать 7.57 Mb.
    НазваниеУчебное пособие по дисциплине технология разработки программного обеспечения специальность Программирование в компьютерных системах
    Анкоркурсовая работа
    Дата08.01.2023
    Размер7.57 Mb.
    Формат файлаdoc
    Имя файла2_5397965015586183048-7.doc
    ТипУчебное пособие
    #877236
    страница22 из 30
    1   ...   18   19   20   21   22   23   24   25   ...   30
    Глава 16. Сопровождение программного обеспечения. Документирование результатов и хода разработки
    1. Проблемы документирования

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

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

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

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

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

    4. Целенаправленность. При формировании документов необходимо максимально учитывать потребности конкретного пользователя, для которого они предназначены. Избыточные сведения часто мешают правильному пониманию системы и затрудняют работу с ней.

    5. Стандартизация. Создаваемая программная документация должна соответствовать по своему содержанию и оформлению государственным стандартам и стандартам предприятия-разработчика и заказчика.

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

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

    2. Виды документации

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

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

    1. Эксплуатационная (или пользовательская) документация со­держит сведения, необходимые для работы с готовой программной системой. Она охватывает три круга вопросов: о назначении и областях применения системы, о правилах работы с ней, о действиях, необходимых для настройки системы в конкретных условиях эксплуатации и для поддержания ее в работоспособном состоянии.

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

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

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

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

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

    Примерный состав технической документации может быть следующим:

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

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

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

    4. описание методов решения поставленных задач и используемых при этом алгоритмов;

    5. проекты модулей, описывающих интерфейсы каждого модуля его внутренние данные и структуру управления;

    6. тексты программных модулей на языке реализации;

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

    8. план тестирования каждого модуля (компонента), включа­ющий описание тестовых данных, используемых для проверки модуля, и ожидаемых для каждого теста результатов;

    9. описание результатов тестирования с указанием всех обнаруженных несоответствий между полученными и ожидаемыми результатами.


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

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

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

    3. Средства автоматизации документирования

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

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

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

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

    Средства автоматизации документирования встраиваются в развитые CASE-средства, а также поставляются отдельно. Наиболее известным из них является SoDA – Software Document Automation - автоматизированное документирование ПО (Rational Software);

    Контрольные вопросы


    1. Поясните требования к программной документации.

    2. Какие виды программной документации вы знаете?

    3. Что входит в эксплуатационную документацию?

    4. На кого рассчитана эксплуатационная документация?

    5. Что входит в состав технической документации?

    6. На кого рассчитана техническая документация?

    7. Что входит в состав технологической документации?

    8. На кого рассчитана технологическая документация?

    9. На какие этапы можно разбить процесс документирования?

    10. Какой этап документирования наиболее автоматизирован?

    11. Какие средства автоматизации документирования вы можете назвать?


    Глава 17. Защита программ

    1. Концептуальные основы защиты информации
    Основные определения

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

    • контроль целостности информации;

    • предотвращение несанкционированного доступа к вычислительной
      системе.

    Вопросы, касающиеся безопасности ИС, можно разделить на следующие группы:

    1. физическая безопасность (защита от сбоев питания);

    2. логическая безопасность (защита от несанкционированного доступа);

    3. социальная безопасность (законодательство о защите авторских прав на ПО).

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

    Анализ возможных угроз и каналов утечки информации

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

    Источники возможных угроз:

    1. Природные (стихийные бедствия, магнитные бури, радиоактивное излучение и осадки и т.д.);

    2. Технические (отключения или колебания электропитания, отказы и сбои аппаратно-программных средств, электромагнитные излучения и наводки, утечки через каналы связи);

    3. Созданные людьми (непреднамеренные действия, преднамеренные действия).

    В соответствии с классификацией источников возможных угроз выделяют ряд каналов утечки информации. Существуют следующие группы каналов:

    1. Человек

    • хищение носителей информации;

    • чтение информации с экрана посторонним лицом;

    • чтение информации с распечаток.

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

    2. Аппаратура

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

    • использование специальных технических средств для перехвата электромагнитных излучений и наводок.

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

    Для закрытия второго канала утечки информации используют различные программно-аппаратные средства, осуществляющие снижение уровня ЭМИН, создающие преднамеренные помехи или осуществляющие кодирование информационных сигналов.

    3. Программа

    • несанкционированный доступ программы к информации;

    • расшифровка программной зашифрованной информации;

    • копирование программной информации с носителей.

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

    Классификация видов защиты информации

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

    1. защита информации от несанкционированного доступа (НСД);

    2. защита информации в системах связи;

    3. защита юридической значимости электронных документов;

    4. защита конфиденциальной информации от утечки по каналам побочных
      электромагнитных излучений и наводок (ПЭМИН);

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

    6. защита от несанкционированного копирования и распространения
      программ и ценной компьютерной информации.

    Защита конфиденциальной и ценной информации от НСД и модификации призвана обеспечить решение одной из наиболее важных задач защиты имущественных прав владельцев и пользователей ЭВМ - защиту собственности, воплощенной в обрабатываемой информации, от всевозможных злоумышленных покушений. К ней примыкает задача защиты государственных секретов, где в качестве собственника информации выступает государство. В части технической реализации защита от НСД сводится к задаче разграничения функциональных полномочий и доступа к информации.

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

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

    Защита информации от утечки по каналам ПЭМИН является важным аспектом зашиты конфиденциальной и секретной информации в ЭВМ от несанкционированного доступа со стороны посторонних лиц. Данный вид защиты направлен на предотвращение возможности утечки информативных электромагнитных сигналов за пределы охраняемой территории.

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

    Защита от несанкционированного копирования и распространения

    программ и ценной компьютерной информации является самостоятельном видом защиты имущественных прав, ориентированным на проблему защиты интеллектуальной собственности, воплощенной в виде программ и ценных баз данных. Защита от несанкционированного копирования и распространения программ обычно осуществляется с помощью специальных программных средств, подвергающих защищаемые программы предварительной обработке, которая приводит исполнимый код защищаемой программы в состояние, препятствующее его незаконному выполнению.
    1   ...   18   19   20   21   22   23   24   25   ...   30


    написать администратору сайта