powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / ГОСТ 34.602-89 Вопросы и ответы
121 сообщений из 121, показаны все 5 страниц
ГОСТ 34.602-89 Вопросы и ответы
    #33854716
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предлагаю в теме обмениваться мнениями по поводу написания технического задания по ГОСТ 34.602-89.
Тема не для сравнения этого документа с аналогами, а именно для прояснения того, как с ним работать.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33854743
Фотография Calm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поделюсь своим скромным опытом:
брал ГОСТ, по порядку заполнял разделы. Если раздел ГОСТа был не актуален для моего проекта - пропускал его без сожаления. Проекты небольшие, на 2-3 человека на 2-5 месяцев.

Чем мне это помогло - на этапе согласования прояснялись многие вопросы. Типа списка контрольных вопросов - о чем нужно допросить представителя заказчика.

К сему документу отношусь без фанатизма. Не делаю из него догму, не боюсь дописать в ТЗ своего или проигнорировать ненужные мне разделы. Не утверждаю, что это панацея и что не существует ничего лучше.
Данный ГОСТ - обычный инструмент, который я применял и получал ожидаемый результат.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33854859
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ГОСТ 34.602-89 На русской странице сайта можно найти и другие ГОСТы и РД.

Тут можно кое что найти.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33855517
asafree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу уточнить у инициатора. Интересует мнение по поводу написания ТЗ именно по этому ГОСТ? Или вообще, мнение о написании ТЗ, его назначении и т.п., неважно по какому стандарту?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33856560
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asafreeХочу уточнить у инициатора. Интересует мнение по поводу написания ТЗ именно по этому ГОСТ? Или вообще, мнение о написании ТЗ, его назначении и т.п., неважно по какому стандарту?

Документ ТЗ определен только в отечественных ГОСТах, другие стандарты имеют другие назавания документов (например SRS в IEEE 830). По сути -- это все документация требований к ПО, и для обощения корректнее использовать именно такой термин (документация/спецификация требований к ПО).
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33856907
Xoxerix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
корректнее то оно корректнее - с этим нельзя не согласиться.

но отечественному заказчику слово ТЗ знакомо больше чем SRS, и я думаю лучше говорить с ним на одном языке :-)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33857199
bas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понятно, что хотел сказать этой темой автор? Если у него есть конкретные вопросы, то надо спрашивать. А так в общем не понятно что обсуждать?? Актульность ГОСТа? Применимость? Польза? Совместимость? и т.д.

Если так, то давайте по разделам обсуждать кто как пишет и что. Возможно найдем друг у друга ошибки/неточности.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33857263
Фотография Calm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНе понятно, что хотел сказать этой темой автор?

Этой веткой он хотел сказать, что не надо флеймить в топике про ЕГАИС :)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33857380
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Calm авторНе понятно, что хотел сказать этой темой автор?

Этой веткой он хотел сказать, что не надо флеймить в топике про ЕГАИС :)

Типа того, однако есть и практический интерес.

Что есть "требования к видам обеспечения"? Лично у меня сложилось впечатление, что это требования к окружению системы. Т.е. к тем компонентам системы, наличие которых должен обеспечить заказчик.

Например, (п.2.6.3.4 2) требования к качеству программных средств. Это могут быть требования к качеству операционной системы, СУБД, каких то покупных программ сторонних производителей?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33857735
Фотография Calm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНапример, (п.2.6.3.4 2) требования к качеству программных средств. Это могут быть требования к качеству операционной системы, СУБД, каких то покупных программ сторонних производителей?

Могут, почему бы и нет.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33857906
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Calm авторНапример, (п.2.6.3.4 2) требования к качеству программных средств. Это могут быть требования к качеству операционной системы, СУБД, каких то покупных программ сторонних производителей?

Могут, почему бы и нет.

Интересно, как измерить качество этих самых программ?.. Примерчик можно, пзл.?

Значит и требования к метрологическому обеспечению, относятся к средствам, которыми будут контролироваться показатели функционирования системы, а не к самой системе?
Напимер, если мы хотим контролировать точность измерения системой продолжительности телефонного разговора в секундах, то нужно использовать секундомер (условно) первого, а не второго класса точности.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33863951
Фотография Calm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторИнтересно, как измерить качество этих самых программ?
Определение соответствия требованием - ныне довольно развитая штука. На этом форуме есть раздел про тестирование и QA
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33864493
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Xoxerixкорректнее то оно корректнее - с этим нельзя не согласиться.

но отечественному заказчику слово ТЗ знакомо больше чем SRS, и я думаю лучше говорить с ним на одном языке :-)

А вы что собираетесь писать для отчественного заказчика требования по американскому стандарту?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33864986
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur Xoxerixкорректнее то оно корректнее - с этим нельзя не согласиться.

но отечественному заказчику слово ТЗ знакомо больше чем SRS, и я думаю лучше говорить с ним на одном языке :-)

А вы что собираетесь писать для отчественного заказчика требования по американскому стандарту?

1. Это не запрещено. Каждая фирма пишет ТЗ так как ей удобно. Конечно в случае государственного заказа соблюдение ГОСТов может быть необходимым требованием.
2. ГОСТ 34.602-89 был создан в СССР. Тоже как бы не совсем наш стандарт. :o)))
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33867050
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab byur
А вы что собираетесь писать для отчественного заказчика требования по американскому стандарту?

1. Это не запрещено. Каждая фирма пишет ТЗ так как ей удобно. Конечно в случае государственного заказа соблюдение ГОСТов может быть необходимым требованием.
2. ГОСТ 34.602-89 был создан в СССР. Тоже как бы не совсем наш стандарт. :o)))

1. ТЗ суть документ по ГОСТ ... строго говоря, если не соблюдаются требования ГОСТ, а используется вольный формат -- то это уже не ТЗ а просто "документация/спецификация требований". Просто нужно называть вещи своими именами -- иначе только путаница. Пример -- говоря "SQL Сервер" -- полразумеваем класс продуктов или специфический продукт MS SQL Server ... вот вам и путаница.
2. Фирма может писать "ТЗ" как ей удобно, если на это нет возражения Заказчика. Так что тут it depends on ...
3. Стандарт ISO вообще международный, и что его у нас не используют????
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33867954
Ruby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
2. ГОСТ 34.602-89 был создан в СССР. Тоже как бы не совсем наш стандарт. :o)))

"..Будь ты рокер или инок, ты в советской луже вымок
И прибудешь таковым ты, даже выйдя за порог .."

(с) А. Градский. Песня без названия (http://gradsky.com/txt/040.shtml)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33868194
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur3. Стандарт ISO вообще международный, и что его у нас не используют????

Вот переведу его на русский язык, припишут слово ГОСТр, тогда и будем пользоваться. Хотя не ясно зачем это программистам, а главное государству. А пока извиняйте, будем писать ТЗ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33872334
Ruby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab byur3. Стандарт ISO вообще международный, и что его у нас не используют????

Вот переведу его на русский язык, припишут слово ГОСТр, тогда и будем пользоваться. Хотя не ясно зачем это программистам, а главное государству. А пока извиняйте, будем писать ТЗ.

Инок вы наш, а писать ТЗ-то умеете? Или как Бог на душу положит? Судя по задаваемым вопросам -- не умеете. Но тем не менее пытаетесь спорить :-). Забавно.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33906361
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RubyИнок вы наш, а писать ТЗ-то умеете? Или как Бог на душу положит? Судя по задаваемым вопросам -- не умеете. Но тем не менее пытаетесь спорить :-). Забавно.

Я ТЗ читаю, и хочу знать, написано оно как положено, или "как Бог на душу".
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33939616
gafudo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня такие мнения по поводу ГОСТ:

ГОСТ предлагает так называемый "системный подход" к проектированию. Разбиение на подсистемы, сбор требований к подсистемам. Это хорошо для программно-аппаратных комплексов, где софт лишь один из многих и не самый главный компонент. Для разработки чистого программного обеспечения следует использовать специфические подходы сбора требований и анализа.

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

ГОСТ сейчас устарел просто потому, что он вышел в 89 году. Сами понимаете, что поводов для его обновления с тех пор было более чем достаточно, не буду здесь углубляться в конкретику, перечислять анахронизмы или просто неадекватные моменты.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33940156
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Если относиться к ГОСТ без фанатизма, то можно извлечь много пользы.
Во первых даже если вы делаете чистое ПО, а не программно-аппаратный комплекс, то для внедрения все равно придется подумать о железе, персонале, организационном обеспечении и т.д. ГОСТ не позволяет забыть существенные моменты.
Дальше никто не заставляет приложить к договору не ТЗ, а концепцию системы. И в первом этапе работ начать писание ТЗ. Можно сразу заложиться на то, что как утвержденное ТЗ, так и технические решения и протоколы, принятые после утверждения ТЗ содержат требования, которые необходимо выполнить. И, наконец, никто не мешает построить работу через несколько прототипов, на каждый из которых будет свое ТЗ - по сути уточнение ТЗ за несколько инкрементов.
Таким образом можно втисуться и в инкрементный и в эволюционный подход к разработке.
А типы требований к автоматизированным системам с 1989 года не изменились ни капельки - в ГОСТ на ТЗ приведена достаточно удобная их классификация.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33941500
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab RubyИнок вы наш, а писать ТЗ-то умеете? Или как Бог на душу положит? Судя по задаваемым вопросам -- не умеете. Но тем не менее пытаетесь спорить :-). Забавно.

Я ТЗ читаю, и хочу знать, написано оно как положено, или "как Бог на душу".

Что-то я не пойму вашей логики -- то вы говорите о том, что "А пока извиняйте, будем *писать* ТЗ", то теперь утверждаете, что только ЧИТАЕТЕ ТЗ ... энтропия неимоверная :-). Хотите называть ваши документы требований в вольном формате, близко не стоявшем с ГОСТ 34.602 как "ТЗ " -- ради бога -- ваше право. Я высказал точку зрения, что терминологией лучше пользоваться.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33941519
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?А типы требований к автоматизированным системам с 1989 года не изменились ни капельки - в ГОСТ на ТЗ приведена достаточно удобная их классификация.

ГОСТ 34.602 не выделяет, например, пользовательские требования ... в отличие от той же классификации К. Вигерса. И практически не придает значения такому аспекту в работе с требованиями, как управление требованиями, и в частности явно не указывает на желтельность/необходимость управления таким элементом как связи между требованиям. ГОСТ в отличии от классификации К. Вигерса, имеет достаточно плоскую структуру. Я не могу утверждать что такая класиификация удобна.

А вообще более корректно таки говорит не о классификации требований как таковой, которую приводит ГОСТ, а все-таки о требованиях к содержанию документа ТЗ :-).
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33943102
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurГОСТ 34.602 не выделяет, например, пользовательские требования ... в отличие от той же классификации К. Вигерса. И практически не придает значения такому аспекту в работе с требованиями, как управление требованиями, и в частности явно не указывает на желтельность/необходимость управления таким элементом как связи между требованиям. ГОСТ в отличии от классификации К. Вигерса, имеет достаточно плоскую структуру. Я не могу утверждать что такая класиификация удобна.

Все правильно, ГОСТ не указывает на необходимость явной трассировки, однако он не запрещает этого. Добавлю, что структурирование документа с нумерацией каждого абзаца в ГОСТовских документах нужно как раз для того, чтобы можно было ссылаться (трассировать?) на этот абзац из любого другого.
Скажу больше: ссылка на абзац из текста позволяет вам учесть несколько видов связей (причинно-следственные, иерархические и т.д.)
Если говорить про управление требованиями, то в ГОСТ предусмотрена версионность ТЗ и дополнения к ТЗ, как отдельные документы, ссылки (трассировки) могут быть указаны с точностью до абзаца. Механизмы, с помощью которых вы отслеживаете версии и ссылки, естественно, не дело ГОСТа - это уже технология.
Кроме этого ,вы абсолютно правы, ГОСТ не фиксирует процедуру анализа требований. Если говорить о пользовательских требованиях, то я не считаю их финальными. Для каждого пользовательского требования надо задать вопросы: для чего и трассировать пользовательское требование в функциональное или другое. В ТЗ нет информации о процедуре анализа - там лежит последний слой требований, которые должны проверяться при сдаче системы.
Мой вывод: ГОСТ рано выкидывать. Документы, которые он предусматривает вполне удобны для работы с клиентом. Так, например, ТЗ отвечает на вопрос: что проверять для закрытия этапа. Для внутренней работы документы могут быть и другими, но это уже технология.

byurА вообще более корректно таки говорит не о классификации требований как таковой, которую приводит ГОСТ, а все-таки о требованиях к содержанию документа ТЗ :-).
Не вижу смысла спорить - мы поняли друг друга: классификация требований по ГОСТ выражена в его содержании.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33944655
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Позволю себе а в качестве комментария кое-что добавить.

BoatmanВсе правильно, ГОСТ не указывает на необходимость явной трассировки, однако он не запрещает этого. Добавлю, что структурирование документа с нумерацией каждого абзаца в ГОСТовских документах нужно как раз для того, чтобы можно было ссылаться (трассировать?) на этот абзац из любого другого.
Скажу больше: ссылка на абзац из текста позволяет вам учесть несколько видов связей (причинно-следственные, иерархические и т.д.)


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

Boatman
Если говорить про управление требованиями, то в ГОСТ предусмотрена версионность ТЗ и дополнения к ТЗ, как отдельные документы, ссылки (трассировки) могут быть указаны с точностью до абзаца. Механизмы, с помощью которых вы отслеживаете версии и ссылки, естественно, не дело ГОСТа - это уже технология.


Трассировка обычно относится к управлению требованиями.
Если у меня в абзаце содержиться 15 требований -- к какому из них адресуется ссылка? ГОСТ не определяет необходимость атомарности требований, в отличие от того же IEEE 830.

Boatman
Кроме этого ,вы абсолютно правы, ГОСТ не фиксирует процедуру анализа требований. Если говорить о пользовательских требованиях, то я не считаю их финальными. Для каждого пользовательского требования надо задать вопросы: для чего и трассировать пользовательское требование в функциональное или другое. В ТЗ нет информации о процедуре анализа - там лежит последний слой требований, которые должны проверяться при сдаче системы.


Финальные требования -- это какие? Весь вопрос в целях создания требований к ПО. Есть целый ряд примеров в тех же agile методологиях, где пользовательские требования (выраженные юзкейсами или user stories) практически не декомпозируются на функциональные, т.е. они центральны. Классический RUP предлагает схему -- Vision - UC Specification -- Supplementary Specification, тоже делая акцент на юзкейсах. Другая сторона вопроса -- это собственно что за ПО мы делаем, и уместны ли там пользовательские требования как таковые, чтобы делать акцент именно на них.

Boatman
Мой вывод: ГОСТ рано выкидывать. Документы, которые он предусматривает вполне удобны для работы с клиентом. Так, например, ТЗ отвечает на вопрос: что проверять для закрытия этапа. Для внутренней работы документы могут быть и другими, но это уже технология.


Ключевое слово, которое вы произнесли -- что документы ГОСТ "удобны для РАБОТЫ с клиентом", но не факт, что эффективны с т.з. себестоимости работ. Любой документ в котором содержатся грамотно описанные требования к ПО (а это может и не быть ГОСТ, не так ли?) может служить источником для приемки системы.

Мой вывод -- имея поставленный процесс работы с требованиями можно выдавать документы по любому из стандартов, в т.ч. и по ГОСТ. Тем более при наличии соответствующего инструментария. Т.е. процесс -- первичен, стандарт по которому мы генерируем документы требований -- может быть при это любой.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33944990
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отвечу немножко не по порядку.
byur
Т.е. процесс -- первичен, стандарт по которому мы генерируем документы требований -- может быть при это любой.
На мой взгляд первична цель, которая включает требуемый результат и вид его представления. Если ГОСТ требуется заказчиком - это не подлежит обсуждению. Если не требуется, все равно составление ТЗ по ГОСТ ЦЕЛЕСООБРАЗНО, так как оно отвечает на вопросы
1. Что будет делать система
2. При каких ограничениях и допущениях.
3. Что должен обеспечить заказчик
4. Что будет делать исполнитель
5. Как это будет контроллироваться и проверяться
В RUP ТЗ соответствуют сразу несколько документов, от этого вопросы, на которые следует ответить не изменяюются.

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

byur
ГОСТ это стандарты, и эти стандарты никак не определяют процессов работы с требованиями. И это является как источником проблем, так и возможность "выкрутиться".
Абсолютно согласен ни одна из ГОСТовских систем (ЕСКД, ЕСПД, СПДС) не диктует процесс, а только требуемый результат, оставляя все возможности построения процесса исполнителям. И, просто, "Вы ищете там, где не прятали" (с): в ГОСТ нет процеса.

byur
Финальные требования -- это какие? Весь вопрос в целях создания требований к ПО.
Здесь у нас, похоже, нет разногласий.
byur
Любой документ в котором содержатся грамотно описанные требования к ПО (а это может и не быть ГОСТ, не так ли?) может служить источником для приемки системы.
Я бы усилил высказывание и сказал, что документ содержащий требования необходим для приемки ПО. Это с точки зрения заказчика. Для исполнителя - это руководство к действию, но любое руководство к действитю обязательно должно быть УТВЕРЖДЕНО ЗАКАЗЧИКОМ, так что, на мой взгляд, первая цель ТЗ - представление требований для заказчика, остальные цели могут выполняться и внутренними аналитическими документами, вытекающими из ТЗ (или аналогичного документа). И термин "финальные" был употреблен вместо "утверждаемые".

byur
Руководствуясь ГОСТом в качестве источника знаний по процессу работы с требованиями например, такая мысль (о возможности трассировки и проведения на ее основе анализа влияния) можно и не подозревать.
Да - это так.
Не вижу смысла искать в ГОСТ знания об управлении требований, такой цели перед ГОСТ не ставилось. И ГОСТ не заменяет RUP или XP, а только дополняет их в области общения с заказчиком и представления ЖЦ софта для заказчика.
При этом задолго до ГОСТ сложивщейся инженерной практикой были перекрестные ссылки между частями документов, частным случаем которой является трассировка. Трассировка сама по себе является (одним из многих) способом отслежиывания изменений. А кроме трассировки между частями документа могут существовать связи многих других видов. Таким образом, нет смысла их описывать в ГОСТ.

byur
ГОСТ не определяет необходимость атомарности требований, в отличие от того же IEEE 830.
В этом и заключается сила ГОСТ: вы можете поместить в ТЗ Use Case, а можете User Story, а можете и то и другое. А атомарность требований - очень относительное понятие и в большинстве случаев атомарное требование может быть разделено путем увеличения детализации. Детализация всегда будет расти по мере развития проекта. По этому, требование атомарности на момент утверждения ТЗ может уже быть нарушено на момент внесения в него изменений.

В какчестве вывода.
ГОСТ, как стандарт общения с заказчиком должен быть принят обеими сторонами, если заказчик работает по другим стандартам, применять ГОСТ нецелесообразно. Так же следует избегать заблуждения, что в ГОСТ предлагается технология управления требованиями, разработки или другая технология. ГОСТ - это описание взаимодействия между заказчиком и имсполнителем в виде описания требований к документам и в виде представления ЖЦ, которое тербуется заказчику для контроля хода проекта.
ГОСТ может быть взят, как основа для технологии, в части описания результата, но не в части описания процесса.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33945085
asafree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос всем, кто УТВЕРЖДАЕТ требования у заказчика. Неважно как, в виде ГОСТ или в другом стандарте. Что вы потом делаете с этим документом? А что делает заказчик? Что происходит, если в процессе реализации вам пришлось изменить часть требований? За чей счёт происходит изменение?

Действительно ли по ТЗ происходит передача системы заказчику? Хотелось бы узнать как это примерно происходит? И какое место при этом занимает программа и методика испытаний (РД 50-34 ...)?

Или все высказывания приведённые здесь это только теория? Бесспорно правильная, но - теория :(
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33945446
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Бсе зависит от...
По правильному в ТЗ есть раздел "порядок приемки", который и определяет, как будет приниматься система. Для детального описания испытаний системы существует документ программа и методика испытаний.
Зачастую, ТЗ идет в мусорную корзину, так как оно нужно для галочки и заказчику и разработчику, но это закладывает потенциальные проблемы. Даже при самых лучших отеношениях с ключевыми представителями заказчика следует учесть, что люди не вечны на своих постах и устные договоренности, в случае чего, уйдут вместе с ними. Кроме этого слова улетают в воздух и потом невозможно вспомнить, кто, что и когда говорил, а кто нет.
Если в процессе реализации часть требований меняется, то выпускается или дополнение к ТЗ или новая версия ТЗ и утверждается снова. В крайнем случае изменения в требованиях могут быть зафиксированы в протоколе общения с заказчиком. Все эти документы являются неотъемлемой частью договора и имеют юридическую силу. Если требуется расширение бюджета, можно принять дополнительное соглашение к договору. Кто заплатит за изменения - это предмет торга с заказчиком, обычно по списку новых требований решается, что часть изменений в счет оплаченного, часть за дополнительное финансирование.
У нас при заключении договора обычно требования не детализированы до уровня Use Case, по этому мы утверждаем или концепцию или ТЗ с оговоркой, что оно предварительное, а в работы вписываем обследование с написанием окончательного ТЗ.

А про теорию - это не теория, а практика. Если не утверждать требования перед началом работы у заказчика, вы рискуете нарваться на неучтенные изменения требований и реализацию их за свой счет. При этом вы можете узнать об изменении требований гораздо позже, чем они произошщли на самом деле. Если вы еще и не ведете учет требований и их изменений, то будете еще и не знать сами, что же вы делаете за систему.
На практике каждый сам решает, как предупреждать эти риски. Кто-то утверждает ТЗ, кто-то прикармливает ключевых фигур заказчика, от которых зависит подписание актов закрытия, кто-то еще как-то...
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33945678
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanОтвечу немножко не по порядку.
byur
Т.е. процесс -- первичен, стандарт по которому мы генерируем документы требований -- может быть при это любой.
На мой взгляд первична цель, которая включает требуемый результат и вид его представления. Если ГОСТ требуется заказчиком - это не подлежит обсуждению. Если не требуется, все равно составление ТЗ по ГОСТ ЦЕЛЕСООБРАЗНО, так как оно отвечает на вопросы
1. Что будет делать система
2. При каких ограничениях и допущениях.
3. Что должен обеспечить заказчик
4. Что будет делать исполнитель
5. Как это будет контроллироваться и проверяться
В RUP ТЗ соответствуют сразу несколько документов, от этого вопросы, на которые следует ответить не изменяюются.


Цель в данном случае одна -- удовлетворить потребности заказчика, сделав ПО которое ему нужно. Для этого и разрабатываются требования к ПО -- описание которых может быть сделано в таком виде, в котором вы пришли к соглашению с заказчиком -- это может быть как ГОСТ, так и нечто другое.
Сравнивать RUP и ГОСТ -- некорректно, хотябы потому, что ГОСТ это стандарт, как вы сами сказали, "на результат" деятельности по разработке требований, а RUP -- суть ПРОЦЕСС, который определяет модель ЖЦ (кстати отличную от неявно декларируемой ГОСТом) и результаты (артефакты) в виде документов (как раз результат процесса). Брать из RUP только артефакты (и сравнивать с ними), забывая о процессе -- на мой вгляд категорически неверно.
Насчет вопросов -- неплохо бы ответить еще вопросы:
1. ПОЧЕМУ будет делаться эта система -- какую бизнес-проблему она будет решать (заранее предвижу ваш ответ, интересно угадаю я его или нет ;-))?
2. Каковы цели пользователя по отношению к системе?


Boatman byur
ГОСТ это стандарты, и эти стандарты никак не определяют процессов работы с требованиями. И это является как источником проблем, так и возможность "выкрутиться".
Абсолютно согласен ни одна из ГОСТовских систем (ЕСКД, ЕСПД, СПДС) не диктует процесс, а только требуемый результат, оставляя все возможности построения процесса исполнителям. И, просто, "Вы ищете там, где не прятали" (с): в ГОСТ нет процеса.


Немного не понял ... в первой части предложения вы соглашаетесь с моим утверждением, что в ГОСТ нет процесса (и это как + так и -, ибо НИКТО не занимался обощением процессов у нас) потом пытаетесь меня же убедить, что в ГОСТ НЕТ ПРОЦЕССА :-) ... или я чего-то не допонял?

Boatman
byur
Любой документ в котором содержатся грамотно описанные требования к ПО (а это может и не быть ГОСТ, не так ли?) может служить источником для приемки системы.
Я бы усилил высказывание и сказал, что документ содержащий требования необходим для приемки ПО.


И я, с позволения, усилю -- и этот документ НЕ ОБЯЗАТЕЛЬНО ТЗ по ГОСТ!

Boatman
byur
Руководствуясь ГОСТом в качестве источника знаний по процессу работы с требованиями например, такая мысль (о возможности трассировки и проведения на ее основе анализа влияния) можно и не подозревать.
Да - это так.
Не вижу смысла искать в ГОСТ знания об управлении требований, такой цели перед ГОСТ не ставилось. И ГОСТ не заменяет RUP или XP, а только дополняет их в области общения с заказчиком и представления ЖЦ софта для заказчика.


Смысла там искать эти знания -- нет ... но практика показывает, что ИХ ТАМ ИЩУТ :-) ибо других отечественных источников знаний -- нет. А западные методологии не всегда "ложаться" на отечественных же аналитиков (или постановщиков задач -- кстати кто такие ПОСТАНОВЩИКИ задач? в чем состоит их работа? До сих пор не получил ни одного внятного ответа от специалистов связанных с ГОСТ)

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

Вот видимо в этом и вопрос -- связи между частями документов или между АТОМАРНЫМИ требованиями? Это к вопросу документоцентричного похода и атомарности требований.

Boatman
byur
ГОСТ не определяет необходимость атомарности требований, в отличие от того же IEEE 830.
В этом и заключается сила ГОСТ: вы можете поместить в ТЗ Use Case, а можете User Story, а можете и то и другое. А атомарность требований - очень относительное понятие и в большинстве случаев атомарное требование может быть разделено путем увеличения детализации. Детализация всегда будет расти по мере развития проекта. По этому, требование атомарности на момент утверждения ТЗ может уже быть нарушено на момент внесения в него изменений.


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

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

Очевидно, что наши выводы близки -- если заказчик требует документы по ГОСТ -- то имея внятный процесс разработки и управления требовниями (и желательно, некие инструментальные средства облегчающие нам жизнь -- от просто электронных таблиц до специального RDM ПО) мы сможем сгенерировать документы по ГОСТ (как и по любому другому стандарту). Но управлять нужно НЕ ДОКУМЕНТАМИ и связями в разделах, а атомарными ТРЕБОВАНИЯМИ.
Кроме этого -- довольно сложно в реальной жизни следовать диктуемой ГОСТ модели ЖЦ (практически это водопад) при этом удовлетворив потребности заказчика. Документы могут быть подписаны, хорошо сормулированы, но это может оказаться не то ЧТО НУЖНО ЗАКАЧИКУ НА МОМЕНТ сдачи системы :-).
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33945700
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur
...это может быть как ГОСТ, так и нечто другое....

Консенсус достигнут.

byur
Насчет вопросов -- неплохо бы ответить еще вопросы:
1. ПОЧЕМУ будет делаться эта система -- какую бизнес-проблему она будет решать (заранее предвижу ваш ответ, интересно угадаю я его или нет ;-))?
2. Каковы цели пользователя по отношению к системе?

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

byur
Немного не понял ... в первой части предложения вы соглашаетесь с моим утверждением, что в ГОСТ нет процесса (и это как + так и -, ибо НИКТО не занимался обощением процессов у нас) потом пытаетесь меня же убедить, что в ГОСТ НЕТ ПРОЦЕССА :-) ... или я чего-то не допонял?

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

byur
И я, с позволения, усилю -- и этот документ НЕ ОБЯЗАТЕЛЬНО ТЗ по ГОСТ!

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

byur
Смысла там искать эти знания -- нет ... но практика показывает, что ИХ ТАМ ИЩУТ :-) ибо других отечественных источников знаний -- нет. А западные методологии не всегда "ложаться" на отечественных же аналитиков (или постановщиков задач -- кстати кто такие ПОСТАНОВЩИКИ задач? в чем состоит их работа? До сих пор не получил ни одного внятного ответа от специалистов связанных с ГОСТ)

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

byur
Вот видимо в этом и вопрос -- связи между частями документов или между АТОМАРНЫМИ требованиями? Это к вопросу документоцентричного похода и атомарности требований.

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

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

Use Case - это функциональное требование, выраженное сценарием ( источник ). Следовательно, место UC в разделе "функциональные требования" ТЗ по ГОСТ 34. User Story - это может быть тоже UC, но более крупный (неатомарный?) и место ему там же, а может быть и требование другого вида.

byur
Очевидно, что наши выводы близки -- если заказчик требует документы по ГОСТ -- то имея внятный процесс разработки и управления требовниями (и желательно, некие инструментальные средства облегчающие нам жизнь -- от просто электронных таблиц до специального RDM ПО) мы сможем сгенерировать документы по ГОСТ (как и по любому другому стандарту). Но управлять нужно НЕ ДОКУМЕНТАМИ и связями в разделах, а атомарными ТРЕБОВАНИЯМИ.

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

byur
Кроме этого -- довольно сложно в реальной жизни следовать диктуемой ГОСТ модели ЖЦ (практически это водопад) при этом удовлетворив потребности заказчика. Документы могут быть подписаны, хорошо сормулированы, но это может оказаться не то ЧТО НУЖНО ЗАКАЧИКУ НА МОМЕНТ сдачи системы :-).
Не соглашусь. Нигде в ГОСТ не сказано (или я не заметил), что стадии ЖЦ не могут пересекаться или делиться на этапы. В ГОСТ явно декларируются версии ТЗ и дополнения к ТЗ, как самостоятельные документы. Так что можно сделать, хоть инкрементный цикл, хоть эволюционный, надо только не лениться выпускать версии документов. Затруднения могут вызвать переутверждения целикового ТЗ, как громоздкого документа, проходящего множество инстанций. Но никто не мешает резать проект на этапы и писать отдельное ТЗ на этап. Так же можно резать на подсистемы и писать ТЗ на подсистему. Добавку пары функций можно провести дополнением к ТЗ с выпуском следующей версии ТЗ при накоплении серьезных изменений.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33948083
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?По правильному в ТЗ есть раздел "порядок приемки", который и определяет, как будет приниматься система. Для детального описания испытаний системы существует документ программа и методика испытаний.
Зачастую, ТЗ идет в мусорную корзину, так как оно нужно для галочки и заказчику и разработчику,...

У "правильного" заказчика ТЗ не идет в корзину,.
Приемка работы обычно выполняется в соответствии с документом "Программа и методика испытаний" (ПМИ).
В ПМИ должны быть перечислены ВСЕ требования ТЗ и способы их проверки.
Отсюда, кстати, следует, что ТЗ не должно содержать не доказуемых требований (типа "наработка системы на отказ должна быть не менне 1000 часов").
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33948195
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Согласен, что у правильного не идет.
Однако оценка "зачастую" в процитированном фрагменте говорит о том, что я оцениваю частоту появления правильного заказчика, как редкую. Однако - это только мое мнение.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33948228
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
byur
Насчет вопросов -- неплохо бы ответить еще вопросы:
1. ПОЧЕМУ будет делаться эта система -- какую бизнес-проблему она будет решать (заранее предвижу ваш ответ, интересно угадаю я его или нет ;-))?
2. Каковы цели пользователя по отношению к системе?

Цели создания системы - один из разделов ТЗ про ГОСТ 34, я его не указал, как и некоторые другие.


Я угадал ваш ответ :-). На практике в документах ТЗ часто можно в качестве цели создания системы увидеть "автоматизацию деятельности" :-).

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


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

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


Должен ли постановщик задач плнировать работу по созданию ПО и отвечать за результат ;-)?

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


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

Boatman
Use Case - это функциональное требование, выраженное сценарием ( источник ). Следовательно, место UC в разделе "функциональные требования" ТЗ по ГОСТ 34. User Story - это может быть тоже UC, но более крупный (неатомарный?) и место ему там же, а может быть и требование другого вида.


Э нет, тут я имею желание возразить. Юзкейсы ни в коем случае не ЕСТЬ функциональные требования. Это пользовательские требования. Даже википедия (не самый авторитетный источнк на самом деле), использует термин capturing связывая юзкейсы и функциональные требования. В качестве ссылки статья Top Ten Use Case Mistakes, by Doug Rosenberg and Kendall Scott (цитата):
"The Top 10 Use Case Modeling Errors
Contrary to the principles we just discussed are a number of common errors that we have seen students make when they're doing use case modeling on their projects for the first time. Our "top 10" list follows.

10. Don't write functional requirements instead of usage scenario text. Requirements are generally stated in terms of what the system shall do, while usage scenarios describe actions that the users take and the responses that the system generates. Eventually, our use case text will be used as a run-time behavioral specification for the scenario we'll describe, and this text will sit on the left margin of a sequence diagram. We want to be able to easily see how the system (shown with objects and messages) implements the desired behavior, as described in the use case text. So, we need to clearly distinguish between usage descriptions (behavior) and system requirements. ..."

Далее, интересная цитата об отношениях UC и FR: ""I understand the requirements, but what does it actually do?" is a question often asked by systems analysts, business analysts, product managers, and programmers when confronted by two hundred pages of traditional IEEE-standard-style "The system shall . . ." functional requirements."

Есть еще ссылки на Коберна и Вигерса, которые рассуждают на эту тему в своих книгах. А вообще, это давняя дискуссия (на тему use cases vs functional reqs), которая закончиласть позиционированием юзкейсов как пользовательских требований :-).

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


Интересный критерий, но не уверен что он верный. Связи (трейсы) в пределе будут ослеживаться на уровне бизнес-требования->пользователькие требования->функциональные требования. По вкусу можно доавбить бизнес-правила и атрибуты качества. Для каждого их приведенных уровней требований будут существовать собственные "атомарные требования", и их атомарность не зависит от количества трейсов и наоборот?

Boatman
Не соглашусь. Нигде в ГОСТ не сказано (или я не заметил), что стадии ЖЦ не могут пересекаться или делиться на этапы. В ГОСТ явно декларируются версии ТЗ и дополнения к ТЗ, как самостоятельные документы. Так что можно сделать, хоть инкрементный цикл, хоть эволюционный, надо только не лениться выпускать версии документов. Затруднения могут вызвать переутверждения целикового ТЗ, как громоздкого документа, проходящего множество инстанций. Но никто не мешает резать проект на этапы и писать отдельное ТЗ на этап. Так же можно резать на подсистемы и писать ТЗ на подсистему. Добавку пары функций можно провести дополнением к ТЗ с выпуском следующей версии ТЗ при накоплении серьезных изменений.

Вот то, что допускает ГОСТ 34.601:
"Допускается исключить стадию "Эскизный проект" и отдельные этапы работ на всех стадиях, объединять стадии "Технический проект" и "Рабочая документация" в одну стадию "Технорабочий проект". В зависимости от специфики создаваемых АС и условий их создания допускается выполнять отдельные этапы работ до завершения предшествующих стадий, параллельное во времени выполнение этапов работ, включение новых этапов работ".

Обращаю внимание что речь идет об ЭТАПАХ а не стадиях.

А учитывая п. 1.3. -- "Работы по развитию АС осуществляют по стадиям и этапам, применяемым для создания АС.", утверждение о пересечении этапов -- довольно вольная трактовка положений ГОСТ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33948319
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurЯ угадал ваш ответ :-). На практике в документах ТЗ часто можно в качестве цели создания системы увидеть "автоматизацию деятельности" :-).

На практике можно увидеть все что угодно, другой вопрос - к чему стремиться. И даже если цель действительно в автоматизации деятельности, то что в этом плохого?

byurТут вопрос в другом -- ГОСТ не отпределяет такого типа требований как пользовательские требования. А классификации в принципе просто так не строятся, они определенно целесообразны. Аспект описания пользовательских требований (или целей пользователя по отношению к системе), который часто описывают в виде тех же юзкейсов, не предствален никак в "классификации", которую предстваляет ГОСТ 34.602. Приходиться "выкручиваться", выискивая куда же это вставить.

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

byurДолжен ли постановщик задач плнировать работу по созданию ПО и отвечать за результат ;-)?

Я думаю, что развитие этого направления выведет нас за рамки темы. Но мое мнение, что вышеописанные дела относятся к управлению проектами, а какие роли кто и где совмещает - это совсем другой вопрос. И даже не спрашивайте меня, как правильней...

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

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

byur
Э нет, тут я имею желание возразить. Юзкейсы ни в коем случае не ЕСТЬ функциональные требования. Это пользовательские требования. Даже википедия (не самый авторитетный источнк на самом деле), использует термин capturing связывая юзкейсы и функциональные требования. В качестве ссылки статья Top Ten Use Case Mistakes, by Doug Rosenberg and Kendall Scott (цитата):
"The Top 10 Use Case Modeling Errors
Contrary to the principles we just discussed are a number of common errors that we have seen students make when they're doing use case modeling on their projects for the first time. Our "top 10" list follows.

10. Don't write functional requirements instead of usage scenario text. Requirements are generally stated in terms of what the system shall do, while usage scenarios describe actions that the users take and the responses that the system generates. Eventually, our use case text will be used as a run-time behavioral specification for the scenario we'll describe, and this text will sit on the left margin of a sequence diagram. We want to be able to easily see how the system (shown with objects and messages) implements the desired behavior, as described in the use case text. So, we need to clearly distinguish between usage descriptions (behavior) and system requirements. ..."

Тут мне придется возразить в свою очередь. В цитате выделен текст, определяющий UC, как спецификацию поведения. Поведение - это ЧТО и КАК делает система. Функциональное требование определяет, ЧТО делает система. Следовательно, UC - функциональное тербование "ЧТО", дополненное спецификацией "КАК", ибо нельзя указать способ действий, не сказав явно или неявно, что будет делаться. Значит, UC - уточненное функциональное тербование или, если точнее - спецификация функции.
В ГОСТ явно не написано, что при описании функции следует ее специфицировать, то есть ГОСТ разрешает не детализировать функциональные требования, но и не запрещает. Кроме этого
ГОСТ 34.602-89
...
1.4. Включаемые в ТЗ на АС требования должны соответствовать современному уровню развития науки и техники и не уступать аналогичным требованиям, предъявляемым к лучшим современным отечественным и зарубежным аналогам. Задаваемые в ТЗ на АС требования не должны ограничивать разработчика системы в поиске и реализации наиболее эффективных технических, технико-экономических и других решений.
...
...
В ТЗ на АС могут включаться приложения.

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

Можно видеть, что "выкручиваться" не надо, по тому, что ГОСТ явно диктует пользоваться прогрессивной методикой и достаточно гибко (но обоснованно) обращаться с содержимым разделов.

byur
Есть еще ссылки на Коберна и Вигерса, которые рассуждают на эту тему в своих книгах. А вообще, это давняя дискуссия (на тему use cases vs functional reqs), которая закончиласть позиционированием юзкейсов как пользовательских требований :-).

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

byur
Интересный критерий, но не уверен что он верный. Связи (трейсы) в пределе будут ослеживаться на уровне бизнес-требования->пользователькие требования->функциональные требования. По вкусу можно доавбить бизнес-правила и атрибуты качества. Для каждого их приведенных уровней требований будут существовать собственные "атомарные требования", и их атомарность не зависит от количества трейсов и наоборот?

Не понял про связь атомарности с количеством трассировок.
Приведу пример, когда мы получаем письмо (или фиксируем User Story) от пользователя в котором три абзаца с неатомарными пользовательскими требованиями. Письмо писал эксперт пользователя и требовать от него атомарность нецелесообразно - анализ требований не его работа. Мы помещаем письмо в базу данных, а абзацы выделяются, получают тип, напрмер, "элемент запроса на изменение" и трассируются от письма. Затем аналитик садится разбирать эти абзацы, расщепляет их на кусочки, моделирует, выявляет и устраняет неточности, ведет диалог с экспертоми, наконец, помещает в БД некоторое количество "атомарных" (в Вашей терминологии) требований с теми типами, которые диктует классификация, принятая в методологии проекта. Количество типов тербований, забитых в инструмент управления требованиями может быть больше количества, принятого в методологии, из за добавления "технологических" типов, связанных со стадиями анализа и не нужными в документах. Можно хранить вообще не требования, а другую информацию, если хочется. Пример относился к сбору требований путем опроса пользователей от концепции к спецификации требований (User needs->Features->Software requironments по RUP).
Если ведется сбор требования через моделирование бизнес-процессов (пресловутая автоматизация деятельности), то трассировки будут идти от элементов процессов AS IS к элементам процессов TO BE, от них к функциональным и дополнительным требованиям точно так же, возможно, через промежуточные "технологические" типы требований.
При других принятых методах сбора требований будет своя цепочка преобразования от собираемой информации до утверждаемых требований.
В результате я хочу сказать, что не вижу необходимости накладывать условия обязательной атомарности на все требования в базе данных (к стати, не удобно управлять тряссировками от многих требований ко многим), кроме этого могу привести примеры, когда неатомарность требований, попадающих в базу данных невозможно обойти.
И продолжаю настаивать, что целесообразная необходимость минимизации сцепления требований в финальных (утверждаемых) документах вызвана стремлением к уменьшению объема изменений (в количестве абзацев) в утверждаемом документе при изменениях на входе в процесс сбора требований.


byur
...утверждение о пересечении этапов -- довольно вольная трактовка положений ГОСТ.
Смотрим ГОСТ
ГОСТ ГОСТ 34.601-90
1.1. Процесс создания АС представляет собой совокупность упорядоченных во времени, взаимосвязанных, объединённых в стадии и этапы работ, выполнение которых необходимо и достаточно для создания АС, соответствующей заданным требованиям.

Работа - минимальная учитываемая единица. Стадии и этапы - это множества работ.
ГОСТ ГОСТ 34.601-90
1.3. Работы по развитию АС осуществляют по стадиям и этапам, применяемым для создания АС.

Достаточно туманная фраза, но она не запрещает стадиям и этапам пересекаться.
ГОСТ ГОСТ 34.601-90
2.1. Стадии и этапы создания АС в общем случае приведены в таблице.

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

ГОСТ ГОСТ 34.601-90
2.2. Стадии этапы, выполняемые организациями - участниками работ по созданию АС, устанавливаются в договорах и техническом задании на основе настоящего стандарта.

Допускается исключить стадию "Эскизный проект" и отдельные этапы работ на всех стадиях, объединять стадии "Технический проект" и "Рабочая документация" в одну стадию "Технорабочий проект". В зависимости от специфики создаваемых АС и условий их создания допускается выполнять отдельные этапы работ до завершения предшествующих стадий, параллельное во времени выполнение этапов работ, включение новых этапов работ.

Явное указание, что этапы следующих стадий могут начинаться до завершения предшествующих стадий (а значит, и этапов этих стадий). Явное указание на возможность параллельного запуска нескольких этапов. Явное указание на добавление видов работ и этапов, не предусмотренных в ГОСТ. Наложенные ограничения в виде выделенных слов указывают, что более поздние (по таблице) стадии обязаны закончиться позже, чем более ранние. То есть, например, ВЕСЬ сбор требований надо закончить раньше, ВСЮ разработку, а всю разработку раньше, чем все сопровождение, что очень трудно было бы нарушить при любой технологии разработки.
Добавлю, что так же не запрещено, а даже поощряется разбиение на подсистемы и запуск тех же стадий от формирования требований до сопровождения на каждую подсистему отдельно.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33949762
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurЯ угадал ваш ответ :-). На практике в документах ТЗ часто можно в качестве цели создания системы увидеть "автоматизацию деятельности" :-).


Boatman[На практике можно увидеть все что угодно, другой вопрос - к чему стремиться. И даже если цель действительно в автоматизации деятельности, то что в этом плохого?


Плохое в том, что "автоматизация деятельности" - это не цель .
Цели любого проекта, по большому счету, финансовые - получение дополнительной прибыли: за счет больших объемов, за счет сокращения работников, за счет снижения материальных затрат и т. п.
ИМХО, программа и методика испытаний должна подтверждать именно достижение экономических целей.
Сейчас же она сплошь и рядом подтверждает только выполнение функций автоматизации, при этом совершенно не учитывается тот факт, что после автоматизации затраты могут увеличится (дополнительные сотрудники, вычислительная техника, ее эксплуатация и т. п.), не принося соответствующих доходов.
Проще говоря, вместо такой автоматизации можно нанять дополнительно тетку, которая на калькуляторе за небольшую зарплату будет выполнять "автоматизируемые функции".
Что экономически выгоднее и надежнее.
Т. е. автоматизация ради автоматизации - это не цель проекта.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33949848
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я понимаю, что существует ЕДИНСТВЕННАЯ ПРАВИЛЬНАЯ ЦЕЛЬ на все времена. Однако, не у всех есть такие сверхвменяемые заказчики и не всегда можно предсказать чистый финансовый выхлоп IT - проекта.
Если есть ТЗ на "автоматизацию деятельности" - это значит, что будет консалтинговый подпроект, в котором будет описана деятельность и выдвинуты предложения по ее автоматизации исходя из других целей и ограничений заказчика.
И еще: "получение дополнительной прибыли" - слишком неконкретная цель. Где, тогда, цели "прибыль надолго", "достижение лидирующих позиций на рынке", "ликвидация угрозы бизнесу", "развитие перспективных направлений"?
Например, цель заказчика - внедрение САПР, наиболее распространенной в регионе для того, чтобы облегчить общение со смежниками и получить более устойчивую позицию. Как вычислить прибыль завтра, послезавтра и через 10 лет от этого шага?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33950638
bas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanКак вычислить прибыль завтра, послезавтра и через 10 лет от этого шага?

А это уже совсем другой документ ...
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33950682
bas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Boatman, byur

На самом деле, не понятна цель вашего спора?
byur хочет доказать, что ГОСТом лучше не пользоваться?
Boatman хочет доказать, что ГОСТ - это лучший документ по формализации требований?

Думаю что нет. Вы оба во многом соглашаетесь друг с другом и я во многом согласен с вами. Просто, мне кажется, надо подвести итог: "+" и "-" ГОСТа.

"+" ГОСТа:
- Стуктурированность
- Относительная простота в написании
- Наиболее понятна Российским заказчикам
- Возможны различные дополнения и приложения
- Много примеров

"-" ГОСТа:
- Нет методологии сбора и управления требований
- Вольная трактовка пунктов ТЗ => возможно написать полное дерьмо
- Довольно старый => не соответсвует новым/изменившимся тенденциям
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33950759
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basА это уже совсем другой документ ...
Не понял этот тезис...

basНа самом деле, не понятна цель вашего спора?
Для меня - это не спор, а диалог, в котором уточняются и укрепляются одни позиции, а другие пересматриваются.
Нигде не написано в моих постах, что ГОСТ = ЛУЧШИЙ стандарт в определенной области. В системных проблемах ОПТИМУМ недостижим по объективным причинам, и его заменяют целесообразностью.

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

bas- Вольная трактовка пунктов ТЗ => возможно написать полное дерьмо
Ни один стандарт не определен на формальном уровне. Даже IDEF0 позволяет
трактовку. Выше были приведены цитаты из ГОСТ, которые явно требуют доопределить его на уровне ОСТ и СТП. А полное дерьмо можно написать даже на языке программирования, который гораздо более формально описан.

bas- Довольно старый => не соответсвует новым/изменившимся тенденциям
Выше я как раз и стремился показать, что в ГОСТ пока что ложатся любые современные тенденции, что только добавляет ему ценности.
Если вы намерены отстаивать это свое утверждение, приведите технологии, методики и тенденции, которые не ложатся в ГОСТ. Кроме тенденции мигом свавять модные яйца в профиль и освоить дикий бюджет на выкорчевывании старого и внедрении нового.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33950955
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman... Как вычислить прибыль завтра, послезавтра и через 10 лет от этого шага?

ТЗ на этот вопрос не даёт ответа. Для этого служит тактико-техническое задание, где в частности отражается эффект (экономический, социальный и т.д.) ожидаемый от системы. Хорошее ТЗ в технических терминах определяет АС, которая должна удовлетворить (экономические, социальные и т.д.) ожидания пользователей. Как определить, что именно такая система принесёт ожидаемый эффект в ГОСТ 34 к сожалению не написано, это вопрос методологии.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33950984
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЮВВ ПМИ должны быть перечислены ВСЕ требования ТЗ и способы их проверки.
Отсюда, кстати, следует, что ТЗ не должно содержать не доказуемых требований (типа "наработка системы на отказ должна быть не менне 1000 часов").

Тестируемость, это одно из обязательных свойств требования.

На счёт 1000 часов, это вопрос методики тестирования. Можно просто погонять систему пару месяцев, а можно экстраполировать результат непродолжительной проверки и селать прогноз относительно надёжности или использовать другие косвенные методы.
Кроме того, можно сойтись на том, что эта характеристика системы будет тестироваться в процессе эксплуатации, а отклонение от показателя, будет считаться дефектом.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33951140
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
ТЗ на этот вопрос не даёт ответа. Для этого служит тактико-техническое задание, где в частности отражается эффект (экономический, социальный и т.д.) ожидаемый от системы. Хорошее ТЗ в технических терминах определяет АС, которая должна удовлетворить (экономические, социальные и т.д.) ожидания пользователей. Как определить, что именно такая система принесёт ожидаемый эффект в ГОСТ 34 к сожалению не написано, это вопрос методологии.

Согласен, не дает и не должно.
Добавлю, что подсчет эффекта - танцы с бубном сравнимые с выявлением требований, а то и похлеще. Не каждый заказчик готов платить за предельно четкое обоснование стратегических решений (своих или предложенных консультантами). А если он оплатит обоснование, то он получает десять вариантов, оцененных по десяти параметрам и ему говорят, что оптимум будет зависеть от выбора оптимизирующей функции, подходов к выбору которой еще 20. И ему остается бросать гадальные кости, чтобы выбрать вариант. По этому, зачастую, принимается решение автоматизировать деятельность и формулируются дополнительные цели и ограничения.
Хочу отметить, что мы живем в мире неидеальных вещей. И цель "автоматизация деятельности" еще не значит, что проект уже провальный, просто, аналитикам придется поднапрячься, чтобы доопределить постановку.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33951168
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
На практике можно увидеть все что угодно, другой вопрос - к чему стремиться. И даже если цель действительно в автоматизации деятельности, то что в этом плохого?

Ответ в самом ГОСТ 34.602:
"2.4.2. В подразделе «Цели создания системы» приводят наименования и требуемые значения технических, технологических, производственно-экономических или других пока-зателей объекта автоматизации, которые должны быть достигнуты в результате создания АС, и указывают критерии оценки достижения целей создания системы "

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


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

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


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

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


Интересно, но мне показалось что это несколько противоречит постулатам программной инженерии, изложенным в SWEBOK, и в частности области знаний Пограммные требования (http://www.almportal.ru/public/so/book/3-1-software_engineering_requirements.pdf). И второй момент -- IMHO управлять требованиями проще и эффективнее, чем документами.

Boatman
Тут мне придется возразить в свою очередь. В цитате выделен текст, определяющий UC, как спецификацию поведения. Поведение - это ЧТО и КАК делает система. Функциональное требование определяет, ЧТО делает система. Следовательно, UC - функциональное тербование "ЧТО", дополненное спецификацией "КАК", ибо нельзя указать способ действий, не сказав явно или неявно, что будет делаться. Значит, UC - уточненное функциональное тербование или, если точнее - спецификация функции.
В ГОСТ явно не написано, что при описании функции следует ее специфицировать, то есть ГОСТ разрешает не детализировать функциональные требования, но и не запрещает.


Я позволю себе тоже возразить на возражение :-). Все-таки юзкейсы отображают ВЗАИМОДЕЙСТВИЕ пользователя и системы, а не только действия системы -- в частности, система делает <что-то> в ответ на действие пользователя. Второй момент -- поведение можно описать и в терминах только "ЧТО" (что делает система в ответ на действия пользователя), и не обязательно говорить про то КАК или КАКИМ образом она это делает -- на этот вопрос отвечает ДИЗАЙН. Третий момент -- юзкейсы ЭТО НЕ ЕСТЬ ФУНКЦИИ СИСТЕМЫ! В частности можно об этом посмотреть тут http://www-128.ibm.com/developerworks/rational/library/content/RationalEdge/dec00/WhyUseCasesAreNotFunctionsDec00.pdf (уважаемый bas не даст соврать :-))

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

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

Можно видеть, что "выкручиваться" не надо, по тому, что ГОСТ явно диктует пользоваться прогрессивной методикой и достаточно гибко (но обоснованно)
обращаться с содержимым разделов.


Интерпретировать ГОСТ тут можно однозначно -- мы не должны говорить в требованиях, что например бакап БД нужно производить на дискеты, т.к. современный уровень технологий позволяет для этого использовать более емкие и быстрые носители по доступной цене. И в частности потому, что так сделано в системе NNN, которая широко известна.
И далее, что требования не должны (если это не является явным ограничением) диктовать метод решения -- например использовать метод Хука-Дживса или Генетический алгоритм для решения задачи линейного программирования.

BoatmanПредлагаю не хоронить спор раньше времени. На мой взгляд все дело в детализации, точнее дело в том, кто проектирует технологию работы пользователя с системой: аналитики заказчика или эксперты пользователя, и на каком этапе она утверждается: до ТЗ или после или пользователи вообще готовы принять любую разумную технологию в момент испытания системы. Может вполне оказаться, что UC - это не исходные пользовательские требования, а тот оптимальный вариант "автоматизации деятельности" (которая вас так часто смущает :) ), который родили системные аналитики.


ОК, не будем хоронить (long live rock'n'roll ! :-)). Осмелюсь предположить что в данном случае под пользовательскими требованиями вы понимаете "требования которые высказал в том или ином виде заказчик/пользователь"? Я в данном случае использую терминологию К.Вигерса -- пользовательские требования -- это требования определяющие цели пользователя по отношению к системе, например -- оператору комплексной станции ПВО нужно иметь возможность идентифицировать класс "скоросной низколетящей цели" -- это его задача (цель пользователя по отношению к системе) -- для этого радар(ы) должны иметь определенные возможности, как то генерировать импульсы в определенных частотных диапазонах с определенными волновыми характеристиками. Оптико-локационные станции должны при этом тоже иметь определенные возможности -- как то сопровождение цели в течении определенного времени на определенной дистанции и т.п. (характеристики ОЛС). Это (возможности и характеристики радара и ОЛС) есть функциональные требования к комплексу, а пользовательское требование -- ни что иное как "идентифицировать класс "скоросной низколетящей цели"" -- в этом ему помагают конкретные дивайсы.

BoatmanНе понял про связь атомарности с количеством трассировок.

Вообще, возможно следует использовать другой термин вместо "атомарные" -- все-таки "атомарный" ассоциируется с "неделимый". Возможно стоит говорить о ДИСКРТЕТНОСТИ требований и их однозначной идентификации. И о том, что в одном требовании должно содержаться одно утверждение. Я надеюсь это внесет больше ясности. Будем говорить о ДИСКРЕТНОМ требовании -- тогда, дискретное требование может существовать и без трассировок, в то же время, трассировка не существует без дискретного требования.

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


В пределе "минимизации сцепления требований" приведет к тому, что требования в ТЗ будут очень неконкретными и высокоуровневыми -- ведь именно так можно достичь нулевого количества трейсов? IMHO Не хватает ограничений на условие минимизации ... как бы вы их сформулировали? Думаю что размышления на эту тему приведут к классическим схемам трассировки (BR->UR->FR) :-)

BoatmanЯвное указание, что этапы следующих стадий могут начинаться до завершения предшествующих стадий (а значит, и этапов этих стадий). Явное указание на возможность параллельного запуска нескольких этапов. Явное указание на добавление видов работ и этапов, не предусмотренных в ГОСТ. Наложенные ограничения в виде выделенных слов указывают, что более поздние (по таблице) стадии обязаны закончиться позже, чем более ранние. То есть, например, ВЕСЬ сбор требований надо закончить раньше, ВСЮ разработку, а всю разработку раньше, чем все сопровождение, что очень трудно было бы нарушить при любой технологии разработки.
Добавлю, что так же не запрещено, а даже поощряется разбиение на подсистемы и запуск тех же стадий от формирования требований до сопровождения на каждую подсистему отдельно.

IMHO это интерпретация (т.е. толкование или все та же "выкручивание из ситуации"). Более логичен на тему ЖЦ ГОСТ Р 12207 (он же ISO 12207).
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33951198
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurОтвет в самом ГОСТ 34.602:
"2.4.2. В подразделе «Цели создания системы» приводят наименования и требуемые значения технических, технологических, производственно-экономических или других пока-зателей объекта автоматизации, которые должны быть достигнуты в результате создания АС, и указывают критерии оценки достижения целей создания системы "

Вот Вы сами и ответили на вопрос постом раньше. Можно видеть, что "автоматизация деятельности" как единственная цель без указания критериев достижения (если Вы именно это часто наблюдаете) противоречит требованиям ГОСТ. Выше я указывал, что выявление показателей - часто работа аналитиков. На этом считаю, что консенсус достигнут. Если вас смущает именно термин "значения", то можно формулировать и качественные критерии, оценивая их по введенным шкалам: зачет-незачет или от 2 до 5 или и т.д., и требовать зачетного поведения или какого-то другого. Так можно загнать любые цели в формализованные рамки.

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

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

byur
Сорри, что значит "они могут быть реализованы множеством способов на нижних уровнях абстракции"? Мы говорим о детализации требований или уже о дизайне -- как реализации требований?

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

byur
Интересно, но мне показалось что это несколько противоречит постулатам программной инженерии, изложенным в SWEBOK, и в частности области знаний Пограммные требования (http://www.almportal.ru/public/so/book/3-1-software_engineering_requirements.pdf). И второй момент -- IMHO управлять требованиями проще и эффективнее, чем документами.

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

byur
Я позволю себе тоже возразить на возражение :-). Все-таки юзкейсы отображают ВЗАИМОДЕЙСТВИЕ пользователя и системы, а не только действия системы -- в частности, система делает <что-то> в ответ на действие пользователя. Второй момент -- поведение можно описать и в терминах только "ЧТО" (что делает система в ответ на действия пользователя), и не обязательно говорить про то КАК или КАКИМ образом она это делает -- на этот вопрос отвечает ДИЗАЙН. Третий момент -- юзкейсы ЭТО НЕ ЕСТЬ ФУНКЦИИ СИСТЕМЫ! В частности можно об этом посмотреть тут http://www-128.ibm.com/developerworks/rational/library/content/RationalEdge/dec00/WhyUseCasesAreNotFunctionsDec00.pdf (уважаемый bas не даст соврать :-))

Согласен, что UC явно требует большей детализации, чем функциональное требование по ГОСТ, но он не может уйти от функции, так как описывает поведение. Возвращаясь к вопросу, куда класть UC в ТЗ по ГОСТ, продолжаю настаивать, что в функциональные требования. Спецификации UC можно вынести в приложение, если это удобно.
Чтобы больше не путаться со ЧТО и КАК, предлагаю посмотреть с такой стороны: ЧТО - это инвариант (цель), условия, предпочтения и ограничения; КАК - это структура системы (средства), которая удовлетворяет ЧТО. Естественно, на каждом этапе каждый элемент КАК порождает новое ЧТО (в этом задача аналитика, а потом и разработчика) и дальше по новому кругу. Вы видите функцию в виде описания цели, а UC в виде описания средств достижения цели, но они подразумевают присутствие цели. Естественно, функции и UC - это не одно и то же, но они покрывают (в сумме логически эквивалентны) одно и то же множество более мелких фактов, отвечающих за поведение системы.

byur
Интерпретировать ГОСТ тут можно однозначно -- мы не должны говорить в требованиях, что например бакап БД нужно производить на дискеты, т.к. современный уровень технологий позволяет для этого использовать более емкие и быстрые носители по доступной цене. И в частности потому, что так сделано в системе NNN, которая широко известна.
И далее, что требования не должны (если это не является явным ограничением) диктовать метод решения -- например использовать метод Хука-Дживса или Генетический алгоритм для решения задачи линейного программирования.

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

byur
ОК, не будем хоронить (long live rock'n'roll ! :-)). Осмелюсь предположить что в данном случае под пользовательскими требованиями вы понимаете "требования которые высказал в том или ином виде заказчик/пользователь"? Я в данном случае использую терминологию К.Вигерса -- пользовательские требования -- это требования определяющие цели пользователя по отношению к системе, например -- оператору комплексной станции ПВО нужно иметь возможность идентифицировать класс "скоросной низколетящей цели" -- это его задача (цель пользователя по отношению к системе) -- для этого радар(ы) должны иметь определенные возможности, как то генерировать импульсы в определенных частотных диапазонах с определенными волновыми характеристиками. Оптико-локационные станции должны при этом тоже иметь определенные возможности -- как то сопровождение цели в течении определенного времени на определенной дистанции и т.п. (характеристики ОЛС). Это (возможности и характеристики радара и ОЛС) есть функциональные требования к комплексу, а пользовательское требование -- ни что иное как "идентифицировать класс "скоросной низколетящей цели"" -- в этом ему помагают конкретные дивайсы.

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

byur
Вообще, возможно следует использовать другой термин вместо "атомарные" -- все-таки "атомарный" ассоциируется с "неделимый". Возможно стоит говорить о ДИСКРТЕТНОСТИ требований и их однозначной идентификации. И о том, что в одном требовании должно содержаться одно утверждение. Я надеюсь это внесет больше ясности. Будем говорить о ДИСКРЕТНОМ требовании -- тогда, дискретное требование может существовать и без трассировок, в то же время, трассировка не существует без дискретного требования.

Не вижу, как требование (например) уровня UC может висеть в воздухе (без трассировки) не вытекая из Feature или Change Request. Одно требование - одно утверждение - это хорошо, но что, если три утверждения можно переформулировать в пять других? Еще раз подчеркиваю, что нет критерия, однозначно указывающего расщеплять требование или нет - вовремя остановиться - задача человека не всегда есть четкие критерии.

byur
В пределе "минимизации сцепления требований" приведет к тому, что требования в ТЗ будут очень неконкретными и высокоуровневыми -- ведь именно так можно достичь нулевого количества трейсов? IMHO Не хватает ограничений на условие минимизации ... как бы вы их сформулировали? Думаю что размышления на эту тему приведут к классическим схемам трассировки (BR->UR->FR) :-)

Не надо путать, неконкретные и высокоуровневые и помещение нескольких высказываний в один учитываемый абзац.
Допустим, из двух Feature (назовем их А1 и А2), вытекает функция Б, она содержит подфункции Б1, Б2, Б3, каждая подфункция трассируется в два класса Б1 в К11 и К12, Б2 в К21 и К22, Б3 в К31 и К32. Есть два варианта: в первом записать функцию Б в требования, во втором вместо Б записать Б1, Б2, Б3.
По трассировкам в первом случае 2+3*2=8, во втором 2*3+3*2=12.
Пришел запрос на изменение, которое коснется А1, Б в части Б1 и К11.
В первом случае потревожим А1, получим 1 подозрительную связь, потревожим Б, получим 6 подозрительных связей, потревожим К11. Итого 3 абзаца изменились, просмотрено 7 связей.
Во втором случае потревожим А1, получим 3 подозрительных связи, потревожим Б1, поолучим 2 подозрительных связи, потревожим К11. Итого 3 абзаца изменились, просмотрено 5 связей.
Можно видеть, что иногда расщепление требований уменьшает работу при внесении изменений. Я думаю, есть и другие причины и критери расщепления, но сцепление - это то, что можно пощупать и рассчитать его численные параметры.

byur
IMHO это интерпретация (т.е. толкование или все та же "выкручивание из ситуации"). Более логичен на тему ЖЦ ГОСТ Р 12207 (он же ISO 12207).
Я вижу ГОСТ, как набор равноправных утверждений, накладывающих ограничения на разработку. В тексте не встречается явное указание предпочтительности водопада перед инкрементом или эволюцией. Как можно видеть, интерпретация происходит всегда и у всех по разному, но нет доказательств, что чья-то правильней. То есть водопадная интерпретация ГОСТа диктуется информацией вне ГОСТа: мифами маркетологов, и стереотипами специалистов старой закалки.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33952156
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Согласен, что UC явно требует большей детализации, чем функциональное требование по ГОСТ, но он не может уйти от функции, так как описывает поведение. Возвращаясь к вопросу, куда класть UC в ТЗ по ГОСТ, продолжаю настаивать, что в функциональные требования. Спецификации UC можно вынести в приложение, если это удобно.

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

Как правило UC не достаточно для спецификации системы. Для выявления требований приходится рассматривать не только поведенчиские, но и структурные аспекты задачи, например строить модели данных, описывать ограничения (constraint) операций выполняемых в рамках UC, затем трассировать их в требования ТЗ.
Формулировка тредования может быть краткой и ссылаться на подробную спецификацию в другом документе, где в удобной форме раскрывается содержание операции, или другого элемента системы, который требуется реализовать.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33953557
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
В ТЗ выносятся требования к системе. UC требованием не является. UC это модель, модель взаимодействия пользователя и системы. Анализиуя эту модель мы выявляем не только функциональные но многие другие требования к системе (например требования к данным, интерфейсам, организационному обеспечению и т.д.) формулируем их и фиксиуем в ТЗ. Сам UC как источник требований можно оформить приложением к ТЗ или другим удобным способом. Полагаю, модель может содержать элементы, которые не нужно реализовывать в данной версии системы. Естественно порождаемые этими элементами потенциальные требования в ТЗ не выносятся и не реализуются.

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

Не вижу у нас разногласий на тему что куда включать. Вы сами утверждаете, что UC может включаться в ТЗ приложением, а может и не включаться.
Если заказчик утвердил UC, как требуемый сценарий взаимодействия с системой, то это будет требование, если ему все равно, можно UC не включать и оно не будет требованием.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33953874
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanЕсли заказчик утвердил UC, как требуемый сценарий взаимодействия с системой, то это будет требование, если ему все равно, можно UC не включать и оно не будет требованием.

UC требованием быть не может. UC это модель поведения системы, требование, это соглашение исполнителя и заказчика о том, что система должна в определённой мере соответствовать этой модели. Как я уже говорил, анализ UC порождает множество разнообразных требований часть которых включается в ТЗ на версию системы. Например, мы можем смоделировать самый идеальный UC, но в силу проектных ограничений реализовать только часть требований связанных с ним.

Т.е. есть модель системы, она помогает выявлять и формулировать требования, есть ТЗ с требованиями, которые должны быть реализованы на данном этапе ЖЦ системы (ведь речь может идти не только о создании новой системы с нуля, но и о создании новой версии существующей системы, а в этом случае ТЗ включает только новые требования которые мы хотим реализовать), есть сама система, которая должна отвечать реализованным требованиям. В такой классификации UC относится к модели системы.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33953892
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"ЮВ" <nospam@sql.ru>; wrote in message news:3063430@sql.ru...

Hi!

> Отсюда, кстати, следует, что ТЗ не должно содержать не доказуемых
> требований (типа "наработка системы на отказ должна быть не менне
> 1000 часов").

Ага. Был прикол. Заказчик при запуске в опытную эксплуатацию:
- Вот в требованиях был пункт, что система должна работать
с приемлемой производительностью на 3 тыс. одновременных
юзверей. Мы подключили только двух и у нас все "страшно
тормозит".
- Так вы подключите 3 тыс. одновременно по всему заводу
и посмотрите.
- А зачем подключать 3 тыс., если даже два тормозят?

Пришлось долго грузить заказчика теорией массового
обслуживания, эрлангами и прочей мутью, объясняя,
что то, что он понимает под "производительностью",
на самом деле называется "временем отклика".
И архитектура системы такова, что время отклика
мало отличается, будет ли там два юзера или 3 тыс.
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33954120
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
UC требованием быть не может. UC это модель поведения системы, требование, это соглашение исполнителя и заказчика о том, что система должна в определённой мере соответствовать этой модели.

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

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

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

mcureenab
Т.е. есть модель системы, она помогает выявлять и формулировать требования, есть ТЗ с требованиями, которые должны быть реализованы на данном этапе ЖЦ системы (ведь речь может идти не только о создании новой системы с нуля, но и о создании новой версии существующей системы, а в этом случае ТЗ включает только новые требования которые мы хотим реализовать), есть сама система, которая должна отвечать реализованным требованиям. В такой классификации UC относится к модели системы.
Абсолютно верно подмечено, что "в такой классификации". На мой взгляд - классификация не догма, а метод работы, принятый здесь и сейчас.
Кроме этого, никто не отрицает многоэтапный анализ требований, в акотором крутятся те же сущности, что и в финальном утверждаемом наборе требований.
Если вернуться к вопросу, с которого все началось: "куда в ТЗ класть UC", то пока никто не против, что перечислить их можно в функциональных требованиях. Если религия запрещает туда же положить и спецификации UC, то выносим их в приложение или добавляем раздел. На этом спор UC vs Functionsl Requironment считаю зашедшим в тупик. Так как, большинство утверждений за придание UC статуса священного артефакта, требующего специального обращения, приходят к установлению лучшей из классификаций, что для меня неприемлемо.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33954147
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
Заказчик при запуске в опытную эксплуатацию:
- Вот в требованиях был пункт, что система должна работать
с приемлемой производительностью на 3 тыс. одновременных
юзверей. Мы подключили только двух и у нас все "страшно
тормозит".
- Так вы подключите 3 тыс. одновременно по всему заводу
и посмотрите.
- А зачем подключать 3 тыс., если даже два тормозят?

А можно расшифровать в чем заказчик не прав? плз
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33954935
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmА можно расшифровать в чем заказчик не прав? плз

При установлении требований он ошибся знаком. Вместо <= 3тыс. указал =3тыс. Точнее ошибся конечно разработчик ТЗ, а заказчик по неграмотности согласился.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33954998
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman mcureenab
UC требованием быть не может. UC это модель поведения системы, требование, это соглашение исполнителя и заказчика о том, что система должна в определённой мере соответствовать этой модели.

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


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

Отождествлять ТЗ и модель системы в общем случае я бы не стал.
Например, повторюсь, когда речь идёт о доработке существующей системы ТЗ будет содержать только те требования, которые нужно реализовать в рамках проекта доработки, тогда как модель будет описывать всю систему в том числе и существующую часть системы.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955120
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab iscrafmА можно расшифровать в чем заказчик не прав? плз

При установлении требований он ошибся знаком. Вместо <= 3тыс. указал =3тыс. Точнее ошибся конечно разработчик ТЗ, а заказчик по неграмотности согласился.
Я не об этом. Действительно, если 2 тормозят, то каким образом подключение большего числа пользователей ускорит работу?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955227
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
А если мы не можем реализовать смоделированный UC, не стоит ли его измернить?


Может быть и стоит, зависит от ситуации. Если мы хотим создавать систему поэтапно или частями, то можно создать модель для каждого этапа или части, но можно создать и целевую модель, а подмножества требований для каждого этапа выделить в ТЗ на версию системы.
Опять же, возвращаясть с доработке системы, нам придётся в ТЗ выделить из UC только те требования, которые не были реализованы ранее.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955245
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm mcureenab iscrafmА можно расшифровать в чем заказчик не прав? плз

При установлении требований он ошибся знаком. Вместо <= 3тыс. указал =3тыс. Точнее ошибся конечно разработчик ТЗ, а заказчик по неграмотности согласился.
Я не об этом. Действительно, если 2 тормозят, то каким образом подключение большего числа пользователей ускорит работу?

Увеличение числа пользователей работу не усуорит, но увеличит производительность, т.е. количество операций выполняемых в единицу времени. Например, система будет обслуживать не 2тыс запросов в минуту, а 3тыс., хотя при этом каждый отдельный запрос может выполняться одинаково долго как при малой так и при большой нагузке.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955299
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm Dmitry V. Liseev
Заказчик при запуске в опытную эксплуатацию:
- Вот в требованиях был пункт, что система должна работать
с приемлемой производительностью на 3 тыс. одновременных
юзверей. Мы подключили только двух и у нас все "страшно
тормозит".
- Так вы подключите 3 тыс. одновременно по всему заводу
и посмотрите.
- А зачем подключать 3 тыс., если даже два тормозят?

А можно расшифровать в чем заказчик не прав? плз

Заказчик неправ в следующем:
В ТЗ использовал недопустимую техническую характеристику - "приемлимая производительность". Так формулировать требование нельзя. Всегда должно быть указано конкретное числовое значение, которое можно реально проверить, типа:
- среднее время обработки короткой транзакции -n сек;
- максимальное время отклика системы на запрос пользователя - не более n сек при количестве одновремеенео работающих пользователей m;
- масштабирование системы (увеличение числа пользователей до к человек ) не должно приводить к увеличению масимального времени отклика и т д.

Т. е. ТЗ не должно содержать неких "качественных" требований, которые разработчик и заказчик могут толковать совершенно по разному.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955317
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЮВ, понятно что требование сформировано не корректно. Но я специально выделю часть диалога которая имелась ввиду в вопросе:
Так вы подключите 3 тыс. одновременно по всему заводу
и посмотрите.
- А зачем подключать 3 тыс., если даже два тормозят?
Чем не логичен последний вопрос?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33955740
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
Отождествлять ТЗ и модель системы в общем случае я бы не стал.
Например, повторюсь, когда речь идёт о доработке существующей системы ТЗ будет содержать только те требования, которые нужно реализовать в рамках проекта доработки, тогда как модель будет описывать всю систему в том числе и существующую часть системы.
Если пользоваться определением модели системы из системного анализа, то ТЗ - это и есть модель системы определенного уровня детализации. Проектная документация тоже модель, но более детализированная и т.д. Процесс разработки - это построение последовательности все более детализированных моделей будущей системы.

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

Чтобы не страдать раздвоением личности, когда модель расходится с требованиями, в описанном случае предлагаю разбить исходный UC на два и связать их отношением extends. Тогда не придется мучительно выделять из UC, который сам по себе может быть записан в ТЗ, какие-то волшебные требования и отслеживать их сложные отношения с исходной моделью.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956391
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmЮВ, понятно что требование сформировано не корректно. Но я специально выделю часть диалога которая имелась ввиду в вопросе:
Так вы подключите 3 тыс. одновременно по всему заводу
и посмотрите.
- А зачем подключать 3 тыс., если даже два тормозят?
Чем не логичен последний вопрос?


Есть статистистические методы оценки достоверности информации.
Если вы на экзамене выбрали случайныи образом билет и не ответили на 2 приведенных в нем вопроса, вам ставят двойку сразу, не проверяя знание остальных 98 (из 100) вопросов по предмету.
Если в случайной выборке нескольких микросхем из партии в 100 штук обнаруживается брак, то бракуется вся партия.

И здесь аналогичная логика рассуждений - если система тормоззит при 2 пользователях, то нет смысла проверять ее при 3000.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956473
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЮВИ здесь аналогичная логика рассуждений - если система тормоззит при 2 пользователях, то нет смысла проверять ее при 3000.
Я то с этим согласен. Вопрос собственно был Лисееву Дмитрию. Может я неправильно понял то, что он хотел сказать этим:
авторПришлось долго грузить заказчика теорией массового
обслуживания, эрлангами и прочей мутью, объясняя,
что то, что он понимает под "производительностью",
на самом деле называется "временем отклика".
И архитектура системы такова, что время отклика
мало отличается, будет ли там два юзера или 3 тыс
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956523
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"ЮВ" <nospam@sql.ru>; wrote in message news:3076531@sql.ru...

Hi!

> Заказчик неправ в следующем:
> В ТЗ использовал недопустимую техническую характеристику
> - "приемлимая производительность".

Есть такая наука: "Безопасность жизнедеятельности". Там есть понятие
"психофизиологии оператора". Если время отклика системы превышает,
скажем полсекунды, то оператор ощущает дискомфорт и сильный стресс.
Повышается утомляемость, растет количество ошибок. Есть масса книг
на эту тему и там есть такой термин, как "комфортное время отклика".

> - максимальное время отклика системы на запрос пользователя
> - не более n сек при количестве одновремеенео работающих
> пользователей m;

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

> - масштабирование системы (увеличение числа пользователей до
> к человек ) не должно приводить к увеличению масимального
> времени отклика и т д.

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

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

И чем "хуже" статистика на конкретном наборе таких сложных
данных, тем печальнее ситуация. На разных наборах данных
одного объема можно получить результаты измерения,
отличающиеся на несколько порядков. Угадать заранее, какие
конкретно данные будет хранить заказчик, не представляется
возможным, кроме того они меняются. В итоге так строго это
требование теоретически не выполнимо. Можно говорить лишь
о вероятностях, крайне сильно зависящих от незначительного
изменения кучи факторов. Грузить заказчика синергетикой,
фракталами и странными аттракторами - бесполезно.

> Т. е. ТЗ не должно содержать неких "качественных" требований,
> которые разработчик и заказчик могут толковать совершенно
> по разному.

Чтобы толковать одинаково, надо много дополнительных книг
заказчику прочитать.
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956524
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"iscrafm" <nospam@sql.ru>; wrote in message news:3076564@sql.ru...

Hi!

> Чем не логичен последний вопрос?

Сколько готовых автомобилей в минуту сходят
с конвейера? Каково полное время изготовления
одного автомобиля? Как связаны эти числа?
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956612
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
Есть такая наука: "Безопасность жизнедеятельности". Там есть понятие
"психофизиологии оператора". Если время отклика системы превышает,
скажем полсекунды, то оператор ощущает дискомфорт и сильный стресс.

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


Dmitry V. Liseev
Во-первых, надо сначала посадить m пользователей, т.е. запустить
систему в пром. эксплуатацию по всему заводу. А это деньги и время.
Во-вторых, как измерять будем? Каждому пользователю секундомер
дадим?

Чтобы убедиться, что аппарат будет двигаться по Луне, вам обязательно нужна Луна ?
Для проверки работспособности существуют стенды, макеты, математические модели и т. п.
Мне не надо сажать за компьютеры 200 пользователй. Я создаю на 2-3-x компъютерах 200 процессов, которые с определенной частотой выполняют некие транзакцтт, имитируя реальную деятtльность пользователей. Все временные параметры контролируется и фиксируется в журналах обработки (протоколах).

Dmitry V. Liseev
> - масштабирование системы (увеличение числа пользователей до
> к человек ) не должно приводить к увеличению масимального
> времени отклика и т д.

Тут тоже не все так просто.


Моделирование. См. выше.

Dmitry V. Liseev
> Т. е. ТЗ не должно содержать неких "качественных" требований,
> которые разработчик и заказчик могут толковать совершенно
> по разному.

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

Либо в ТЗ ввести раздел "Термины и определения", приведя их однозначное толкование.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956678
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
Во-первых, надо сначала посадить m пользователей, т.е. запустить
систему в пром. эксплуатацию по всему заводу. А это деньги и время.
Во-вторых, как измерять будем? Каждому пользователю секундомер
дадим?

Что-то я совсем плохо Вас понимаю. Зачем садить m пользователей, если система на двух тормозит? Задаю такой же вопрос, как и заказчик из Вашей байки. На 3000 быстрее станет? При чем здесь автомобили? Давайте про сосиски еще поговорим тогда уж :)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956748
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Если пользоваться определением модели системы из системного анализа, то ТЗ - это и есть модель системы определенного уровня детализации. Проектная документация тоже модель, но более детализированная и т.д. ....


ИМХО, детализация тут ни при чём. ТЗ детально описывает ЧТО должна научиться делать система. Проектная документация (если я правильно тебя понял) - КАК система будет это делать. Т.е. проектная документация не детализирует требования (требования должны быть атомарными), а специфицирует их с точки зрения реализации.
ЧТО и КАК, это не разные уровни абстракции или детализации, а разные точки зрения на предмет. ЧТО - внешний вид предмета, КАК - внутренняя организация предмета.
Комплект ТЗ на все версии системы позволяет нам судить о системе в целом, но отдельно взятое ТЗ в общем случае не даёт представления о системе.
Например, если в очередной верии требуется, чтобы система работала на UNIX, то в ТЗ будет только требование относительно поддержки UNIX и больше ничего. Что это за система из этого ТЗ мы не поймём.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33956789
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanЧтобы не страдать раздвоением личности, когда модель расходится с требованиями, в описанном случае предлагаю разбить исходный UC на два и связать их отношением extends. Тогда не придется мучительно выделять из UC, который сам по себе может быть записан в ТЗ, какие-то волшебные требования и отслеживать их сложные отношения с исходной моделью.

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

К стати, в какой форме ты предполагаешь запись UC в ТЗ? Это будет набор сценариев или как? Как запись UC согласуется со стандартной структурой ТЗ?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33957024
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"iscrafm" <nospam@sql.ru>; wrote in message news:3078987@sql.ru...

Hi!

> Что-то я совсем плохо Вас понимаю. Зачем садить
> m пользователей, если система на двух тормозит?
> Задаю такой же вопрос, как и заказчик из Вашей байки.
> На 3000 быстрее станет? При чем здесь автомобили?

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

Следовательно, из того, что 2 юзера тормозят никак
не следует, что 3000 будут тормозить в 1500 раз
сильнее.

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

Можно посчитать, кто быстрее перевезет лимон тонн
груза. Одна фура на 10 тонн или 10 газелей по 1 тонне.
Очевидно, что газели быстрее. Пока фуру грузят, она
не двигается. А когда двигается, грузчики простаивают
без дела.
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33957092
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
Следовательно, из того, что 2 юзера тормозят никак
не следует, что 3000 будут тормозить в 1500 раз
сильнее.

Конечно не следует. Из этого только следует то, что не нужно тестировать на 3000 пользователях, если уже на 2-х тормозит.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958039
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenabИМХО, детализация тут ни при чём. ТЗ детально описывает ЧТО должна научиться делать система. Проектная документация (если я правильно тебя понял) - КАК система будет это делать. Т.е. проектная документация не детализирует требования (требования должны быть атомарными), а специфицирует их с точки зрения реализации.
ЧТО и КАК, это не разные уровни абстракции или детализации, а разные точки зрения на предмет. ЧТО - внешний вид предмета, КАК - внутренняя организация предмета.
Комплект ТЗ на все версии системы позволяет нам судить о системе в целом, но отдельно взятое ТЗ в общем случае не даёт представления о системе.
Например, если в очередной верии требуется, чтобы система работала на UNIX, то в ТЗ будет только требование относительно поддержки UNIX и больше ничего. Что это за система из этого ТЗ мы не поймём.

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

А по поводу детализации: КАК всегда предвращается в ЧТО и наоборот. Пример:
ЧТО: Кормить семь.
КАК Достать денег, Купить еду
или КАК пойти на охоту, принести дичь

дальше КАК превращается в ЧТО
ЧТО заработать денег
КАК освоить профессию, устроиться на работу
или КАК продать квартиру, начать бизнес
или КАК купить лотерейный билет, выиграть деньги

Когда вы говорите ЧТО вам надо, вы не знаете КАК, но уже можете сформулировать критерии и ограничения. Например: заработать деньги в размере $1000 в месяц законным путем. Это и будет ТЗ. Но иногда можно грубо наметать, КАК надо достигать цели - это и будет UC
ПРИМЕР
....
ЧТО1: Кормить семь.
-Достать денег (см ЧТО2)
-Купить еду (см ЧТО3)

ЧТО2: Достать денег
-Учиться (см ЧТО21)
-Работать (см ЧТО22)
...

И это тоже будет ТЗ, так как это взгляд пользователя, ставящего задачу.
В какой-то момент чтобы увеличить уровень описания системы мы должны перейти из одного слоя в другой: изменить уровень абстракции или сменить точку зрения.
ТЗ, если угодно - это точка зрения пользователя на систему, предусловия и постусловия. При разработке точка зрения меняется на взгляд изнутри и там есть свои точки зрения и уровни абстракции. Но иногда перед разработкой уже фиксируются некоторые непользовательские характеристики системы: платформы, технические стандарты, условия сопряжения с имеющимися системами и т.д.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958201
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab BoatmanЧтобы не страдать раздвоением личности, когда модель расходится с требованиями, в описанном случае предлагаю разбить исходный UC на два и связать их отношением extends. Тогда не придется мучительно выделять из UC, который сам по себе может быть записан в ТЗ, какие-то волшебные требования и отслеживать их сложные отношения с исходной моделью.

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

К стати, в какой форме ты предполагаешь запись UC в ТЗ? Это будет набор сценариев или как? Как запись UC согласуется со стандартной структурой ТЗ?
ИМХО не менять модель (выделенные слова) можно только если она выбрасывается сразу после подписания ТЗ при условии, что в ТЗ или в его дополнении будет написана суть вносимых изменений. Иначе, мы теряем информацию. Если просто в работу что-то не пойдет, можно не разрабатывать трассируемые из выкинутого архитекурные элементы. При этом модель уже не сможет служить для обзорного взгляда на систему (получается: здесь играем, здесь не играем). Если в модели наступили неучтенные изменения, вы не сможете с ней дальше работать.

Как записать UC в ТЗ уже выше пережевано: заголовок UC - это функция. Сценарий UC - это спецификация функции. Можно выделить раздел со спецификациями, если неудобно затаскивать спецификации в функциональные требования. Можно этот раздел вынести в приложения.
Кроме заголовка UC функциональное требование может явно включать ссылки на актеров, запись предусловия, постусловия и дополнительные требования (ограничения и допущения), которые к ней относятся. А так же что-то еще, что я забыл указать. Может случиться так, что атомарными функциональными требованиями станут не UC, а элементы сценария, когда на сами UC, будет неудобно подвешивать ограничения и критерии.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958232
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Если это именно версия ТЗ, то оно включает в себя всю информацию о системе: информацию из дополнений и неизменившуюся информацию из предыдущих версий. Неполная информация может быть в дополнении к ТЗ, а в нем должна стоять обратная ссылка на ТЗ. При этом дополнение будет неотъемлемой частью ТЗ, а ТЗ с дополнением неотъемлемой частью договора. Таким образом всегда есть пакет документов, в котором есть полная информация. Если есть ТЗ на подсистему, то оно так же будет неотъемлемой частью пакета ТЗ вместе с ТЗ на полную систему.


Слава Богу! Вернулись к ГОСТу.

Речь не о версии ТЗ, а о версии системы.
В ГОСТе нет прямых указаний относительно содержания ТЗ на версию системы, однако сошласно п. 1.6 в ТЗ включают только те требования, которые дополняют требования к системам данного вида,... содержащиеся в действующих НТД... Видимо, ТЗ на прежние версии АС относятся к НТД.
Таким образом ТЗ в общем случае включает только часть требований.
Кроме того, нафига писать в ТЗ, например, порядок монтажа системы, если оборудование уже давно смонтировано?

Возможно, ТЗ на новую версию АС допустимо оформлять дополнением к ТЗ. Тогда вопрос, кто как поступает в этом случае?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958376
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кормить семью, достать денег, это пакеты требований. Требования - учиться, работать, покупать еду, то есть именно этим и будет заниматься система, для того чтобы кормить семью. Очевидно, что мы забыли про покупку посуды и дров для приготовления пищи, таким образом наша система не сможет накормить семью (разве что сырым мясом), но это не наша проблема, а проблема заказчика, если он подписал такое ТЗ. Возможно заказчик сыроед.

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

Дальнейшая декомпозиция требований может происходить на стадии технического проектирования, п. 5.3 Разработка ТЗ на разработку изделий для комплектования АС. Но это уже будут требования исполнителя к подрядчикам в рамках проектного решения принятого исполнителем.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958426
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanКогда вы говорите ЧТО вам надо, вы не знаете КАК, но уже можете сформулировать критерии и ограничения. Например: заработать деньги в размере $1000 в месяц законным путем. Это и будет ТЗ. Но иногда можно грубо наметать, КАК надо достигать цели - это и будет UC

Хм. ИМХО, тут мы имеем дело с переходом от бизнес требований к техническим требованиям, который выполняется на стадии 2 Разработка концепции АС, этап 2.1 Проведение НИР.

Грубость недопустима. UC должен в точности отвечать бизнес требованиям заказчика, иначе ожидания заказчика будут обмануты.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958463
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторКонечно не следует. Из этого только следует то, что не нужно тестировать на 3000 пользователях, если уже на 2-х тормозит.

если время отклика, скажем, 20-30 с. на 2 пользователях и на 3000 то это не про тормоза. Просто в ТЗ не оговорено как тестировать (и что)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958511
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
Слава Богу! Вернулись к ГОСТу.

Речь не о версии ТЗ, а о версии системы.
В ГОСТе нет прямых указаний относительно содержания ТЗ на версию системы, однако сошласно п. 1.6 в ТЗ включают только те требования, которые дополняют требования к системам данного вида,... содержащиеся в действующих НТД... Видимо, ТЗ на прежние версии АС относятся к НТД.
Таким образом ТЗ в общем случае включает только часть требований.
Кроме того, нафига писать в ТЗ, например, порядок монтажа системы, если оборудование уже давно смонтировано?

Возможно, ТЗ на новую версию АС допустимо оформлять дополнением к ТЗ. Тогда вопрос, кто как поступает в этом случае?
ТЗ на версию АС - это не НТД, а ТЗ на аналогичную систему.

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

mcureenabХм. ИМХО, тут мы имеем дело с переходом от бизнес требований к техническим требованиям, который выполняется на стадии 2 Разработка концепции АС, этап 2.1 Проведение НИР.

Грубость недопустима. UC должен в точности отвечать бизнес требованиям заказчика, иначе ожидания заказчика будут обмануты.

Вот мы и приходим к тому, что UC специфицирует и цель и средства. Это вариант, когда пользователь утверждает технологию работы с системой до начала разработки. При этом UC не перестает быть набором требований. В ТЗ по ГОСТ для целей создания системы есть раздел (это самые крупные UC этапа бизнес-анализа) Для UC промежуточного уровня в ТЗ явного места нет, но разрешено ввести доп. раздел. UC самого нижнего уровня или элементы их сценариев отражаются функциями и подфункциями.
А на каком этапе впервые выявляются эти элементы - это уже вопрос принятой методологии. Если у нас есть результаты НИР - это основания для разработки к ТЗ, их можно приложить к ТЗ, тогда UC диаграмма будет там.
Все это опять к тому же вопросу: куда класть UC в ТЗ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958565
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenabКормить семью, достать денег, это пакеты требований. Требования - учиться, работать, покупать еду, то есть именно этим и будет заниматься система, для того чтобы кормить семью. Очевидно, что мы забыли про покупку посуды и дров для приготовления пищи, таким образом наша система не сможет накормить семью (разве что сырым мясом), но это не наша проблема, а проблема заказчика, если он подписал такое ТЗ. Возможно заказчик сыроед.

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

Дальнейшая декомпозиция требований может происходить на стадии технического проектирования, п. 5.3 Разработка ТЗ на разработку изделий для комплектования АС. Но это уже будут требования исполнителя к подрядчикам в рамках проектного решения принятого исполнителем.
Ну хорошо, Вы объяснили, на каких этапах какие требования будут появляться и что дальше? Консенсус достигнут?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958681
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanНу хорошо, Вы объяснили, на каких этапах какие требования будут появляться и что дальше? Консенсус достигнут?

Вроде достигнут.
В раздел назначение системы выносим названия UC, в требования содержание UC.

UC в неявном виде содержит часть требований к системы, если требования достаточно очевидны, то их не обязательно формулировать в явном виде. Правда, UC как правило содержит разные виды требований, поэтому структуру ТЗ придётся изменить, а требования классифицировать не по видам, а по принадлежности к UC. Кроме того, UC обычно специфицируется набором сценариев, которые неизбежно будут во многом совпадать. Одни и те же требования будут неявно фигурировать в нескольких сценариях. В результате мы поимеем довольно большой документ.
Согласен, что такой подход к оформлению требований имеет право на жизнь для малых проектов, но в общем случае мне он не нравится, да и заказчик может не пойти на изменение структуры ТЗ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958704
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
ПРИМЕР
....
ЧТО1: Кормить семь.
-Достать денег (см ЧТО2)
-Купить еду (см ЧТО3)

ЧТО2: Достать денег
-Учиться (см ЧТО21)
-Работать (см ЧТО22)
...



Но ведь это не UC, а просто список функций или поцессов системы. В примере не просматривается порядок взаимодействия пользователя (семья) и ситемы в разных ситуациях.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958736
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab Boatman
ПРИМЕР
....
ЧТО1: Кормить семь.
-Достать денег (см ЧТО2)
-Купить еду (см ЧТО3)

ЧТО2: Достать денег
-Учиться (см ЧТО21)
-Работать (см ЧТО22)
...



Но ведь это не UC, а просто список функций или поцессов системы. В примере не просматривается порядок взаимодействия пользователя (семья) и ситемы в разных ситуациях.
Формально - это сценарий определенного уровня детализации. Целесообразно ли называть его UC в контексте разработки данной системы и достигнут ли требуемый уровень детализации - второй вопрос. Здесь можно четко выделить актеров, основной сценарий, можно моделировать дополнительные сценарии. Указать предусловия и постусловия и т.д. То есть описанное является моделью поведения в виде сценария, почему это не UC?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33958781
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab BoatmanНу хорошо, Вы объяснили, на каких этапах какие требования будут появляться и что дальше? Консенсус достигнут?

Вроде достигнут.
В раздел назначение системы выносим названия UC, в требования содержание UC.

UC в неявном виде содержит часть требований к системы, если требования достаточно очевидны, то их не обязательно формулировать в явном виде. Правда, UC как правило содержит разные виды требований, поэтому структуру ТЗ придётся изменить, а требования классифицировать не по видам, а по принадлежности к UC. Кроме того, UC обычно специфицируется набором сценариев, которые неизбежно будут во многом совпадать. Одни и те же требования будут неявно фигурировать в нескольких сценариях. В результате мы поимеем довольно большой документ.
Согласен, что такой подход к оформлению требований имеет право на жизнь для малых проектов, но в общем случае мне он не нравится, да и заказчик может не пойти на изменение структуры ТЗ.
Кто мешает проделать обратную работу и растащить UC по разделам ТЗ?
Каждый пункт сценария - это или воздействие пользователя на систему или действие системы (и то и другое функции) предусловия, актеры и дополнительные требования тоже найдут свой раздел.
Исходно моделирование UC - это метод выявления требований. ИМХО - это компромисс между заказчиком, который знает ЧТО и разработчиком, который знает КАК. Помещать ли UC в ГОСТ и в каком виде - вопрос договоренности двух сторон.
Помещение в ТЗ UC диаграммы должно означать: мы заказываем это ЧТО, которое может быть достигнуто, например, ТАК или ТОЛЬКО ТАК.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33959232
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Кто мешает проделать обратную работу и растащить UC по разделам ТЗ?
Каждый пункт сценария - это или воздействие пользователя на систему или действие системы (и то и другое функции) предусловия, актеры и дополнительные требования тоже найдут свой раздел.

Сценарий это последовательность действий. Если мы её раздербаним по разделам ТЗ будет проблематично восстаносить её обратно.

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

Растаскивание UC по разделам ТЗ есть выявление требований и их сортировка по разделам ТЗ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33959628
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
Сценарий это последовательность действий. Если мы её раздербаним по разделам ТЗ будет проблематично восстаносить её обратно.

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

Растаскивание UC по разделам ТЗ есть выявление требований и их сортировка по разделам ТЗ.
Судя по выделенным словам, считаю, что консенсус достигнут.
Добавлю, только, что восстановление сценария может не понадобиться, если система не будет явнопод держивать выполнение такой и только такой последовательности действий (в виде мастеров или построения справочной системы или в виде жестко зашитой логики). Только что пришло в голову, что можно потребовать, чтобы справочная документация содержала описание выполнение данных сценариев (UC), как часто повторяемых...
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960244
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Если пользоваться определением модели системы из системного анализа, то ТЗ - это и есть модель системы определенного уровня детализации. Проектная документация тоже модель, но более детализированная и т.д. Процесс разработки - это построение последовательности все более детализированных моделей будущей системы.


Не уверен, что данное высказывание корректно, особенно если опираться на понятийный механизм системного анализа (и в частности на определение модели). Т.к. ТЗ это собственно не модель, это описание требований -- т.е формулировка того, что из себя должна предствалять модель системы. Более реально можно назвать моделью уже ДИЗАЙН (и архитектуру) системы -- т.е. фактически описание того как устроена система. Тут можно говорить и о детализации такой модели.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960263
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Как записать UC в ТЗ уже выше пережевано: заголовок UC - это функция. Сценарий UC - это спецификация функции. Можно выделить раздел со спецификациями, если неудобно затаскивать спецификации в функциональные требования. Можно этот раздел вынести в приложения.
Кроме заголовка UC функциональное требование может явно включать ссылки на актеров, запись предусловия, постусловия и дополнительные требования (ограничения и допущения), которые к ней относятся. А так же что-то еще, что я забыл указать. Может случиться так, что атомарными функциональными требованиями станут не UC, а элементы сценария, когда на сами UC, будет неудобно подвешивать ограничения и критерии.

Еще раз хотельсь бы подчеркнуть, что UC не есть функция, это суть разные вещи. Я не зря приводил ссылки на соответствующие статьи. И кстати функциями чего являются юзкейсы - функциями системы или функциями пользователя системы ???
Функции -- декомпозируются до элементарных операций -- юзкейсы -- нет. У Функций может не быть эктора -- у юзкейса он есть (extended/included не рассматриваем).

Простой пример -- пользователь заказывает товар в интернет-магазине -- система по окончании заказа отправляет инфу о заказе пользователю на e-mail. Так вот -- "Система должна иметь возможность отправки уведомления с информацией о заказе на e-mail клиента" -- есть функция систему (отправка уведомления) -- но такого UC, как "Отправить уведомление на e-mail" -- НЕ БУДЕТ существовать! А скорее будет существовать UC "Заказть товар".
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960268
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab BoatmanНу хорошо, Вы объяснили, на каких этапах какие требования будут появляться и что дальше? Консенсус достигнут?

Вроде достигнут.
В раздел назначение системы выносим названия UC, в требования содержание UC.


И что получаем -- ровным счетом только плевки в сторону техники юзкейсов и устойчивое мнение, что юзкейсы -- полная ерунда :-). И вот почему: в качестве требования к системе имеем фразу шага юзкейса "пользователь подтверждает идентичность паспортных данных в документе и в Профиле Клиента". Это требование к системе????
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960271
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman mcureenab Boatman
ПРИМЕР
....
ЧТО1: Кормить семь.
-Достать денег (см ЧТО2)
-Купить еду (см ЧТО3)

ЧТО2: Достать денег
-Учиться (см ЧТО21)
-Работать (см ЧТО22)
...



Но ведь это не UC, а просто список функций или поцессов системы. В примере не просматривается порядок взаимодействия пользователя (семья) и ситемы в разных ситуациях.
Формально - это сценарий определенного уровня детализации. Целесообразно ли называть его UC в контексте разработки данной системы и достигнут ли требуемый уровень детализации - второй вопрос. Здесь можно четко выделить актеров, основной сценарий, можно моделировать дополнительные сценарии. Указать предусловия и постусловия и т.д. То есть описанное является моделью поведения в виде сценария, почему это не UC?

Потому что сценерий -- это термин, который уже устоялся в программной инженерии и когда говорят сценарий -- это означаеи менее формальное описание, чем UC. Более того -- можно написать сценарий, например движения по разделам вэб-сайта -- и это тоже будет UC?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960282
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanКто мешает проделать обратную работу и растащить UC по разделам ТЗ?
Каждый пункт сценария - это или воздействие пользователя на систему или действие системы (и то и другое функции) предусловия, актеры и дополнительные требования тоже найдут свой раздел.
Исходно моделирование UC - это метод выявления требований. ИМХО - это компромисс между заказчиком, который знает ЧТО и разработчиком, который знает КАК. Помещать ли UC в ГОСТ и в каком виде - вопрос договоренности двух сторон.
Помещение в ТЗ UC диаграммы должно означать: мы заказываем это ЧТО, которое может быть достигнуто, например, ТАК или ТОЛЬКО ТАК.

Помещение UC диаграммы ни дасто ровным счетом ничего без описания юзкейсов. Растаскивать юзкейс по разделам -- неэффективно. Они ценны именно как целостный элемент. Именно поэтому RUP рассматривал связку Vision-UC Spec.-Supplementary Spec. Именно ДОПОЛНЯЯ юзкейсы функциональными и инефункциональнвыми требованиями в Suppl. Spec.

Собственно место юзкейсов в ТЗ -- не определено никак, ибо нет такого типа требований в ГОСТ. Можно только "выкручиваться" впихивая их каким-либо образом туда :-) (при условии если это требуется), основываясь на утверждении ГОСТ, что можно дополнять ТЗ дополнительными разделами :-)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960288
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Судя по выделенным словам, считаю, что консенсус достигнут.
Добавлю, только, что восстановление сценария может не понадобиться, если система не будет явнопод держивать выполнение такой и только такой последовательности действий (в виде мастеров или построения справочной системы или в виде жестко зашитой логики). Только что пришло в голову, что можно потребовать, чтобы справочная документация содержала описание выполнение данных сценариев (UC), как часто повторяемых...

Кстати, часто именно так и делают -- по сценарию юзкейса делают визард. А насчет "только что пришедшей в голову идеи" :-) ... так это общепринята практика от UC к тест-кейсам и пользовательской документации :-). Кстати, в этом одно из преимуществ use-case driven разработки -- максимальное использование уже наработанного.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33960291
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur
Простой пример -- пользователь заказывает товар в интернет-магазине -- система по окончании заказа отправляет инфу о заказе пользователю на e-mail. Так вот -- "Система должна иметь возможность отправки уведомления с информацией о заказе на e-mail клиента" -- есть функция систему (отправка уведомления) -- но такого UC, как "Отправить уведомление на e-mail" -- НЕ БУДЕТ существовать! А скорее будет существовать UC "Заказть товар".

Хотелось бы добавить, что в частности из-за того чтобы не отождествлялись функции системы и юзкейсы -- юзкейс именуюется как "Заказать товар", а не "Заказ товара". "Заказ товара" -- это функция (система обладает функцией ЗАКАЗА ТОВАРА)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33961722
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurПотому что сценерий -- это термин, который уже устоялся в программной инженерии и когда говорят сценарий -- это означаеи менее формальное описание, чем UC.

UC - классификатор. Сценарий - объект. Сценарий можно писать не менее формально чем UC, просто это разные вещи. UC описывает всё множество сценариев, тогда как сценарий, это только одно из проявлений UC.

byurБолее того -- можно написать сценарий, например движения по разделам вэб-сайта -- и это тоже будет UC?

Если UC порождает единственный сценарий, то да. Такой сценарий будет однозначно описывать UC. Но чаще в рамках одного UC приходится рассматривать множество сценариев и на их основе синтезировать UC.
Не всякий набор сценариев можно назвать UC. Например, одни люди, заходят в e-магазин, и покупают книгу, других интересует только рецензия, третьи случайно попали а сайт. Все три варианта можно рассматривать в рамках сценария "Покупка книги", первый из них является основным, остальные - альтернативные (они не решают задачу UC, но имеют место в процессе взаимодействия пользователя с e-магазином).

UC можно рассматривать снаружи и изнутри. Я не знаю способов внешнего описания UC, кроме набора сценариев, которые можно приобщить к ТЗ в качестве приложения.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963341
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab byurПотому что сценерий -- это термин, который уже устоялся в программной инженерии и когда говорят сценарий -- это означаеи менее формальное описание, чем UC.

UC - классификатор. Сценарий - объект. Сценарий можно писать не менее формально чем UC, просто это разные вещи. UC описывает всё множество сценариев, тогда как сценарий, это только одно из проявлений UC.

byurБолее того -- можно написать сценарий, например движения по разделам вэб-сайта -- и это тоже будет UC?

Если UC порождает единственный сценарий, то да. Такой сценарий будет однозначно описывать UC. Но чаще в рамках одного UC приходится рассматривать множество сценариев и на их основе синтезировать UC.
Не всякий набор сценариев можно назвать UC. Например, одни люди, заходят в e-магазин, и покупают книгу, других интересует только рецензия, третьи случайно попали а сайт. Все три варианта можно рассматривать в рамках сценария "Покупка книги", первый из них является основным, остальные - альтернативные (они не решают задачу UC, но имеют место в процессе взаимодействия пользователя с e-магазином).

UC можно рассматривать снаружи и изнутри. Я не знаю способов внешнего описания UC, кроме набора сценариев, которые можно приобщить к ТЗ в качестве приложения.
+1

авторUC - классификатор. Сценарий - объект.
может проще?

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

?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963484
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 авторUC - классификатор. Сценарий - объект.
может проще?

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

?

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

Пример фрагмента "плохого" сценария для турникета метро.

"сценарий" 0
...
если пассажир забрал пропуск, турникет открывается, иначе турникет закрывается.
...

Чтобы решить проблему пишем:
сценарий 1
...
пассажир забрал пропуск (конкретизировали обстоятельства)
турникет открывается (поведение определено однозначно)
...

сценарий 2
...
пассажир оставил пропуск в считывателе
турникет закрывается
...

"сценарий" 0, это скорее алгоритм (внутреннее содержание) работы турникета, чем экземпляр UC. Кроме того, в нём действие пассажира "забрать пропуск" и само наличие такого актера указано неявно.

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

Не следует ограничиваться рамками взаимодействия только пользователя с системой. Сценарий UC должен определять взаимодействие системы со всеми внешними объектами. Например в рамках UC турникет может запросить авторизацию пропуска в центре авторизации, если мы описываем именно турникет, а не систему в состав которой он входит, то центр авторизации тоже будет актёром данного UC, но не будет пользователем системы.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963489
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenabЧтобы не писать кучу похожих сценариев в одином основном сценарии можно определить точки расширения, и в эти точки при определённых условиях подставлять альтернативные варианты поведения.

вот здесь бы и пример , т.к. нереально дублировать N-факториал похожих веток.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963497
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur
Не уверен, что данное высказывание корректно, особенно если опираться на понятийный механизм системного анализа (и в частности на определение модели). Т.к. ТЗ это собственно не модель, это описание требований -- т.е формулировка того, что из себя должна предствалять модель системы. Более реально можно назвать моделью уже ДИЗАЙН (и архитектуру) системы -- т.е. фактически описание того как устроена система. Тут можно говорить и о детализации такой модели.
А что это, если не модель?
"Моде́ль — описание объекта (предмета, процесса или явления) на каком-либо формализованном языке, составленное с целью изучения его свойств. Такое описание особенно полезно в случаях, когда исследование самого объекта затруднено или физически невозможно." - это одно из определений. ТЗ описывает разрабатываемую систему или нет?
И кроме детализации есть еще плоскость взгляда. У любой системы может быть множество моделей разной детализации с роазных точек зрения.

byur
Еще раз хотельсь бы подчеркнуть, что UC не есть функция, это суть разные вещи. Я не зря приводил ссылки на соответствующие статьи. И кстати функциями чего являются юзкейсы - функциями системы или функциями пользователя системы ???

Никто не утверждает, что UC=функция. речь идет о связи. А связь такая (к вопросу, чья функция): UC - функция человеко-машинной (или машино-машинной) системы, то есть, что человек совместно с этой системой может выполнить. Как следствие UC с достаточной уверенностью можно назвать функцией надсистемы по отношению к разрабатываемой.

byur mcureenab BoatmanНу хорошо, Вы объяснили, на каких этапах какие требования будут появляться и что дальше? Консенсус достигнут?

Вроде достигнут.
В раздел назначение системы выносим названия UC, в требования содержание UC.


И что получаем -- ровным счетом только плевки в сторону техники юзкейсов и устойчивое мнение, что юзкейсы -- полная ерунда :-). И вот почему: в качестве требования к системе имеем фразу шага юзкейса "пользователь подтверждает идентичность паспортных данных в документе и в Профиле Клиента". Это требование к системе????
Не вижу в данном конкретном выделенном Вами тексте плевки. "Юзкейсы - ерунда" в этой ветке Вы сказали первым. Я, не могу в этом с Вами согласиться.
В ответ на вопрос, требование или нет. требование может звучать так: система должна поддерживать следующие варианты использования ....
Но это одно и то же, что и смущающая Вас "автоматизация деятельности". Так как UC - та же самая совместная деятельность актера и системы. И еще раз: функция будет атомарным кирпичиком из которого строится UC, если только не требуется жесткий надзор системы над соблюдением сценария, тогда соблюдение прописанного UC само будет функциональным требованием.

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

Допустим, UC - это сценарий, специализированный по цели своего применения. Речь шла о другом: существует много уровней перехода от целей к средствам и т.д. Их количество зависит от сложности системы. Так как UC претендует на универсальное применение от бизнес-нализа до сценариев работы с системой, то разница только в том, где сейчас проведена граница, отделяющая надсистему от системы. В сложных системах эти границы постоянно двигаются внутрь системы в процессе анализа. И тут мы замечаем, что кирпичик сценария (функция?) разворачивается и сам становится сценарием. Когда пишется ТЗ на АС она сразу делится на подсистемы и функции АС в целом будут как-то реализованы подсистемами, на которые будут написаны свои ТЗ. Учитывая, что разрабатывается в общем случае человеко-программно-аппаратный комплекс, то в результате произойдет то же, что и при анализе с использованием UC моделирования. Я все время хочу показать, что по сути различия минимальны, различается только форма представления.

byur
Собственно место юзкейсов в ТЗ -- не определено никак, ибо нет такого типа требований в ГОСТ. Можно только "выкручиваться" впихивая их каким-либо образом туда :-) (при условии если это требуется), основываясь на утверждении ГОСТ, что можно дополнять ТЗ дополнительными разделами :-)

Я думаю, мы поняли друг друга: Вам предложили несколько вариантов, что делать, если есть UC, а надо писать ТЗ. Я только против термина "выкручиваться", так как добавление раздела - это штатная (предусмотренная) ситуация. Но о терминах спорить - дело неблагодарное.

byur
Кстати, часто именно так и делают -- по сценарию юзкейса делают визард. А насчет "только что пришедшей в голову идеи" :-) ... так это общепринята практика от UC к тест-кейсам и пользовательской документации :-). Кстати, в этом одно из преимуществ use-case driven разработки -- максимальное использование уже наработанного.

То, что не я придумал визарды и принципы построения справочной системы меня не удивляет. Имелось ввиду, что если визард требуется, то будет функция, соответствующая UC. А идея - это идея, куда еще пихать UC: в раздел "требования к документированию".
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963523
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 вот здесь бы и пример , т.к. нереально дублировать N-факториал похожих веток.

Подкинь идею. Полагаю, трёх точек расширения для примера как свести 8 сценариев к одному и трём расширениям будет достаточно.
Типа так.

основной сценарий
a
[если x1 выполняем расширение 1.1]
b
[если x2 выполняем расширение 2]
c
[если x3 выполняем расширение 3]
[если x1 выполняем расширение 1.2]
d

расширение 1.1
e1.1
расширение 1.2
e1.2

расширение 2
e2

расширение 3
e3.1
e3.2

Когда условия x1, x2, x3 не выполнены, имеем сценарий a,b,c,d.
Если x1, то имеем a,e1.1,b,c,e1.2,d. Заметь, что значение x1 вычисляется только после шага a (точка первого вхождения), после c используем известное значение x1.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963800
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
UC - классификатор. Сценарий - объект. Сценарий можно писать не менее формально чем UC, просто это разные вещи. UC описывает всё множество сценариев, тогда как сценарий, это только одно из проявлений UC.

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


Сценарий сценарию -- рознь. Да UC -- это набор логически объединенных сценариев, написанных по определенным правилам. Я хотел сказать, что сценарии могут существовать независимо от UC :-), т.е. даже когда технику UC вообще не используют -- пример я привел -- описание движения по пользовательскому интерфейсу -- это не юзкейс, а сценарий будет существовать.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33963802
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123
может проще?
UC - классификатор сценариев разрабатываемой системы. Сценарий - элемент UC, описывающий один из вариантов взаимодействия пользователя с системой (может ветвится с переходами - условиями).


Еще раз повторюсь, отделите ПРОСТО сценарии, существущие вне контекста юзкейса и юзкейсы как наборы сценариев. Что ж вы зашорили себе глаза одними юзкейсами?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33964340
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для размышления:
WWWРекомендую почитать соответствующую литературу, например книгу А. Коберна (
http://www.books.ru/shop/books/24368
). Либо пройти обучение на специализированных курсах.
Если коротко -- юзкейс должен отражать цель Эктора по отношению к системе или организации (в случае бизнес-юзкейсов) .

У Клиента по отношению к организации есть цель -- получить что-то (нечто что он заказывает, например, некий товар). Отсюда бизнес-юзкейс (или если идти по Коберну, то UC уровня "облако") будет так и именоваться " Преобрести товар ".
2.
Расписываем что он для этого делает, и как на его действия отвечает организация
-- Клиент заполняет бланк заказа и отправляет его, Организация выставляет счет, Клиент оплачивает его, Организация отправляет товар, ... :-).

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

Имеем системный юзкейс "Создать счет" .
Что делает Оператор? Видимо берет Заявку клиента и вводит информацию о заявке. Но система должна, скажем, сформировать список товаров и предложить выбрать товар Оператору из списка -- это нужно явно указать в теле юзкейса . И т.д. для этого юзкейса.

У менеджере цель -- Выставить счет ... та же логика. Только вот не вполне понятно почему создать счет и выставить счет -- разные вещи. Т.к. тонкостей я не знаю, то могу только предполагать -- возможно выставить счет и не будет по сути отдельным юзкейсом, а просто будет объединен с "Создать счет", при таком варианте -- стоит именовать юзкейс как "Выставить счет".
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33964375
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/forum/actualthread.aspx?tid=308707&pg=1&hl=%e2%e8?

byur Member Откуда: Москва, Borland
1. Бизнес-процессы -- суть динамачиская составляющая бизнес-моделирования, есть еще и статическая.
2. Коль скоро вы начали работать с RR то имеест смысл работать в соответствии с методологией RUP, как мнинмум в части последовательности проработки бизнес-модели, модели анализа, модели проектирования и имеплементации (выбирете что из этого реально вам нужно). Обычно подход такой: Сначала (когда не понятна предметная область до конца) разрабатывают модель бизнес-юзкейсов, где в качестве scope выступает ОРГАНИЗАЦИЯ (или другой бизнес-юнит), и все бизнес-экторы -- веншние по отношению к организации/юниту сущности. Через реализацию бизнес-юзкейсов подходим в выделению business workers и их операций -- которые по сути -- материал для выделения системных юзкейсов.
Следующий шаг -- построение модели системных юзкейсов (теперь scope -- ваша система!). Тут часть экторов перекочуюет из business workers, но теперь они Экторы! Модель анализа, включает в себя еще и создание т.н. domain model, по сути это диаграмма классов бизнес-сущностей -- на базе которой, кстати, можно уже и приступать к разработке ERD для проектирования БД.
3. Важный момент. Юзкейсы имеет смысл ПИСАТЬ, а не рисовать на UML с большим количеством инклюдов и экстендов. Тем самым вы сможете описать динамическю составляющую вашей как бизнес-модели, так и системной. Как вариант -- можно каждый юзкейс специфицировать при помощи тех же UML activity диаграмм или collaboration. Но текстом -- лучше. Диаграмму юзкейсов можно использовать как "содержание".

______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965172
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123
byur Member Откуда: Москва, Borland
3. Как вариант -- можно каждый юзкейс специфицировать при помощи тех же UML activity диаграмм или collaboration. Но текстом -- лучше. Диаграмму юзкейсов можно использовать как "содержание".

В контексте того, что мы обсуждаем ТЗ, нужно учесть, что диаграммы activity или collaboration специфицируют реализацию UC, взаимодействие внутренних частей системы в ответ на события. Их следует создавать после разработки ТЗ, поскольку в процессе технического проектирования мы можем выбрать иной вариант решения.
Однако, такие модели могут быть полезны для выявления сценариев UC.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965269
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman mcureenab BoatmanЧтобы не страдать раздвоением личности, когда модель расходится с требованиями, в описанном случае предлагаю разбить исходный UC на два и связать их отношением extends. Тогда не придется мучительно выделять из UC, который сам по себе может быть записан в ТЗ, какие-то волшебные требования и отслеживать их сложные отношения с исходной моделью.

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

К стати, в какой форме ты предполагаешь запись UC в ТЗ? Это будет набор сценариев или как? Как запись UC согласуется со стандартной структурой ТЗ?
ИМХО не менять модель (выделенные слова) можно только если она выбрасывается сразу после подписания ТЗ при условии, что в ТЗ или в его дополнении будет написана суть вносимых изменений. Иначе, мы теряем информацию. Если просто в работу что-то не пойдет, можно не разрабатывать трассируемые из выкинутого архитекурные элементы. При этом модель уже не сможет служить для обзорного взгляда на систему (получается: здесь играем, здесь не играем). Если в модели наступили неучтенные изменения, вы не сможете с ней дальше работать.

Ещё один аргумент в пользу разделения требований и модели.
Положим клиент заказал нам поставку некоторой системы и предоставил ТЗ, которое разработала для него третья фирма. Мы смотрим на требования и понимаем, что мы когда-то для кого-то сделали Мегасистему, которая удовлетворяет почти всем требованиям и предоставляет ещё кучу ненужной клиенту функциональности.
Естественно, мы не будем кастрировать модель нашей системы, а только дополним её новыми частями и требованиями. В итоге имеем модель Мегасистемы с множеством требований, которое включает подмножеством требования из ТЗ заказчика.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965317
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurСценарий сценарию -- рознь. Да UC -- это набор логически объединенных сценариев, написанных по определенным правилам. Я хотел сказать, что сценарии могут существовать независимо от UC :-), т.е. даже когда технику UC вообще не используют -- пример я привел -- описание движения по пользовательскому интерфейсу -- это не юзкейс, а сценарий будет существовать.

И я про тоже. По аналогии с матанализом. UC и сценарий, это как параметризованная функция и её график (частное решение при заданных значениях параметров). Обычно мы имеем дело с набором сценариев, которые, говоря математически, образуют систему частных решений (графиков) анализируя которую мы можем получить множество аналитических решений этой системы. Если это решение является логически завершённым с точки зрения пользователя системы, т.е. отвечает на вопрос как с помощью системы пользователь достигнет бизнес цели (то, для чего создаётся система), мы называем его UC.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965429
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
Ещё один аргумент в пользу разделения требований и модели.
Положим клиент заказал нам поставку некоторой системы и предоставил ТЗ, которое разработала для него третья фирма. Мы смотрим на требования и понимаем, что мы когда-то для кого-то сделали Мегасистему, которая удовлетворяет почти всем требованиям и предоставляет ещё кучу ненужной клиенту функциональности.
Естественно, мы не будем кастрировать модель нашей системы, а только дополним её новыми частями и требованиями. В итоге имеем модель Мегасистемы с множеством требований, которое включает подмножеством требования из ТЗ заказчика.
В общем случае на здоровье. Но в ТЗ или вы пишете, что разработка новой системы будет произведена пудем модификации имеющейся. Или не пишете, тогда ДЛЯ ЗАКАЗЧИКА вы должны представить полную картину, что у него будет в результате. А то при сдаче системы могут начаться недоразумения.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965580
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanВ общем случае на здоровье. Но в ТЗ или вы пишете, что разработка новой системы будет произведена пудем модификации имеющейся. Или не пишете, тогда ДЛЯ ЗАКАЗЧИКА вы должны представить полную картину, что у него будет в результате. А то при сдаче системы могут начаться недоразумения.

Заказчику побарабану есть у нас Мегасистема или мы создаём её с 0. У заказчика нет никакой системы, ему не нужно ничего дорабатывать. Он заключает договор на поставку системы, исполнитель сам решает использовать Мегасистему в качестве прототипа, или создавать новую систему.
Если система удовлетворяет требованиям заказчика, то что ещё нужно? Зачем ему знать о ненужных и, возможно, непонятных ему функциях?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33965943
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenabЗаказчику побарабану есть у нас Мегасистема или мы создаём её с 0. У заказчика нет никакой системы, ему не нужно ничего дорабатывать. Он заключает договор на поставку системы, исполнитель сам решает использовать Мегасистему в качестве прототипа, или создавать новую систему.
Если система удовлетворяет требованиям заказчика, то что ещё нужно? Зачем ему знать о ненужных и, возможно, непонятных ему функциях?
Вот в ТЗ должны быть полные и непротиворечивые ТРЕБОВАНИЯ ЗАКАЗЧИКА и именно по тому, что ему побарабану, что там есть еще, избыточных требований там быть не должно.
Про побарабану можно долго спорить, но не в этой ветке.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33972141
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как соогласуется разработка концепции АС с положением "требования не должны ограничивать разработчика в поиске реализации"? Ведь концепция является вариантом реализации и исходя из этого варианта формулируются требования. Выходит, концепция АС, как фига в кармане? Т.е. требования формулируются применительно к принятой концепции, а не абстрактному коню в вакууме?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33972608
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
В контексте того, что мы обсуждаем ТЗ, нужно учесть, что диаграммы activity или collaboration специфицируют реализацию UC, взаимодействие внутренних частей системы в ответ на события. Их следует создавать после разработки ТЗ, поскольку в процессе технического проектирования мы можем выбрать иной вариант решения.
Однако, такие модели могут быть полезны для выявления сценариев UC.

UML нас не ограничивает ИМЕННО таким использованием этих диаграмм ... да, ими (в БОЛЬШЕЙ степени collaboration) описывают реализацию -- никто не спорит, но например НИЧТО не запрещает описать в виде activity или sequence диаграммы сценарии юзкейса, в терминах сущностей "Actor" и "Система" (или организация для бизнес-юзкейсов), рассматривая систему как "черный ящик", не так ли? :-)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33972611
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
И я про тоже. По аналогии с матанализом. UC и сценарий, это как параметризованная функция и её график (частное решение при заданных значениях параметров). Обычно мы имеем дело с набором сценариев, которые, говоря математически, образуют систему частных решений (графиков) анализируя которую мы можем получить множество аналитических решений этой системы. Если это решение является логически завершённым с точки зрения пользователя системы, т.е. отвечает на вопрос как с помощью системы пользователь достигнет бизнес цели (то, для чего создаётся система), мы называем его UC.

Я не уверен, что вы о том же. Еще раз повторюсь, что формально -- юзкейса может ВООБЩЕ не существовать (пример движения по пользовательскому интерфейсу) -- а сценарий, который НИКАКОГО отношения к UC иметь не будет ВООБЩЕ, существовать МОЖЕТ.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33972614
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123для размышления:
[quot WWW]Рекомендую почитать соответствующую литературу, например книгу А. Коберна (
http://www.books.ru/shop/books/24368
). Либо пройти обучение на специализированных курсах.
Если коротко -- юзкейс должен отражать цель Эктора по отношению к системе или организации (в случае бизнес-юзкейсов) .

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

And so what?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33973238
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur mcureenab
В контексте того, что мы обсуждаем ТЗ, нужно учесть, что диаграммы activity или collaboration специфицируют реализацию UC, взаимодействие внутренних частей системы в ответ на события. Их следует создавать после разработки ТЗ, поскольку в процессе технического проектирования мы можем выбрать иной вариант решения.
Однако, такие модели могут быть полезны для выявления сценариев UC.

UML нас не ограничивает ИМЕННО таким использованием этих диаграмм ... да, ими (в БОЛЬШЕЙ степени collaboration) описывают реализацию -- никто не спорит, но например НИЧТО не запрещает описать в виде activity или sequence диаграммы сценарии юзкейса, в терминах сущностей "Actor" и "Система" (или организация для бизнес-юзкейсов), рассматривая систему как "черный ящик", не так ли? :-)

Согласен. В одной умной книжке автор установил такой порядок, и я захотел обсудить этот вопрос. Понятно, что модель можно рассматривать только с точки зрения её внешних проявлений абстрагируясь от того какие моторчики и шестерёнки из дерева в ней крутятся (чёрный ящик). Хорошая модель часто переносится в реализацию без существенных изменений. Сам использовал модели системы для объяснения что она должна делать.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33973274
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurЯ не уверен, что вы о том же. Еще раз повторюсь, что формально -- юзкейса может ВООБЩЕ не существовать (пример движения по пользовательскому интерфейсу) -- а сценарий, который НИКАКОГО отношения к UC иметь не будет ВООБЩЕ, существовать МОЖЕТ.

Так тоже может быть. Можно сказать, что UC это папка в которой собраны сценарии связанные с решением определённой задачи пользователя системы. Такой подход на современном этапе развития считается удобным. Мы можем классифицировать сценарии по другому принципу, и назвать такие группы сценариев CU или вообще никак не классифицировать сценарии.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33973306
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur Petro123для размышления:
[quot WWW]Рекомендую почитать соответствующую литературу, например книгу А. Коберна (
http://www.books.ru/shop/books/24368
). Либо пройти обучение на специализированных курсах.
Если коротко -- юзкейс должен отражать цель Эктора по отношению к системе или организации (в случае бизнес-юзкейсов) .

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

And so what?

Как я понимаю. "Создать счёт", это операция (например, пользователь запускает печать счёта или отправляет его по e-mail, в результате счёт создан), "Выставить счет" - UC. После создания счёта его нужно подписать, поставить печать, доставить клиенту. Могу представить, что не во всяком сценарий UC "Выставить счёт", пользователь создаёт счёт. Например, если он обнаружил, что клиент ничего не покупал, то создавать счёт не нужно.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33975772
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BoatmanА что это, если не модель?
"Моде́ль — описание объекта (предмета, процесса или явления) на каком-либо формализованном языке, составленное с целью изучения его свойств. Такое описание особенно полезно в случаях, когда исследование самого объекта затруднено или физически невозможно." - это одно из определений. ТЗ описывает разрабатываемую систему или нет?


Нет, ТЗ не ОПИСЫВАЕТ разрабатываемую систему, а предъявляет требования к ней. Описывать систему будет ДИЗАЙН -- например на UML диаграммах.

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


Понятие viewpoint и view в большей степени отождествляется с архитектурным описанием системы (см. например "IEEE - 1471 Recommended practice for software Architecture description", и http://www.almportal.ru/public/so/book/3-2-software_engineering_design.pdf)

BoatmanНе вижу в данном конкретном выделенном Вами тексте плевки. "Юзкейсы - ерунда" в этой ветке Вы сказали первым. Я, не могу в этом с Вами согласиться.


Имелось ввиду, что при таком подходе есть риск прийти к такому выводу о технике юзкейсов, что лично наблюдал :-).

Boatman
В ответ на вопрос, требование или нет. требование может звучать так: система должна поддерживать следующие варианты использования ....
Но это одно и то же, что и смущающая Вас "автоматизация деятельности". Так как UC - та же самая совместная деятельность актера и системы. И еще раз: функция будет атомарным кирпичиком из которого строится UC, если только не требуется жесткий надзор системы над соблюдением сценария, тогда соблюдение прописанного UC само будет функциональным требованием.


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

BoatmanДопустим, UC - это сценарий, специализированный по цели своего применения. Речь шла о другом: существует много уровней перехода от целей к средствам и т.д.


UC -- это набор сценариев. UC описывает что делает пользователь и система для достижения цели. В результате определенных действий цель может быть и не достигнута -- это тоже фиксируется в юзкейсе.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33976153
Boatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur
Нет, ТЗ не ОПИСЫВАЕТ разрабатываемую систему, а предъявляет требования к ней. Описывать систему будет ДИЗАЙН -- например на UML диаграммах.

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

byur
Понятие viewpoint и view в большей степени отождествляется с архитектурным описанием системы (см. например "IEEE - 1471 Recommended practice for software Architecture description", и http://www.almportal.ru/public/so/book/3-2-software_engineering_design.pdf)

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

byur
Имелось ввиду, что при таком подходе есть риск прийти к такому выводу о технике юзкейсов, что лично наблюдал :-).

Вы хотите поговорить об этом? ;)

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

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

byur
UC -- это набор сценариев. UC описывает что делает пользователь и система для достижения цели. В результате определенных действий цель может быть и не достигнута -- это тоже фиксируется в юзкейсе.
Не надо путать специализацию сценария по цели разработчика системы (то есть UC - это сценарий специального вида, применяемый для специальных целей) и цель пользователя по отношению к системе, которая становится ясна из UC.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33979463
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boatman
Здесь мы не договоримся. ТЗ - это взгляд на систему снаружи. То есть большее внимание уделено надсистеме и граничным элементам. Хочу еще раз указать, что модель - это некое отражение системы, модели могут быть очень разными и ТЗ подходит под определение модели. Точнее, кроме модели системы в ТЗ есть еще кое-что, но это здесь непринципиально.


Не настаиваю, останемся каждый при своем мнении :-). Это же просто дискуссия.

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

Усложнять -- просто, упрщать -- сложно. Думаю, что в эту сторону я влезать не буду. IMHO это усложнение. Термин viewpoint таки ассоциируется. Концепция views/viewspoints универсальна. Но это больше "фисолофия", чем инженерия.

Boatman
Вы хотите поговорить об этом? ;)


Отнюдь. Только хочу, чтобы высказанное было правильно интерпретировано :-). Именно поэтому уточнил, что имел ввиду, ибо мне показалось, что не верно было истолковано.

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


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

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

Тут нет никакой путаницы -- все четко. UC -- есть цель пользователя по отношению к системе, выраженная в виде набора сценариев и доп. характеристик. Вот и все. Цели разработчиков тут не причем.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33979508
ищфеьфт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Будем считать, что консенсус достигнут кроме случаев, в которых стороны остались при своем мнении :)
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33980197
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byur
Boatman
При описании системы мы сами выбираем те, которые для нас важны. Ни одна система не может быть описана с абсолютной точностью, то есть мы сознательно огранирчиваем глубину стратификации. ТЗ и пакет архитектурных документов суть модели, отражающие разные слои (страты, а не viewpoints) системы.

Усложнять -- просто, упрщать -- сложно. Думаю, что в эту сторону я влезать не буду. IMHO это усложнение. Термин viewpoint таки ассоциируется. Концепция views/viewspoints универсальна. Но это больше "фисолофия", чем инженерия.


Если перевести обсуждение в термины UML, модель - определяет систему с некоторой точки зрения (viewpoint). Например, модель использования (UC), домена, проектирования и реализации. Система определяется набором моделей, которые описывают её каждая со своей точки зрения. В свою очередь диаграммы являются графическими представлениями (view) некоторых частей модели. Модель можно представить и другими способами, например закодировать её в XML. Представления позволяют нам судить о модели.
ТЗ, есть представление системы в виде требований.

Как ни крути, модель будет содержать несущественные элементы. Например, макет дома может быть выполнен из бумаги, и пенопласта, но материал из которого выполнен макет не имеет значения, поэтому мы выделяем и формулируем только существенные свойства модели -- требования.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33981152
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
Если перевести обсуждение в термины UML, модель - определяет систему с некоторой точки зрения (viewpoint). Например, модель использования (UC), домена, проектирования и реализации. Система определяется набором моделей, которые описывают её каждая со своей точки зрения. В свою очередь диаграммы являются графическими представлениями (view) некоторых частей модели. Модель можно представить и другими способами, например закодировать её в XML. Представления позволяют нам судить о модели.
ТЗ, есть представление системы в виде требований.

UML не определяет никак то что вы перечислили ... UML это только язык, а не методология. В данном случае это определяет методология RUP.

А ТЗ -- это все-таки еще не модель системы (IMHO). Если только модель требований к системе :-)))
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33982056
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
byurUML не определяет никак то что вы перечислили ... UML это только язык, а не методология. В данном случае это определяет методология RUP.

А ТЗ -- это все-таки еще не модель системы (IMHO). Если только модель требований к системе :-)))

В UML есть понятия подсистемы, модели и диаграммы. Методология определяет только точки зрения с которых нужно строить модели, т.п..

Перечисленные мною виды моделей взяты не из RUP, а из MS Visio 2000 и, (если не ошибаюсь) происходят от методологии Objectory.

ТЗ, это перечень требований к системе. ИМХО, ТЗ можно назвать моделью системы, в которой нет ничего лишнего, вспомогательного.

Если провести аналогию, то требования задают точки, через которые должен проходить график некоторой неизвестной функции (системы). Модель - функция (точнее сечение), график которой проходит через эти точки.
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #33985721
Фотография byur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mcureenab
В UML есть понятия подсистемы, модели и диаграммы. Методология определяет только точки зрения с которых нужно строить модели, т.п..


В вашем сообщении про диаграммы и подсистемы ничего не говорилось ...

mcureenab
Перечисленные мною виды моделей взяты не из RUP, а из MS Visio 2000 и, (если не ошибаюсь) происходят от методологии Objectory.


Которую в свою очередь вобрал в себя RUP :-). Или кто-то пользуется у нас еще и Objectory?

mcureenab
ТЗ, это перечень требований к системе. ИМХО, ТЗ можно назвать моделью системы, в которой нет ничего лишнего, вспомогательного.

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

Не понимаю как согласуются две части этого clause? 1 утверждение, что "ТЗ можно назвать моделью" и второе что "ТЗ -- это точки через которые пройдет ф-я, а модель это -- функция"?
...
Рейтинг: 0 / 0
ГОСТ 34.602-89 Вопросы и ответы
    #34742533
RuGost
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Я также занимаюсь проблемой написания документации, и начал проект www.rugost.com
В нем рассматриваются именно практические примеры написания как формальных разделов документов, так и смысловых.
В данный момент описано около одной трети всех возможных документов ТП и РД.
Было бы интересно узнать Ваше мнение.
...
Рейтинг: 0 / 0
121 сообщений из 121, показаны все 5 страниц
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / ГОСТ 34.602-89 Вопросы и ответы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]