Для чего хороша разработка на основе моделей? - PullRequest
4 голосов
/ 21 ноября 2008

Microsoft, известная в Каире, работает над Осло, новой платформой моделирования . Боб Маглия, старший вице-президент Microsoft Server & Tools Business, утверждает, что преимущества моделирования всегда были очевидны.

Проще говоря, каковы очевидные преимущества, которые Осло дает своим пользователям?

Ответы [ 3 ]

10 голосов
/ 21 ноября 2008

Теоретически, есть несколько преимуществ:

  • Люди, обладающие бизнес-знаниями, могут создавать программные модели, поэтому вы вряд ли что-то потеряете в переводе.
  • Когда нетехнические акционеры создают модели, это заставляет их «думать как разработчик». Они видят, что то, что они считали очевидным и простым, на самом деле трудно, когда вы формализуете это.
  • Это более эффективно. Деловые люди имеют деловые знания, а технические люди имеют технические знания, так почему бы не позволить каждой группе разработать систему в своей области знаний? Больше никаких телефонных игр, поскольку бизнес-эксперты вновь объясняют, что они значат для разработчика. Разработчики больше не отвлекаются на загадочные потребности бизнеса. Они могут сосредоточиться на взаимодействии высокотехнологичных систем.

На практике это намного сложнее:

  • Модели сложные, и это все. То, что вы отправляете создание модели в другую группу, не означает, что вы получаете надежные модели. Разработка программного обеспечения - это все о моделировании, поэтому разработчики привыкли к этому. Вы можете фактически потерять эффективность, поскольку вторая группа вступит в борьбу с формализацией своего понимания потребностей бизнеса.
  • Модель управляемой разработки тесно связана с концепциями ОО. ОО хорош для многих вещей, но не для всего. Что произойдет, если то, что вам действительно нужно, выходит за рамки возможностей вашего инструмента моделирования?
  • По моему опыту, разделение между бизнесменами и техниками искусственно. Наиболее эффективные люди - это деловые люди с технической ориентацией или технические люди с деловой ориентацией. Они заставляют вещи происходить. Если вы отделяете бизнес-задачи от технических, вы разрушаете возможность кросс-тренинга и кросс-мышления.
3 голосов
/ 21 ноября 2008

Я думаю, что моделирование - это просто следующий уровень абстракции. Как только это установлено, это приведет к более высокой производительности.

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

2 голосов
/ 27 мая 2010

Я думаю, что краткий ответ - исследовательские проекты!

Хорошее место для старта. Если вы хотите больше в этом разобраться, это выступление Дуга Парди на PDC "Круг вокруг Осло", которое вы можете увидеть здесь Он объясняет, как Осло «отражает суть кода без церемонии», ... что бы это ни значило.

НТН.

...