Какой язык программирования необходимо знать системному аналитику?(Прочитано 19027 раз)
Здравствуйте! Я студентка специальности "Прикладная математика и информатика", по окончании учёбы(а может быть даже раньше) планирую работать системным аналитиком. И, соответственно, уже сейчас (3 курс) задумываюсь о том, как же устроиться по этой самой специальности и какими знаниями и умениями нужно обладать, дабы стать хорошим специалистом))

В большинстве случаев работодатель указывает в требованиях к соискателю навыки программирования. Не могу сказать, что в моем университете уделяют достаточно внимания программированию, но основные принципы ООП, синтаксис C++ и Java я усвоила, самостоятельно занимаюсь веб-программированием, словом - везде по-немногу. Тем не  менее, на мой взгляд, системный аналитик должен знать программирование если не в совершенстве, то на достаточно высоком уровне. Что Вы думаете на этот счет?

Потому собираюсь пойти на курсы программирования в Москве. Но какой курс выбрать? Какой язык? Посоветуйте, пожалуйста.
 Нужно ли это? И поправьте меня, если, м.б., я как-то неправильно мыслю.



Никакие языки программирования не надо знать аналитику.
Гораздо важнее иметь общее представление о процессе разработки ПО (этапы, участники, артефакты) и уметь мыслить в категориях объектно-ориентированного анализа/проектирования.



Согласна с ida. Если уж такое стремление к дополнительному образованию, то посетите курсы помогающие найти общий язык с заказчиком и с командой. Для меня лично это были самые полезные курсы. А технические вопросы можно решать и с базовыми знаниями по программированию.



Декларативные полезны. В частности, SQL. Позволяет собирать статистику без обращения к программисту:
1. Получили доступ к БД
2. Связали Excel с БД
3. Построили запрос на выборку
4. Построили отчет и/или диаграмму.

XSLT маловероятно, что понадобится, но знать о нем стоит.
Сергей Мартыненко
http://martyinenko-sergey1.moikrug.ru/




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

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

Могу посоветовать также презентацию доклада Дмитрия Безуглого на ЛАФ 2013 ее можно найти здесь: http://conf.uml2.ru/program2013/ - доклда Код аналитика.



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

Цитировать
Что Вы думаете на этот счет?
Пока разговор на уровне «Дэвид Боуи — лучший певец современности, а что думаете вы?». Зачем вам чужое мнение, если у вас уже есть своё и вы его никак не обосновываете? Похоже на попытку рационализации.



Системному аналитику желательно быть знакомым с, в порядке важности:
  • Процедурным программированием (Fortran, Pascal, C)
  • Объектным программированием (C++, Java)
  • Декларативным программированием (SQL, Prolog, Lisp)
  • Структурными описаниями (XML, XSD, OCL)
  • Функциональным программированием (Haskell, Erlang)
На изучение каждого из направлений имеет смысл потратить не больше месяца.

Для того, чтобы:
  • владеть методами формализации алгоритмов (т.е. правильно ставить задачи)
  • говорить с программистами на общем языке (т.е. эффективнее взаимодействовать)
  • понимать принципы и правила работы программ (т.е. не ставить задачи неправильно)
Уметь программировать на промышленном уровне (т.е. со знанием библиотек, хаков и особенностей) при этом совсем не нужно, скорее даже вредно.



Похоже на попытку рационализации.
Ого, Дэн, а что это такое?



Ого, Дэн, а что это такое?
Психологический механизм подбора аргументации ко мнению «задним числом». Когда решение уже принято, действие совершено и тут вдруг человеку становится нужно, чтобы это решение выглядело ещё и разумным, обоснованным.

Также см. ВП.



Трудно что-то посоветовать, поскольку неизвестно, с чем Вам придется года через три столкнуться. В любом случае умение читать код не помешает, так что если есть время и желание, можно этим заняться. Лишним не будет.
Вот с чем однозначно стоит ознакомиться, так это с проектированием БД и c SQL.
А из языков программирования можно для расширения кругозора брать любой, который больше приглянулся. C++, C#, Java... С++, конечно, классика жанра, но порог вхождения высоковат там, да и деталей много низкоуровневых, которые Вам, вероятно, не особо и нужны. Как будто в Бауманке неплохие курсы.
Цитата: Denis Beskov
Декларативным программированием (SQL, Prolog, Lisp)
Не сталкивалась с Lisp, но он вроде к функциональному программированию относится. Это не опечатка?



Приветствую!
Я в своей практике использую (раз в неделю-две) VBA. Пишу прототипы поведения в MS Excel, иногда полнофункциональные. Но как правило на основные сценарии/входные данные, как компромисс польза/трудозатраты.
Чем полезно:
+ VBA с MS Excel всегда под рукой.
+ Для реализации не сильно сложной логики/модели в принципе годится (хотя после с++ конечно коробит).
+ По началу моделировал прототипы уже после составления ТЗ, сейчас частенько до ТЗ. Пока моделируешь, всплывают такие моменты, о которых заранее и не догадаешься. Новые границы, условия и тд тп.
+ Модель затем использую для "генерации" тестовых/приемочных сценариев. Так же её используют инженеры по качеству.

ЗЫ О моей специфике: продуктовая разработка, миниТЗ на 2-10 листов о внесении новых возможностей/развитии существующих.



А в целом по топику: знать какой-либо язык +- бесполезно без реального опыта использования оного. Возможно, это и имеют ввиду работодатели (Вас же не писать код зовут, а вот понимать во что выльются Ваши будущие требования надо).
Т.е. важно иметь представление о фактическом процессе разработки, об архитектуре ПО, о трудозатаратах тех или иных решений и тд. Это все приходит с опытом.



В институте, как и многие, изучал Pascal, VB, VBA, SQL, на моей практике самым полезным оказался SQL.



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

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

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

Могу посоветовать также презентацию доклада Дмитрия Безуглого на ЛАФ 2013 ее можно найти здесь: http://conf.uml2.ru/program2013/ - доклда Код аналитика.
Да, Вы правы, программирование мне интересно. Что касается технологии и практики программирования, каким образом, кроме как уже в процессе работы, можно получить подобный опыт?Или под этим подразумеваются архитектуру ПО и этапы разработки,  как раз то, о чем пишет Uniqm?

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

И всё-таки мнения разделились. И в целом, необходимо быть специалистом широкого профиля и обладать представлениями(подкрепленными практикой) о программировании, не обязательно углубляясь в какой-то конкретный язык, а знание СУБД только приветствуется.




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19