Я думаю, что большинство комментаторов отсутствует, на самом деле довольно важно для вашего вопроса - идея, что вы работаете с экспертами домена для создания реализации своей модели для проверки своих теорий.
Большинство программных разработок там не об этом режиме - и, как вы говорите, это просто качественно отличается от реализации какого-либо бизнес-процесса или создания сервера, который должен реализовать RFCxxxx.
Есть люди, работающие над этим с обоих концов - пытаясь научить ученых основам ответственной разработки программного обеспечения (например, Software Carpentry) Грега Уилсона и обучению людей, занимающихся разработкой программного обеспечения, о крупномасштабной вычислительной науке (например, Стив Истбрук very interesting blog, из которых this особенно уместен). Почему все так же примитивно, как и на этом фронте, я понятия не имею. Оба имеют ссылки на соответствующих коллег по своим блогам.
В этом режиме существует ряд важных отличий от того, чему вас научили. Во-первых, общая структура научного программного обеспечения, как правило, довольно проста, но тонкость довольно высока - каждая строка цифр может быть результатом 10-летней научной литературы по ряду областей. Во-вторых, вся идея спецификаций видется на голове - спецификация «точно моделирует реальность», и то, что ученого есть, является моделью, на которую они надеются. В некотором смысле научная разработка кода реализует проект спецификации и нащупывает реальную спецификацию.
@vfilby имеет правильную идею - непрерывное участие клиента - но это немного больше. Для этого, чтобы работать, вы собираетесь получить положить в петлю науки - вместо цикла составляет ученого → теории → теста → интерпретации → теории обновления, это будет ученым → теории → вы код → вы и ученый как интерпретировать ваши собственные части → Теория обновления и/или реализация. Ученые домена не будут знать, как вы, как наилучшим образом реализовать то, что они хотят, или как распутать результаты своей модели по результатам вашей реализации модели; с другой стороны, они будут понимать последствия модели намного лучше, чем вы, и как обновить теорию.
Это тяжелый баланс, чтобы получить право. Для того, чтобы он работал, обе стороны должны (а) уважать другую область знаний, (б) изучать немного этой другой области и (в) инвестировать в проект в целом. Эти виды междисциплинарных проектов ломаются чаще, чем они преуспевают, но они жизненно важны. I действительно Желаю, чтобы у меня были легкие, гарантированные к работе советы для вас.
Возможно, вам следует изменить название на «Стратегии эффективной коммуникации или сотрудничества с не-программистами». – vfilby 2008-11-05 00:26:23
Извините, Джефф, но ваше редактирование потеряло основную точку моего вопроса. Это не деловые люди, которые хотят, чтобы бобы считались. Это ученые, которые хотят проверить теорию. Мягкий заголовок, который вы редактировали, не отражает этого. – dacracot 2008-11-05 02:56:37
Возможно, вы, по крайней мере, хотите проверить правописание, я уверен, что это «дисциплинарный». – vfilby 2008-11-05 03:32:44