О разделении труда - Программный продукт
Чаще всего в программистском коллективе нужны как проектировщики, настоящие архитекторы, понимающие, что надо строить, и знающие, какие методы и инструменты необходимо применить, так и люди, которые могут писать большие куски кодов, хорошие каменщики.
В российских фирмах очень редко группы проектирования доводят проекты до такой стадии, что людям, пишущим команды, нечего делать, кроме тривиального преобразования. Когда такая точка достигается, человек, пишущий команды, уже не выполняет никакого проектирования и становится кодировщиком. Во многих российских фирмах, в силу нескольких причин, программисты не подразделяются на разработчиков и кодировщиков. А легендарная программа ЛЕКСИКОН вообще создавалась одним человеком, ее автором, нынешним техническим директором Микроинформа Евгением Веселовым.
В некоторых фирмах, например, в INZER, делят программистов на три категории: ведущие, старшие и младшие. Из самых опытных, эрудированных и склонных к менеджменту ведущих программистов выбирается "совет старейшин", который контролирует ход работ по отдельным проектам. Каждый проект управляется менеджером проекта, распределяющим ресурсы и время выполнения отдельных работ. Младшие программисты обычно умеют только кодировать.
Чтобы быть кодировщиком, вовсе не обязательно иметь диплом выпускника факультета прикладной математики. Авторы книги представляют фирму, в которой все кодировщики - студенты. А вот руководить проектом может далеко не каждый. Тот единственный человек, который в фирме является подлинным руководителем проекта, обязательно весьма умен, спокоен и упорен, может воспринять множество конфликтующих идей, влияний и противоречий между людьми и разобраться в них.
Важный фактор - баланс между разными категориями программистов. Говорят, что устройство программы отражает устройство организации, в которой она создавалась. Например, IBM - огромная организация, и злые языки в 80-x годах утверждали, что коды ее программистов спиралеобразны, со множеством обратных связей и состоят из частей, своим стилем изобличающих мышление отдельных групп людей, которые их писали.
Наилучшие программы пишутся небольшими - в четыре-пять человек - командами тесно взаимодействующих между собой программистов, один (редко два) из которых делает проект. Чем больше команда, тем более тщательно приходится разбивать структуру на части и более строго определять интерфейсы между ними. При этом проектные решения верхнего уровня должен принимать руководитель разработки. Попытки же собрать комитет для решения проектных задач в любом случае окажутся фатальными для судьбы продукта. Компромиссы в бизнесе хороши, но не тогда, когда нужно твердой рукой отсечь все лишнее и постараться сделать систему как можно более совершенной, учитывая ограниченные сроки разработки и трудовые ресурсы.
Похожие статьи
-
Определение требований - Программный продукт
Этот шаг является важнейшим среди всех шести этапов процесса разработки. Он влияет на все остальные этапы. Увы, это наименее изученный и наименее...
-
Любая производственная деятельность, в том числе и работа с электронными устройствами, сопряжена с появлением опасных для жизни и здоровья факторов,...
-
Разработка программного продукта - Автоматизированные системы управления и обработки информации
В большей степени программные продукты не являются монолитом и имеют конструкцию (архитектуру) построения - состав и взаимосвязь программных модулей....
-
Производство софта - рискованная игра - Программный продукт
Основной вопрос, который приходится решать производителю перед началом разработки программы, это вопрос о том, стоит ли игра свеч. Поскольку следующий...
-
Для расчета эффективность программного продукта определим, какие задачи выполняет данный продукт, а также насколько снижаются трудозатраты персонала при...
-
Расчет себестоимости программного продукта Себестоимость программного продукта это все виды затрат понесенные при разработке продукта. Себестоимость...
-
Описание программных продуктов, Notepad++ - Разработка сайта рекламного агентства "ART"
Notepad++ Notepad++ - текстовый редактор, который приняли "на вооружение" не только программисты, WEB-мастера, модификаторы, но и обычные пользователи,...
-
Для разработки программного продукта нами была выбрана СУБД Microsoft Access 2010, которая позволяет выполнять простейшие операции с данными: Ѕ добавить...
-
К затратам на проектирование и разработку ПП (Зс) относятся: - Материальные затраты (Зм); - Затраты на электроэнергию(Зэ); - Затраты на оплату труда(Зт);...
-
Всю документацию на программный продукт можно разделить на следующие категории: Документация управления проектом -- организационные документы, которыми...
-
Различные версии продуктов системы программ 1С: Предприятия могут использоваться в организациях с различными объемами информации, различным количеством...
-
В разработке системы принимал участие один инженер-программист. Длительность выполнения работ по проектированию и разработке системы представлена в...
-
Для установки разработанного приложения на рабочую станцию необходимо: - установить необходимое программное обеспечениепакет MS Office (MS Excel, MS...
-
Приобретение программного продукта - Управление по функциям
Приобретение программного продукта -- это покупка лицензии (права) на его использование. Условия использования любого программного продукта описаны в...
-
Общие сведения о программном продукте Разработанный программный продукт называется "Информационная система Вуза". Он направлен на решение широкого ряда...
-
Понятие программного продукта и его жизненный цикл - Управление по функциям
Любая из перечисленных выше систем является программным продуктом. Но это понятие несколько шире, чем комплекс (набор, совокупность) программ. Кроме...
-
Программные продукты, разработанные для трехмерного сканирования c использованием RGB-D камер, имеют много сходств в организации процесса сканирования и...
-
Тестирование программного продукта - Разработка информационно-справочной системы "Аптека"
В настоящее время для установления соответствия программного продукта заданным правилам построения, техническим условиям и заданиям на них, для...
-
Программа "Линейный отдел полиции" - отдельная конфигурация для автоматизации учета административных правонарушений граждан на платформе 1С. Задачи,...
-
1. Изучение теоретических аспектов использования: MS Word, MS Excel, MS Access, Paint и Photoshop... (ППО) Часть 1 : Руководство по выполнению...
-
Вирусы и антивирусное программное обеспечение
Реферативная часть Что такое вирус? Один из известных "докторов" Д. Н Лозинский дал определение вируса на примере клерка. Представим себе аккуратного...
-
ER - диаграмма базы данных была представлена на рис. 2. Рис.2. ER-диаграмма базы данных. Таблица admin - содержит два столбца login и password которые...
-
Формулировка задания: Составьте программу подсчета числа тех гласных букв в слове X, что не используются в написании слова Z. Описание входных/выходных и...
-
Программные продукты ANSYS, CivilFEM for ANSYS - Ядро Parasolid
Компания ANSYS, Inc. предлагает широкий спектр программных продуктов для решения инженерных задач с использованием технологий численного моделирования....
-
Введение - Разработка программного средства, позволяющего оптимизировать SQL-скрипты
Актуальность. В настоящее время трудно найти фирму, которая не использовала бы базы данных в той или иной форме - учет сотрудников, клиентов, продаж....
-
ИСТОРИЯ ПОЯВЛЕНИЯ ДВИЖЕНИЯ OPEN SOURSE - Свободное программное обеспечение
История "свободных программ" начинается с одного человека -- Ричарда Столлмана (Richard Stallman). Именно он впервые употребил термин "free software"...
-
Затраты на оплату труда разработчика ( З Т ) рассчитываются исходя из его часовой ставки и времени его работы, формула (3). Зт= Зо+Зд (3) Где Зо -...
-
Функциональные требования: - Поиск и обработка информации в текстовых файлах при появлении файлов в соответствующей директории по запросу администратора...
-
Выбор средств реализации информационной системы Названные в параграфе 1.4. настоящей работы задачи могут быть решены тремя типами средств автоматизации:...
-
Из универсальных языков программирования сегодня наиболее популярны следующие: Бейсик (Basic), Паскаль (Pascal), Си++ (C++), Ява (Java). Для каждого из...
-
Использование linux в наши дни - Свободное программное обеспечение
На сегодняшний день более 75% серверов обеспечивающие надежную работу Интернет работают под управлением Linux. Сервера таких известных компаний как...
-
Инструменты разработки - Разработка программного приложения "Калькулятор коммунальных услуг"
Инструментами разработки для программного приложения будут являться: - визуальная среда проектирования Microsoft Visual Studio 2008; - Microsoft...
-
Каждая диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из...
-
Введение - Инженерия программного обеспечения. Регистрация пассажира на рейс авиакомпании
Программная инженерия - это интегрирование принципов математики, информатики и компьютерных наук с инженерными подходами, разработанными для производства...
-
Операционная система Windows - Программное обеспечение информационных компьютерных систем
Само название Windows, на русском языке означает "Окна" и имеет в нашем языке синонимы Виндовс, Вундоуз и другие производные полученные после перевода....
-
- Проектирование автоматизированного рабочего места (АРМ) воспитателя специализированного ДОУ. Информационная среда ДОУ способствует достижению целей...
-
Оперативная память - Программное обеспечение персональных компьютеров
Обьем доступной оперативной памяти - один из важнейших параметров любого компьютера. Оперативная память или оперативное запоминающее устройство (ОЗУ или...
-
В данном разделе была разработана функциональная схема работы программного комплекса, которая в общем виде описывает состав комплекса, характер и виды...
-
2.2 Технологическое обеспечение - Программное обеспечение Центра занятости населения
Технологическое обеспечение включает описание организации технологии сбора, передачи, обработки и выдачи информации и отражает последовательность...
-
Программное обеспечение и его виды - Программное обеспечение информационных компьютерных систем
Windows программный компьютер операционный Программное обеспечение (software) - это набор команд, управляющих работой компьютера. Без программного...
О разделении труда - Программный продукт