Книга: Программное обеспечение и его разработка
Купить или сделать
Купить или сделать
Наиболее ответственным можно считать решение купить готовое программное обеспечение или построить его самому. Обсудим сначала само это решение и последствия, к которым оно приводит, а затем посмотрим, из каких компонент оно состоит. (См. рис. 6.23.)
Выбор — покупать или строить самим — в первую очередь зависит от наличия людей, способных вести разработку программного обеспечения. Если в моей организации таких людей нет, то мне ничего не остается, как решиться на покупку. Но, даже если такие люди найдутся, перед нами может встать необходимость решить, какие именно разработки им поручить.
Вообще говоря, если можно приобрести стандартный пакет, который сможет работать на моей системе, следует его купить. Это может сэкономить скудные, быстро становящиеся еще более скудными ресурсы разработчиков программного обеспечения. И, несмотря на большие затраты на аппаратуру, такое решение обычно оказывается приемлемым.
Стандартный пакет имеет и свои достоинства, и свои недостатки. (См. табл. 6.23.) Но, невзирая на некоторые минусы, при малейшем шансе на успех мы должны использовать стандартное обеспечение.
Таблица 6.23 «3а» и «против» стандартных пакетов
Преимущества | Недостатки |
---|---|
Доступен сразу же | Универсален и, значит, не очень точно подходит |
Модифицируется и исправляется поставщиком | Тратит некоторые ресурсы ЦП |
Позволяет использовать разработчиков программного обеспечения на других работах | Не точно соответствует данной прикладной области |
Зависит от некоторой посторонней организации |
- Системы, подсистемы и программное обеспечение
- Общесистемная незамкнутость
- Взгляд сверху вниз
- Различные подсистемы обработки данных в одной системе
- Отделение программного обеспечения от аппаратуры
- Перегрузка аппаратной подсистемы, которую можно принять за неполадку с программным обеспечением
- Стоимость и график разработки предсказать невозможно
- «Эффект заброшенных функций» при разработке больших программ
- Планирование развития
- Занятость
- Эволюционный подход к разработке больших систем
- Задачи руководства программным обеспечением проекта
- Результаты процесса разработки
- План разработки или проекта
- Производительность труда и оценки
- Производительность труда при разработке программного обеспечения
- База данных по производительности труда
- Определения терминов «строка программы» и «человеко-месяц»
- Два значения термина «строка программы»
- Категории программного обеспечения
- Определение человеко-месяца
- Изменчивость
- Вопросник по производительности труда
- Ошибки при подсчете СТП
- Форма отчетности по строкам программ
- Некоторые результаты сбора статистики
- Оценка
- Оценка размеров программы
- Факторы, определяющие трудность разработки
- Функциональные факторы
- Как проводить оценки
- Предположения при проведении оценок
- Организация усилий по разработке программного обеспечения
- Ключевые моменты больших проектов
- Надзор над разработкой
- Управление
- Экономия усилий
- Управление конфигурацией
- Автоматизированная матрица модулей/функций
- Ключ к успеху — руководитель разработки
- Выбор руководителя разработкой программного обеспечения
- Технический опыт
- Карьера разработчика программного обеспечения
- Пять стадий развития всех новых проектов
- Печальная участь первопроходцев
- Будет ли удовлетворен настоящий пользователь?
- Прослушивания
- Прослушивания очень важны
- Что необходимо выносить на прослушивания — и когда?
- Что такое «прослушивание»?
- Кто должен участвовать в прослушиваниях?
- В чем вред прослушивании?
- Отчеты на прослушиваниях — делайте их устно
- Первый выход на прослушивание или в группу инвентаризации
- Кадры и инструментарий
- Купить или сделать
- Разрабатывать самим или заказывать на стороне
- Как заказывать разработку программного обеспечения
- Вид заключаемого контракта
- Что делать, когда все идет прахом
- Поиски замены для руководителя
- Неуправляемый гигант
- Стандарты программного обеспечения
- Ничто не дается бесплатно — средства на стандартизацию тратятся с первых же шагов
- Склонность к фантазированию
- Сопротивление нововведениям
- Изменения дорого обходятся с самого начала
- Разработка или продолжающаяся разработка как наиболее дорогостоящая фаза
- Одна причина оптимистических оценок
- Научные исследования в программном обеспечении
- Отсутствие методов представления программ
- Разрабатывать программы так же, как и аппаратуру?
- Сходство между аппаратурой и программным обеспечением
- Как сделать, чтобы компьютер выключался
- Как сделать заказ в интернет-магазине
- Можно ли сделать так, чтобы вместе с часами отображалась и дата?
- Как сделать, чтобы в папке сначала отображались самые новые файлы?
- Как сделать перезапись файлов в Проводнике более удобной?
- Как сделать, чтобы при запуске Windows автоматически открывались папки, с которыми я работал в прошлый раз?
- Как сделать указатель мыши цветным или изменить его форму?
- Каждый раз после загрузки Windows запускаются разные бесполезные приложения, а возле часов появляются лишние значки. Что...
- Как сделать так, чтобы меня узнали?
- Я часто использую сетевую папку другого компьютера, как сделать, чтобы она не пропадала после перезагрузки?
- Как сделать, чтобы остальные могли печатать на моем принтере?
- Для работы в сети мне надо указывать какой-то IP-адрес. Где это сделать?