14.4. Постановка задачи
Я попытался показать затраты труда на программирование, неотделимое от использования вычислительных машин, но мало сказал о затратах труда на разработку модели или вообще на постановку задачи. Хотя разработка моделей не является предметом обсуждения в этой главе, мы хотели бы рассмотреть проблему постановки задачи при таком использовании вычислительных машин, при котором не предусматривается применение модели в обычном значении этого понятия.
Постановка задачи обычно настолько переплетена с программированием, что их часто рассматривают как единое целое. Объем необходимой для этого работы постоянно недооценивают, и недооценивают очень существенно даже тогда, когда задача, в сущности, проста. Для того есть много причин. С одной стороны, если программированием занимаются люди, знакомые с задачей, то они должны уметь программировать. Но обучение требует много времени, и возможно, что они так никогда и не станут квалифицированными программистами. Если же, с другой стороны, программисты займутся постановкой задачи в целом, то им придется изучить задачу, что опять-таки требует времени, и вполне возможно, что они никогда не изучат ее как следует. Если над задачей работает смешанная группа, то возникает проблема общения между ее членами; каждый из специалистов в своей области должен научиться понимать язык другого, а на это требуется еще больше времени.
Метод, при котором программирование выполняют люди, знакомые с задачей, успешно применялся при проведении коммерческих расчетов. Метод, при котором постановка задачи выполняется программистом, совершенно не изучен. Использование смешанных групп весьма широко распространено, и, по-видимому, это наилучший метод. Однако в связи с таким подходом следует сделать одно важное замечание. Если речь идет о больших системах, то очень важно, чтобы человек, знакомый с задачей, научился понимать язык программиста и получил представление о программировании и ограничениях, присущих машинам. Если в руках такого человека находится большая и сложная задача, то он не может просто передать ее программисту для решения.
Другая причина недооценки размеров работы, необходимой для использования вычислительной машины в решении новой задачи, заключается в том, что решение задач на вычислительных машинах происходит совершенно иначе, чем при применении старого привычного метода. Консерватизм отдельных лиц и инертность организаций часто затрудняют введение перемен, а иногда делают их невозможными .
Мы считаем, что из всех элементов, из которых слагается эта работа, больше всего трудностей доставляет детальное решение вопроса, какую именно проблему мы собираемся решать. Например, один директор банка, в котором все операции были недавно автоматизированы, сообщил, что 65% труда группы, занимавшейся вопросами обработки данных, ушло на детальное уяснение проблемы, решением которой им предстояло заниматься.
Для уяснения причин большой длительности подготовительного периода приведем несколько примеров.
Самым ярким примером трудностей при использовании машин для бухгалтерского учета, по-видимому, является пример с промышленной фирмой, решившей автоматизировать составление платежных ведомостей. Заработная плата в этой фирме рассчитывалась по прогрессивной системе, с учетом работы, как отдельных работников, так и целых групп, так что платежные ведомости были исключительно сложными. У фирмы были свои собственные специалисты, ряд опытных специалистов был предоставлен в ее распоряжение фирмой-поставщиком вычислительных машин. Для большей надежности прибегли к консультациям специалистов по коммерческим расчетам. Состояние проблемы опасения не вызывало. Однако примерно через два года, после того как было написано несколько сот тысяч команд, все участники работ признали, что она им не под силу. Следует учесть, правда, что данная группа решала эту проблему одной из первых и ей пришлось многому учиться. В наши дни машины хорошо справляются с проверкой инвентарных списков и составлением платежных ведомостей. К сожалению, организации и отдельные лица, работающие в этой области, не особенно склонны учиться на ошибках других, и подобные случаи неоднократно повторяются.
Второй пример относится к компании городского энергоснабжения. Она избрала более разумный и намеренно медленный подход к проблеме, но масштабы работы были также недооценены. Изучение проблемы началось в 1953 г. Через год компания решила, что приобретение вычислительной машины было бы экономически оправдано, и заказала машину определенного типа. Специалисты немедленно принялись за постановку задачи и программирование. Еще через два с половиной года компания получила машину и начала передавать на машину работу, производившуюся до того людьми. Длительность переходного периода вместо запланированных девяти месяцев составила четырнадцать месяцев. Первоначально предполагалось, что потребуется программа из 30 000 команд. Когда работа была завершена, объем программы составил 42 000 команд, так как были недооценены размеры работы, необходимой для учета в программе отдельных, не часто встречающихся операций; в ходе этого была также установлена необходимость включения в программу различных проверок (упомянутые выше аварийные сигналы). Помимо того, для обеспечения нужд переходного периода пришлось написать еще 20 000 команд. В течение переходного периода были наняты дополнительно новые сотрудники, так как в это время действовали три системы: старая, новая и промежуточная. Чтобы установить вычислительную машину, которая обычно способствует сокращению рабочей силы на предприятии, компании пришлось временно увеличить число сотрудников на 60 человек. В ходе установки машины были произведены изменения в структуре бухгалтерских групп и в характере деятельности компании во многих областях. Таким образом, этот переход привел к существенной реорганизации.
Вывод отсюда следующий: для больших систем затраты труда на подготовку программы для вычислительной машины являются основным фактором, определяющим длительность ввода вычислительных систем в эксплуатацию.
- Анализ сложных систем
- Предисловие
- Выражение признательности
- 1. Введение
- 2. Анализ и принятие решений в военно-воздушных силах
- 2.1. Использование анализа при подготовке решений по структуре сил и разработке вооружения
- 2.2. Увеличение количества переменных величин
- 2.3. Подробное рассмотрение неопределенностей
- 2.4. Противник
- 2.5. Учет фактора времени
- 2.6. Расширение критериев
- 2.7. Заключение
- 3. Выбор и использование стратегических авиационных баз
- 3.1. Введение
- 3.2. Постановка задачи
- 3.3. Исходные положения
- 3.4. Альтернативы
- 3.5. Решающие факторы
- 3.6. План проведения анализа
- 3.7. Расстояние от базы до цели. Издержки, связанные с увеличением радиуса полета
- 3.8. Расстояние от базы до пунктов входа в зону обороны противника. Стоимость преодоления обороны
- 3.9. Расстояние от базы до континентальной части сша. Издержки на проведение операций за пределами сша
- 3.10 Влияние расстояния от базы до границы противника на издержки, связанные с уязвимостью базы
- 3,12 Неопределенность в оценке возможностей противника
- 3.14. Кампании при постоянной величине расходов
- 3.15. Гибкость системы и время кампании
- 3.16. Операции с заокеанских баз после проведения кампании против авиации противника
- 3.17. Ограничения эффективности систем и их гибкость
- 3.18. Заключение
- Элементы и методы
- 4. Зачем и каким образом создается модель
- 4.1. Выявление релевантных факторов
- 4.2. Выбор факторов, описываемых количественно
- 4.3. Объединение в группы описываемых количественно факторов
- 4.4. Установление количественных соотношений между элементами
- 4.5. Создание модели и реальный мир
- 4.6. Суждения человека
- 4.7. Модель, использующая вычислительную машину
- 4.8. Заключение
- 5. Критерии
- 5.1. Неизбежность приближенных критериев
- 5.2. Субоптимизация и критерии
- 5.3. Некоторые распространенные ошибки при выборе критериев
- 5.4. Что можно сделать?
- 6. Значение затрат39
- 6.1. Заданный объем ресурсов при единственной цели
- 6.2. Заданный объем ресурсов при нескольких целях
- 6.3. Переменный объем затрат ресурсов
- 6.4. Некоторые частные аспекты проблемы
- 7. Анализ и построение конфликтных систем44
- 7.1. Анализ систем в сравнении с моделями и проблемы, побуждающие к анализу
- 7.2. Пример из деятельности ввс - история межконтинентальных боевых действий
- 7.3. Цели и ограничения системных исследований
- 7.4. Более широкие задачи: параллельные и отдаленные цели
- 7.5. Происхождение и изменение целей
- 7.6. Сдерживание: пример с межконтинентальными полетами
- 7.7. Ведение войны
- 7.8. Противодействие и содействие противника
- 7.9. Малая ценность взаимно неудовлетворительных стратегий
- 7.10. Неопределенность и определение диапазона достижимых целей
- 7.11. Проектирование систем в сравнении с анализом систем
- 8. Методы и процедуры
- 8.1. Введение
- 8.2. Инженерное искусство
- 8.3. Методологические вопросы анализа систем
- Часть 3 специальные вопросы
- 9. Фактор техники
- 9.1. Введение
- 9.2. Технические характеристики
- 9.3. Параметры уровня развития техники
- 9.4. Законы масштабности
- 9.5. Оптимум и ограничения
- 9.6. Фактор надежности
- 10. Предположения о поведении противника
- 10.1. Введение
- 10.2. Пример проблемы выбора системы оружия из нескольких ее вариантов
- 10.3 - Выгодность четырех возможных результатов
- 10.3. Более широкое истолкование. Всесторонняя стратегия
- 10.4. Заключение
- 11. Методы теории игр и их применение
- 11.1. Использование военных игр
- 11.2. Методика военных игр
- 11.3. Этапы проведения военной игры
- 12. Стратегия разработок
- 12.1. Насколько велика неопределенность?
- 12,2. Что следует сделать для уменьшения неопределенности?
- 12.3. Каковы затраты на уменьшение неопределенности?
- 12.4. Какова степень уменьшения неопределенности продолжения разработки?
- 13. Математика и анализ систем
- 13.1. Линейное программирование
- 13.2. Метод Монте-Карло
- 13.3. Теория игр
- 13.4. Электронно-вычислительные машины
- 13.5. Роль математики
- 14. Применение электронно-вычислительных машин
- 14.1. Преимущества вычислительных машин
- 14.2. Недостатки вычислительных машин
- 14.3. Программирование модели
- 14.4. Постановка задачи
- 14.5. Несогласованность языков программирования
- 14.6. Заключение
- 15.1. Введение
- 15.2. Анализ стоимости отдельных систем
- 15.3. Анализ стоимости структуры вида сил
- 15.4. Анализ чувствительности модели стоимости
- 15.5. Представление результатов анализа
- 15.6. Заключение
- 16. Опасности анализа систем
- 16.1. Постановка задачи
- 16.2. Поиск
- 16.3. Толкование
- 16.4. Рекомендация
- 17. Повторение пройденного
- 17.1. Правила
- 17.2. Вопросы
- 17.3. Ретроспективный взгляд
- Введение в проблему создания лунной базы
- А.1. Базы на Луне - доводы за и против
- А.2. Некоторые элементы ракетной техники
- А.3. Варианты систем
- А.4. Модель системы прямого полета
- Сравнение ракетных систем
- Б.1. Введение
- Б.2. Пример
- Б.З. Сравнение ракет
- В.4. Заключение