суббота, 28 февраля 2009 г.
Agile: этапы, условия разработки
Движение к законченному продукту происходит последовательно: от релиза к релизу, причём каждый последний отличается от предыдущего большим функционалом. Внутри каждого релиза проводится несколько итераций, которые затрагивают все этапы разработки.
h5. 1.1 Этапы разработки
*Описание предметной области*
Происходит набор информации, касающейся предметной области, выделяются прецеденты, или сценарии. Прецеденты являются последовательностью действий по достижению заданной цели и служат для выявления требований. Это всегда человеко-ориентированное описание, которое будет происходить на самом верхнем уровне (как правило уровень интерфейса). Например, сценарий "Заказ товара" можно понимать как последовательность: выбор позиции, указание количества, оплата.
*Анализ предметной области и проектирование*
На основании сформулированных прецедентов начинается выделение сущностей, строятся модели предметной области, затем модели классов (с позиции объектно-ориентированного программирования). Разрабатывается архитектура проекта.
*Реализация в программном коде*
Прецеденты служат отправной точкой для написания тестов. Код самого приложения реализуется исключительно под тесты, что приводит к простому достижению результата, исключая всё лишнее.
*Контрольное тестирование*
Проверка на достижение функционала и безошибочность на основании ранее написанных тестов. Тесты пишутся один раз за всё время (см. предыдущий пункт), они редко изменяются.
*Интеграция, внедрение*
Интеграция в рамках Agile является последовательной (от релиза к релизу), то есть она растянута во времени. Однако такой подход позволяет в кратчайшие сроки начать адаптацию персонала клиента к продукту, усиливает эффект обратной связи по требованиям / недостаткам.
Каждая итерация проходит все этапы, причём она распоряжается лишь своим ограниченным списком задач: список требований, которые оценены по сложности (продолжительности работ); выводы по результатам.
В конце каждой итерации действенным является презентация перед заказчиком результатов работы - демонстрация достигнутого.
h4. 2. Динамика разработки, некоторые условия рабочего процесса.
Чем характерны выше приведённые этапы? На первом - описании предметной области - происходит тесное взаимодействие с заказчиком. При этом в идеализированной модели Agile, он обладает некоторой свободой по принятию конечного решения, но не всегда. Его полномочия должны быть ограничены здравым смыслом команды разработчиков. При проектировании упор делается на командном взаимодействии, причём важно, чтобы каждый член был свободен в выборе и реализации своих идей, то есть доверие должно иметь место. Это справедливо также и на этапе реализации. В дополнение сюда входит также работа тестировщика с заказчиком для составления сценариев тестирования. Любая интеграция, как было отмечено выше, имеет своей целью усилить вовлечение заказчика в процесс разработки. Это необходимо осуществлять регулярно и часто.
Приведённые тезисы возможны в случае, если:
* существует подходящая среда (сопутствующая этому ритму): помещение, атмосфера;
* вовлечённость команды в процесс, интерес, азарт;
* набор команды как ответственное дело, направленное на повышение взаимодействия членов коллектива, разрешение разногласий в решении проектных вопросов; это задача проект-менеджера.
среда, 25 февраля 2009 г.
Иностранный язык
Jane - my friend
Helene - my relative
Pete - a famous person
Далее происходит следующее: имеется преподаватель и обучающиеся (хотя это роли по сути могут быть другие); ученики задают наводящие вопросы, исходя из характеристик, разумеется по смыслу; учитель отвечает на вопросы (в случае, если он задан корректно, то есть в соответствии с правилами) или не отвечает (молчит на неправильно сформулированный вопрос); ученики (каждый за себя) собирают информацию с целью изложить небольшой связный рассказик (число предложений оговаривается заранее); при удачном докладе ученику начисляется + балл; в конце подводят итоги и определяют победителя.
Такую бы систему с 1-го класс гнать, а то и в детсадах: интересно, действенно, практика. Посему вопрос: кто-нибудь знает ресурсы, посвящённые таким вот упражнениям или целым методикам? Очень бы хотелось ознакомиться.
Ницше. Система поведения. Кому это надо?
bq. Первый принцип: здоровье души рассматривается как болезнь, с крайним недоверием...
Второй принцип: предпосылки сильной и полноцветной жизни, сильные влечения и страсти, слывут препонами для сильной и полноцветной жизни.
Третий принцип: все, что грозит человеку опасностью, все, что может возобладать над ним или погубить его, считается злом и пороком,— его надлежит вырвать из души с корнем.
Четвёртый принцип: человек, сделанный безопасным для себя и других, слабый, низринутый в унижение и скромность, в осознание своей слабости, «грешник» — это и есть самый желательный тип, тот, кого при посредстве некоторой хирургии души можно потом и излечить...
bq. Против чего я протестую? Против того, чтобы эту мелкую и кроткую посредственность, это скучное равновесие души, не ведающее великих приливов великих сил, считали чем-то значительным, а то ещё и эталоном человека.
bq>. Ф. Ницше, Воля к власти, 248-249.
Что выдвигается на первое место? Природное, божественное, обладающее сверхпланом. Расписание глобального обустройства, в центре которого находятся слабые, уравнённые индивиды. Отрицание естественной селекции: теперь живёт и убогий (как в духовном плане, так и в физическом). Жизнь реализует модель медленного самоубийства, тянущегося существования от рождения до старости. Повседневность, выкорчёвывающая цель человека, удушающее спокойствие. Сколько раз вера в божественный промысел была условием кровопролития? Люди уничтожаются с завидной регулярностью. Сегодняшний человек - ничтожество, животное, принадлежащее среде. Кроткая скотина, лишённая воли. Для него мораль - самосохранение, последняя инстанция, переросшая в привычку. Это инструмент в руках определённой группы людей, умело навязываемый и тиражируемый. Мораль произрастает изо лжи. Как часто человек, говорящий о каком-либо явлении, вещи, не обладая ей, выносит обличающие вердикты, штампует "истины"? Это тот, кто изолирован, лишён системы оценок, лишён опыта. Псевдооценки происходят из морали, подпитываются ей.
понедельник, 23 февраля 2009 г.
Философия техники. История (коротенько)
В средние века, когда внимание было устремлено на духовную сторону, а труд возводился в обязанность (перед Богом), техника тянула независимое существование. Появляются цеха, весьма консервативные учреждения со своим внутренним уставом. В эту же пору намечается обогащение знания: с востока (арабы и Китай) на запад привносится новое (математика). Техника в это время набирает силу, появляются суда, военная техника, развивается горное дело. Где-то в 15 веке требуется большее от техники, начинается повсеместное строительство сложных сооружений. Очевидно, что для его реализации нужен более развитый подход (строительные планы, вспомогательные конструкции).
С 17 века в сознании происходит чёткое разделение на природное (организм) и разумное (механизм). Первое определяет ментальную сторону, второе - материальную, выраженную категориями полезности, проективности.
В 18 веке техника обрастает научным знанием, поскольку требуется своя теоретическая проработка. Аналогично и с наукой, она технизируется.
С 19 века намечается глобальный процесс разворачивания техники, она становится обязательным атрибутом жизни. Системность проникает всюду, особенно это касается организации труда.
С конца 19 века и весь 20 век техника подвергалась критике. Одни её осуждали (гуманитарии, экзистенциалисты: Хайдеггер, Ортега-и-Гассет, Бердяев), другие видели в ней раскрытие человека как творца (теоретики: Дессауэр).
В общем весьма интересно и нужно. Советую почитать выше обозначенных лиц.
суббота, 21 февраля 2009 г.
GUI Builder для Eclipse
Устанавливается просто - через update-менеджер: добавляете сайт _http://cloudgarden1.com/update-site_, ищете соответствующую строчку, инсталлируете.
среда, 18 февраля 2009 г.
Уровень громкости
Это не сложно: fluxbox предоставляет возможность задать горячие клавиши в файле /home/_user_/.fluxbox/keys.
Добавил вот эти строчки:
bc. # volume settings, using common keycodes
# if these don't work, use xev to find out your real keycodes
123 :Exec amixer -c 0 set Master 3dB+
122 :Exec amixer -c 0 set Master 3dB-
121 :Exec amixer sset Master,0 toggle
Для моего ноута клавиши 123, 122, 121. Для вашего спросите у _xev_
Клавиши привязаны, теперь про визуализацию. Есть такое средство, называющееся xosd_cat, которое входит в состав пакета _xosd_. Эта программулька позволяет отображать текст и полоски прогресса (или как их там) на экране, поверх всего происходящего. Сразу меня заинтересовала возможность вывода горизонтального бара, которому передаётся процент наполнения (естественно, меньший или равный 100).
В общем получился вот такой скриптик:
bc. #! /bin/sh
channel="$1"
pers=$(amixer -c 0 get "$channel" | grep -o -P '[(d{1,3}%)]' | grep -o -P 'd{1,3}')
killall -KILL osd_cat
osd_cat -A center -p middle -d 1 -b percentage -P "$pers"
Переменная _channel_ содержит название ползунка, который я двигаю и, следовательно, уровень громкости которого я хочу отобразить. Переменная _pers_ извлекает информацию об уровне громкости, далее ищет нужное поле о проценте и в конце получает число (от 0 до 100). Дальше убивается уже существующий процесс отрисовки уровня, рисуется новая картина. Для пущей доступности я нарёк этот скрипт как "osd_volume.sh" и скопировал его по назначению /usr/bin/.
Последний штрих - меняю файл /home/_user_/.fluxbox/keys
bc. 123 :Exec amixer -c 0 set Master 3dB+ ; osd_volume.sh Master
122 :Exec amixer -c 0 set Master 3dB- ; osd_volume.sh Master
121 :Exec amixer sset Master,0 toggle
суббота, 14 февраля 2009 г.
Шаблон Expert
Общие замечания были "перечислены ранее":http://twowords.ru/development/15/osnovnye-shablony-proektirovaniya, сейчас же хочу проиллюстрировать диаграммой и кодом.
Главное положение, выдвигаемое шаблоном, говорит о том, что обязанность назначается тому классу, который имеет всё необходимое для её выполнения.
Я рассматриваю следующую ситуацию: есть кот, холодильник и сосиски в холодильнике. Кот открывает дверцу и оглядывается. Конечно, в реальности кот бы сам подсчитал количество сосисок, но в мире ПО этим непременно должен заняться сам холодильник. Почему? А всё потому, что он, как хранитель питательного мяса, _знает_ достаточно.
Ниже диаграмма.
!http://twowords.ru/images/3.gif!
На данный момент не располагаю инструментом для построения диаграмм последовательностей (ну нет их в Eclipse в стандартном плагине UML2). Посему пока диаграмма классов.
Код для каждого класса в отдельности.
public void myau(){
System.out.print("myau!");
}
public void lookRound() {
Refrigerator.getInstance().Initialize();
Integer weight = Refrigerator.getInstance().getSausagesWeight();
System.out.println(weight.toString());
}
}
private List
static Refrigerator instance;
public void Initialize() {
sausages = new Vector
sausages.add(new Sausage(50));
sausages.add(new Sausage(100));
}
private Refrigerator() { }
public static synchronized Refrigerator getInstance() {
if (instance == null) {
instance = new Refrigerator();
}
return instance;
}
public Integer getSausagesWeight() {
Integer weight = 0;
for (Sausage s : sausages) {
weight += s.getWeight();
}
return weight;
}
}
private Integer weight;
public Sausage(Integer w) {
weight = w;
}
public Integer getWeight() {
return weight;
}
}
Последовательность такая:
c.myau();
c.lookRound();
Вывод:
bc. myau!150
пятница, 13 февраля 2009 г.
Основные шаблоны проектирования.
- Expert
- Creator
- Low Coupling
- High Cohesion
- Controller
- Polymorphism
- Pure Fabrication
- Indirection
- Protected Variations
четверг, 12 февраля 2009 г.
Коммуникации и их правила
Не секрет, что вопрос этот весьма щепетильный, интересный: много книг по нему написано, придумали даже целую технику НЛП, но речь не о том.
Зародить коммуникацию - не вопрос, главное - как её поддержать, в каком русле развивать. Вот тут-то и появляются подводные течения. Начать хотя бы с манер ведения разговора. Внимания собеседников захватывают две стороны. Во-первых, их собственное "Я", во-вторых - окружение, обстановка. Переключаясь с одного на другое, меняя фокус внимания, теряешься и начинаешь допускать ошибки: рассеянность, внезапная забывчивость, неспособность нащупать нить разговора. Но происходит это, конечно, не на ровном месте. С одной стороны - окружение (гудящее, отвлекающее) "старается" завладеть вниманием, подавляет, гнетёт. В последнем случае человек уходит в себя, теряет интерес, закрывается.
Вот здесь проявляется другая составляющая - контроль собственного состояния. "Я" не такое уж независимое. Так или иначе оно связано с оболочкой - телом - и с этим приходится мириться. С другой стороны - чувства и их переплетение: внезапная негативная реакция на сказанное способна сорвать выстроенные планы по получения выгоды (а это уже третья составляющая) от коммуникации.
Обмен, которые идёт непрерывно между участниками, направлен на удовлетворение их целей. Но вопрос обогащения информации не может проходить постоянно: получая что-то необходимо отдавать. Потом очень интересным явлением является самопознание: в разговоре раскрываются собственные мысли и суждения, которые прежде не выходили на свет, так что и это важно, и нельзя исключать.
Наконец, выводы - получаемые после коммуникации - на вес золота. Главная составляющая - понимание, получение знаний в чистом виде. Частично через опыт собеседника, частично - предположения (но на основе того же опыта). Ещё больше - удовольствие. Обмен многогранен, особенно, когда собеседник соответствующий твоим интересам. Ну и, конечно, не надо забывать, что полученные выводы существуют лишь в твоём мире ценностей и категорий, это - твоя правда и ничья более.
Итак, получилось 4 кита, на которых зиждется коммуникация: манера; обмен знаниями; контроль внешнего и внутреннего состояния; фильтрация знаний, получение выводов - своих знаний. Манера общения завязана на внимании, которое определяется внутренним "Я". Обмен преследует цели, а значит имеет дело с вниманием (направляющим разговор в нужную сторону). Выводы (или знания для себя) зависят от "Я" и это необходимо учитывать в дальнейших коммуникациях.
Действовать - во благо.
Мысль за мыслью : работа над собой, очищение, стремление познать положительную сторону сознания и действия - кропотливый анализ приведёт к желаемому, нужному месту в мире.
Начать хотя бы с желаний. Есть ли человек, который ничем бы не интересовался? Пожалуй нет, всегда пробивается отголосок воли (даже загнанной в угол; кстати кем?). Важно услышать себя, а услышав, дать себе свободу и возможность действовать.
Вот и есть желание, дальше дело за малым - планы, распределение. Кто этот летописец ваших действий? Только одно - будущее в ваших глазах. Через устремления воли, через поэтапное осуществление намеченного (а вы уже наметили?) происходит формирование вашей действительности, её обновление под вас. Через стремления происходит раскрытие человека и это не обязательно тупиковая ветвь: достигнув одного непременно захочется попробовать иного, возможно, более близкого и необходимого.
Планировать с удовольствием, чтобы всё существо ваше трепетало перед желаемым (а теперь уже неизбежным). Вот тут пригодится какое-то стимулирование. Вы, как средоточие телесного и духовного, в одной стороны можете предложить себе благодарность, а с другой побаловать какой-нибудь наградой в форме съестного или другой приятной (и нужной) мелочи.
И вот затем - движение к желаемому, которое по сути своей не отличается от самого планирования, и даже приятнее его. Посудите сами, ощущение движения, поэтапного исполнения, чувство, что всё двигается в нужном направлении, придаст уверенность и привнесёт удовлетворение в ваших делах и начинаниях.
Но ради чего? Всё ради того, чтобы воспринимать мир как целостное достояние, данное вам для раскрытия своих возможностей. Гораздо приятнее двигаться вперёд осознавая это.
PS: по следам Дзен-привычек.
вторник, 10 февраля 2009 г.
Про мышление 2
Желая дораскрыть тему думания и мучений человека в этом интересном процессе, дополняю предыдущую заметку "Про мышление".
Вот, кстати, чтобы её долго не искать:
bq. Наш процесс думания построен по принципу комнаты. Представьте себя в ней. Думаю, сделать это несложно, если вы не на улице. Осмотритесь. Что видите? Не знаю, что вы там видите, но вот я вижу стол, два шкафа, три кровати, холодильник и прочие стулья, тумбы. Как нетрудно догадаться, я обитаю в общежитии. Но это к вопросу о мышлении отношения не имеет.
Теперь я желаю ответа на вопрос, что находится в холодильнике? Да бог его знает, что в нём. Как узнать? А узнать можно попав в холодильник, оказаться в нём. Так же и со шкафом, тумбами. Принцип матрёшки: от очевидного к сокрытому, от общего к частному.
Любой вопрос есть постановка цели (здесь - а что же внутри). Какой путь?: мы видим только то, что отвечает нашему уровню вложенности, то есть мы ощущаем лишь те вещи, которые находятся в комнате (как и мы); чтобы разглядеть другое - сокрытое - надо быть на другом уровне - более глубоком.
Теперь, перенесёмся к мышлению человека. Например, школьнику дадено задание написать сочинение. И он вроде бы написать не прочь, но начать сложно. Чем он располагает при написании сочинения? У него есть стандартная последовательность по типу Завязка - Кульминация - Развязка. Ещё есть тема, выражающая основную мысль. И потому ему сложно начать (а в последствии продолжить на каком-то этапе, например, Кульминации), что он не представляет как и почему ему следует это писать: не видит перспективы, углубления, развития. Конечно не видит! Так и должно быть. Его ошибка (если это его ошибка, а не всей системы образования) в том, что не оглядывается по сторонам, пытается вникнуть (разглядеть сердцевину) через стенки холодильника. И он ошибается, потому что вывод его оценивается жалкой вероятностью.
Отсюда совет: не надо искать истину там где тебя нет.
Я приводил пример школьника, который сидит перед пустым листом бумаги и "пытается" выжать из себя очередную строчку, так вот у Бьюзенов похожая ситуация, и расписана достаточно подробно, только мальчик - не мальчик, а аспирант (стр. 14). Ближе к концу книги даётся даже последовательная инструкция "Как правильно писать сочинение." (стр. 206), конечно, с точки зрения предлагаемой методики, но строго, логично и очень интересно.
В книге затронута тема интуиции. Так вот, это явление исключительно мозговых процессов. Мозг человека - суперкомпьютер. В то время, когда придумываются новые изделия-протезы, всевозможные побрякушки-заменители, люди дремлют, выполняя простейшие (в большинстве своём) телодвижения, контролируемые такими же незамысловатыми умодвижениями. Пора задуматься, ей богу, перевоспитаться и в бой!
Насчёт современного положения дел тоже расписано, правда в розоватых тонах и с надеждой на будущее (стр. 280). Но с точки зрения авторов так и должно быть: они приводят конкретные примеры, свидетельствующие об активном распространении приводимых техник в сфере образования (Западная Европа и США), а также в бизнесс-учреждениях.
Книжка дико интересная, а главное - полезная. Проходить мимо нельзя. В общем - http://www.koob.ru/toni_buzan/mind_map_book.
PS: Фуух! Две книги за день: одна - 150 страниц, другая - 322. Буду всё-таки придерживаться формулы "один день - одна книга".
понедельник, 9 февраля 2009 г.
Грызуны-акселераторы
А теперь по существу. Предлагается работать наплывами, среди которых две фазы и ещё два пункта для, так сказать, углублённого погружения в предметную область. Первая фаза - сталкивание полярностей (по типу любовь-ненависть). Вторая фаза - осмысление эмоциональных состояний. Последние пункты - работа исключительно под себя, рассмотрение индивидуальных проблем и ощущений.
В конце книги приводятся ЧАВО читателей и автора. Вот интересный момент:
bq. В. Если я «ликвидирую личность» — каким я стану? Идиотом, что ли?
О. Не волнуйтесь, мы не занимаемся промыванием мозгов и стиранием памяти. Полная ликвидация личности с помощью этой системы невозможна. Скорее, речь идёт об опустошении материала, из которого «сделана» личность, что ведёт в увеличению «пустотности» — а чем более «пустым» является человек, тем более текучим он является. То есть по мере работы спектр ваших возможностей будет расширяться — вы будете все меньше и меньше привязаны к старой личности и каким-то навязываемым ею моделям поведения, и будете понимать, что фактически вы можете быть любыми. Любыми, какими только захотите, ограничений нет.
И хотя стилевая составляющая, так сказать, "не блещет" и изобилует такими терминами как "жопа" или "дерьмо" (которые проходят сквозняком по тексту и не добавляют шарма), я всё же порекомендую почитать сей труд. Хотя бы потому, что знаком с механикой мозга, а изложенное автором моим знаниям не противоречит.
Саму книгу можно забрать "тут":http://www.koob.ru/leushkin/turbo_suslik
суббота, 7 февраля 2009 г.
Обо мне
Небольшое добавление. Теперь кандидат технических наук.
Сартр. Стена
Жан Поль Сартр "Стена", читаем.
Сколько это - бесконечность?
Позже я сварила себе кофе и, намазывая на хлеб брусничное варенье, смотрела бездумно телевизор. Меня не волновало, что там происходило, ведь там ничего не происходило, ведь там было Единственное. Не было звуков, которые бы прерывали моё воспоминание, не было ничего, лишь этот образ. И он - это я. По другому и не объяснить. Он - это я, так просто, но удивительно, неповторимо. Раньше я бы не поверила в такое, а сейчас готова отдаться дьяволу, дабы вернуть его сюда, сею же секунду.
Но ничего не происходило, я оставалась здесь той же мечтательной и счастливой, которой была вчера и дни назад.
вторник, 3 февраля 2009 г.
Что дальше?
Фактически всякое крупное возрастание влечёт за собой и огромное отмирание частей и разрушение: страдание, симптомы упадка характерны для времён огромных движений вперёд: каждое плодотворное и могущественное движение человеческой мысли вызывало одновременно и нигилистическое движение. Появление крайней формы пессимизма, истинного нигилизма, могло бы быть при известных обстоятельствах признаком решительного и коренного роста, перехода в новые условия жизни.Ф. Ницше, Воля к власти, 112.
Пожалуй нужна встряска, громкая песнь колоколов, чтобы, наконец, человек проснулся. Но сейчас пока тишина и мерное посапывание. Забытье. Летаргия. Мы так привыкли спать, что забываем, почему должны это делать.
Кто такой нигилист? Это человек, абсолютно ясно осознающий, что ему навязывают ложь. С упорством неизбежного монотонная речь вдавливает "правду". В её репертуаре библия, партийные уставы социалистов и демократов, националистов. Для единственного: умертвить человека, безболезненно сделать его рабом. Выход?
понедельник, 2 февраля 2009 г.
Agile: почему именно эта модель?
Клиент всегда прав (с Agile он прав очень часто)
К классическим моделям разработки относится водопадная [waterfall] модель. Её отличает строгая последовательность: составление плана - написание документации (под ключ) - проектирование - разработка - тестирование - ввод в эксплуатацию. В этой цепочке требования клиента должны быть жёстко описаны, и только после этого начинается работа над дизайном (архитектурой) проекта. Но кто может дать гарантию того, что требования не изменятся? Только сам клиент, но такая ситуация редка, да и невозможна, ибо заказчику не безразличны его вложения. В обратном случае вышло бы так: деньги я вложил, делайте как сочтёте нужным, а в конце меня всё устроит. Нонсенс! Требования меняются: как со стороны клиента (уточнения, пересмотры, пожелания), так и со стороны среды, в которой будет крутится продукт.
И вот здесь кроется коварство такой рельсовой модели: на согласование уходит порядочный промежуток времени, исписывается добротная стопка бумаги, наработки теряют смысл (по крайней мере для текущего проекта), начинается торговля между заказчиком и исполнителем.
В случае модели Agile существует постоянное взаимодействие разработчиков с клиентом, что направлено на снижение доли ошибки в требованиях и мгновенное реагирование на изменение последних.
Возврат инвестиций
Другая немаловажная ситуация связана с материальными вкладами клиента. Если что-то пойдёт не так, и заказчик пожелает разорвать отношения с разработчиком, то в случае водопадной модели он останется без денег и без ПО. Это почти наверняка так, поскольку цикл разработки не завершён, то есть, например, не проводилось тестирование, а следовательно, продукт сырой и никому не нужный. Что в случае с Agile? Здесь иначе, даже вот как: клиент с первых итераций получает работающее ПО (пусть и не обладающее всеми нужными функциями, но стабильное).
Другой момент - время разработки. Оно может составлять годы (когда проект очень крупный, а работа сверх-ответственная). Колебания среды (стандартов, аппаратного обеспечения) могут сыграть вполне состоявшуюся шутку. План, разработанный когда-то, оторванный во времени от проектирования и программирования, потеряет актуальность вот сейчас, когда мир изменился. Для водопадной модели это катастрофа, связанная с большими материальными и временными затратами.
Мыслить перспективой
Модель Agile исповедует работу небольшими итерациями, в которые входят работы из всех этапов проектирования: составление плана, анализ требований, разработка архитектуры, программирование, тестирования, ввод в эксплуатацию (только нагрузка на каждый вид работы разная от итерации к итерации: на первых шагах актуальна проработка прецедентов и требований; на других - программирование).
Ещё одна характерная черта - написание тестов - также происходит при участии заказчика. Тестовые модули определяют код, способствуют тому, чтобы последний принимал более простую форму: разработчики начинают задумываться, что же от них требуется, и искать лучший (читай лёгкий) путь для достижения этого. Таким образом, код пишется под тесты, а затем проверяется этими же самыми тестами. Разумеется, что звезду таким подходом не схватить, но оно и не требуется.
Вместо вывода.
Agile - ваш выбор (как клиента), если:
- результат нужен как можно раньше
- вы не знаете что вам нужно, но хотите узнать
- вы желаете контролировать риски
воскресенье, 1 февраля 2009 г.
Сартр. Стена
Три арестанта, один из которых молод. Приговор, который укорачивает жизнь ровно на столько, сколько они сами готовы отдать, выбросить за ненадобностью. Экзистенция в самой крайней форме: цена жизни - вздор, когда она протянется ещё несколько часов. Может трагедия, страдание? Нет, не в этом случае. Скорее чувство искреннего присутствия в мире. Ощущение бессмысленности, но в тоже время удовольствия от прожитых мгновений. Приговорённые меняются. Они смотрят иначе, слышат иначе, чувствуют иначе. Для них открывается новое, доселе неизвестное, выраженное в образе стены, к которой они прижмутся мокрыми от пота спинами. Метаморфоза души, когда тело уже не твоё: оно боится, тянет за собой "Я" в бездну. Но то упирается, пытается смотреть, слышать и чувствовать, ведь открылась истина, до которой в другой ситуации не было бы возможности дотянуться. Исход. Обречённое бессознательное ликует от достигнутого и требует своего праздника - слиться со стеной, влажной от воспоминаний былого.
Жан Поль Сартр "Стена", читаем.