Re[3]: Use-case,UML, etc...
От: byur Россия http://yurybuluy.blogspot.com/
Дата: 25.10.04 05:55
Оценка:
Здравствуйте, Silver_s, Вы писали:

S_>В UML не хватает одного важного аспекта (или диаграммы).


Вы уже настолько хорошо изучили этот язык, что можете указывать на его недостатки?


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

S_>Коэфиценты инкапсуляции можно считать как количество человеко лет истраченное на разработку куска, поделенное на количество человеко-часов необходимое для досконального изучения интерфейса этого куска. (Или по количеству функций или строк в куске и его интерфейсе).

Это больше относиться к метрикам. Хотя можно для этого использовать патеерны GRASP. Читаем Лармана .


S_>Например поймали на улице обезьяну, усадили изучать проект. Первое что она должна узнать об архитектуре системы, это то что система состоит из 2 крупных частей в каждой по 50K строк кода, на каждую часть истрачено по 10 человеко-лет, во внутренностях этих частей без пол-литра не разберешься, и связь между этими частями всего лишь в виде одной функции (так получилось допустим например).

S_>Самый высокий уровень абстракции для такой системы — это описание принимаемых и возвращаемых параметров этой функции и ее семантика. Обезьяна должна узнать в первую очередь об этом, а никак не о том что какой-то SuperPuperCombobox наследуется от SuperPuperControl.

Про пакеты в UML имеет смысл посмотреть.


S_>Естейственно это должно быть организовано иерархически, с постепенным измельчением.

S_>И в этот же аспект входит классификация типов интерфейсов между частями — понятно что одной функцией в интерфейсе не отделаешься. Есть наиболее распространенные интерфейсные патерны. И это полезно хорошо представлять, какого типа интерфейс между частями.

S_>При проектировании и изучении кода это очень важный аспект, и его в памяти приходится отстраивать.


Вывод: имея свое собственное представление об проектировании и реализации систем, которое несколько отличается от того как это видят идиологи и именитые приверженцы OOAP, не стоит говорить, что они все идиоты . А стоит задуматься о полноте и универсальности собсвтенного подхода .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.