logo
GOSy_raspredelenie_otvety_10_06_11_v_7-ITOG

8.2.5. Хранение резервных копий

Когда резервные копии сделаны, что должно произойти дальше? Очевидный ответ на этот вопрос — эти копии должны быть сохранены. Однако, совсем не так очевидно, что именно следует хранить — и где.

Чтобы ответить на эти вопросы, мы должны сначала учесть обстоятельства, при которых будут использоваться резервные копии. Можно выделить три основные ситуации:

  1. Восстановление отдельных файлов по запросу пользователей

  2. Глобальное восстановление при чрезвычайной ситуации

  3. Архивное хранилище скорее всего никогда не потребуется

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

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

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

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

Другой подход заключается в поддержке двух наборов носителей:

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

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

Про RAID хорошо на wiki написано : http://ru.wikipedia.org/wiki/RAID

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

 При работе с SQL Server используйте аутентификацию Windows с реализацией модели доверенной подсистемы безопасности. Подробно модель доверенной подсистемы безопасности рассматривается в главе 19, «Физические уровни и развертывание».

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

 Для хранения паролей применяйте не шифрованную версию пароля, а хеш с шумом.

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

 Используйте параметризованные SQL-запросы и типизированные параметры, чтобы снизить риски безопасности и сократить шансы на успех атак с внедрением SQL-кода. Не применяйте конкатенацию строк для построения динамических запросов на базе вводимых пользователем данных

17. Проектирование ИС []

Билет №

Формулировка ответа

Преподаватель

Кто делает ответ

Состояние

17

6.2., 46.2.

Проектирование информационных систем. Анализ требований заказчика. Особенности формирования ТЗ на создание ИС.

Повышев Владислав Вячеславович

Полина Шерстобитова

ОПЛ (Ден), готовый ответ Полины

Готовый ответ Полины

Анализ требований заказчика.

http://www.intuit.ru/department/itmngt/analisis/4/

Рабочий поток анализа требований

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

Для его обозначения в англоязычной литературе, как правило, используется понятие "Requirement Process". В отечественной практике, наряду с обобщающим термином "анализ требований", принятым, в частности, в ГОСТ Р ИСО/МЭК 12207-99, встречаются также такие термины, как "поток работ", "требования", "работа с требованиями", "определение требований" и т.д., что вносит изрядную путаницу. Для того, чтобы внести некоторую ясность, рассмотрим декомпозицию рабочего потока Requirement Process на составляющие, принятую в SWEBOK, и введем терминологию, которой будем придерживаться на протяжении лекционного курса.

SWEBOK предлагает выделить в Requirement Process следующие основные составляющие:

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

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

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

Найти ответ на первый вопрос может помочь общая классификация задач, работ и операций программной инженерии, представленная в ГОСТ Р ИСО/МЭК 12207-99. Другая, более поздняя по времени классификация, присутствует в SWEBOK. Однако нужно отметить, что данные руководящие документы рассматривают общий случай, а в частном проекте может быть задействован далеко не весь арсенал работ.

Сложнее - с решением второго вопроса. На сегодня существуют и имеют примеры успешного применения десятки и сотни различных методологий (процессов), среди наиболее известных - MSF, RUP, Oracle PJM, XP, FDD, SCRUM, PSP, Crystal, DSDM. Методологии подразделяются на 3 "волны": каскадные (исторически первые), прогнозирующие (например, RUP) и "гибкие" (agile), вошедшие в широкую практику на рубеже тысячелети.

Описания методологий существенно разнятся объемом (от десятков до тысяч страниц текста), наборами базовых работ и рабочих квалификаций, акцентами (работа с моделями, управление рисками, построение команды и пр.). Но авторы их описаний обычно сходятся в одном: лучшая из методологий, которой нужно следовать, чтобы добиться успеха - именно та, которую предлагает (описывает, рекламирует) автор. Редким исключением являются работы А. Коберна, автора группы методологий Crystal, где он предлагает брать за основу не "самый лучший" из процессов, а тот, который, во-первых, наилучшим образом соответствует проектной задаче, а во вторых - команде, которая будет его реализовывать. В этих методологиях вводится несколько метрик, позволяющих частично формализовать процесс подбора методологии.

Почему нужно анализировать требования?

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

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

Один из ключевых вопросов, позволяющих оценить результативность процесса - что является выходом (результатом) процесса. В чем результат АТ? Результатом рабочего потока "анализ требований" является набор артефактов. Это могут быть текстовые документы, модели UML, либо других языков моделирования, прототипы программного обеспечения.

Другой важный вопрос - какие цели преследует процесс.

RUP предлагает следующие цели для потока работ АТ:

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

Как и кем используются требования?

В рамках курса лекций для всех упомянутых выше лиц будем использовать обобщающий термин "Совладельцы (заинтересованные стороны)" (stakeholders). Совладельцами, вслед за разработчиками RUP и MSF, будем называть всех участников проекта создания программной системы, прямо или косвенно заинтересованных в его успехе. Авторы большинства современных методологий разработки программных систем сходятся в том, что в группе совладельцев ключевую роль играют две группы представителей Заказчика - те, кто ставит стратегические цели и выделяет финансирование и те, кто будет непосредственно использовать разработанный продукт. Причем, в отличие от каскадных методов, где Заказчик подключался в начальной фазе - составлении технического задания и конечной - приемке готовой работы, в современных методологиях Заказчик, действительно заинтересованный в успехе проекта автоматизации, должен участвовать в нем непрерывно.

Организация работы с требованиями на примере MSF

В MSF для обозначения роли участников команды софтверного проекта используется понятие ролевых кластеров [4.9].

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

Шесть ролевых кластеров модели проектной группы - это "Управление продуктом" (product management), "Управление программой" (program management), "Разработка" (development), "Тестирование" (test), "Удовлетворение потребителя" (user experience) и "Управление выпуском" (release management). Они ответственны за различные области компетенции (functional areas) и связанные с ними цели и задачи.

MSF организован на базе комбинации каскадной и спиральной моделей. Отдельная стадия работы содержит в себе 5 фаз:

В фазе выработки концепции работа с требованиями наиболее интенсивна (см. табл. 4.1).

Таблица 4.1.

Ролевой кластер

Фокус

Управление продуктом

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

Управление программой

Цели дизайна; концепция решения; структура проекта.

Разработка

Прототипирование; анализ технологических возможностей; анализ осуществимости.

Удовлетворение потребителя

Необходимые эксплуатационные характеристики решения и их влияние на его разработку.

Тестирование

Стратегии тестирования; критерии приемлемости, их влияние на разработку решения.

Управление выпуском

Требования внедрения и их влияние на разработку решения; требования сопровождения.

Как видно из таблицы, все 6 кластеров работают со своими группами требований.

Продолжается плотная работа с требованиями и на следующей фазе - фазе планирования, см. табл. 4.2.

Таблица 4.2.

Ролевой кластер

Фокус

Управление продуктом

Анализ бизнес-требований

Управление программой

Функциональная спецификация

Удовлетворение потребителя

Сценарии/примеры использования, пользовательские требования, требования локализации и общедоступности (accessibility).

Тестирование

Требования тестирования.

Управление выпуском

Эксплуатационные требования.

В фазах разработки и внедрения работа с требованиями сосредотачивается в кластерах управления продуктом и программой, см., соответственно, табл. 4.3,4.4.

Таблица 4.3.

Ролевой кластер

Фокус

Управление продуктом

Ожидания заказчика.

Управление программой

Управление функциональной спецификацией.

Таблица 4.4.

Ролевой кластер

Фокус

Управление продуктом

Получение отзывов и оценок заказчика; акт о приеме выполненной работы.

Управление программой

Сопоставление рамок проекта с поставленным решением; управление стабилизацией.

ОСОБЕННОСТИ ФОРМИРОВАНИЯ ТЗ

http://www.intuit.ru/department/itmngt/analisis/11/1.html

Документирование требований в соответствие с ГОСТ РФ

Документирование требований регламентировано российскими ГОСТ 19.201-78 "Техническое задание, требования к содержанию и оформлению" и ГОСТ 34.602-89 "Техническое задание на создание автоматизированной системы" (ТЗ на АС) [11.4-11.5].

Второй документ, по сути, является более проработанной версией первого, адаптированной к созданию автоматизированных информационных систем, поэтому далее рассмотрена структура ТЗ в соответствие с ГОСТ 34.602-89.

Несмотря на то, что для сферы IT 17 лет - это целая эпоха, данный документ практически не устарел: его авторам удалось разработать сбалансированные рекомендации, абстрагируясь от конкретных технических и технологических решений. Кроме того, он по-прежнему играет роль государственного стандарта РФ и при заключении контрактов с государственными предприятиями Разработчика могут обязать оформить ТЗ в соответствии с духом и буквой этого документа.

Структура ТЗ в соответствие с ГОСТ 34.602-89

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

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

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

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

Требования к системе - ключевой раздел настоящего документа, поэтому он будет рассмотрен ниже, более подробно.

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

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

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

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

В качестве приложений ГОСТ рекомендует использовать расчет ожидаемой эффективности системы и оценку научно-технического уровня системы.

Описание требований к системе в соответствие с ГОСТ 34.602-89

ГОСТ разделяет все требования к системе на три класса:

Среди требований к системе в целом (системные требования) указываются требования к:

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

Требования ГОСТ к функциям (задачам), в переводе на современный язык, подразделяются на:

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

Ответ прошлых лет (Ден)

Анализ Требований

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

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

Документы, создаваемые в процессе анализа

К онцепция системы/Business Vision

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

Бизнес-требования/BRD

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

Функциональные требования/FRD

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

План тестирования/Test Plan

План тестирования необходим для команды тестировщиков и составляется на основе FRD и других сопутствующих документов. Цель данного документа – ответить на 3 главных вопроса: что, как и когда будет тестироваться.

Риски/Risk List

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

Особенности формирования ТЗ на создание ИС

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

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

Аналогично в ТЗ задаются требования к качеству прикладного программного обеспечения ИС и соответственно первичный профиль качества.

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

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

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

18. Проектирование ИС []

Билет №

Формулировка ответа

Преподаватель

Кто делает ответ

Состояние

18

7.2., 28.3., 31.3., 41.2.

Проектирование информационных систем. Базовые модели процесса разработки ИС. Методологии проектирования ИС.

Алексеев Пётр Сергеевич

Андрей

Трифонов

ОПЛ (Ден), ответ Наташи, ответ Милы

Ответ Наташи