Главная » Просмотр файлов » И. Соммервилл - Инженерия программного обеспечения

И. Соммервилл - Инженерия программного обеспечения (1133538), страница 32

Файл №1133538 И. Соммервилл - Инженерия программного обеспечения (И. Соммервилл - Инженерия программного обеспечения) 32 страницаИ. Соммервилл - Инженерия программного обеспечения (1133538) страница 322019-05-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 32)

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

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

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

ванный на языке )ача. Формальные нотации, приведенные в главе 9, позволяют описать интерфейсы чстко и недвусмысленно. Однако такие спсцификации понятны только специалистам, обладаю. щим определенными знанияии. Формальные нотации редко используются на практике, хотя, с мосй точки зрения, они идеально подходят для создания спецификаций интсрфсйсоэ. Менее формальные спецификации интсрфсйсов, полученные с помощью РШ., являются компромиссом между понятностью и точностью описания интерфейсов. В листинге 5.2 представлен пример описания интерфейса первого типа (из псречнсленных выше). Это описание процедурного интсрфейса сервера печати. Оп управляст очередями на печать, осуществляемую несколькими принтерами.

Пользователи могут проверять очередь, соответствующую любому принтеру, и удалять свои файлы из очсрсдн. Они также могут псрсключать свои файлы с одного принтера на другой. Листинг 5.2. Описание интерфейса сервера печати с помон(ъю Р)И. фпгегбасе Ргфпгяегчег ( // определение абстрактного сервера печати // требуется: интерфейс Ргфпгег, интерфейс Ргфпгбос // предоставляет функции: фпфс1в)фхе (инициалиэация), // Ргзпс (печать), // йдэр1ауРг1пс()цеце (отображение очереди на печать), // сапсе1РгзпгаоЬ (удаление файла иэ очереди), // эифссЬРгфпсег (переключение ме;клу принтерами) чоЫ 1пфсфа11хе ( Рг1псег р ) чоЫ ргфпг ( Ргфпгег р, Ргфпгцос с) ) чоЫ бфэр1ауРг1пг()цеце ( Ргфпсег р ) чоЫ сапсе1РгфпсуоЬ ( Ргфпгег р, Ргфпс))ос д ) чоЫ вмфгсЬРгЫСег ( Ргфпсег р1, Ргфпгег р2, Ргфпгбос с) ) )//Ргйпгяегчег 122 'Часть 11. Требования Спецификация, приведеннэл в листинге 5,2, — абстрактная модель сервера печати без детализации интерфейсных частностей.

Интерфейсные функции можно описать с помо. щью структурированного естественного языка (квк показано во врезке 5.6), посредством Р(51., основанного на языке программированип )ата (см. листинг 5.1), либо с помощью формальных нотаций, которые описаны в главе 9. 5.4. Документирование системных требований Документ, содержащий требования, также называемый спецификацией системных требований, — зто официальное предписание для разработчиков программной системы. Он содержит пользовательские требования и детализированное описание системных требований.

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

1йз рнс. 5З, взятом нз статьи ) 204), показаны категории читателей спецификации. 15сс 5.3, Читппилп сиспжиппи спсуифиппйии 5. Требования к программному обеспечению 123 Хенингер (Неп!пйег. [160]) сформулировал шесть условий, которым должна соответствовать спецификация програмлшой системы. ° Описывать только внешнее поведение системы. ° Указывать олрапичения, накладываемые на процесс реализации системы. ° Предусматривать возможность внесения изменений в спецификацию.

° Служить справочным средством в процессе сопровождения системы. ° Отображать весь жизненный ци«л систеллы. ° Предусматривать реакцшо системы и группы сопровождения на непредвиденные (нештатные) ситуации. Хотя со времени написания этих условий прошло более 20 лет, они не утратили своей актуальности и являются хорошим подспорьем при разработке спецификаций.

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

Многие организации, такие, как Министерство обороллы СШЛ и Институт инженеров по электротехнике и радиоэлектронике 1ЕЕЕ, разработали собственные стандарты док>- мсптирования спецификаций. В монографии [89] описаны некоторые из этих сташшртов, а также проведено их сравнение. Наиболее известный стандарт разработан !ЕЕЕ и называется !ЕЕЕ/Д>члб! 830-1993 [!КЕЕ, 1993]. В кингс [334], содержащей великолепный обзор работ по технологии разработки требований, приведено полное описание этого стандарта. Данный стандарт предполагает след> ющую структуру спецификации.

1. Введение 1.1. Цели документа 1.2. Назначение программного продукта 1.3. Опредслснил, акронимы и аббревиатуры 1.4. Список литературы и других источников 1.5. Обзор спецификации 2. Общее описание 2.1. Описание программного продукта 2.2. Функции программного продукга 2.3. Пользовательские характеристики 2.4. Общие ограничения 2.5. Обоснования, предположения и допущения 3.

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

124 Часть П. Требования 4. Приложения 5. Указатели Таблица 5.4. Структура спецификации требований Раздел Описание Предисловие Здесь определяется круг лиц, на которых рассчитан данный доку- мент. Описываются предыд)чцие версии разрабатываемого про. граммного продукта, а также изменения, внесенные в каждую вер- сию. Дается обоснование для создания новой версии продукта Здесь более развернуто обосновывается необходимость создания системы. Кратко перечисляются системные функции и объясня.

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

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

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

Конечно, при ее написании необходимо также учитывать стандарты, принятые в орщниэации — разработчике ПО. В табл. 5.4 описаны возможные разделы спецификации, построенной на основании стандарта 1ЕЕЕ Я также включил раздел о возможной эволюции системы, как рекомендует Хенингер. Б. Требования к программному обеспечению 125 Окончание табл. 5.4 Раздел Приложения Описание Здесь приводится специализироаанная информация, относящаяся к разрабатываемой системе, например описание аппаратных средста или базы данных, с которыми должна работать система. При описании аппаратных средств необходимо показать мини- мальную и оптимальную конфигурации, при которых может рабо- тать программная система.

Характеристики

Тип файла
DJVU-файл
Размер
8,79 Mb
Тип материала
Высшее учебное заведение

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

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6358
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее