Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Процесс и инструменты для разработки 
:(
    Опции темы
PashaPash
Дата 9.11.2009, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(Partizan @  9.11.2009,  16:43 Найти цитируемый пост)

Осталось только скан NDA предоставить smile 

А это разве разрешено по NDA?


--------------------
PM MAIL WWW   Вверх
Partizan
Дата 9.11.2009, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



PashaPash, это в NDA, насколько я помню, не оговаривается...хотя, надо перечитать smile


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
ivashkanet
Дата 9.11.2009, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(PashaPash @  9.11.2009,  16:19 Найти цитируемый пост)
Какое отношение возможность совершить ошибку имеет к инициативе?

Самое прямое. Если за проявленную инициативу в случае ошибки будут по рукам бить, то инициатива уйдет на нет.
Цитата(PashaPash @  9.11.2009,  16:19 Найти цитируемый пост)
"разрешить не писать тесты" среди них точно нет.

Разрешить девелоперу самому решать писать или не писать тест. Чуешь разницу? Об этом я и говорил.
Цитата(PashaPash @  9.11.2009,  16:19 Найти цитируемый пост)
ivashkanet, ты манагер или девелопер? судя по подходу - девелопер

Да, вывод верный. Ну и что?

Цитата(PashaPash @  9.11.2009,  16:19 Найти цитируемый пост)
А еще чуть позже приходит просветление что нужны именно функциональные тесты, т.к. за пару лет архитектуру переколбашивает, и unit-тесты становяться все дороже в поддержке.

Это ДАО пришло. Вот только иногда все же нужны именно юнит тесты.
Цитата(PashaPash @  9.11.2009,  16:19 Найти цитируемый пост)
Т.е. вы не уверены в 60-70% своего кода?

Отличный прием, сэр. Ниже пояса.
Подход такой: есть функциональность, ты в ней не совсем уверен (напиши банальную сортировку); пишешь тесты; стразу появляется уверренность.
Если коротко: не уверенности + тест = есть уверенность.

Остальные 40-30% кода настолько тривиальны (отображение данных) либо настолько легко проверяются (открыл страниуц, а тебе прямо в лицо баг), что тесты им не нужны.

Цитата(Partizan @  9.11.2009,  16:43 Найти цитируемый пост)
В чём проблема? smile  Не вижу гнили smile

Хмм, настолько жесткой НДА я никогда не видел. Т.е. вообще ничего никому нельзя рассказывать? Такой жести я не встречал.  Звиняй. 
Если можно выложить НДА или в личку, то я бы хотел ее глянуть.

PM MAIL WWW ICQ   Вверх
Partizan
Дата 9.11.2009, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



Собственно, пока перечитывал NDA, сделал вывод, что списком инструментов таки поделиться можно smile
Только вряд ли в этом списке кто-то что-то новое увидит...Думаю многие тут юзают что-то из Jirа/TargetProcess/CruiseControl/etc..., или всё вместе...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
PashaPash
Дата 9.11.2009, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(ivashkanet @  9.11.2009,  19:22 Найти цитируемый пост)

Разрешить девелоперу самому решать писать или не писать тест. Чуешь разницу? Об этом я и говорил.

Лучше для проекта будет, если девелопер будет уверен что "нужно писать", а не чувствовать что его заставляют. Это скорее вопрос мотивации и правильного промывания мозгов, чем инициативы. 
Идеальная ситуация - когда решает девелопер, и когда он почти всегда осмысленно решает "писать тест" потому что это лучше для проекта, а не потому что "так сказал манагер". А хороший манагер - это тот, который не дает девелоперам заметить что тесты введены принудительно. На том как это сделать не один консультант на хлеб зарабатывает smile
Цитата(ivashkanet @  9.11.2009,  19:22 Найти цитируемый пост)

Да, вывод верный. Ну и что?

Просто с точки зрения манагера (или тимлида) отсутствие теста - технический долг, который обязательно придется отдать в будущем. С точки зрения девелопера - просто допущение что функционал тривиальный и будет работать.
Цитата(ivashkanet @  9.11.2009,  19:22 Найти цитируемый пост)
Отличный прием, сэр. Ниже пояса.
Подход такой: есть функциональность, ты в ней не совсем уверен (напиши банальную сортировку); пишешь тесты; стразу появляется уверренность.
Если коротко: не уверенности + тест = есть уверенность.

Остальные 40-30% кода настолько тривиальны (отображение данных) либо настолько легко проверяются (открыл страниуц, а тебе прямо в лицо баг), что тесты им не нужны.

;)
Для существующего кода сделать "+тест" дороже, чем писать тесты вообще на все с самого начала.
Писать тесты до кода дешевле, чем писать их после.
Вывод - писать тесты сразу и на все подряд.

Ручная прогонка smoke нашего текущего проекта - открыть все страницы, сделать crud операции со всеми сущностями, проверить что хотя бы не упало нигда - 2 часа работы QC. Да, QC - низкооплачиваемые негры, но при 3-4 билдах в неделю набегает довольно ощутимая сумма. Кстати, билд чаще всего заворачивают по проваленному smoke. И манагеру при этом лезут в голову глупые мысли, типа "да что у этих девелоперов с руками". :( Легко проверяется != дешево. Хотя, все зависит от долгосрочности и масштабов проекта. 
Цитата(ivashkanet @  9.11.2009,  19:22 Найти цитируемый пост)

Это ДАО пришло. Вот только иногда все же нужны именно юнит тесты.

А вот это уже действительно иногда, редко и только на сложные куски.

Добавлено @ 20:19
Предлагаю с обсуждением TDD завязать, т.к. чистый тру-TDD тут все ненавидят (я в том числе).

Это сообщение отредактировал(а) PashaPash - 9.11.2009, 20:19


--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 10.11.2009, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(PashaPash @  9.11.2009,  20:18 Найти цитируемый пост)
Просто с точки зрения манагера (или тимлида) отсутствие теста - технический долг, который обязательно придется отдать в будущем. С точки зрения девелопера - просто допущение что функционал тривиальный и будет работать.

Не все так однозначно (нет чисто черног и чисто белого). Любой тест требует затрат времени и сил на создание и поддержку.

У меня на проекте, есть части системы цена некритической ошибки в которой низка. Это, навскидку, админка сайта. Пользуется ей 3-4 человека. Которые емею прямой контакт с нами. Простой баг фиксится в течении часа. Деплоиться либо сразу же (3-4 минуты недоступности сайта) либо ночью.

Цитата(PashaPash @  9.11.2009,  20:18 Найти цитируемый пост)
Для существующего кода сделать "+тест" дороже, чем писать тесты вообще на все с самого начала.

Опять переворачиваешь мои слова в нужную тебе сторону. Это НЕ то что мы обсуждаем. Мы обсуждаем то, как я могу быть неуверен в 60% своей функциональности.

Цитата(PashaPash @  9.11.2009,  20:18 Найти цитируемый пост)
Кстати, билд чаще всего заворачивают по проваленному smoke.

Я меняю код конкретной страницы именно ее я и запускаю на smoke. Если меняемый мною код затрагивает множество страниц, то скорее всего на него есть тест. Либо функциональность некритическая.

Цитата(PashaPash @  9.11.2009,  20:18 Найти цитируемый пост)
А вот это уже действительно иногда, редко и только на сложные куски.

Ну почему же, любой класс модели требует модульных тестов. Не считая тупых контейнеров, ессно.

Цитата(PashaPash @  9.11.2009,  20:18 Найти цитируемый пост)
Предлагаю с обсуждением TDD завязать, т.к. чистый тру-TDD тут все ненавидят (я в том числе).

 smile 
PM MAIL WWW ICQ   Вверх
PashaPash
Дата 10.11.2009, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(ivashkanet @  10.11.2009,  10:45 Найти цитируемый пост)
Не все так однозначно (нет чисто черног и чисто белого). Любой тест требует затрат времени и сил на создание и поддержку.

У меня на проекте, есть части системы цена некритической ошибки в которой низка. Это, навскидку, админка сайта. Пользуется ей 3-4 человека. Которые емею прямой контакт с нами. Простой баг фиксится в течении часа. Деплоиться либо сразу же (3-4 минуты недоступности сайта) либо ночью.

Ну, опять же, зависит от проекта. У нас на основном проекте админки нет, а изменение в любой сущности ведет (потенциально) к пересчету кучи данных (предметная область такая :*( ).  Т.е. некритических мест практически нет.

Цитата(ivashkanet @  10.11.2009,  10:45 Найти цитируемый пост)

Опять переворачиваешь мои слова в нужную тебе сторону. Это НЕ то что мы обсуждаем. Мы обсуждаем то, как я могу быть неуверен в 60% своей функциональности.

Если точнее - как ты можешь быть уверен в оставшихся 40% smile

Цитата(ivashkanet @  10.11.2009,  10:45 Найти цитируемый пост)

Ну почему же, любой класс модели требует модульных тестов. Не считая тупых контейнеров, ессно.

У нас есть фунциональные тесты, которые все равно это класс покрывают. А если не покрывают - значит класс сам по себе существует, и вообще в приложении не нужен. Т.е. у нас на основе тестов и покрытия делается дизайн всего приложения, или по крайней мере крупных кусков, а не отдельных юнитов.
Пытаться ввести TDD на уровне юнитов - это вообще гибельная затея, т.к. рефакторинг чего-то крупнее класса потребует написания новых тестов и переписывания старых. В TDD тесты не меняются во время рефакторинга, по определению. Есть строгие фазы, red-green-refactor, и сама фишка стадии refactor - получить красивый код того, что наколбашено на стадии green, и при этом не трогать тесты. Т.е. при "TDD" через unit, а не функциональные тесты, всегда есть два плохих выхода
- переписывать тесты на стадии refactor - что нехорошо и очень дорого, и на самом деле не TDD
- отказаться от рефакторинга кусков крупнее класса/метода (юнита) - что тоже неприятно, и не TDD, т.к. тесты не задают дизайн приложения.
Обычно выбирают первое, что ведет к непрятным расходам (манагер слышыт "я рефакторил, пришлось переписать туеву хучу тестов ради нормального кода") и довольно тупой работе. А еще при этом девелопер выбрасывает код, который он писал. Даже хуже, на стадии red он знает что код тестов придется выбросить на стадии refactor. А это снижает мотивацию до нуля. --> вырабатывает строгую ненависть к слову TDD.
Ты скорее всего пол года шел именно этим путем, судя по уровню внутренней ненависти ;)


--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 10.11.2009, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(PashaPash @  10.11.2009,  15:53 Найти цитируемый пост)
Ну, опять же, зависит от проекта.

А я о чем???  smile 

Цитата(PashaPash @  10.11.2009,  15:53 Найти цитируемый пост)
Если точнее - как ты можешь быть уверен в оставшихся 40%

Странно. Я вот специально перечитал ветку. И не нашел этого вопроса. Нашел в точности противоположный, на который отвечал.

Цитата(PashaPash @  10.11.2009,  15:53 Найти цитируемый пост)
У нас есть фунциональные тесты, которые все равно это класс покрывают

Если мы вернемся к деньгам, и стоимости рабочего времени, то окажется, что такой подход невыгоден. 
Так как функциональный тест не показывает что конкретно сломалось в модели. То придется дебажить чтобы понять что поломалось.
Кроме того, с большой долей вероятности повалится не один тест, а целая пачка.
PM MAIL WWW ICQ   Вверх
PashaPash
Дата 10.11.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(ivashkanet @  10.11.2009,  17:39 Найти цитируемый пост)

Странно. Я вот специально перечитал ветку. И не нашел этого вопроса. Нашел в точности противоположный, на который отвечал.

Однажды на встрече с синоптиками товарищ Сталин спросил: "Какова вероятность того, что прогнозы погоды верны?". "40%" - отвечали ему синоптики. "А вы предсказывайте наоборот" - посоветовал им тов. Сталин.
У меня просто другое понятие "уверенности", которое не совпадает с уверенностью с точки зрения разработчика. Точнее, совпадает, но с понижающим коэффициентом smile
Цитата(ivashkanet @  10.11.2009,  17:39 Найти цитируемый пост)
Если мы вернемся к деньгам, и стоимости рабочего времени, то окажется, что такой подход невыгоден. 
Так как функциональный тест не показывает что конкретно сломалось в модели. То придется дебажить чтобы понять что поломалось.
Кроме того, с большой долей вероятности повалится не один тест, а целая пачка. 

TDD предполагает короткие циклы. Если что-то поломалось - виноваты те изменения, которые ты только что сделал. Что значительно экономит время на отладке и поиске виноватых smile
Ну и основные вопросы так и остались без ответа. Если использовать unit-тесты, а не функциональные, то
- Как юнит-тесты могут задавать дизайн приложения, если они ничего крупнее юнита не тестируют?
- Как рефакторить, не переписывая при этом юнит-тесты.


--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 11.11.2009, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
У меня просто другое понятие "уверенности", которое не совпадает с уверенностью с точки зрения разработчика. Точнее, совпадает, но с понижающим коэффициентом

Гадание на кофейной гуще. С чего ты взял что ЗНАЕШЬ как я мыслю?
Цитата(PashaPash @  10.11.2009,  15:53 Найти цитируемый пост)
Если точнее - как ты можешь быть уверен в оставшихся 40%

Если включить думалку, то из моих ответов будет ясно, что 40% это не код в котором я УВЕРЕН, а код на который нецелесообразно (по мнению программиста) писать тесты. В эти 40% входит некритичная функциональность, функциональность с низкой ценой ошибки и, только сейчас, код в котором я уверен.

Цитата(PashaPash @  10.11.2009,  15:53 Найти цитируемый пост)
Ты скорее всего пол года шел именно этим путем, судя по уровню внутренней ненависти ;) 

У меня НЕТ ненависти к ТДД. Я считаю его ОТЛИЧНЫМ инструментом дизайна публичного интерфейса класса. И считаю, что в других случаях ТДД излишне. Что я и сказал пару страниц назад.

Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
TDD предполагает короткие циклы.

Мы НЕ обсуждаем TDD.

Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
Если что-то поломалось - виноваты те изменения, которые ты только что сделал. Что значительно экономит время на отладке и поиске виноватых

С твоих слов (лень искать цитату): ты запускаешь только те юзкейсы которые (по твоему мнению) затрагивают проводимые изменения. Допустим ты 2 часа кодил. Собрался комитить. Запустил ВСЕ тесты. Десяток повалилось. Какое конкретно изменение сломало систему?

Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
Ну и основные вопросы так и остались без ответа. Если использовать unit-тесты, а не функциональные, то

Нивопрос.
Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
- Как юнит-тесты могут задавать дизайн приложения, если они ничего крупнее юнита не тестируют?

А кто говорил про дизайн всего приложения? ТДД дизайнит публичный интерфейс класса (юнита). Больше ничего (ИМО). Для дизайна приложения в целом есть еще целый вагон техник.

Цитата(PashaPash @  10.11.2009,  19:48 Найти цитируемый пост)
- Как рефакторить, не переписывая при этом юнит-тесты. 

Тут какая-то ошибка закралась. 
Рефакторинг -- изменение кода БЕЗ именения функциональности. Тесты -- фиксируют некую функциональность. Изменяешь тесты -- изменяешь функциональность. Т.е. не рефакторишь, а кодишь.

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

СУВ, ivashkanet
PM MAIL WWW ICQ   Вверх
PashaPash
Дата 11.11.2009, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(ivashkanet @  11.11.2009,  10:39 Найти цитируемый пост)
адание на кофейной гуще. С чего ты взял что ЗНАЕШЬ как я мыслю?

Я знаю как мыслят девелоперы, работа у меня такая :(
Цитата(ivashkanet @  11.11.2009,  10:39 Найти цитируемый пост)
У меня НЕТ ненависти к ТДД. Я считаю его ОТЛИЧНЫМ инструментом дизайна публичного интерфейса класса. И считаю, что в других случаях ТДД излишне. Что я и сказал пару страниц назад.

А я вот считаю TDD отличным инструментом для дизайна всего приложения, что тоже пару страниц пытаюсь дозаказать.
Цитата(ivashkanet @  11.11.2009,  10:39 Найти цитируемый пост)
С твоих слов (лень искать цитату): ты запускаешь только те юзкейсы которые (по твоему мнению) затрагивают проводимые изменения. Допустим ты 2 часа кодил. Собрался комитить. Запустил ВСЕ тесты. Десяток повалилось. Какое конкретно изменение сломало систему?

"не по моему мнению" а по мнению студии, что немного более обоснованно. или вообще все тесты. Тесты валяться не просто так, "не работает". Они при этом вполне нормальные следы оставляют, в виде stack trace, или конкретных ошибок, "получили 4 вместо 5". Ну и при 2-х часах кодинга не оценить возможный impact на существующий функционал - это как-то из области фантастики.

А какая альтернатива? Получить работающие юнит-тесты, но при этом неработающий фунционал? 
Неделю кодишь, коммитаешь, собираешь билд, все покрыто тестами. Потом приходят QA и говорят "вот такая-то фича не работает, а раньше работала". Какое конкретно изменение за неделю сломало систему (если предположить, что влияние даже 2-х часового кодинга оценить невозможно).
Цитата(ivashkanet @  11.11.2009,  10:39 Найти цитируемый пост)
А кто говорил про дизайн всего приложения? ТДД дизайнит публичный интерфейс класса (юнита). Больше ничего (ИМО). Для дизайна приложения в целом есть еще целый вагон техник.

TDD дизайнит публичный интерфейс чего угодно. Есть понятие Acceptance Test Driven Development, собственно, его мы и используем. Есть Unit Test-Driven Development, тот самый с тру-юнит-тестами, его мы ненавидим всей конторой smile Вагон техник - это хорошо, но их можно вполне успешно совмещать.

Цитата(ivashkanet @  11.11.2009,  10:39 Найти цитируемый пост)
Тут какая-то ошибка закралась. 
Рефакторинг -- изменение кода БЕЗ именения функциональности. Тесты -- фиксируют некую функциональность. Изменяешь тесты -- изменяешь функциональность. Т.е. не рефакторишь, а кодишь.

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

Может я как-то не так объясняю...
1. Рефакторинг -- изменение кода БЕЗ именения функциональности.
2. Тесты -- фиксируют некую функциональность.
3. Юнит-тесты -- фиксируют некую функциональность одного юнита (класса или его метода)
4. Тесты не изменяются на этапе рефакторинга
5. Функциональность одного юнита (класса или его метода) не изменяется на этапе рефакторинга
6. Функциональность и публичный интерфейс класса не изменяется на этапе рефекторинга

7a. Невозможен рефакторинг, который меняет набор юнитов, или связи межну ними, или
7b. Работоспособность приложения при таком рефакторинге не проверяется тестами, и это плохой рефакторинг.

Если в цепочке есть ошибка, ткни пальцем, потому что я ее не вижу.

Конкретный пример. 
- Есть класс A, c методом SetLight(bool isOn, double brightness). 
А не виден конечным пользователям приложения (вполне типично для web, там видны только контроллеры и presentation model). Но он тем не менее A.SetLight - вполне так юнит (наименьшая единица, которую можно протестировать).
 - Есть тесты на A.SetLight
 - Есть вызывающие его классы B и C. Возможно, через интерфейс Ia.SetLight(bool).
 - Есть тесты на B и C, мокающие Ia.SetLight(bool) (тру-юнит тесты, тестирующие один юнит)

Как провести рефакторинг, в процессе которого SetLight начент принимать один параметр LightSettings (Introduce Parameter Object), и при этом не переписать тесты для B и С?
Как провести рефакторинг, который выделит из A какой-то кусок в подкласс (Extract Subclass) и при этом не переписать тесты на A.

Вы дизайните так круто, что рефакторинг совсем не нужен? Или принимается волевоевое решение не рефакторить ничего крупнее юнита? Или у вас определение юнита другое?


--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 12.11.2009, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(PashaPash @  11.11.2009,  17:53 Найти цитируемый пост)
Я знаю как мыслят девелоперы, работа у меня такая :(

Ок, идем по другому: C чего ты знаешь как Я мыслю?
Цитата(PashaPash @  11.11.2009,  17:53 Найти цитируемый пост)
А я вот считаю TDD отличным инструментом для дизайна всего приложения, что тоже пару страниц пытаюсь дозаказать.

У нас разные понятия TDD. C моей точки зрения твой подход -- не ТДД. А несколько постов назад мы договорились не трогать ТДД.


Что-то у меня отпало желание продолжать. Наш камень преткновения -- разные определения ТДД. На этом и закончим.
PM MAIL WWW ICQ   Вверх
PashaPash
Дата 12.11.2009, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



Цитата(ivashkanet @  12.11.2009,  10:13 Найти цитируемый пост)

Ок, идем по другому: C чего ты знаешь как Я мыслю?

Ты ведь девелопер, а все девелоперы с точки зрения PM-а мыслят примерно одинаково :(

Кстати, грустный анекдот про Agile. Статья http://en.wikipedia.org/wiki/TargetProcess была убита из википедии за "незначимость, незаметность софта (в качестве значимости приведены только ссылки на выигрыш minor industry award (Jolt)), и употребление жаргонизма 'Agile project management'".
Как-то обидно даже, вроде местный (минский) продукт :(

Это сообщение отредактировал(а) PashaPash - 12.11.2009, 15:26


--------------------
PM MAIL WWW   Вверх
tol05
Дата 14.11.2009, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 63
Всего: 170



привет всем.

Согласен с Любителем, почти во всем... Даже не по себе как-то ))

От себя: несколько раз видел упоминание о тестах UI... Я не понял, честно говоря, что именно вкладывается в смысл этой фразы.. UI не должен подлежать тестированию в принципе.


Это сообщение отредактировал(а) tol05 - 14.11.2009, 01:09


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
PashaPash
Дата 14.11.2009, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 13
Всего: 49



В чем именно согласен? ;)

Цитата(tol05 @  14.11.2009,  01:06 Найти цитируемый пост)
От себя: несколько раз видел упоминание о тестах UI... Я не понял, честно говоря, что именно вкладывается в смысл этой фразы.. UI не должен подлежать тестированию в принципе.

В паттерне MVC все, кроме модели, - это UI (Presentation Layer). Контроллеры, и даже часть View (клиентский javascript, например) вполне так подлежат тестированию.


--------------------
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
2 Пользователей читают эту тему (2 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1014 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.