analyst.by

Белорусское сообщество бизнес и системных аналитиков

Правда о системном анализе

Оригинальная статья: «True Systems Analysis» by Tim Bryce

Недавно я наткнулся на несколько объявлений о приеме на работу под заголовком «Системный аналитик». Когда я их прочел, мне вдруг стало очевидно, что люди до сих пор не знают, что это значит. В объявлениях было следующее:

«Требуется системный аналитик  с 4 — 6-летним опытом определения требований к системам, проектирования и специфицирования архитектуры систем и создания крупных приложений. Кандидат должен иметь опыт работы с JAVA и ATG Framework«.
«Использует методы моделирования данных для документирования бизнес-процессов и потоков данных».

«Навыки работы с SQL обязательны».

К сожалению, системные аналитики все еще воспринимаются не иначе как всем известные программисты, – ошибочное мнение, которое не изменилось за много лет. Это означает, что люди до сих пор сталкиваются с проблемами при различении понятий система вообще и программное обеспечение; эти понятия, безусловно, не являются синонимами, хотя одно часто используется для создания другого. Тот факт, что мы можем создавать системы вручную, уже сам по себе должен быть свидетельством разделения этих двух понятий, но, поскольку мы по большей части создаем сегодня все системы при помощи компьютера, различие становится незаметным для многих людей. Тем не менее, неправильное толкование понятия «Системный аналитик» – это типичный пример небрежного мышления, столь распространенного в нашем обществе.

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

Это означает, системный аналитик должен знать:

* Как работает бизнес.
* Как определить информационные потребности бизнеса.
* Как разделить систему на подсистемы (выделить отдельные последовательности действий).
* Как создать входы и выходы, например, экраны и отчеты.
* Как спроектировать логическую (не физическую!) базу данных.
* Как разработать и выполнить план тестирования.
* Как подготовить спецификации для программного обеспечения.

Если системный аналитик делает свою работу должным образом, это исключает «угадывание» в процессе программирования, ускоряя тем самым процесс разработки программного обеспечения. Иными словами, системный анализ  предшествует программированию. Когда же функции настоящего системного анализа не выполняются, программист должен пытаться выяснить при помощи дедукции, что именно нужно, а это талант, которым обладают далеко не все.

В то время как системный аналитик, являясь специалистом широкого профиля, находится «на одной волне» с бизнесом и людьми, и, как правило, несколько экстравертивен по своей природе, программист находится «на одной волне» с технологиями и, когда ему приходится решать сложные задачи, ориентирован на детали. В то время как системный аналитик должен представлять картину в целом, программист должен сосредоточиться на собственном куске головоломки. Эти 2 функции совершенно различны. Попытки объединить их в одну ведут к ухудшению качества исполнения каждой из них.

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

Когда я слышу, как люди говорят: «У нас нет времени, чтобы провести предварительные работы (у нас нет времени на то, чтобы сделать это правильно)», я расцениваю это как: «У нас достаточно времени, чтобы забыть об этой проблеме, пока либо мы сами, либо пользователь явно не столкнется с ней (у нас достаточно времени, чтобы делать неправильно)».

Итак, как распознать, что компания неправильно понимает функции системного анализа? Это просто. Когда вы видите, что языки программирования включены в список требований к кандидату.


Автор
: Tim Bryce
Tim_Bryce
Tim Bryce писатель и консультант по вопросам управления в M. Bryce & Associates, Palm Harbor, штат Флорида. С другими статьями автора можно познакомиться на сайте http://www.phmainstreet.com/timbryce.htm. Связаться с автором можно по адресу: timb001@phmainstreet.com

 

 

 

 

 

 


Статья была впервые опубликована на английском языке на сайте
: http://www.modernanalyst.com/

Оригинал статьи: http://www.modernanalyst.com/Resources/Articles/tabid/115/articleType/ArticleView/articleId/1494/True-Systems-Analysis.aspx

Перевод подготовлен: Belle Morte

Обсуждение на форуме: http://analyst.by/forum/materialy-saita/pravda-o-sistemnom-analize

Перевод подготовлен: Belle Morte
Статья была впервые опубликована на английском языке на сайте
: http://www.modernanalyst.com/
Оригинал статьи: http://www.modernanalyst.com/Resources/Articles/tabid/115/articleType/ArticleView/articleId/1494/True-Systems-Analysis.aspx

 


13 Сентября, 2010


Добавить комментарий
Также Вы можете войти используя: Facebook Google