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

  • 2. Методические указания

  • 3. Теоретические сведения 3.1. Общие сведения о требованиях к информационным системам

  • Пользовательские требования

  • 3.2. Первые шаги по разработке требований к информационным системам - анализ осуществимости

  • 3.3. Разработка требований

  • 3.4. Формирование и анализ требований

  • 3.5. Опорные точки зрения Подход с использованием различных опорных

  • 3.6. Аттестация требований

  • 3.7. Пользовательские и системные требования

  • 4. Порядок выполнения работы

  • Практическая работа 1. Практическая работа 12 ( на выполнение практической работы предусмотрено 4 часа). Разработка описания и требований к информационной системе


    Скачать 160.23 Kb.
    НазваниеПрактическая работа 12 ( на выполнение практической работы предусмотрено 4 часа). Разработка описания и требований к информационной системе
    Дата13.10.2021
    Размер160.23 Kb.
    Формат файлаdocx
    Имя файлаПрактическая работа 1.docx
    ТипПрактическая работа
    #246983

    Практическая работа № 1-2

    (на выполнение практической работы предусмотрено 4 часа).
    «Разработка описания и требований к информационной системе»
    1. Цель работы:

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

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

    Требования к результатам выполнения практикума:

    1. наличие описания информационной системы;

    2. проведение анализа осуществимости выполнения проекта;

    3. наличие диаграммы идентификации точек зрения и диаграммы иерархии точек зрения;

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

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

    6. наличие составленного ТЗ.


    3. Теоретические сведения
    3.1. Общие сведения о требованиях к информационным системам

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

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

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

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

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

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

    1. Отвечает ли система общим и бизнес-целям организации-заказчика и организации-разработчика?

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

    3. Можно ли объединить систему с другими системами, которые уже эксплуатируются?

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

    1. Что произойдет с организацией, если система не будет введена в эксплуатацию?

    2. Какие текущие проблемы существуют в организации и как новая система поможет их решить?

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

    4. Требует ли разработка системы технологии, которая до этого не использовалась в организации?

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

    После обработки собранной информации готовится отчет по анализу осуществимости создания системы. В нем должны быть даны рекомендации относительно продолжения разработки системы. Могут быть предложены изменения бюджета и графика работ по созданию системы или предъявлены более высокие требования к системе.
    3.3. Разработка требований

    Различают четыре основных этапа процесса разработки требований:

    1.  анализ технической осуществимости создания системы,

    2. формирование и анализ требований,

    3. специфицирование требований и создание соответствующей документации,

    4. аттестация этих требований.

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



    Рис. 1. Процесс разработки требований
    Но поскольку в процессе разработки системы в силу разнообразных причин требования могут меняться, управление требованиями, т.е. процесс управления изменениями системных требований, является необходимой составной частью деятельности по их разработке.
    3.4. Формирование и анализ требований

    Следующим этапом процесса разработки требований является формирование (определение) и анализ требований.

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

    Процесс формирования и анализа требований проходит через ряд этапов.

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

    2. Сбор требований. Это процесс взаимодействия с лицами, формирующими требования. Во время этого процесса продолжается анализ предметной области.

    3. Классификация требований. На этом этапе бесформенный набор требований преобразуется в логически связанные группы требований.

    4. Разрешение противоречий. Без сомнения, требования многочисленных лиц, занятых в процессе формирования требований, будут противоречивыми. На этом этапе оп­ределяются и разрешаются противоречия различного рода.

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

    6. Проверка требований. На этом этапе определяется их полнота, последовательность и непротиворечивость.



    Рис. 2. Процесс формирования и анализа требований


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

    Рассмотрим три основных подхода к формированию требований: метод, основанный на множестве опорных точек зрения, сценарии и этнографический метод.
    3.5. Опорные точки зрения

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

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

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

    2. Как структура представлений. В этом случае точки зрения рассматриваются как особая часть модели системы. Например, на основе различных точек зрения могут разрабатываться модели "сущность-связь", модели конечного автомата и т.д.

    3. Как получатели системных сервисов. В этом случае точки зрения являются внешними (относительно системы) получателями системных сервисов. Точки зрения помогают определить данные, необходимые для выполнения системных сервисов или их управления.

    Наиболее эффективным подходом к анализу таких систем является использование внешних опорных точек зрения. На основе этого подхода разработан метод VORD (Viewpoint-Oriented Requirements Definition — определение требований на основе точек зрения) для формирования и анализа требований.

    Основные этапы метода VORD показаны на рис. 3.:

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

    2. Структурирование точек зрения — создание иерархии сгруппированных точек зре­ния. Общесистемные сервисы предоставляются более высоким уровням иерархии и наследуются точками зрения низшего уровня.

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

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



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

    • список всех товаров;

    • список товаров, имеющихся в наличии;

    • список товаров, количество которых необходимо пополнить;

    • список товаров, поставляемых данным поставщиком.

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

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

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



    Рис. 4. Диаграмма идентификации точек зрения
    В таблице 1 показано распределение сервисов для некоторых идентифицированных на рис. 4 точек зрения. Один и тот же сервис может быть соотнесен с несколькими точками зрения.

    Таблица 1 - Сервисы, соотнесенные с точками зрения

    клиент

    покупатель

    постоянный покупатель

    товар

    поставщик

    продавец

    администратор

    Проверка наличия товара

    Занесение в список постоянных клиентов

    Получение скидки

    Прием товара

    Занесение в базу данных (название, адрес, телефон и т.д.) 

    Продажа товара

    Доступ к базе данных

    Покупка товара

     

    Получение информацию о новых поступлениях

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

     

    Печать чека

    Проверка статистики

    Получение чека

     

     

    Назначение цены

     

    Доступ к каталогу

    Переопределение цены

    Заказ товара

     

     

    Переопределение цены

     

    Проверка наличия товара

    Оформление заказа поставщику

    Занесение покупателя и суммы покупки в базу данных

     

     

    «Покупаемый» или «непокупаемый» товар

     

    Оформление заказа покупателю

    Печать заказа

     

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

    Рис. 5. Иерархия точек зрения



    3.6. Аттестация требований

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

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

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

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

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

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

    1. Обзор требований. Требования системно анализируются рецензентами.

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

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

    4. Автоматизированный анализ непротиворечивости. Если требования представлены в виде структурных или формальных системных моделей, можно использовать инструментальные CASE-средства для проверки непротиворечивости моделей. Для автоматизированной проверки непротиворечивости необходимо построить базу данных требований и затем проверить все требования в этой базе данных. Анализатор требований готовит отчет обо всех обна­руженных противоречиях.


    3.7. Пользовательские и системные требования

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

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

    Далее составляются системные требования. Они включат в себя:

    1. Требования к архитектуре системы. Например, число и размещение хранилищ и серверов приложений.

    2. Требования к параметрам оборудования. Например, частота  процессоров серверов и клиентов, объём хранилищ, размер оперативной и видео памяти, пропускная способность канала и т.д.

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

    4. Требования к программному интерфейсу.

    5. Требования к структуре системы. Например, Масштабируемость, распределённость, модульность, открытость.

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

    • распределенность - система должна поддерживать распределённое хранение данных.

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

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

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


    4. Порядок выполнения работы

    1. Изучить предлагаемый теоретический материал.

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

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

    4. Провести аттестацию требований, указать какие типы проверок выбрали.

    5. На основании описания системы (указанный преподавателем вариант в Приложении 1), информационной модели, пользовательских и  системных требований составить техническое задание на создание программного обеспечения (пример см. Приложение 2). ТЗ должно содержать основные разделы, описанные в ГОСТ 34.602-89 (см. Приложение 3).

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


    5. Содержание отчета

    В отчете следует указать:

    1. Цель работы

    2. Введение

    3. Программно-аппаратные средства, используемые при выполнении работы.

    4. Основная часть (описание самой работы), выполненная согласно требованиям к результатам выполнения практикума (п.2).

    5. Заключение (выводы)

    6. Список используемой литературы


    6. Литература

    1. Соммервиль Иан. Инженерия программного обеспечения, 6-е издание. : Пер. с англ. – М.: Издательский дом “Вильямс”, 2002. – 624 с.

    2. Якобсон А., Буч Г., Рамбо Дж.  Унифицированный процесс разработки программного обеспечения. – СПб.:Питер, 2002. – 496 с.

    3. Константайн Л., Локвуд Л. Разработка программного обеспечения. – СПб.:Питер, 2004. – 592 с.

    4. Иванова Г.С. Технология программирования: Учебник для вузов. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2002. - 320 с.

    5.  ГОСТ 34.602-89 Техническое задание на создание автоматизированной системы

    6. ГОСТ 19.201-78 Техническое задание. Требования к содержанию и оформлению


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