Всего за 490 руб. Купить полную версию
Ну и последняя, главная, на мой субъективный взгляд, причина, заключается в том, что русский бизнес не слишком заинтересован экономить несколько тысяч на каждом проекте за счет оптимизации процессов, пока за углом можно спокойно украсть миллион. Когда миллионов перестанет хватать на всех, тогда консалтинг будут покупать гораздо активнее.
Общительность
На собеседованиях иногда приходится слышать вопрос: «Вы общительны?» И понимать, что общительность путают с коммуникативными навыками.
Успешному аналитику вовсе не требуется много чесать языком и получать искреннее удовольствие от этого процесса. Ему нужно уметь:
а) слушать;
б) направлять беседу (чтобы выполнить работу аналитика, а не психотерапевта для своего собеседника);
в) правильно формулировать вопросы;
г) интерпретировать ответы;
д) объяснять сложные вещи простым и понятным собеседнику языком.
Способность к коммуникации в перечисленном смысле это решающий фактор. Знания технологий и предметной области даже не на втором, а чаще на третьем месте.
Мастер-класс
Как я пишу техническое задание? Беру исходный материал и отрезаю все лишнее.
Требования, как правило, принимают в течение своей жизни следующие состояния:
1. понятны клиенту;
2. понятны мне;
3. понятны разработчику.
ТЗ появляется между вторым и третьим. То, что происходит между первым и вторым, называется анализ.
Выжимать исходный материал нужно, как свежевыстиранную вещь, до тех пор, пока в нем почти не останется воды. Но немного надо оставить иначе разработчики поперхнутся.
Выжимать исходный материал нужно, как свежевыстиранную вещь, до тех пор, пока в нем почти не останется воды. Но немного надо оставить иначе разработчики поперхнутся.
Как я обрабатываю информацию. Сначала группирую по принципу «белое к белому», «синее к синему». Таким образом получаю несколько больших групп, объединяющих требования к крупным частям системы. Внутри, как правило, элементы связаны сильнее, чем с элементами других групп. Вам все это должно быть знакомо из курса объектно-ориентированного программирования. Модульность.
Теперь выделяем кандидатов в требования. Находим описания похожих функций и детализируем их до такого состояния, когда становится понятно, что является общим случаем, что частным. Если не хватает описаний каких-то частных случаев, уточняем их у клиента. Последовательно проходим все сценарии развития событий. Устраняем дубликаты.
Готовые болванки начинаем обтачивать напильником. Добиваемся непротиворечивости формулировок и ситуации, когда каждое требование упоминается в ТЗ только один раз.
Когда все лишнее отпилили, можно заняться дизайном. Я строю ТЗ следующим образом: сначала очень сжатое описание всех функций, а потом по разделу на каждую группу родственных функций, где они описываются детально. Важно найти базовый принцип, на основании которого устанавливается родство. Скажем, если некая система печатает отчеты в файлы MS Excel, получает данные из системы 1С и отправляет смс-сообщения, то все три функции будут являться частными случаями обмена с внешними системами. Объединяет их как минимум необходимость шлюза и согласованности форматов между обменивающимися системами. Аналогично все требования к отображаемым меню и экранным формам объединяются в раздел, где описываются требования к дизайну.
Профессионал
Я употребляю это слово в значении «человек, зарабатывающий на жизнь определенным занятием» (в котором он и будет профессионалом). Есть также значение «опытный и квалифицированный специалист». Признавая его право на существование, я тем не менее почти им не пользуюсь. Есть еще слово «любитель», которым обозначают человека, занимающегося чем-то, что не дает ему средств к существованию. При этом не обязательно не дает вообще ни копейки просто доход от этого занятия настолько мал, что не позволяет содержать себя, и чаще всего у этого человека есть другие источники дохода. Объясняю все это для того, чтобы было ясно, о чем пойдет речь в дальнейшем. Да, по моему мнению, будь вы хоть четырежды гением и с пяти лет кодить с закрытыми глазами если написание кода вас не кормит, значит, вы в нем только любитель.
Как заказчику понять аналитика
Я часто учу других тому, как общаться с заказчиками, а сегодня мне захотелось присоединиться к заказчикам и рассказать им о том, как можно общаться с аналитиками, чтобы быстрее и радостнее достичь взаимопонимания.
Терпение ваша самая сильная черта. Представьте себе, что вы общаетесь с детьми. В определенном возрасте дети задают много вопросов, в том числе о том, что для вас очевидно. Порой из-за этого вы не знаете, как им объяснить ту или иную вещь. Грамотный аналитик будет вести себя примерно так же. Делается этого не потому, что аналитик сам не может ответить на эти вопросы, а потому, что крайне важно получить именно ваш взгляд на проблему, понять, что для вас имеет значение. Для другого заказчика будет иметь значение что-то другое, для разработчика третье, и так далее. Чем более полное представление будет у аналитика, тем лучше конечный продукт будет соответствовать вашим потребностям (порой даже тем, о которых вы не догадывались). То есть нужно готовиться к тому, чтобы отвечать на разные вопросы, иногда банальные, иногда не один раз. И обратно если аналитик почти не задает вопросов, тут определенно что-то не так.