понедельник, 24 августа 2009 г.

Взгляд на трудности с другой стороны.

Иногда в жизни встречаются мысли, которые стоят целой книги.

Когда люди говорят о трудностях, то чаще всего это оправдание. Сколько раз мы слышали:
- "Если бы не ..., то я бы....",
- "Но тут случилось... и я не смог....",
- "Вот если бы... то я бы..."?

А сколько раз говорили и думали так сами?

Совсем недавно мне встретилась картинка, которая поставила меня на другую сторону вопроса.

Теперь я чаще (не всегда но чаще) задаю себе только вопрос: "А что такого еще я могу сделать?", когда любое из многоточий вдруг случается. Картинка ниже. Текст ее я выношу в цитату недели (копирайт demotivation.ru).


понедельник, 17 августа 2009 г.

Что нужно мне, как новичку в новой компании.

По ряду причин я поменял место работы и место проживания. Сегодня был первый день на новой работе. И как будто специально для меня, здесь появился пост с обсуждениями - что нужно новичку? Что нужно сделать компании, чтобы новичок не потерялся? Я бы хотел передернуть одеяло на себя - и переформулировать вопрос: чего я хочу от компании, в которую устраиваюсь. Представляю свой список моих "яхочушек":

Прежде всего я хочу знать, чего от меня ждет компания. Как правило это описывается сложным скучным бюрократическим языком в должностной инструкции. Общие слова, но ясное направление - хотя бы очерчены границы. Так вот - я хочу внятную должностную инструкцию. В которой белым по черному выделены:
- специалист делает дело 1, дело 2, дело 3
- специалист не делает 1,2,3...
Возможно эту инструкцию нужно будет писать мне совместно с моим новым начальником. Я согласен.

Я хочу план своего развития в фирме. Если фирма ждет от меня чего то "странного", то я хочу конкретного - как я буду дальше развиваться. Какие курсы готова предложить фирма на 3-6-9-12-24-26 месяцев. Если компания ХОЧЕТ иметь ХОРОШЕГО специалиста то, ЧТО она готова сделать ради меня:
- какие курсы,
- какое повышение оплаты,
- какое продвижение в должности.
Возможно что данный план нужно будет писать мне самому - я и к этому готов.

Я хочу узнать о фирме все, что она готова мне рассказать. Для этого я хочу внятный план лекций либо внятный список людей от которых я могу потребовать (ПОТРЕБОВАТЬ) рассказать мне о той или иной части бизнеса компании (понятное дело, что договариваться о встрече я должен либо сам либо со своим начальником).

Я хочу наставника, куратора, старшего брата, друга - назовите как хотите того человека, который будет первые 3-6 месяцев моей нянькой (понятное дело не 24 часа в день и даже не 8 часов в день, но хотя бы 30-60 минут в начале или конце дня).

Я хочу знать с кем я работаю. Дайте мне страницу, документ, стену - на которой можно прочитать кто-такой-вася-пупкин-с-которым-я-встретился-в-курилке. Среди информации - кто он, сколько он работает, где он работал раньше, кем он работал до....Все то что сам Вася Пупкин захочет сообщить своим сослуживцам-коллегам. Я хочу знать как найти человека - пусть это будет телефонная книга, пусть внутренний сайт.

Я хочу знать где туалет, кафе, мой начальник, мой директор, моя команда (и кто в моей команде - об этом параллельно выше).

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

Я хочу знать поможет ли компания мне в трудную\счастливую минуту (свадьба, похороны, рождение ребенка и пр)

Я хочу знать кого мне дергать чтобы получить канцтовары, новую веб-камеру или гарнитуру

Я хочу знать, что меня любят и ценят и более того будут любить и ценить, если я и дальше буду продолжать работать хорошо.

И отдельно чего я не хочу.

Я не хочу показухи под названием "как-помочь-влиться-новичку-в-команду". Я не хочу обедать с незнакомым мне человеком, даже если он начальник и сам думает, что это мне понравиться - для начала спросите меня - хочу ли я с вами обедать.

Я не хочу чтобы моя фотография с краткой заметкой или кратким интервью висело на внутреннем сайте или внутренней газете - я новый человек, мне не нужна такая шумиха вокруг моего имени. Кому то это нравиться, но мне - нет.

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

И все таки, изначально я еще хочу чтобы меня спросили: "Как ты, Саша, хочешь провести свой первый день?"

Цель сообщения об ошибке является ее исправление


Целью сообщения об ошибке является ее исправление

Сем Канер и др. "Тестирование Программного обеспечения"

понедельник, 10 августа 2009 г.

Почему люди верят в магические числа?

Почему люди верят в магические числа? Я вопрошаю о числах в заголовках:
- похудей за 1 месяц!
- выучи язык программирования за 21 день!
- стань менеджером за 2 недели!!!

Кстати о последнем. В околоменеджменсткой литературе наиболее широко принято применять принцип магических чисел :
- 7 навыков высокоэффективных людей С. Кови,
- Правила тестирования (7 правил)
- Правила Ошманова (8 правил)
- 9 навыков лидеров описанных Ли Яккока в книге "Куда подевались все лидеры",
- 11 правил, которые подростки, по мнению Била Гейтса, никогда не узнали бы в стенах школы

Самые мощные из магических чисел , которые встретились мне в Интернет это:
- "Сто правил NASA для руководителей проектов"
- "101 признак того, что ваш проект горит синим огнем!"

Казалось бы ну бери эти правила, формируй эти навыки и флаг тебе в руки. Но!:

- Ли Яккока сам же вопрошает - Черт подери, куда подевались все лидеры (правила то есть!)?

- Существует ли 8,9,10 правило тестирования? Да, конечно. Я думаю и 1024 правило найдется.

- Если убрать 101-ый признак - перестанет ли ваш проект разваливаться? Ну да, конечно - надейтесь.

- Так ли уж важны 7 навыков высокоэффективных людей? может быть есть другие - более высокоэффективные? Кстати. С. Кови он не был бы успешным, если бы не оставил лазейку. В конце книги, перед приложениями он ... Да, я лучше процитирую:

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

Ай да Стивен Кови, ай да сукин сын! - в хорошем смысле этого слова, конечно.

Я же не буду советовать вам запоминать три-пять-семь-сто-n принципов и законов. Я ограничусь одним словом. Словом, которым руководствуюсь всегда. Только этим словом.

Я чувствую, что старею, поскольку все стал превращать в поучительные истории. Но избавляться пока от этого не хочу. Никто не жалуется ;)

Когда то я достаточно сильно увлекался бодибилдингом. Потом остановился на том, что достаточно держать себя в форме. И вы, может быть, будете удивлены, но бодибилдеры тоже пишут книги! Смешно правда? - Самые "тупые" люди на планете пишут книги (я то знаю, что спортсмены не тупые, но фраза "я не люблю качков" - от блондинок добивает больше всего). Так вот есть такой известный в наших кругах Стюарт Макроберт. И заголовок самой известной его книги содержит один глагол:

Думай!

И все. И мне не нужны принципы, законы - понятные другими людьми в общении с другими людьми. Да - мне нужны советы, как поступить в определенных ситуациях. Но ведь менеджеры предлагают нам навыки, советы, принципы - как идеальные, для всех случаев жизни. Вот в чем загвоздка. Прежде чем принять их на веру - нужно подумать - а-подойдут-ли-они-сейчас-мне-в-данный-момент?

И принять.

Или не принять.

Но сперва Подумать.

Я ставлю этот глагол цитатой недели. Пусть он не от QA и даже не от IT, но он из жизни и подходит всем.

четверг, 6 августа 2009 г.

Кем вы были в прошлой жизни?

Не секрет, что люди с малых лет не готовятся сознательно стать QA\QC (по крайней мере в России). До того как стать тестировщиком лично я прошел тернистый путь - от студенческой скамьи, до эникейщика, затем до чисто-программиста и только спустя 6 лет после окончания университета меня случайно занесло в QA.

Таких историй знаю не мало. Из более чем трех десятков знакомых только один со студенческой скамьи хотел стать специалистом по качеству- и то потому, что получил именно такую специальность ;). В ИТ его занесло случайно через три года после окончания университета.

Отсюда родился вопрос - кем QA бывают до QA?

Я разместил в самом верху своего блога опросник - буду рад если Вы проходя мимо поучаствуете и ответите.

А Кто Вы были в прошлой жизни?

среда, 5 августа 2009 г.

Анкета допросник SQA

Поскольку я меняю место работы, начальство попросило подготовить документ "как подготовить тестера". Компания, в которой я сейчас работаю, до меня тестеров как таковых не имела. Я задумался... и сперва составил анкету допросник SQA. Которую и выкладываю. К некоторым вопросам я прилагаю комментарии.

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

Анкета опросник для собеседования на позицию QA

Перед беседой, человек проводящий собеседование, сам должен иметь опыт работы в QA и прочитать весь список литературы, указанный в конце анкеты.

Вопросы о прошлой компании\месте работы и текущих ожиданиях:

Основная задача, для чего задаются данные вопросы — понять кем ощущает себя человек на текущем месте работы, чем он недоволен, как он вообще относиться к своей работе. Также предпринимается попытка понять, что человек ожидает от нас

Расскажите о вашем текущем месте работы: компания, должность, обязанности.

По тому как человек рассказывает о компании можно судить насколько он интересуется работой. Вовлечен ли он в общий процесс своей текущей работы либо просиживает штаны.

Какой у вас самый любимый проект и почему полюбили?

Если у человека нет такого проекта, то такой человек скорее всего нам не нужен. Человек может любить проект из-за работы с людьми, из-за используемых технологий и пр. Если у него все проекты на одно лицо — то либо ему не повезло в жизни, либо он ничего не делал, либо у него пока нет еще опыта ( в последнем случае все еще можно исправить)

Какой у вас самый нелюбимый проект и почему не любили?

Таких проектов может и не быть. Но лично у меня есть. И если они есть — значит человек не боится признаться в своих ошибках. Это многого стоит.

Как бы вы могли оценить ваш вклад в работу вашей компании?

Есть легенда. Спросили у трех камнетесов что они делают. Один ответил что он зарабатывает на жизнь. Второй ответил что точит камни. Третий ответил что он строит храм. Нужно искать третьих.

Почему решили сменить работу?

Это пустой вопрос, но в очередной раз показывает кто перед нами: Камнетес, Зарабатывающий либоСстроящий Храм.

Почему выбрали нашу компанию?

Всегда полезно узнать откуда растут ноги. Здоровому пиару для компании всегда есть место.

Что вы планируете получить от компании кроме материального вознаграждения?

Пустой вопрос, но может показать многое.

Что вы можете предложить компании - чем бы вы могли ей помочь или навредить. Чем быть полезны и тому подобное?

Пустой вопрос, но может показать многое.


Вопросы по технологиям

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

5- знаю долго и пользуюсь технологией постоянно или знаю хорошо и достаточно глубоко в определенных местах (все знать невозможно!).

4 — знаю хорошо, пользуюсь технологией не часто, знаю как работает, могу легко освоить другие функции и возможности технологии после того как прочитаю документацию.

3 — либо работал достаточно давно, либо знаком поверхностно, документация требуется постоянно.

2 — знаю что такая технология есть, несколько раз сталкивался, знания поверхностны.

1 — слышал что такая технология есть, знаю где достать документацию, могу изучить в течение 1 месяца.

0 — никогда не слышал и не сталкивался.

Вполне очевидно что SQC должен уметь профессионально работать с компьютером - не как неопытный пользователь, а как достойнеший IT спец (умеет переустанавливать Win\Lin - значит мозги уже есть).

Bug Tracking System

Нужно узнать - знает ли собеседуемый что это такое, с какими системами работал, знает ли особенности управления багами

Знакомы ли вы с другими продуктами по управлению процессами QA.

Очень полезно узнать с чем еще работал собеседник и сможет ли он их назвать:

- система управления требованиями,

- система управления тестами (типа TestLnik) и т.п.

Знание Windows

- Что такое файловая система, какие файловые системы для MS Windows вы знаете?

- Какие версии ОС MS Windows вы знаете (желательно что бы человек слышаел не только Vista\Xp но и понимал что есть Home\Basic Professional и пр.)?

- Что такое реестр Windows?

- Какие программные средства работы в среде Windows вы можете еще назвать (те которыми пользуетесь)?

- Каким почтовым клиентом вы пользуетесь? Почему?

- Что используете для time Management

и пр. и пр. и пр.

Вполне очевидно что QA данные вопросы не нужны, но они показывают общий уровень специалиста.

Возможно создать такой же список вопросов по Linux

Прочие технологии

Определить дополительные технологии и программные средства с которыми должен уметь работать QA сложно. Если собеседуется специалист на автоматизированное тестирование, то очевидно должны подбираться языки программирования, DBMS etc.


Вопросы о саморазвитии

Данный список вопросов должен определить насколько человек склонен к самообучению и саморазвитию.

Какие книги вы прочитали в последние месяц, год?

IT, QA и близкие книги. Впрочем человек должен читать не только профессиональные книги, но это только мое мнение.

Какие сайты/блоги по тестированию знаете?

Если человек может назвать www.software-testing.ru, http://www.rbcs-us.com это очень хорошо.

Ведет ли свой профессиональный блог.

Если человеку есть что сказать и он говорит — это хорошо. Я тому пример ;)

Проходил ли обучение или курсы по тестированию

Если не проходил - то и фиг с ним. Я вот тоже только один вебсеминар прошел, остальное в книгах, блогах и материалах конференций искал.


Вопросы по предметной области

Данный список вопросов достаточно важен. Он показывает насколько человек продвинулся в понимании того, что такое разработка ПО.

Что такое жизненый цикл ПО и цикл разработки ПО.

Комментарии излишни.

Какие модели разработки ПО знаете, в чем они отличаются

Водопад, циклический водопад, Agile: scrum, xp.

Что такое требование к ПО и какие у требования есть аттрибуты


Какие документы при разработке ПО используются

ТЗ\FDD, Sodftware Specifications, Test Plan (test case)

Какие стандарты по разработке ПО вы знаете

Знает что есть 34 и 19 — не плохо, знает IEEE 829 – значительно лучше, знает в добавок ISO 12207 – человек в теме!


Вопросы по QA

Данный список вопросов достаточно важен. Он показывает насколько человек продвинулся в понимании того что такое QA.

Какие документы по организации процесса тестирования вы знаете.

Ответы в вопросах ниже

Что такое Test Case и его структура?


Что такое Test Plan и его структура?


Что такое Bug Report и его структура?


Какие виды тестирования вы знаете?

Ответы в вопросе ниже

Что такое и объясните принципы
- Installation / Uninstallation testing
- Perform boundary testing
- Functionality testing
- Virus Check
- Scenario testing
- Perform database testing
- Field Entry testing
- Interface testing
- Regression testing
- Perform application interoperability testing
- Perform OS interoperability testing
- Perform Hardware, Network compatibility testing
- Architecture reviews
- Code reviews
- Functional and Test Spec Review
- Requirements, Design docs Review
- Usability testing
- Specification based testing
- Test Progress and Summary Review
- User Documentation Review
- International/Localization
- Perform error handling testing/Recovery testing
- Performance testing
- Submit testing summary report
- Automated Testing
- Stress testing

Выбрать несколько вопросов (не более 5) для проверки знаний собеседуемого

Чем отличается Severity от Priority

Классика жанра )

Тестирование белого ящика, черного ящика, серого ящика


Что такое бетта тестирование


Что такое Regresion Testing


Что такое Acceptance Testing


Что такое Smoke tests


Что такое модульное, интеграционное и системное тестирование.


Что такое Requirement traceability matrix


Что такое Bug life cycle


Что такое процесс управления конфигурацией в разработке ПО и в тестировании


Что такое процесс управления изменениями в разработке ПО и в тестировании


Что такое баг. Приведите пример. Какие типы багов вы знаете

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

Какой по вашему идеальный программный продукт для автоматизации работы QA

Данный вопрос показывает насколько человек понимает что такое QA и чем он отличается от QC. Также можно определить насколько человек понимает принципы автоматизации работы QA.

Какие процессы тестирования могли бы быть автоматизированы.

Примерно такой же вопрос что и предыдущий. Либо задать данный вопрос, либо предыдущий.

Что такое QA и что такое QC

Данный вопрос для общего развития. Хорошо если собеседуемый понимает что QC включен в QA, и что QA это не тестирование, а обеспечение качества на всем цикле разработки ПО.

Для чего проводится тестирование ПО

Вопрос для понимания общего развития собеседуемого.

Нужно ли тестировать документацию?

Ответ — да. Это называется «Тестирование требований к ПО”. Собеседуемый должен понимать, что требования в ТЗ могут быть: неправильно сформулированы, противоречащими и просто нереализуемыми.

Какие цели тестирования вы бы выделили?

Лично я бы выделил три цели:

- поиск багов,

- оценка качества продукта (ни в коем случае не обеспечение качества, от того сколько багов найдено качество ПО не улучшается),

- оценка рисков (поскольку выпуск продукта с малым качеством не есть гуд, всегда найдуться риски — например, что кто то умрет или на вас подадут в суд)




Практические задачи

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

Посадить за комп и дать листок, чтобы напечатал текст.

По тому как человек работает с клавиатурой можно понять - как хорошо он работает с компьютером вообще.

Провести собеседование на английском на одну из тем по QA

Очень легко показывает уровень английского у человека.

По заданной интервьиром теме:
- создать формализованные требования,
- создать формализованные test-cases,
- создать тест план,
- создать предпологаемые баг репорты,

Примеры систем для данного тестирования
- Система авторизации на любом сайте электронной коммерции
- Дана консольная программа. Программа позволяет вводить последовательно три числа. Каждое число подтверждается клавишей Enter. После того как введено первое число, можно вводить второе. После того как введено второе число, может быть введено третье. После того как введено третье число программа сообщает - является ли треугольник с данными сторонами равнобедренным.
- Банка с кофе.
- Стерка
- Авторучка
- Солонка
- Любая другая вещь. Чем неожиданнее будет вешь тем лучше. Еще лучше если с самого начала собеседуемый начнет сам задавать вопросы. Какая именно банка, какая форма, какой материал. Т.е. еще лучше если он изначально сам создать список требований по объекту и начнет эти требования тестировать.

Сколько комнат в нашем офисе

Данная задача на внимательность и подразумевает, что человека проведут по всему этажу.



Задачи на сообразительность


Данные задачи показывают возможность человека решать головоломки. Не факт что решив головоломку он является или будет являться хорошим специалистом. Это просто один из этапов анализа знаний собеседуемого. В процессе человека можно спрашивать - подталкивать человека к решению. Собеседование это все таки небольшой стресс.

Почему крышка от люка круглая?

На самом деле крышка не круглая — в ней есть выступы для того чтобы ее установить.

Ну конечно она имеет круглую форму и очевидно для того чтобы не упасть (любая иная фигура с углами или формы может провалиться в люк).

Есть 10 кроликов

Есть 1000 бутылок с вином

Одна из бутылок содержит яд. Как определить в которой?

Задача на двоичное мышление. Кролик пьет (1) или не пьет (0), соответсвенно мы можем закодировать 2 в 10 позиций

0000000000 — первая бутылка

0000000001 — вторая бутылка и т.п.

Есть дом. В доме четыре стены. У каждой стены по окну. Все окна выходят на север. Сколько таких мест на земле?

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

И тому подобное....

Для получения дополнительных примеров достаточно прочитать книгу Как сдвинуть гору Фудзи (См. Список литературы)


Список литературы:

Книги (все можно найти в электронном варианте):
- Тестирование ПО. Кем Канер и др.;
- Искусство тестирование. Майерс;
- Tестирование dot com. Роман Савин;
- Как сдвинуть гору Фудзи. Уильям Паундстоун;

Сайты:
1) http://www.rbcs-us.com/software-testing-resources/library/basic-library.html (в том числе и особенно Freightliner Test Level Matrix);
2) www.software-testing.ru;
3) Глоссарий терминов используемых в тестировании ПО
http://www.rstqb.org/index.php?id=25,0&sitelang=ru;
4) Более простой глоссарий http://testirovschiki.ru/glossary.php;
5) FAQ по тестированию http://www.ruleworks.co.uk/testguide/;

Конфереции:
SQADays (например http://it-conf.ru/ru/content/190.htm);

Обучение тестировщиков:
http://www.luxoft-training.ru/training/school/72;
http://www.avalon.ru/PPS/QA/Courses/About/?CourseID=905.

вторник, 4 августа 2009 г.

Mustread для управленца.

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

Именно поэтому я постоянно знакомлюсь с книгами по управлению. Страсть как не люблю слово management - суют это слово куда ни попадя. Продавец - менеджер, бумажки перекладываешь - менеджер. Недавно прочитал что есть менеджеры по клинингу - уборщицы - "Афтар убей себя ап стену"! Надеюсь скоро до многих дойдет, что слово "управленец" гораздо понятнее и понятнее для русского мышления.

Так вот. Читая про т.н. timemanagement заметил - умные мысли по управлению собой и своим окружением можно подчеркнуть и не из совсем подобных книг. Например книги "Выживают только Параноики" Эндрю Гроува или "Куда Подевались Лидеры" Ли Якокка и Кэтрин Уитни весьма и весьма способны прокрутить мозги в разных направлениях (смотреть с разных сторон очень полезно, проблема только - найти это самое место, откуда твоя сторона считается другой). Натыкаясь на сайты складировал упоминаемые книги и их рецензии, но сегодня наткнулся на сайт Mustread, на котором это все делается в постоянном режиме.

На картинке скриншот всех книг, на которые даны рецензии. Среди книг нашел и те что прочитал, и те что хотел прочитать. Оставляю ссылку на память - когда книги "закончаться", можно знать где искать


понедельник, 3 августа 2009 г.

Профессионализм тестировщиков дело рук самих утопающих


Профессионализм сотрудников группы тестирования заключается в том, чтобы принять реальность такой, как она есть, не жалуясь и не пытаясь бороться с ней запретами, и успешно закончить тестирование продукта вместе с внесенными изменениями
Сем Каннер и др.

Во истину так.