И снова об архитектуре

Feb 26, 2009 21:12

На самом деле, довольно спорная тема. На которую серьезно говорить не получается :) Потому, что люди жгут.

Read more... )

rsdn, архитектура

Leave a comment

kmmbvnr February 27 2009, 08:03:50 UTC
G> Требования могут каскадироваться - "реализация" требований верхнего уровня может являеться набором требований для компонент нижних уровней.

Опять же.. не особо отстаивая точку зрения приоритетности UI, но все же.

Изменения вернего уровня, бывает что, вызывают каскадные изменения во всех нижних. Такие изменения обычно достаточно трудозатратны. Попытка начать строить архитектуру сверху от UI, это как раз imho попытка верно спроектироать _все_ уровни, сразу.

Reply

gaperton February 28 2009, 00:45:12 UTC
Как насчет примеров, когда UI не тграет большой роли?

Пример: google.com

И каким именно образом UI нам поможет при разработке архитектуры поискового движка?

Reply

kmmbvnr February 28 2009, 12:50:35 UTC
А если бы заказчику требовался тщательно отранжированный каталог, то супер мега архитектура обеспечивающая автоматический подбор релевантности по введенным пользователем словам оказывается полностью непригодной.

>>И каким именно образом UI нам поможет
Предотвратит фатальтную ошибку, но не подскажет конечно, критичных мест.

Reply

kmmbvnr February 28 2009, 12:56:49 UTC
Ну вобщем, да.. по большей части рассуждения от UI сводится к анализу и выявлению Use Cases.

Reply

gaperton March 3 2009, 11:09:54 UTC
Use Cases уже лучше. В описании Use Case говориться не только "как", но и "зачем". В Use Cases для диагностического прибора будут описаны не интерфейсы, а способы полезного использования прибора. Однако, Use Cases - покрывает не все виды требований, хотя и значительную их часть.

Можно-ли проигнорировать нефункциональные требования, и не ошибиться при этом в архитектуре? А если нельзя, и принимать надо во внимание _все_ требования, то какая разница, что в них более приоритетно?

Reply

kmmbvnr March 3 2009, 11:17:05 UTC
Хм.. ну вот например, я не раз сталкивался с тем что заказчик воспринимает только прототипы UI интерфейса... а на все остальное только выдает стандартный ответ - That's OK, THKS 4 good job.

Reply

gaperton March 3 2009, 11:33:02 UTC
Пример архитектурной ошибки в одном из вполне "гражданских" проектов по разработке ПО, в котором я учавствовал. В архитектуру системы разработки и запуска торговых роботов было заложено применение SQL Server для хранения всех персистентных данных приложения - на сервере. Казалось бы, нормально. Однако, мы поимели чудовищный геморрой на ровном месте. Приложение работало, но трудозатраты вспухли вдвое на ровном месте. Начиная с того, что пришлось переписывать файловые диалоги (неблагодарное занятие эмулировать ФС поверх MS SQL), заканчивая чудовищным геморроем при апгрейде сервера и клиентов (сильная связь по схеме БД). Сделать можно все - было бы ради чего ( ... )

Reply

gaperton March 3 2009, 11:43:20 UTC
Когда мы рассуждаем о дизайне, архитектуре, и прочем - очень полезен взгляд от ошибок, он многое проясняет.

А вот еще примеры. В одной компании, где я работал, в основу архиектуры сервера компьютерной телефонии положен майкрософтский TAPI - он стоит в центре. Что является теперь основной проблемой - источником багов, тормозов, и умножителем трудозатрат для простых модификаций, и, таким образом - ограничителем для добавления нового функционала.

Пользователь видит TAPI? Да в общем, нет, ему все равно, стоит TAPI в центре или сбоку.

Reply


Leave a comment

Up