Главная » Просмотр файлов » 1-software_engineering_requirements

1-software_engineering_requirements (1133541), страница 2

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

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

рисунок 2). Кроме того, данная область знаний тесно связана соследующими областями: Software Design Software Testing Software Maintenance Software Configuration Management Software Engineering Management Software Engineering Process Software Quality1. Основы программных требований (Software Requirements Fundamentals)Эта секция включает определение программных требований как таковых и описывает основные типытребований и их отличия: к продукту и процессу, функциональные и нефункциональные требованияи т.п.Темы данной секции:1.1 Определение требований (Definition of a Software Requirement) – в данном случаеподразумевается не процесс определения (извлечения, сбора, формирования, формулирования)требований, а дается само понятие “требования”, как такового, и отмечаются его основныехарактеристики, например, верифицируемость (проверяемость) требования.По мнению авторов, необходимо обратить внимание на следующие определения понятия“требование” (на основе работ Вигерса и стандарта IEEE Standard Glossary of Software EngineeringTerminology, 1990): Условие или возможность, требуемая пользователем для решения задач или достиженияцелей. Условие или возможность, которые должны удовлетворяться системой/компонентом системыили которыми система/компонент системы должна обладать для обеспечения условийконтракта, стандартов, спецификаций или др.

регулирующими документами. Документальная репрезентация (зафиксированное представление, определение, описание)условий или возможностей, перечисленных в предыдущих пунктах.1.2 Требования к продукту и процессу (Product and Process Requirements) – проводитсяразграничение соответствующих требований как свойств продукта, который необходимо получить, ипроцесса, с помощью которого продукт будет создаваться; отмечается, что ряд требований можетбыть заложен неявно и программные требования могут порождать требования к процессу, например:работа в режиме 24x7 (как бизнес-требование) наверняка приведет к ограничению выбора тех илииных программных средств, платформ развертывания и архитектурных решений; в свою очередь,выбор платформы J2EE (Java 2 Enterprise Edition) и ее реализации в виде конкретного сервераприложений практически наверняка потребует применения модульного тестирования (Unit testing) какпрактики процесса разработки и JUnit, как инструмента реализации этой практики.1.3 Функциональные и нефункциональные требования (Functional and Non-functional Requirements) –функциональные требования задают “что” система должна делать; нефункциональные – ссоблюдением “каких условий” (например, скорость отклика при выполнении заданной операции)По мнению авторов, в определенной степени, систематизируя работы Вигерса, Лефингвелла иВидрига, Коберна, а также других экспертов, необходимо привести классификацию различныхкатегорий (видов) требований и связанных с ними понятий, важнейших с точки зрения их пониманияи дальнейшего практического применения:Потребности (needs) – отражают проблемы бизнеса, персоналии или процесса, которыедолжны быть соотнесены с использованием или приобретением системы.Copyright © Сергей Орлик, 2004-2010.http://swebok.sorlik.ru4Основы программной инженерии (по SWEBOK)Программная инженерия.

Программные требования.Группа функциональных требованийoБизнес-требования (Business Requirements) – определяют высокоуровневые целиорганизации или клиента (потребителя) – заказчика разрабатываемого программногообеспечения.oПользовательские требования (User Requirements) – описывают цели/задачипользователей системы, которые должны достигаться/выполняться пользователямипри помощи создаваемой программной системы. Эти требования часто представляютв виде вариантов использования (Use Cases).oФункциональные требования (Functional Requirements) – определяютфункциональность (поведение) программной системы, которая должна быть созданаразработчиками для предоставления возможности выполнения пользователямисвоих обязанностей в рамках бизнес-требований и в контексте пользовательскихтребований.Группа нефункциональных требований (Non-Functional Requirements)oБизнес-правила (Business Rules) – включают или связаны с корпоративнымирегламентами, политиками, стандартами, законодательными актами,внутрикорпоративными инициативами (например, стремление достичь зрелостипроцессов по CMMI 4-го уровня), учетными практиками, алгоритмами вычислений ит.д.

На самом деле, достаточно часто можно видеть недостаточное внимание такогорода требованиям со стороны сотрудников ИТ-департаментов и, в частности,технических специалистов, вовлеченных в проект. Business Rules Group даетпонимание бизнес-правила, как “положения, которые определяют или ограничиваютнекоторые аспекты бизнеса.

Они подразумевают организацию структуры бизнеса,контролируют или влияют на поведение бизнеса”. Бизнес-правила часто определяютраспределение ответственности в системе, отвечая на вопрос “кто будетосуществлять конкретный вариант, сценарий использования” или диктуют появлениенекоторых функциональных требований.В контексте дисциплины управления проектами (уже вне проекта разработкипрограммного обеспечения, но выполнения бизнес-проектов и бизнес-процессов)такие правила обладают высокой значимостью и, именно они, часто определяютограничения бизнес-проектов, для автоматизации которых создаетсясоответствующее программное обеспечение.oВнешние интерфейсы (External Interfaces) – часто подменяются “пользовательскиминтерфейсом”.

На самом деле вопросы организации пользовательского интерфейсабезусловно важны в данной категории требований, однако, конкретизация аспектоввзаимодействия с другими системами, операционной средой (например, запись вжурнал событий операционной системы), возможностями мониторинга приэксплуатации – все это не столько функциональные требования (к которым ошибочноприписывают иногда такие характеристики), сколько вопросы интерфейсов, так какфункциональные требования связаны непосредственно с функциональностьюсистемы, направленной на решение бизнес-потребностей.oАтрибуты качества (Quality Attributes) – описывают дополнительные характеристикипродукта в различных “измерениях”, важных для пользователей и/или разработчиков.Атрибуты касаются вопросов портируемости, интероперабельности (прозрачностивзаимодействия с другими системами), целостности, устойчивости и т.п.oОграничения (Constraints) – формулировки условий, модифицирующих требованияили наборы требований, сужая выбор возможных решений по их реализации.

Вчастности, к ним могут относиться параметры производительности, влияющие навыбор платформы реализации и/или развертывания (протоколы, серверыприложений, баз данных, ...), которые, в свою очередь, могут относиться, например, квнешним интерфейсам.Copyright © Сергей Орлик, 2004-2010.http://swebok.sorlik.ru5Основы программной инженерии (по SWEBOK)Программная инженерия. Программные требования.Системные требования (System Requirements) – иногда классифицируются как составнаячасть группы функциональных требований (не путайте с как таковыми “функциональнымитребованиями”). Описывают высокоуровневые требования к программному обеспечению,содержащему несколько или много взаимосвязанных подсистем и приложений.

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

Практика разработки программныхтребований включает идентификацию и описание бизнес-правил как самостоятельных артефактов.Например, методология RUP выделяет отдельный артефакт Business Rule в рамках дисциплиныBusiness Modeling. Все бизнес-правила, в рамках данной дисциплины, идентифицируются иописываются в документе Business Rules Document. При разработке требований, в сценариях UseCases обычно включается ссылка на уже описанное бизнес-правило. Скотт Амблер (см.www.agilemodeling.com/artifacts/) так же выделяет бизнес-правило как один из артефактов, которыйиспользуют в семействе Agile методологий.В настоящее время разработаны методы и подходы формального представления бизнес-правил,вплоть до формальных языков описания (использование OCL – Object Constraint Language, BRML –Business Rules Markup Language).Бизнес-правила могут быть не только использованы при определении требований кразрабатываемому ПО, но и могут отдельно оформляться в дизайне ПО (класс или группа классов),отражаясь в конечном итоге в программном коде на определенном языке программирования.Существуют специализированные инструментальные средства и библиотеки, позволяющиеразрабатывать и поддерживать приложения, интенсивно использующие бизнес-правила.Рассматривая бизнес-правила, как артефакты относящиеся к области программных требованийможно отметить, вернее дать одно из пояснений, почему БП относят к нефункциональнымтребованиям: Например, при написании определенного шага в сценарии use case, используетсяссылка на бизнес правило: «… система производит расчет стоимости в соответствии с бизнесправилом BP41 …».

В свою очередь данное бизнес-правило может определять алгоритм расчетастоимости. Т.е. налицо «с соблюдением каких условий система делает расчет».Одним из наиболее известных специалистов по BR является Рональд Росс, автор книги «Principles ofthe Business Rule Approach» (Ronald G.

Ross. «Principles of the Business Rule Approach», 2003).Наравне с представленной классификацией требований, могут использоваться и другие подходы.Даже в рамках этой классификации, существуют и различные взгляды на ее интерпретацию идетализацию. Например, как результат определения целевой аудитории и в рамках маркетинговойстратегии продвижения тиражируемого решения, возможно определять высокоуровневыевозможности (ключевые характеристики, особенности) – “фичи” (features) разрабатываемогопродукта. Иногда, такие возможности детализируются в смысле функциональных требований внекоторых agile-техниках, например, FDD – Feature-Driven Development (как вы видите вплоть досамого названия целого комплекса практик, метода разработки).Вигерс, описывает feature как “множество логически связанных функциональных требований,которые предоставляют определенные возможности для пользователя и удовлетворяютбизнес-целям <организации>”.

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

Тип файла
PDF-файл
Размер
587,71 Kb
Тип материала
Высшее учебное заведение

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

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