Разработка ПО: сопоставление советской и современной организации

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

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

Мы рассматриваем обобщенные проектные организации по разработке/поставке/эксплуатации ПО/оборудования/системной интеграции, условно названных как:

  • А - времен позднего СССР (1960-80 гг.): НИИ/КБ/КТЦ/ВЦКП...
  • Б - современная компания

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

Иерархия подразделений

Уровень А Б
1 Организация Компания
2 Отделение/подразделение Дивизион/отделение
3 Отдел (*) Отдел
4 Лаборатория (**) Группа
5 Сектор Группа

(*) - отдел является единицей финансирования, т.е. бюджеты составляются начиная с уровня отдела.

(**) - уровень лаборатории не являлся обязательным для организаций, не ведущих НИР (научно-исследовательскую работу), например, для ВЦКП (Вычислительный Центр Коллективного Пользования)

Иерархия должностей

Уровень
иерархии
организации
Образовательный ценз (*) А Б Англоязычный термин
1 Доктор/кандидат(?) наук Директор Директор/генеральный директор CEO -Chief Executive Officer
Главный инженер Технический директор CTO - Chief Technology/Technical Officer
2 Заместитель по отделению Заместитель директора по направлению/директор по направлению (**)

3 Кандидат наук Начальник отдела Начальник отдела
4 Заведующий лабораторией Руководитель группы

5 Высшее образование Заведующий сектором Руководитель группы Team leader
6 Инженер (категории 3, 2 и 1, старший/ведущий), научный сотрудник (младший, старший) Специалист, инженер

7 Среднее специальное образование Техник/лаборант/студент-практикант Сотрудник

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

(**) - как правило укладывается в шаблон Chief "направление" Officer. Например, CAO - Chief Accounting Officer - главный бухгалтер, CDO - Chief Development Officer - директор по развитию и т.д.

Уровни принятия проектных решений

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

Уровень Тип принимаемых решений
1 Целеполагание, технико-экономическое обоснование, регламент, бюджет, планирование
2 Требования к системе, концепция, техническое задание, архитектура системы
3 Технический проект подсистемы, архитектура подсистемы
4 Реализация подсистемы, спецификация модулей
5 Реализация модулей, ввод информации

Функциональные специализации (роли)

Уровень
проектного
решения
А Б Англоязычный термин
1 Руководитель проекта, научный руководитель Руководитель проекта Project Manager
2 ГИП (главный инженер проекта), главный конструктор (*) Системный архитектор System Architect
3 Ведущий инженер (область, специализация) Архитектор подсистемы/направления (**) Software architect, database architect, hardware architect,...
4 Инженер (область, специализация) Разработчик (специализация) Software engineer, database engineer, system engineer,...
5 Техник (область, специализация), оператор ЭВМ (***) Младший специалист, кодировщик Software developer, database developer, web developer, support & helpdesk,...

(*) - Как правило, главный конструктор/ГИП занимали должности от начальника сектора и выше в зависимости от проекта, который он возглавлял

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

(***) - Например, в области программирования было формальное деление на инженеров-программистов и техников-программистов в соответствии с образовательным цензом

Должностные обязанности/инструкции

Примеры можно найти на сайте http://www.dion-inform.com/shared/official_duties.phtml

Сергей Тарасов, апрель 2007

Небольшое обсуждение в ЖЖ

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

В связи с засилием в программи

В связи с засилием в программировании обработчиков (или по старому AsynchronousSystemTrap procedure) всякого рода событий хочется обратить внимание, что некоторые из них возникают, а иногда не возникают. Скажем при движении вниз по дереву AfterSelect работает, а при движении вверх нет. Не удивлюсь, что у кого-то, о чем я говорю, работает. Не работает другое, так как порядок обработчиков тоже важен.

понятиям, использо


понятиям, использовавшимся в СССР.

Неужели кто-то мыслит еще по понятиям СССР?
:)
Ответ, я еще мыслю.

Я вот что скажу про современное программирование. Управляемый контент, который нам предложили, очень похож на бабу, которая смотрит на тебя, анализирует твои действия и предлагает решения, которые ты хочешь, а не те, которые реально нужны, если анализировать оперативную обстановку объективно. Причем с элементарным запаздыванием, поэтому как любой бабе приходится повторять дважды, чтобы она поняла. И это хреново так как эта баба меня уже достала своим психоанализом. Эта разводящая позиция ПО как впрочем и всех психоаналитиков и близко не лежит с той объективной картиной мира, которая нужна. Хочется сказать КОЗЫ и я это говорю.

***
Неправда, что годы так быстро летят,
Их бег, как аллюр лошадей табуна, -
Промчались, лишь спины от пота блестят,
А степь покрывает пыль дел пелена...

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

Неправда, неправда, что прожито зря,
Зря вера с надеждой и пролита кровь,
Прожитый опять лист календаря
Где тело с душою не встретились вновь...