Форум Сообщества Аналитиков

×


Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Galogen

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 »
4291
При освоении такой дисциплины как управление требованиями и использования таких инструментов как RaQuest и Enterprise Architect, столкнулся с такой феноменологической проблемой.

Вариант использования описывает некоторую функциональность системы и таким образом является частью требований к системе.

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

Однако можно ли утверждать, что одно требование реализует другое? Мне думается, что нет.

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

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

4292
Возможно - такой функции нет в 6.5.

Можете описать весь порядок деятельности, которую Вы выполняете?

4293
Работа / Re: Литература по специальности
« : 19 Февраля 2008, 09:36:31 »
Сейчас стал отчетливо понимать что программа обучения дает лишь поверхностные знания в области системного анализа.
Могу заверить Вас, что системный анализ системно вообще не преподается. По сути системный анализ столь же обширная и значимая дисциплина, как весь курс обучения в вузе.

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

Цитировать
(Приче вообще форма преподавания в наших вузах меня вообще бесит - но это совсем другая тема). 

Я сам преподаватель. Меня тоже не устраивает форма преподавания. А что конкретно Вас бесит? Можете ли Вы перечислить пункты? Желательно в порядке убывания значимости (или степени раздражения). Я довольно часто пытался выяснять у студентов, что же им не нравится в системе обучения, к сожалению ничего серьезного мне не сказали (что впрочем понятно)


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

А вот это похвально. Поймите, научить нельзя - научиться можно! Если у Вас возник этот мотив и желание, значит дело пойдет, быстрее или медленнее.

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

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


4294
Ничего не понял. Причем тут компоненты?

Коммуникационная диаграмма используется для обмена информацией между объектами, а не компонентами.

Тем не менее. Создаю коммуникационную диаграмму. Накидываю компоненты, добавляю сообщение. Вуа ля. (ЕА 7 версии)

4295
Сергей, привет! Ты гигант :)

Фонтанируешь, можно сказать. Манифест прочитал. Идея отличная. С удовольствием поработаю, если достанет сил.
Тебе как автору проекта, генератору идеи предлагаю продумать вопрос реализации проекта. Совместно нужно разложить задачу на кирпичики, и каждый такой кирпичик "слепить и обжечь".

Какие потребуются ресурсы? Я могу поговорить с нашими админами (в вузе) для создания площадки по разработке учебника - wiki или блоговую систему

4296
Каким образом рисовать показанные там стрелки, с цифрами 1, 1.1, 1.2 и т.д?
К сожалению, получаются просто стрелки с именами.

Правая кнопка мышки по полю диаграммы. Выбираем Свойства. Закладка Connectors. Поставьте галочку: Show collabaration numbers. Да будет Вам счастье!

На диаграммах последовательности нужно сделать кое-что иначе.
Tools - Options - Sequence - галочку Show sequence number

4297
Irr, если нет комментариев, то просто не отвечаешь в тему :) Или ты хотела выразить своё негативное отношение к теме?

4298
Работа / Re: Заказчики
« : 14 Февраля 2008, 12:45:53 »
Хотя заказчик и молодой, он ничего может не смыслить в uML, а вот блок-схемы могут быть понятнее, таки в институте на информатике заставляли изучать. То что заказчик можнт не понимать разницы между божьим даром и яичницей - это понятно.

Может просто К замочить? :)

Насколько я понимаю в ТЗ Вы публикуете поясняющие схемы, может пояснения в виде блок-схем оказалось гораздо понятнее, чем UML?

4299
Ребята, прошу прощение за слово "хаем". Вовсе не хотел никого обидеть. Совершенно не сомневаюсь в вашей компетенции и умениях.

Просто понятие теория наверное не совсем применима в данном случае, либо как заметил Денис, есть вопрос овладения этой самой теорией. К тому же врядли теорию человеческих отношений можно измерить математической гармонией. Потому наверное следует говорить об искусстве, а не теории :)

4300
Всё-таки опыт, даже небольшой, не идёт ни в какое сравнение с голой теорией.
Не могу согласиться с этим утверждением.

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

Классическая теория Ньютона например не ошибочная, просто она истинна в определенных допущениях.

4301
ПО Аналитика / Re: FAQ - все продукты Telelogic
« : 11 Февраля 2008, 11:31:23 »
Vell, похоже Вы единственный, кто пользуется этой системой. Чем помочь Вам, не знаю, возможно таковы ограничения графической системы обозначений.

4302
Виталий, на мой взгляд в книге нет ничего принципиально нового.

Что такое ВИ. Это некоторая спецификация целевого использования пользователем системы. Т.е. ВИ определяет цель использования системы. Реализация такого использования в рамках одной цели может приводить по сути к разным результатм: успешное достижение цели или неуспешное, либо частичное.
 
ВИ описывает некоторое множество возможных сценариев, путей протекания ВИ. ВИ как минимум состоит из основного потока(сценария) и альтернативных  потоков(сценариев). Метафора штанов у Коберна.

Каждый сценарий (будучи реализованный) естественно требует тестирования его реализации

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

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

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

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

Вот описание CRUD Ви из книги Gunnar Övergaard, Karin Palmkvist. Use Cases Patterns and Blueprints

Intent
Merge short, simple use casessuch as Creating, Reading, Updating, and Deleting pieces of information into a single use case forming a conceptual unit.

Keywords: Create data, delete data, information handling, merge use cases, read data, short flow, short use case, simple operation, update data.
 
Patterns
CRUD: Complete  (см. ris1)

Description
The CRUD: Complete pattern consists of one use case, called CRUD Information (or Manage Information), modeling all the different operations that can be performed on a piece of information of a certain kind, such as creating, reading, updating, and deleting it.

Applicability
This pattern should be used when all flows contribute to the same business value and are all short and simple.

Type
Structure pattern.

CRUD: Partial
Model (см. ris2)

Description
An alternative pattern models one of the alternatives of the use case as a separate use case.

Applicability
This pattern is preferable when one of the alternatives of the use case is more significant, longer, or much more complex than the other alternatives.

Type
Structure pattern.

Discussion
Quite often systems handle information that, from the system's viewpoint, is very easily created in the system. After a simple syntax or type check, and perhaps some trivial calculation or business-rule check (see Chapter 16, "Business Rules"), the information is simply stored in the system. No advanced calculations, verifications, or information retrieval will have to be performed. The description of the flow is only a few sentences long, and there are probably not more than one or two minor alternative paths in the flow. Reading, updating, or deleting the information are equally simple operations. Each of them can be described in a few sentences.

Should such operations be modeled as use cases and, if so, must they be included in the use-case model? The answer to both questions is yes. They are indeed use cases because something is to be performed in the system; someone is to use the system to create (read, delete, update) some piece of information in the system. Moreover, they must be included in the use-case model, or the model will not be complete. If these use cases are not included in the model, some stakeholder will probably miss them; otherwise, the functionality should not have been included in the system in the first place.

Luckily, this does not necessarily mean that this kind of functionality should be expressed as separate use cases. Instead, according to the CRUD: Complete pattern, we group them together in so-called CRUD use cases, including all four types of operations on some kind of informationcreation, reading, updating, and deletion of any such information.

This procedure has a few obvious advantages. First, the size of the model will be reduced, which will make it easier to grasp because the number of use cases will be reduced. Second, nobody will be interested in a system containing only a subset of these use cases (for example, read and delete, but not create and update). Grouping these flows together in a single use case called something like CRUD X ensures that all four are included in the model, and makes it clear to every reader of the model that this is the use case where all this functionality is captured. Third, the value of each of the separate use cases is very small (if any) for the stakeholders; it is the whole collection of them that gives a value to the stakeholders. Together these use cases form one conceptual unit (see Figure 20.1).

Note that if only some of the four operations are simple while others are complex, you can group the simple operations into one use case and let the other ones be modeled as separate use cases, according to the CRUD: Partial pattern.

Note also that this is a typical situation where a use case does not have only one basic flow. None of them can be said to be more "basic," or "normal," than the others. Therefore, a CRUD use case will typically have four basic flows, and possibly a few alternative flows, as is shown in the following example.

An instance of a CRUD use case will perform either a creation, a reading, an updating, or a deletion, and after that it will cease to exist. This instance will not continue to live and wait for the next operation to be performed. That operation will be performed by another instance of the same use case.

A so-called CRUD use case may of course include other (basic) flows than the four common ones, such as searching for an item, or performing some simple calculation based on an item.

It is important not to merge advanced or complex operations into one use case. They should remain separate use cases instead, because they will probably be developed, reviewed, designed, and implemented separately.

As a general rule, when not sure whether to merge the different usages into one use case or to keep them as separate use cases, they should no doubt be kept apart. This decision will not affect the functionality of the system, only the model structure and hence its maintenance.

Example
This section provides an example of the CRUD: Complete pattern. It models the registration of a new task to be performed sometime in the future, the modification of a registered but not performed task, the cancellation of such a task, and the presentation of tasks that either failed during their execution or have not yet been performed (see Figure 20.2). As you can see, the four different alternatives are quite simple and short, and they are expressed as four basic flows, because none of them can be said to be superior to the others. Therefore, this is an application of the CRUD: Complete pattern even if some of the four basic flows in this case are different from the standard ones.

см ri3. The CRUD Task use case models the creation, modification, presentation, and cancellation of a task.

Error handling and exceptional flows are expressed as alternative flows of the use case.

The Item Look-Up and the Future Task blueprints are also useful in this example.

Use Case: CRUD Task
Brief Description

The use case registers, modifies, or cancels the information about a task to be performed as stated in information received from the Task Definer.

Basic Flow

The use case has four different basic flows:

Register Task

Modify Existing Task

Cancel Task

View Tasks That Failed

REGISTER TASK

The use case starts when the Task Definer chooses to register a new task. The use case presents a list of possible kinds of tasks to the Task Definer, and asks what kind of task is to be registered, what name it is to be assigned, and when it is to be performed.

The Task Definer enters the required information. The use case checks whether the specified time is in the future and whether the name of the task is unique.

The use case registers a new task in the system and marks the task as enabled.

The use case ends.

MODIFY EXISTING TASK

The use case starts when the Task Definer chooses to modify an already registered task. The use case retrieves the names of all the tasks not marked as active and presents them to the Task Definer.

The Task Definer selects one of the tasks. The use case retrieves the information about the task and presents it to the Task Definer.

The Task Definer modifies any of the presented information except the name of the task.

The Task Definer accepts the information. The use case checks whether the specified time is in the future and, if so, stores the modified information.

The use case ends.

CANCEL TASK

The use case starts when the Task Definer chooses to cancel a task. The use case retrieves all the tasks not marked as active.

The Task Definer selects one of the tasks. The use case retrieves the information about the task and presents it to the Task Definer.

If the Task Definer confirms the cancellation, the use case removes the task; otherwise, no modifications are made.

The use case ends.

VIEW TASKS THAT FAILED

The use case starts when the Task Definer chooses to view a list of all the tasks that have failed. The use case collects all the tasks with the status failed and presents their names to the Task Definer.

The use case ends.

Alternative Flows

CANCEL OPERATION

The Task Definer may choose to cancel the operation at any time during the use case, in which case any gathered information is discarded, and the use case ends.

INCORRECT NAME OR TIME

If the name of the task is performed not unique or the time is not in the future, the Task Definer is notified that the information is incorrect and is requested to re-enter the incorrect information.

The Task Definer re-enters the information. The flow resumes where the check of the information is performed.
 
Analysis Model
The analysis model of a CRUD use case is based on all the flows of the use case. It must include the realization of all the basic flows as well as the realization of the alternative flows.

However, because the flows are quite simple in this case, the model usually contains one boundary class for presentation and modification of the information, one control class to handle any checks, and one entity class (or perhaps a few) to store the information (see Figure 20.3). The flow starts in the System Form when the Information User requests to create, read, update, or delete the information. An instance of the Information Handler is created, which opens an instance of the Information Form to the Information User.

см. ris4. An analysis model of a CRUD use case.

Depending on the chosen operation, the actor enters information about a new piece of information, or the Information Handler retrieves existing information and asks the Information User via the Information Form to select one item. The Information Form sends the new information or the identity of the selected item, respectively, to the Information Handler which performs the chosen operation. Finally, the Information Form and the Information Handler are removed and the use case ends.


4305
Саша, я думаю ты находишься под впечатлением RUP или другой методологии. Вариант использования - это и есть пользовательская история. Разница лишь в акцентах.

ВИ допускает любую форму описания и неформальную и формальную - способ записи зависит от процесса или стратегии разработки.

Однако спорить не буду.

Перечисленные тобой функции - совершенно не ВИ, а лишь части ВИ. Например ВИ : Управления справочниками - типичный CRUD ВИ и ничего более. Есть даже целый проработанный шаблон где указывается пользователь и два ВИ: CRUD и X information


Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 »