Статья хорошая в смысле демонстрации применения инструмента. На самом деле это только первый шаг в нашей методике восстановления архитектуры. А в Rational на этом останавливаются, считая основной моделью архитектуры - "синхронизированную с кодом" диаграмму классов
- Общее описание программной архитектуры
- Стратегическое использование программной архитектуры
* Стратегическое планирование
* Корпоративная архитектура
* Эталонные архитектуры
* Архитектура как продукт
- Eclipse
Хочу поделиться очередным опытом использования инструмента. Так как в текущем проекте к определенному сроку свои работы выполнил, то по заданию архитектора тестировал функциональность клиентской части и исправлял возникшие ошибки.
Клиентская часть написана на javascript под браузер FireFox. "Общение" с сервером происходит путем пересылки xml-запросов/ответов. Для правильного и красивого отображения в браузере полученных данных используется xsl преобразование.
По собственной инициативе (еще несколько месяцев назад) нашел инструмент FireBug, позволяющий отлаживать javascript, видеть разметку страницы любой сложности, настройки стилей css, время выполнения запросов и многое другое. А также, как я нашел, у инструмента есть еще режим Profile. Попробовал использовать этот режим и вот что получилось.
Пояснения по картинке:
На картинке я показал результаты работы Profile до изменения в коде "заваливающегося" метода (красный цвет) и после (синий цвет). Последовательность действий, по которым были получены эти данные такова: формирование запросов к серверу, отправка запросов, прием ответов, обработка ответов, отображение полученных данных на странице.
В методе getXML использовалась рекурсия. Соответсвенно модернизировав метод и убрав рекурсию я сократил общее число вызовов с 557 до 142 (на 415) и время выполнения с 250 до 172 мс (на 78 мс).
Design for Operations в каком-то смысле :-)
А я вот теперь, после стольких бесед и размышлений, решил посмотреть на инструменты тестирования и производительности только на платформе Eclipse.
Почему Eclipse? Так как сейчас проект на работе разрабатывался как раз на этой платформе и на данный момент уже имеет некую готовую версию.
Здесь мне еще интересно будет посмотреть как тестируется именно web-часть приложения, так как именно ей я и занимался. Вроде бы эти инструменты позволяют что-то там мониторить.
14 - последняя корректировка доклада, слайдов (встреча)
13 - последняя версия доклада
12 - доработка описания глав 1, 2, 3, 4
11 - доработка описания глав 1, 2, 3, 4
10 - первая версия доклада (встреча)
9 - доработка главы 1
8 - первая версия слайдов
7 - доработка описания глав 3 и 4
6 - глава 2 (модельный подход MS)
5 - глава 3 (прямое проектирование - модель)
4 - глава 4 (практика)