Вход/Регистрация
Программное обеспечение и его разработка
вернуться

Фокс Джозеф М.

Шрифт:

Ниже приводятся некоторые промежуточные результаты замеров, проводившихся в IBM над программными проектами. Работы сгруппированы на основе предсказаний их руководителей по степени трудности. Посмотрите, какие наблюдаются грандиозные различия в производительности труда, измеренной в строках текста программ (СТП) в месяц.

Достигнутая производительность труда
Маленький/легкий [40] (300–900)
1 517
2 615
Средний/легкий * (200–600)
3 199
4 39
5 100
6 286
7 524
8 28
9 109
10 167
11 274
12 1071
Средний/трудный* (100–300)
13 562
14 403
15 128
16 81
17 68
18 400
19 253
20 227
21 250
22 163
23 198
Большой/трудный * (50–150)
24 186
25 68
26 284
27 182
28 229
29 46
30 120

40

Производительность труда, предсказанная руководством проекта.

Оценка
Оценка размеров программы

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

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

Здесь мы со всей очевидностью сталкиваемся с неким порочным кругом: «Вам нельзя доверить работу, у вас нет опыта». «Как же я могу получить опыт, если мне не дают работать?» Наше положение именно таково. Мы хотим, чтобы оценки делались кем-то, кто уже делал это в прошлом. Или делал что-то, похожее на то, что мы пытаемся сделать.

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

Факторы, определяющие трудность разработки

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

(A) Функция, которую надо выполнить

(B) Окружение в фазе использования

(C) Факторы, действующие в фазе разработки

Трудность разработки программ = (А) x (В) x (С)

Таблица 6.2. Трудности разработки

  • Читать дальше
  • 1
  • ...
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку:

Тип использования
I II III IV V
Функциональные
Функции, которые надо реализовать, количество +
Функции, которые надо реализовать, сложность + +
Функции, которые надо реализовать, ясность +
Взаимодействие людей с системой + + ++
Число различных пользователей системы + + +
Число запусков программы + + +
Число машин, на которых будет выполняться система +
Функции, которые надо реализовать, взаимодействия +
Элементы данных
Ожидаемая частота внесения изменений в систему +
Взаимодействия с другими системами +
Окружение фазы использования
Центральный процессор – + + + +
Ввод/вывод + – +
Основная память – +
Вспомогательная память +
Надежность/доступность + + + +
Реальное время + +
Факторы фазы разработки
Адекватность операционной системы + + + +
Время, выделенное на создание программного обеспечения +
Доступность средств разработки; языки, отладчики и т. д. +
Доступность машин при разработке программного обеспечения +