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

×


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

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


Сообщения - Denis Beskov

2071
Саша, ещё раз напомню свои идеи, чтобы не было недопонимания.

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

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

Предложенный мной метод предназначен для:
1) Формирования и наглядной визуализации динамической модели желаемой ситуации (vision).
2) Выявления ключевых работ и требований, которые должны быть выполнены и удовлетворены для получения этой ситуации (baseline + wbs).

Причём предлагается сохранять в модели работ и требований предположения, альтернативы, идеи и т.д.

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

Когда я создавал этот метод, я имел в виду микрокоманды и микропроекты (1-2 человека, небольшой веб-сайт, небольшой старап), а также малые проекты (3-5 человек, небольшая система или внедрение, малый бизнес), в которых можно и нужно охватить всё одним взглядом, понимать все детали проекта, т.к. всё делать самим и результат достаточно критичен, поэтому нужно не забыть и не учесть как можно меньше требований, задач и прочих аспектов проекта.

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

Но тем не менее, для масштабных проектов, из твоих слов не очень понял, почему применяемый ТОБОЙ подход требует высокой степени доверия.

Я процесс не строил, да и по словам наших экспертов при таких масштабах (1-5 человек) "построение процесса" как такового не имеет смысла.

2072
Работа / Re: Реестр ИТ компаний в Москве
« : 04 Апреля 2007, 04:36:17 »
А системные интеграторы - это IT-компании? Тогда где IBS, TopsBI, АйТи, Техносерв?

Вобщем создал базёнку на http://cybrarian.dabbledb.com/publish/itmarket

Можно пополнять данные, если зайти на http://cybrarian.dabbledb.com под именем dabble_free (o) beskov.ru и паролем bulldog64tile

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

2073
Работа / Re: Реестр ИТ компаний в Москве
« : 03 Апреля 2007, 12:58:38 »
давай оформим это в виде бд.
наверняка многое устарело + это лишь малая часть компаний

2074
10 апреля, в 7 часов вечера

В рамках подготовки к конференции "Российские интернет-технологии" пройдёт семинар "Оптимизация производительности БД".

Аудиторией семинара являются разработчики ИС и ПО со средним опытом, начинающие архитекторы, проектировщики систем и администраторы баз данных, IT-менеджеры.

На семинаре будут рассмотрены:
* факторы, влияющие на производительность системы
* принципы оптимизации
* бизнес-ориентированная методика оптимизации по Голдрату
* техники оптимизации на каждом из слоёв системы с акцентом на БД
* некоторые примеры
* инструменты профилирования и мониторинга.

Чтобы попасть на семинар, пришлите свои ФИО на dbperf_workshop (o) beskov.ru

Адрес проведения семинара: метро Октябрьское Поле, 1-й волоколамский проезд, д.10 строение 3, офис компании "Люксофт"

Путь от метро: первый вагон из центра, выход по подземному переходу направо, потом сразу налево, далее проходите около 50 метров вперед на остановку 105 и 800. Вам необходимы автобусы NN 105, 800, следующие до остановки "1-й Волоколамский проезд". Автобус останавливается напротив первой проходной.

Либо пешком от метро, идти минут 10

2075
Горе с этими аналитиками - сразу начинают навязывать тебе свое представление о мире, полагая, что их представление самое, что не на есть правильное:-)
Причём тут представление о мире, если ты делаешь ФИО составным атрибутом, позволяя, таким образом, писать туда что попало, хоть только фамилию, хоть только фамилию и имя. О какой целостности данных может идти речь? Что проще - проверить, что поле заполнено, или проверить, что в поле есть 2 и только 2 отдельных пробела? Это та составляющая системы, которая называется "Качество данных", тема наcтолько важная для больших компаний, что некоторые даже свой бизнес только на этом создают.

Смотри рефакторинг БД под именем Split Column.

2076
Моя задача - не внося существенных изменений в предложенную схему, сделать ее более правильной и прозрачной для использования.
Тогда почему ты называешь тему "Проектирование БД", а не "Реинжиниринг БД", "Рефакторинг БД" или "Реорганизация БД"?

2077
Цитировать
Кажется, имеет смысл сузить исходную задачу.

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

Цитировать
Итак 1 раз в полгода происходит заполнение некоторой БД  фактами о сдачи экзаменов. Что бы ... остаться на самом простом уровне восприятия задачи предположим, что результаты сессии - архивируются и помещаются на хранение, при архивировании во все сущности добавляется год и время года. Одновременно, происходит создание новой БД с переносом данных по студентам - группам (номер курса в номере группы у студентов увеличивается на 1).
Клёво, добавляются новые атрибуты, есть отдельное хранилище - архив, создаётся новая БД, туда переносятся данные - и всё это ты называешь упрощением? А не проще ли было добавить к Экзамену и Сессии атрибут Состояние, который для Экзамена будет принимать значения "Планируется", "Проведён", а для Сессии - "Планируется", "Активная", "Закрытая"? И переключая состояния, получать нужные выборки?

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

Цитировать
Таким образом - задача в составление такой схемы БД, которая максимально полно использует стандартные механизмы поддержания целостности
Я бы сказал - задача просто правильно спроектировать БД :)

2078
Данная предметная область или лучше сказать исходные таблицы взяты из книги Карповой. "Базы данных". Из-во Питер. На базе этого примера объясняются некоторые вопросы SQL. Более того, данный пример положен в основу курса управления данными. Веду не я:-)

Мне с самого начала это пример не понравился. Он конечно не теряет значимости, то его роль ограничена. Тем не менее, положив его в основу курса, преподаватель на мой взгляд, создает предвзятое представление о проетировании БД и управлении данными

Исходная схема такова. Даны три таблицы. Или скорее отношения:
Студенты-Группы R1 (Фио студента, Номер группы)
Группы-Предметы R2 (Номер группы, Название предмета)
Итоги сесии R3 (Фио студента, Название предмета, Оценка)
Имеет место плохое понимание того, что есть отношения. (Фамилия, Имя, Отчество) уже образуют отношение. И отношение это называется Студент. То, что в силу мощности связи Студент-Группа 1-ко-многим имеет смысл в Отношение студент при переходе к таблицам добавить столбец-ссылку на Группу, не должно приводить к переименованию Отношения, а теперь таблицы Студент.

Цитировать
Повторяю для определенных целей - скажем изучения SQL, такая схема вполне нормальна. Но она слишком оторвана от реальной практики на мой взгляд.
Ой, так уж и нормальна. Попробуй в системе, построенной по такой модели, ответить на простой вопрос - "каково соотношение Иванов и Олегов среди студентов вуза?", "Сколько однофамильцев, сколько возможных братьев и сестёр?". А информация там есть.

Цитировать
Я решил ее немного улучшить, без внесения особо сложных моментов. Таких как факт перехода с курса на курс. Хотя возможно, такое упрощение только вредит делу.
Именно.

Цитировать
Кстати задачу можно решать и с помощью UML, если привязать сюда учебные аспекты связанные с использованием MDA (Delphi BOLD).
UML имеет ценность и без MDA, а как средство моделирования, способное выражать больше семантики, нежели ERM.

2079
Эдуард, а чего ты не стал рисовать в UML?

Сразу видно, что у группы неправильно выбран ключ, он зависит от времени. Группа 1-46, учившаяся в 96-м году и группа 1-46, учившаяся в 2001-м году - это разные группы. Получается, ты должен будешь стирать из БД выпускников и ежегодно обновлять идентификаторы групп, переходящих с курса на курс.

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

Не понял, почему ты в тексте говоришь "Экзамен", а в диаграмме только "Сессия". Сессия имеет атрибуты - Год и Время года (Зимняя/Летняя). Экзамен - это соответственно ключи на "Предмет", "Группа" и "Сессия", неключевой атрибут - дата проведения. Оценка - имеет ключи на Студент и Экзамен.

2080
winrar не хочет распаковывать...
Перезаливаю с простым зипованием.

2081
Денис, спасибо за семинар, было интересно. Хотя после рекламы "целостного подхода к описанию требований" ожидалось бОльшего. :)
Не знаю, возможно я не совсем правильно  позиционировал семинар, как подсказывает Юра Булуй - по сути, я хотел поделиться некоторыми работающими для меня идеями, чтобы их развить, убедиться в ценности, осознать возможности и ограничения, популяризовать, дать в пользование начинающим.

Цитировать
Главный вопрос - позиционирование метода. Для кого он нужен, для кого подходит?
Тут всё просто - кому он будет полезен,  тому и подходит.
Цитировать
Мне кажется, это инструмент не столько аналитика, сколько PM'а/Product Manager'а, человека, который отвечает "за все". У него нет ресурсов или других возможностей использовать классические подходы к сбору требований (структуризация, формализация, утверждение) и организации проекта (RUP, ГОСТ, PMBoK), однако целостную картину видеть необходимо.
Я думаю, что в России сейчас и ещё долго будет нередкой ситуация, когда человек, выступающий в роли аналитика, в то же время "выступает за всё". Вот эту вот секуляризацию, специализацию в форме игры "я тестировщик, а ты аналитик, а она ПМ и пусть каждый занимается своим делом" могут себе позволить только большие компании в больших городах. А всё-таки очень большое число проектов делается в полукустарных, ZOHO-условиях, и меня заботит прежде всего эта аудитория.

Цитировать
Основной недостаток подхода, мне кажется, в том, что он совершенно не формален, целиком полагается на умение и желание человека находить варианты реализации. Если человек умеет и хочет - он по идее сам сможет нарисовать нечто подобное. А если не умеет или не хочет - то здесь метод не подскажет, что делать.
Метод создаёт инфраструктуру для мышления, является подспорьем для анализа. По поводу "совершенной" неформальности не соглашусь - я приводил в презентации пошаговую программу, как и что делать.

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

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

2082
Жаль, что никто не поддержал мою идею выписать на доске все + и - такого подхода, или области применимости/не_приминимости.

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

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

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

Если нужно править нескольким аналитикам одновременно, воспользуйтесь MindMeister.

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

2083
Я нормально скачиваю и распаковываю презентацию с помощью 7-Zip

2084
Пример целевого сценария и дерева требований и работ для типовой Справочной корпоративной информационной системы.

2085
Пример целевого сценария и дерева требований и работ для "Интранет-библиотеки спортивно-методической информации" в форматах GIF, FreeMind и MindManager.