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

Учебное пособие 1568

.pdf
Скачиваний:
6
Добавлен:
30.04.2022
Размер:
1.4 Mб
Скачать

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

ном комплект поставки.

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

зультатов эксплуатации:

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

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

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

9.5. Модель процесса разработки приложения

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

Здесь использована модель процесса разработки приложений, основанная на понятиях фаза и веха.

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

153

Фаза (phase) — это часть процесса, во время которой выполняются определенные функции с целью достижения определенной вехи.

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

В модели можно выделить пять основных фаз:

Анализ;

Проектирование;

Реализация;

Стабилизация;

Внедрение.

Фаза анализа является первой. Ее основная веха — Кон-

цепция, или Эскизный проект (Vision/Scope). Основная цель этой фазы — достичь полного и согласованного понимания заказчиком и разработчиком целей, задач и области применения разрабатываемого приложения.

Эскизный проект обычно включает в себя следующую информацию.

1.Введение. Основание для разработки и статус проекта.

2.Постановка задачи. Общее описание предметной области проекта; формулировка проблемы, на решение которой направлен проект; краткий обзор альтернативных решений, если они есть; основные отличительные особенности проекта.

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

4.Категории пользователей. Классификация пользователей результатов проекта; перечисление их ожиданий по отношению к результатам проекта.

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

154

6.Критерии успеха. Количественные критерии, позволяющие оценить степень успешности проекта.

7.Отчуждаемые материалы. Перечисление и краткое описание отчуждаемых материалов, которые составляют результат проекта.

Для эскизного проектирования используются различные средства и методы.

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

блок-схемы, с помощью которых удобно проектировать отдельные алгоритмы;

диаграммы сущность—связь для проектирования схем баз данных;

диаграммы потоков данных для проектирования взаимосвязи потоков информации в приложении.

Фаза реализации (кодирования) имеет основную веху, которая называется код готов. Хотя на этой фазе создается основной отчуждаемый результат проекта (программный код приложения), на ее долю приходится не более 20% всех ресурсов проекта. Веха "код готов" означает, что все специфицированные функции запрограммированы и работоспособность приложения в целом продемонстрирована на нескольких примерах.

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

155

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

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

Тестирование функциональности (functionality). Це-

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

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

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

156

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

10. ЗАЩИТА ДАННЫХ И ПРИЛОЖЕНИЙ

Семейство приложений Microsoft Office предлагает большой выбор способов и методов защиты документов, данных и решений, которые представлены на рис. 10.1.

Документы и код VBA

Защита доступа

Пароль для документа

Операционная система

Код VBA

Закрытие проекта

Пароль для макросов

Защита от макровирусов

Антивирусные программы

Цифровой сертификат

Рис. 10.1. Способы защиты объектов

10.1. Защита данных внутри документа

Когда пользователь работает с приложениями семейства Office, то он больше всего заботится о сохранности данных, которые он обрабатывает в этих приложениях. Так, в Excel

157

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

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

ВWord таковых три и устанавливаются они с помощью команды Сервис > Установить защиту. При этом появляется диалоговое окно, показанное на рис. 10.2.

Рис. 10.2. Диалоговое окно "Защита документа"

Переключатели в этом диалоговом окне означают следующее:

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

158

-переключатель вставки примечаний означает, что единственное изменение, которое можно сделать, — это вставить примечание;

-переключатель ввода данных в поля форм означает, что сам текст документа изменять нельзя, а можно только вводить данные в поля форм.

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

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

> Сервис > Защита.

В этом меню можно найти четыре команды, описание которых приводится ниже.

Команда Защитить лист позволяет защитить данные во всех ячейках рабочего листа от изменения за исключением тех, для которых на вкладке Защита диалогового окна Формат ячеек сброшен флажок Защищаемая ячейка. При ее вызове отображается диалоговое окно Защита листа (рис. 11.3), в котором вводится пароль защиты, а в списке Разрешить всем пользователям этого листа устанавливаются допустимые действия пользователя при работе с рабочим листом.

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

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

159

Рис. 10.3. Диалоговые окна "Защита листа" для Office XP, 2000

Команда Защитить книгу и дать общий доступ позво-

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

Вкоде VBA перечисленным способам защиты данных соответствуют методы protect и Unprotect документов приложений Word и Excel с передачей в них подходящих параметров, устанавливающих необходимые режимы защиты.

Всвязи с тем что, по сравнению с Excel 2000, в приложении Excel 2002 введено больше режимов защиты рабочего листа, в этой версии в объектную модель Excel был добавлен объект Protection со свойствами, полностью повторяющими все варианты защиты рабочего листа, которые перечислены в списке Разрешить всем пользователям этого листа диалого-

вого окна Защита листа. Этот объект является подчиненным объекту worksheet, представляющему в коде VBA рабочий лист.

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

If ActiveSheet.Protection.AllowInsertingColumns = False Then

160

ActiveSheet.Protect AllowInsertingColumns:=True MsgBox "Введите столбцы между 1 и 3"

Else

MsgBox "Введите столбцы между 1 и 3"

End If

Для тестирования приведенного фрагмента рабочий лист должен быть защищен ранее выполнением команды protect рабочего листа:

ActiveSheet.Protect.

ВExcel 2002 введена новая возможность задания диапазонов ячеек на защищенном листе, содержимое которых пользователь может изменять, если только он введет правильный пароль. Эта возможность реализована в команде Разрешить изменение диапазонов, но ее следует выполнять до установки режима защиты листа. Excel 2000 не предоставлял такую возможность.

Вотображаемом этой командой диалоговом окне Разрешить изменение диапазонов следует создать и занести в спи-

сок Диапазоны защищенного листа, разблокируемые паро-

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

Рис. 10.4. Диалоговое окно "Разрешить изменение диапазонов"

161

Для создания диапазона следует нажать кнопку Создать и в диалоговом окне Новый диапазон (рис. 10.5) создать диапазон ячеек и ввести пароль для доступа к режиму замены содержимого его ячеек при защищенном рабочем листе.

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

Рис. 10.5. Создание нового диапазона

Задание разблокируемых паролем диапазонов в коде VBA можно выполнить с помощью метода Add семейства AllowEditRanges объекта protection. Это семейство хранит каждый диапазон в виде объекта AllowEditRange.

В приведенном ниже фрагменте кода создается диапазон, изменяемый по паролю.

Dim wksOne As Worksheet

Set wksOne = Application.ActiveSheet 'Снятие защиты рабочего листа wksOne.Unprotect

'Establish a range that can allow edits 'on the protected worksheet

wksOne.Protection.AllowEditRanges.Add _ Title:="Classified", _

162