|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Здрасте всем! Уже пол-года пытаемся перейти на "правильное" проектирование с помощью RR 2003. И все возникают вопросы и непонятки в основном по первым процессам: анализ БП и выявление требований, функционала системы. Вроде бы БП удобнее проанализировать в BPWin. Но хочется все-в-одном, чтобы сгенерить потом документацию из одного места. Остается RR. А в RR начинаешь рисовать use-cases и понимаешь, что что-то ты не так делаешь... Вроде бы рисуешь вариант использования (ВИ), но так и тянет нарисовать последовательность вариантов по горизонтали (типа по-времени). Но я вроде понял что это неправильно. А как правильно? Рисовать актеров а вокруг них основные ВИ? А потом расширять их черерз extend, include на более подробные? А до какой степени подробности??? Или просто брать основной ВИ и рисовать ему блок-схему (Activity)? А еще эти диаграммы последовательности (ДП)... Они вроде удобны, но они для работы с объектами. А что брать как объекты, когда надо описать алгоритм действий оператора+системы для реализации какого-либо ВИ??? Сущности, визуалку - ведь можно и так и так. Потом у нас такой подход к созданию ПО, что классы нам генерить не надо - получается их приходиться два раза описывать - один раз там, один раз в ПО - хотя тут можно генерить описания классов как документ в нужном мне формате... А БД вообще удобнее сделать в ERWin. - И опять 25 - Сущности в ERWin, сущности в RR, а как синхронизировать, да потом чтобы сгенерить на Оракл??? А программисты все-равно до конца все по этим картинкам с описаниями не понимают - все равно приходиться объяснять. А потом не будешь же все до мелочей делать - кажды алгоритм расписывать - только сложные? А то будешь проектировать пол-года и программировать пол-года. А когда до этого делали "на коленке" (бумажке, абы как - все алгоритмы смотри в коде... и т.п.) все быстрее получалось. Правда ошибок было много и пототм не разберешь, кто как что сделал. Но сказать что сейчас у нас прям резко все улучшилось по срокам и по ошибкам нельзя. Потом вроде взяли сделали табличку в Excel "функции-роли" - тоже вроде не удобно - не охватываешь взглядом. А еще у нас требования меняют день ото дня - основные вроде не трогают - а дополнительные - это им за милое дело... Так что оказался я в творческом ступоре... Короче нужен мне курс обучения :) Собственно сам вопрос вот в чем: Как другие разработчики выполняют эти первые этапы проектирования (Анализ БП, выявление треб и функционала с правами на него, описание алгоритмов, разработка классов и БД)??? Поделитесь пожлст опытом с "зелеными"... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2006, 19:33 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
panЗдрасте всем! Уже пол-года пытаемся перейти на "правильное" проектирование с помощью RR 2003. И все возникают вопросы и непонятки в основном по первым процессам: анализ БП и выявление требований, функционала системы. В наших широтах цикл - год. Так что рано Вы нервничаете. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 02:14 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
А вот действительно... Только что зашёл шеф и почитав по моей просьбе (а сейчас мы только закончили со структурой бд и приступили к UML-проектированию), выдал: "А по выплаченной з/п проект Золотой получится!?! >:()" ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 08:38 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
П.с.:у нс также bpwin и erwin и RR. Вообще сейчас мысли на visio 2003 переходить: там можно всё... кроме генерирования документации и кода. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 08:41 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
panА в RR начинаешь рисовать use-cases и понимаешь... Такое впечатление, что у вас нет понимание ДВИ (Диаграмма Вариантов Использования) для чего они оспользуюися и как правильно их рисовать. Вы пытаетесь использовать какую либо методлоогию? Ведь ЮМЛ - это только язык моделирования и не больше. pan Потом у нас такой подход к созданию ПО, что классы нам генерить не надо - получается их приходиться два раза описывать - один раз там, один раз в ПО - хотя тут можно генерить описания классов как документ в нужном мне формате... А почему Вы не генерите классы? panА БД вообще удобнее сделать в ERWin. - И опять 25 - Сущности в ERWin, сущности в RR, а как синхронизировать, да потом чтобы сгенерить на Оракл??? Так Роза поддерживает проектирование БД для Оракла или там вас что-то не устраивает? panА еще у нас требования меняют день ото дня - основные вроде не трогают - а дополнительные - это им за милое дело... Для этого есть инструмены управления требованиями. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 09:49 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Мы пытаемся использовать RUP. А про ДВИ - я и спрашиваю - КАК? Классы мы не генерим, потому что у нас используется Delphi и своя структура приложения. У нас нет общеприянитых классов. У нас есть один универсальный класс, в который можно на ходу добавлять какие угодно поля. Но эти поля мы и описываем в олбщих инклюдах - они и есть наш "класс". Таким образом мы уходим от проблем некорректной сборки версий - хотя может это и неправильно. Поэтому генерить стандартный класс нам никчему. С БД в ERWinе все прозрачно, а в RR все непонятно - как делать эту БД??? А что есть требования и с какой точки зрения они рассматриваются? Ведь требования можно написать совсем по-разному - требования к выполнению бизнес-процесса, требования к интерфейсу, требования к функционалу, требования к архитектуре... и т.д. А функции системы - это есть требования или нет? Подскажите!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 10:49 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Может подскажите хорошую книгу по методике проектирования? А еще бы увидеть хоть бы одну полноценную модель в RR... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 10:52 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Вот этот пример - это правильно? Если да, то до какой степени его прорабатывать? Ведь "Ввод заказа" можно довести до очень маленьких квантов типа "Выбор клиента". ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 12:21 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
А смысл БП таков: Есть прием заказов. При принятии заказов мы должны сразу обязательно создать счет на оплату введенных заказов. Если клиент новый, то надо его сначала добавить в БД. При выдаче заказов обязательно формируется счет-фактура и иногда акт выдачи. Ну и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 12:25 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
А вот это правильно??? В чем разница между include и extend? Как я понял связь Include - это обязательный ВИ, без которого тот ВИ кто на него указывает, не может состояться. Как я понял связь Extend - это необязательный ВИ, который может случиться а может и нет. Основной ВИ указывает на дополнительный. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 12:44 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Или ВИ "Редактирование клиента" надо описать диаграммой псоледовательности или диаграммой действий? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 12:47 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
panА вот это правильно??? В чем разница между include и extend? Как я понял связь Include - это обязательный ВИ, без которого тот ВИ кто на него указывает, не может состояться. Как я понял связь Extend - это необязательный ВИ, который может случиться а может и нет. Основной ВИ указывает на дополнительный. 1. Бизнес-процессы -- суть динамачиская составляющая бизнес-моделирования, есть еще и статическая. 2. Коль скоро вы начали работать с RR то имеест смысл работать в соответствии с методологией RUP, как мнинмум в части последовательности проработки бизнес-модели, модели анализа, модели проектирования и имеплементации (выбирете что из этого реально вам нужно). Обычно подход такой: Сначала (когда не понятна предметная область до конца) разрабатывают модель бизнес-юзкейсов, где в качестве scope выступает ОРГАНИЗАЦИЯ (или другой бизнес-юнит), и все бизнес-экторы -- веншние по отношению к организации/юниту сущности. Через реализацию бизнес-юзкейсов подходим в выделению business workers и их операций -- которые по сути -- материал для выделения системных юзкейсов. Следующий шаг -- построение модели системных юзкейсов (теперь scope -- ваша система!). Тут часть экторов перекочуюет из business workers, но теперь они Экторы! Модель анализа, включает в себя еще и создание т.н. domain model, по сути это диаграмма классов бизнес-сущностей -- на базе которой, кстати, можно уже и приступать к разработке ERD для проектирования БД. 3. Важный момент. Юзкейсы имеет смысл ПИСАТЬ, а не рисовать на UML с большим количеством инклюдов и экстендов. Тем самым вы сможете описать динамическю составляющую вашей как бизнес-модели, так и системной. Как вариант -- можно каждый юзкейс специфицировать при помощи тех же UML activity диаграмм или collaboration. Но текстом -- лучше. Диаграмму юзкейсов можно использовать как "содержание". P.S. представленная модель юзкейсов не корректна. Юзкейсы выделены неверно, и проименованы неверно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 13:42 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
byurP.S. представленная модель юзкейсов не корректна. Юзкейсы выделены неверно, и проименованы неверно. А как правильно то???? И как их именовать??? Научите!!!! Пожалуйста!!!! Вот например взять кусок: Организация принимает заказы. Приходит клиент заполняет бланк заказа или присылает бланк по мылу. Заказ оператором вводиться в БД. Клиенту на группу одновременно принятых заказов оператор создает счет. Менеджер выставляет счет клиенту. Как это правильно описать в Use-casах??? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 13:58 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
И как от use-cases перейти к функциональным требованиям и в каком виде??? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 14:00 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
А так правильно? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 14:03 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 14:03 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 14:03 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
pan byurP.S. представленная модель юзкейсов не корректна. Юзкейсы выделены неверно, и проименованы неверно. А как правильно то???? И как их именовать??? Научите!!!! Пожалуйста!!!! Вот например взять кусок: Организация принимает заказы. Приходит клиент заполняет бланк заказа или присылает бланк по мылу. Заказ оператором вводиться в БД. Клиенту на группу одновременно принятых заказов оператор создает счет. Менеджер выставляет счет клиенту. Как это правильно описать в Use-casах??? Боюсь что только сообщением в форуме все тонкости работы с юзкейсами невозможно описать. Рекомендую почитать соответствующую литературу, например книгу А. Коберна (http://www.books.ru/shop/books/24368). Либо пройти обучение на специализированных курсах. Если коротко -- юзкейс должен отражать цель Эктора по отношению к системе или организации (в случае бизнес-юзкейсов). По вашему описанию. У Клиента по отношению к организации есть цель -- получить что-то (нечто что он заказывает, например, некий товар). Отсюда бизнес-юзкейс (или если идти по Коберну, то UC уровня "облако") будет так и именоваться "Преобрести товар". Вот и расписывайте что он для этого делает, и как на его действия отвечает организация -- Клиент заполняет бланк заказа и отправляет его, Организация выставляет счет, Клиент оплачивает его, Организация отправляет товар, ... :-). Теперь рассмотрим ближе к системе юзкейсы. Из этого бизнес-юзкеса следует, что организация обрабатывает заявки Клиентов. Это делает Оператор. Какая у него цель по отношению к системе .. да просто Создать счет (при помощи системы и на основании заявки). Имеем системный юзкейс "Создать счет". Что делает Оператор? Видимо берет Заявку клиента и вводит информацию о заявке. Но система должна, скажем, сформировать список товаров и предложить выбрать товар Оператору из списка -- это нужно явно указать в теле юзкейса. И т.д. для этого юзкейса. У менеджере цель -- Выставить счет ... та же логика. Только вот не вполне понятно почему создать счет и выставить счет -- разные вещи. Т.к. тонкостей я не знаю, то могу только предполагать -- возможно выставить счет и не будет по сути отдельным юзкейсом, а просто будет объединен с "Создать счет", при таком варианте -- стоит именовать юзкейс как "Выставить счет". ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 14:54 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Хорошо. А как далее расписываются use-cases? С помощью диаграмм деятельности? я имею ввиду сценарии use-casе-а. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 16:25 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Можно в текстовом виде (искать по словам Use Case Specification), можно в виде ДД или ДС. З.Ы. Вечером выложу хороший тьюториал по шагам. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 16:47 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
panХорошо. А как далее расписываются use-cases? С помощью диаграмм деятельности? я имею ввиду сценарии use-casе-а. Кое-что можно увидеть тут http://www.ezforum.org/uml2/uml2-about74.html, еще тут http://www.ezforum.org/uml2/uml2-about51.html ... и далее по этому форуму посмотреть. Там было сходное обсуждение. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 17:27 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Как и обещал, выкладываю http://uml2.narod.ru/files/smpls/RUPTutorial.zip Да-да на том форуме uml2.ezforum.org полазейте, там много чего интересного. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 18:54 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
Всем большое спасибо. Буду читать ссылки. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2006, 19:10 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
pan а это правильно? Это не правильно по чисто формальным признакам. Прецедент, в частности "Редактирование клиента" не может одновременно быть расширением и включением. Включать можно только самостоятельный прецедент. Отношение включения очень напоминает вызов процедуры. Включения используются для того, чтобы одно и тоже поведение использовать в нескольких прецедентах, иначе в нём нет смысла. Как любой прецедент, включение должно иметь смысл для пользователя системы или подсистемы - актора. Если на очередном уровне декомпозиции мы не можем указать порядок взаимодействия актора с системой, декомпозицию прецедентов нужно прекратить. Расширение (расширяющий прецедент) строго говоря прецедентом не является. Расширяющий прецедент не может существовать без родителя. Расширение используется для того, чтобы изобразить второстепенные варианты основного прецедента. С тем же успехом можно создать несколько независимых прецедентов, но тогда будет не ясно, какой из них является основным, а какие случаются относительно редко или только в исключительных ситуациях. Для понимания сути прецедентов очень полезно писать сценарии - экземпляры прецедентов. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2006, 18:54 |
|
Разработка ИС, UML, Rose, Use-cases and требования
|
|||
---|---|---|---|
#18+
panА программисты все-равно до конца все по этим картинкам с описаниями не понимают - все равно приходиться объяснять. А потом не будешь же все до мелочей делать - кажды алгоритм расписывать - только сложные? А то будешь проектировать пол-года и программировать пол-года. А когда до этого делали "на коленке" (бумажке, абы как - все алгоритмы смотри в коде... и т.п.) все быстрее получалось. Правда ошибок было много и пототм не разберешь, кто как что сделал. Но сказать что сейчас у нас прям резко все улучшилось по срокам и по ошибкам нельзя. Детальные алгоритмы имеет смысл писать на алгоритмическом языке, как правило на целевом языке программирования. UML слеует использовать для МОДЕЛИРОВАНИЯ сложного алгоритма, т.е. для описания основных действий и переходов, так чтобы суть работы остовалась понятной, и в то же время не погрязнуть в подробностях. В модели, точнее на одной диаграмме, не обязательно расписывать все ветки алгоритма. Можно рассматривать сечения алгоритма, то есть поведение при фиксированных значениях некоторых параметров. Совокупность диаграмм даст нам описание всего алгоритма. На счёт ошибок, UML не панацея. Более того компилятор сразу ловит синтаксические ошибки, тогда как диаграммы зачастую приходится проверять вручную. Выход - модульная итерационная разработка. Спроектировал небольшую часть системы, разработал, протестировал, отал заказчику. Одновременно можно работать над несколькими частями системы, на разных статиях итерации. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2006, 19:09 |
|
|
start [/forum/topic.php?fid=33&fpage=58&tid=1549348]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 236ms |
total: | 398ms |
0 / 0 |