Измерение производительности программных проектов: анализ данных охват подход

РЕЗЮМЕ

Нынешние экономические условия вынуждают отделы информационной системы направленная одновременно на снижение затрат при одновременном повышении производительности программного обеспечения. Улучшение производительности программного обеспечения становится критической, поскольку расходы на программное обеспечение большого программного обеспечения внутренних компании стремительно растет. Для многих организаций, однако, измерения производительности программного обеспечения была трудной задачей. Использование Анализ среды (DEA), это исследование исследование посвящено изучению продуктивности 78 коммерческих проектов системы. Результаты этого исследования имеют практическое значение для менеджеров программных проектов проведения разработки программного обеспечения. Результаты показали, что технология DEA может быть с успехом использованы для определения эффективных и неэффективных проектов программного обеспечения. Кроме того, в неэффективной группы, DEA может также определить факторы, влияющие на производительности программного обеспечения в позитивном или негативном плане, что позволит руководителям принимать корректирующие меры. Основываясь на результатах этого исследования, рукописи также некоторые практические рекомендации для руководителей идти по разработке программного обеспечения.

Предметные области: Анализ среды, внедрение информационных систем и разработки систем. ВВЕДЕНИЕ информационной системы (ИС) отделов сталкиваются с растущей необходимостью сосредоточиться одновременно на снижение затрат и повышение производительности их труда. Maglitta, в недавнем исследовании, сообщила: "В то время 82 процентов опрошенных заявили, текущих экономических условий, влияющих на их бизнес, только 26 процентов сократили свои расходы на программное и аппаратное обеспечение и связь. Сокращение штатов и задержки инвестиций капитала выступает за экономически меры по сокращению "[30, стр. 81]. Сотрудников, так и сокращение капиталовложений влияют текущие и будущие производительности. Эти сокращения расходов усилия, однако, не сопровождалось снижением ожиданий от стратегического звена. Стратегическое менеджеров по-прежнему ожидают, что их информационные технологии (ИТ), которые будут столь продуктивной, как и раньше, чтобы быть полезным в достижении преимущества над конкурентами [31]. Повышение производительности ИТ в целом и разработки программного обеспечения и поддержания производительности труда, в частности, является частью ответа на эту дилемму. Совершенствования процесса разработки программного обеспечения и поддержания производительности также подчеркнул тот факт, что расходы на программное обеспечение были быстро растет.

Рис 1, на основе Боем [10], прогнозирует значительный рост расходов на программное обеспечение в период с 1980 по 2000 год. Например, он показывает, что в 1995 году расходы на программное обеспечение, по оценкам, $ 36 млрд для Министерства обороны, $ 225 млрд на всей территории США, и $ 450 млрд для всего мира. Любое значительное увеличение в разработке программного обеспечения и поддержания производительности, очевидно, будет стоить миллиарды долларов, и, следовательно, заслуживает серьезного внимания. Учитывая ожидания стратегических менеджеров ИТ и больших сумм, потраченных на разработку программного обеспечения и техническое обслуживание, представляется целесообразным сосредоточить внимание на производительности программного обеспечения. Таким образом, цель данного исследования является изучение способов повышения разработки программного обеспечения и поддержания производительности. В частности, целью является найти подход, который позволит определить факторы, влияющие на производительность программных проектов в положительную или отрицательную образом. С учетом этой информации, руководители проектов должны быть в состоянии увеличить разработки программного обеспечения и поддержания производительности за счет усиления факторов, которые оказывают положительное воздействие на производительность, и путем устранения факторов, которые негативно влияют на производительность ..

Остальные бумаги имеет следующую структуру. В следующем разделе представлен обзор литературы в области мер производительности программного обеспечения. Далее следует описание методологии исследования. В последующих разделах представлены результаты, обсуждение результатов, а также обеспечить управленческих последствий результатов. Заключительные замечания приведены в последнем разделе. Обзор литературы Измерительные разработки программного обеспечения и поддержания производительности было нелегко, в первую очередь потому, что большинство исследователей и практиков имеют трудное время, согласившись на то, что измерять и как измерить его. Ряд исследователей под руководством Альберта [1], например, считает, что функции точки (FPs) методы должны быть использованы при измерении производительности программного обеспечения. Альбрехт и Гаффни [2], Behrens [7], низкий и Джеффри [29), а Кемирр [27] проверку и представил доказательства в пользу применения этого метода. FPs метод был использован для оценки производительности разработки программного обеспечения [7] [35], а также производительности обслуживание программного обеспечения [4]. Тем не менее, метод FPs был подвергнут критике за то, что трудоемкие [8], так как она требует строгого сбора данных [5], и не легко поддается автоматизации, в отличие от строк исходного кода (строк кода) [27].

Метод FPs также подвергается критике за то, что низкая надежность поскольку расчет основан на субъективных, чем объективных данных [33]. В отличие от других исследователей во главе с Боем считает, что строк кода (строк кода) является наиболее подходящей мерой производительности программного обеспечения [9] [17] [24] [34] [40]. Боем [9], вероятно, является наиболее полным и тщательно документируются модели с использованием строк кода, для измерения производительности программного обеспечения. Подход строк кода также подвергается критике, касающиеся правил подсчете количества строк кода, поскольку ряд исследователей включены комментарии [40], а другие не имеют [9]. Количества строк кода также критикуют за не решения вопроса о языковой трудности при сравнении производительности программных проектов, написанных на разных Языки [24] ..

Ряд исследователей приняли в среднем течении, и предложил либо строк кода или метод FPs может быть использован для измерения производительности программного обеспечения при условии сбора данных последовательно и точно [6]. Банкир, ДАТАР и Кемирр [4], даже использовали в секунду и одновременно количества строк кода подходы для оценки производительности программного обеспечения одного и того же проекта. Количества строк кода был использован для оценки масштабов проекта и метод кадр был использован для определения сложности проекта.

Настоящее исследование использует строк кода в качестве косвенного показателя производительности программного обеспечения для ряда причин. Во-первых, программное обеспечение проектов, включенных в настоящее образца использовали эту меру. Во-вторых, Бем заявил, что "поставлял указания источника... Является более практичным, чем показатель эффективности имеющихся в настоящее время альтернативы" [10, стр. 43]. В-третьих, Джонсон [23] показали, что количества строк кода является наиболее широко используемым показателем производительности в индустрии программного обеспечения. В дополнение к строк кода, комментарии строк кода и процедур генерируются также были включены в качестве выходных переменных. Как отмечалось ранее, Уолстон и Феликс [40] включены комментарии на подсчете количества строк кода. Jones [24] Кроме того, определены в документации по программе, как один из факторов, которые оказывают влияние на производительности программного обеспечения. Это было, поэтому решила включить комментарий строк кода, в качестве отдельной меры выходе программного обеспечения продуктивности, с тем, что она не посрамить "истинной" строк кода. Поскольку число процедур добавления, удаления или изменения также является мерой производительности, было принято решение включить это как отдельный выходной переменной.

Человеко-год, человеко-месяц, или человеко-час является наиболее широко используемым показателем программных проектов развития усилия для программного продукта [18] [24] [40]. В данном исследовании использовались профессиональные часов труда на различных этапах развития (например, анализ и дизайн, верстка, интеграция и контроль качества) в качестве входных переменных. Банкир и др.. [4] использовал общее число рабочих часов в качестве входного меры для исследования производительности проектов программного обеспечения. Это исследование отделяет различного программного обеспечения этапов проекта по следующим причинам. Во-первых, она представляет собой более точное представление о реальном мире, в котором число IS персонал может одновременно работать на различных стадиях одного и того же проекта, а также помогает сосредоточить внимание на эффективность каждого из этапов. Во-вторых, это исследование позволило включение времени, затрачиваемого на системной интеграции и контроля качества. Jones [24], используемых кодов интеграции в качестве одного из мероприятий программы развития. В-третьих, исследователи (в том числе Крибел [28], Mohanty [32], и дело] [П) признали важность в том числе время, затраченное на систему качества. Из всех факторов влияния, что производительность программного обеспечения, выбор языка программирования, пожалуй, самым спорным.

Джонс пошел настолько далеко, чтобы сказать "большая часть литературы о влиянии Языки совершенно ненадежны и в самом деле скрывает истинное влияние Языки" [24, стр. 12]. К счастью, это не проблема для настоящего исследования, так как все проекты в выборке были разработаны с использованием тех же языка программирования (например, FORTRAN) ..

Очевидно, что ряд других факторов, в дополнение к уже упомянутым также может повлиять на производительность программного проекта. Например, Chrysler [16] и Jones [24] предложили включить опыт программного обеспечения персонала в качестве входной переменной. Thadani [38] рекомендовал, что качество имеющихся аппаратных и программных средств должны быть также приняты во внимание.

Банкир и Кауфман [5] проверили развития производительности труда, что программное обеспечение повторного использования подхода могут производить. Сожалению, в связи с отсутствием данных, включение в первых двух факторов выходит за рамки этого исследования. Если имеются данные, эти переменные могут быть легко интегрированы в анализ DEA, рекомендованных в настоящем исследовании. Поскольку ни один из проектов программного обеспечения, используемых в данной исследовании используются многоразовые коды программного обеспечения, информация о третьей фактор, не могут быть включены в анализ данных. Целью настоящего исследования является изучение производительности 78 коммерческих программных проектов. Это утверждение авторов, что дискуссии в этой области еще далеко не окончена, и необходимы дальнейшие исследования. Ряд предыдущих исследований, посвященных разработке программного обеспечения [6] [7] [29], тогда как другие были направлены на проекты сопровождения программного обеспечения [4] [39]. Тем не менее, это исследование отличается от предыдущих исследований, в ряде направлений. В отличие от предыдущих исследований программного обеспечения, основной акцент делается на весь проект, включая программное обеспечение анализа и проектирования, кодирования, интеграции и качества фазы тестирования. Никаких других научных исследований, насколько известно авторам, были направлены одновременно на разработке программного обеспечения и техническое обслуживание фаз одного и того же проекта.

Наряду с рассмотрением всех этапах разработки программного обеспечения, исследования усиливается рассмотрении многомерных входы и выходы. Многомерность входов включены в настоящем исследовании, в том числе по профессиональным часов труда, затраченного на каждом из этапов. Многомерность мероприятия также рассматривается в настоящее время исследования, в том числе количество линий комментарий добавил, удалены или изменены, число строк кода, добавления, удаления или изменения, а количество исходного процедуры добавления, удаления или изменения . Предыдущие исследования в области нет, насколько известно авторам, включить многомерных входах и выходах одновременно, может быть, потому что этот тип эмпирические данные не были доступны. Тем не менее, банкир и др.. [4] сделал включать выходы многомерной системы, но не материалы, в своих исследованиях ..

Данное исследование еще более усиливается тем, что она использовала 78 коммерческих проектов программного обеспечения с большими производителю программного обеспечения. Эти проекты были направлены, код, и осуществляется профессиональными информационными системами (ИС) специалистов. Методология исследования программного обеспечения фирмы, которые участвовали в этом исследовании используется Проблема улучшения доклада (МДП) для устранения неисправностей, программы развития, улучшения и поддержания в существующий пакет программного обеспечения. Исследований соглашение между компанией и проект следователи не позволяет личности этой фирмы были обнародованы. МДП является эквивалентом программного проекта. Когда несколько автоприцепы объединены, основная версия программного обеспечения или обновления результатов. МДП как правило, инициируется программистами в системах технического отдела (СЭД) и пользователей программного обеспечения, когда они замечают проблемы или вы хотите сделать усовершенствования программного обеспечения, которые используются или хотят работать на новой версии программного обеспечения. После МДП начинается, программистов СЭД сделать первоначальные рекомендации в отношении официального анализа и разработки проекта. Аналитики Инженерия систем и аналитический отдел (ЮВАО), то выполнить фактические анализ и проектирование по проекту, а также направить своих находках СЭД для проверки.

Проверив по СЭД за точность, окончательное утверждение дается ЮВАО, чтобы изменить код (см. рисунок 2 для всех этапов). В ходе второго этапа, фактическое кодирование происходит. После первоначального изменения в коде сделаны SED, МДП возвращается ЮВАО для утверждения. Если изменения программного кода не сделали в соответствии с требованиями ЮВАО, то МДП восходит к СЭД. Процесс продолжается, пока оба подразделения будут удовлетворены. Заключительный этап интеграции (INT). Здесь различные автоприцепы объединяются для формирования новой версии программного обеспечения в СЕПГ. После изменения программного кода интегрированы, новое программное обеспечение предоставляется ЮВАО, где комплексного изменения программного кода проверяется. После изменения программного кода интегрированы и протестированы, программное обеспечение предоставляется качества подразделений (ОК), поэтому убедитесь, что качество стандарт был удовлетворен. Как только она признает, QA дает разрешение на выпуск программного обеспечения для пользователей. Опять же, если департамент не выполняется, в новой версии программного обеспечения прошли туда и обратно между департаментами, пока все три отделения полностью удовлетворены. Входные переменные следующих входных переменных используются при анализе данных. Оправдание в том числе время, затраченное на анализ и дизайн, верстка, интеграция и контроль качества уже была представлена в разделе обзора литературы, и не будет повторять здесь.

7 входных переменных, используемых в исследовании, общее время (в часах), затраченное на: 1. Анализ и дизайн системы инженерно-аналитический отдел (статисти ЮВАО), 2. Анализ и проверки проектов по системам инженерного отдела (статисти СЕПГ).

3. Изменение кодов проверки системы инженерно-аналитический отдел (ЮВАО кодирования),

4. Изменение кодов Департамент инженерных систем (кодирование СЭД), 5. Интегрирование системы Департамента науки (Integr СЭД), 6. Интеграция проверки системы технике и аналитический отдел (Integr ЮВАО), а также

7. Контроль качества по обеспечению качества отдел (Integr QA). Выходные переменные следующий вывод переменных, используемых в анализе данных: (а) число линий комментарий добавления, удаления или изменения (Comm chng); (б) число строк кода, добавления, удаления или изменения (код chng) и (с) количество процедур добавления, удаления или изменения (R chng). Эти переменные были выбраны потому, что они поддаются количественной оценке, и по крайней мере для этого проекта, могут быть последовательно измерены и собраны. Основания для включения этих переменных уже говорилось в предыдущем разделе, и, как таковые, не будут повторены здесь. Методология Ключевой особенностью данного исследования является использование Анализ среды (DEA). Более конкретно, настоящее исследование использовали Аддитивные DEA модель, которая основана на подходе, выдвинутые Charnes, Купер, Golany, Seiford и Стац [14], что основное внимание уделяется оценке эффективных Эмпирические Парето-Купман в производственных функций. Версия персонального компьютера (используется в данном исследовании) аддитивным DEA был кодируется Дика Асада [20] в Центре кибернетической исследований при Университете штата Техас в Остине. DEA используется для анализа данных по ряду причин. Во-первых, не требует никаких исходных предположений для входов и выходов.

Во-вторых, позволяет менеджерам рассматривать одновременно с несколькими входами и несколькими выходами программного проекта. В-третьих, он предоставляет руководителям процедуры проводить различие между эффективными и неэффективными проекты [26]. В-четвертых, выявляет источники и размеры дефицита для каждого из неэффективных проектов (автоприцепы). Руководители проектов должны быть особенно заинтересованы в выявлении факторов, которые отрицательно влияют производительности программного обеспечения [19], так что корректирующие меры могут быть приняты. В-пятых, DEA могут обнаружить конкретные недостатки, не могут быть обнаружены с помощью других методов [21], таких как коэффициент регрессии или анализа. Может быть, из-за этих, Сенгупта и Сфейр [36] нашел DEA результат, в общем, будет лучше, чем результаты параметрической регрессии. Банкир, Charnes, Купер и Maindiratta [3) также нашли DEA результат будет выше параметрического транслогарифмической результаты функции ..

Помимо DEA, другие методы также доступны для измерения относительной эффективности. К сожалению, эти все страдают от априорных решений и модельных предположений. Например, соотношение анализа используются нереалистичные 1-коэффициент-на-времени сравнения для определения относительной эффективности [37]. Еще одна проблема, с использованием соотношения, такие как соотношение производительности, является то, что информация не будет потеряна, когда входы (или выходы) сводятся воедино.

"Расширения индексов связаны априорной весом схемы с сопроводительными предположения стабильности размеров входов и выходов используются" [12, стр. 96]. Кроме того, регрессионный анализ требует четкого предположения о функциональных связей между несколькими входами и несколькими выходами. DEA позволяет избежать этих проблем, не требующих априорной выбором весов или явной спецификации функциональных отношений "[13, стр. 60]. По этим причинам, DEA был выбран для дальнейшего анализа данных. Пример Семьдесят восемь коммерческих проектов системы (автоприцепы) из крупных производителей программного обеспечения были использованы в настоящей работе. Все проекты, включенные модернизация старого программного обеспечения по каким-либо проблем или необходимости усовершенствования для новой версии программного обеспечения. Таким образом, эти проекты не могут рассматриваться исключительно как техническое обслуживание проектов, поскольку они нацелены на развитие как новые программы (что влечет за собой усовершенствования) и обслуживание (что предполагает решение проблем). Все проекты включали в себя анализ, дизайн, верстка, интеграции и контроля качества. Все проекты были разработаны примерно в то же время по той же технологии. Все автоприцепы было возбуждено по той же основных прикладных программ и были разработаны с использованием того же языка программирования (FORTRAN).

Проект неэффективность не может, следовательно, быть отнесены к различным приложениям программного обеспечения и различных Языки программирования. РЕЗУЛЬТАТЫ данные анализировались с помощью DEA в два этапа. Эффективность каждой книжки было установлено, в первую очередь. Анализ DEA использует базовые понятия о том, что программное обеспечение проекта (в рамках данного исследования) относительно эффективной, если она не может быть показано, что некоторые другие проекты программного обеспечения в своей ссылки (ЛВС) набор может производить тот же мероприятия, используя меньше ресурсов или может производить больше выходов с помощью того же входа [12]. Члены ссылки (коллегиальный), установленных для МДП, взял из эффективных автоприцепы, которые больше всего хотели МДП оценивается [12]. Это было затем следуют расследования неэффективного автоприцепы для определения причин их неэффективности. Неэффективность вызваны слабину входы и / или мероприятий. Вялый (избыточное) во входных (ы) для МДП просто означает, что он может уменьшить свой вклад (ы) слабину сумму без снижения выхода (ов). Вялый (неудовлетворительно ") в выходной (ы) для МДП просто означает, что приведет к увеличению его выхода (ов) вялый сумму, чтобы стать эффективным [12]. Благодаря использованию МДП 7 потребления ресурсов и три меры производительности программного обеспечения, Анализ среды (DEA), при условии относительной эффективности для всех 78 автоприцепы, включенных в выборку.

Все автоприцепы, которые оценили 1,00 были назначены в качестве эффективного а с относительной оценки эффективности менее 1 была признана неэффективной. Эффективное автоприцепы потребляется наименьшее количество ресурсов для достижения уровня их производительности программного обеспечения. Таблица 1 показывает, DEA относительной эффективности результатов выборки. Результаты показывают, что 14 автоприцепы (17,95% от общего числа) были оценены как эффективные. Остальные 64 автоприцепы (82,05% от общего числа) оценки от 0,9946 до 0,0067, и были оценены как технически неэффективной ..

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

В целом, автоприцепы в эффективном группа большее количество процедур добавлены, изменены или удалены, а комментарии добавил, изменены или удалены, а также строк кода, добавлены, изменены или удалены в отношении ресурсов потребляется. Наши результаты показывают, что для эффективного группы тратили больше времени на анализ и проектирование фазы, чем неэффективное группу. Это позволило аналитикам, чтобы создать более тщательного дизайна. В результате, программисты для этой группы могли быть более эффективными в стадии кодирования. Превышение входа и недостаточных мероприятий на основе анализа DEA После неэффективного автоприцепы были определены, следующим логическим шагом было изучение масштабов этих недостатков. Анализ среды (DEA) обеспечивает более глубокое понимание этого вопроса. Приложение показывает рейтинг эффективности деятельности в порядке убывания (колонка 2) и ввода неэффективности (колонка 3). Приложение B показывает рейтинг эффективности деятельности в порядке убывания (колонка 2), выход недостатков (колонка 3), и относительная величина для всех неэффективных автоприцепы в образце (столбец 4). Колонка 2 обоих приложениях показывает, что относительная эффективность за неэффективное автоприцепы колебался от 0,9946 до 0,0054. МДП 34, с производительностью рейтинг 0,4010, обсуждается, чтобы проиллюстрировать, как читать приложений.

Колонка 3 (Превышение входы) добавления сравнивает МДП 34 с другими автоприцепы в группе сверстников (подмножество эффективных автоприцепы, который включает автоприцепы похожа на МДП 34). При анализе и этап проектирования, руководитель проекта для этого проекта могла бы сократить время аналитиков на 0,4 часа и времени программистов на 9,8 часа. В стадии кодирования, время программистов должно было быть 95,9 часа меньше. Наконец, в интеграции и тестирования должно было сокращение времени программистов на 17,5 часов и качество контроля времени на 23,5 часа. Принимая во внимание результаты, достигнутые, эти сокращения ввода привело бы к эффективности рейтинг 1,00 для этого проекта. В отличие от колонки 3 (из Приложение Б) по той же книжки указывается, какие мероприятия, по отношению к композиции автоприцепы в группе сверстников, руководитель проекта, необходимых для повышения с учетом затрат. Процедуры МДП на 34 (R chng) должны были 192,6 единиц больше, и модифицировать код (код chng) увеличился на 7011,2 линии, чтобы МДП эффективным. Колонка 4 просто указывает на то, является ли определенный МДП была небольшая (например, в крайнем случае, одна процедура была изменена, 5 комментарии были изменены, и одна строка кода была изменена) проект (YES) или нет (пусто).

ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ DEA Результаты настоящего исследования показывают, что только 17,9% от автоприцепы являются эффективными. Результаты также обеспечивают основу для четкого различия между эффективной автоприцепы и неэффективному автоприцепы. В целом, автоприцепы в эффективном группа, как ожидается, потребляется меньше ресурсов для подготовки своих уровень производства. Например, общее среднее время эффективных проектов (124,44 часов) только 65% времени, необходимого для неэффективных проектов (192,87 часа) ..

В частности, во всех категориях программного обеспечения показателей производительности и эффективного автоприцепы превысил вывод неэффективных автоприцепы 'в соотношении как много как 10 к 1 (см. таблицу 2, колонны 2 и 6). Эта разница становится еще более очевидной, если один расследует продукции на регулярных и производительность в час для эффективного и неэффективного автоприцепы (см. колонки, 3, 4, 7 и 8 табл. 2).

Столбцы 3 и 7 показывают, что эффективное автоприцепы, в среднем, было 15,48 комментарии добавлены, изменены или удалены (Comm chng) и 31,77 коды добавлены, изменены или удалены (код chng) в сравнении с обычной 12,14 26,28 комментарии и коды добавил, изменены или удалены в обычной для неэффективных автоприцепы. Разница между эффективной и неэффективной автоприцепы становится еще более выраженным, если обратиться к продукции за один час из эффективных и неэффективных автоприцепы. Столбцы 4 и 8 Таблица 2 показывает, что эффективное автоприцепы, в среднем, было 0,86 рутины, 13,34 комментарии и 27,37 коды добавлены, изменены или удалены в час по сравнению с 0,07 рутину, 0,85 комментарии и коды 1,85 в час за неэффективного из них. Это просто означает, что, независимо от размера, эффективного автоприцепы, безусловно, опережают неэффективной автоприцепы во всех областях выход измерить. Хотя общее среднее время ввода для эффективного автоприцепы значительно ниже, чем общее время вход для неэффективных автоприцепы, это не относится, по вполне понятным причинам, для всех различных фаз. Например, эффективная группа провела около 21% от общего времени на анализ и проектирование, 31% от кодирования, а 48% на интеграцию и контроль качества по сравнению с 17 неэффективных группы% на анализ и проектирование, 52% от программирования, а также 31 % от интеграции и контроля качества.

Очевидно, что эффективное группы использовали больше времени на анализ и проектирование, и многое другое время в области интеграции и управления качеством, чем неэффективное группу. Неэффективное группы, с другой стороны, провел гораздо больше времени на программирование. Это согласуется с результатами других исследований исследований в этой области. Дополнительное время, проведенное аналитиками в области анализа и фазы разработки эффективных МДП генерирует более тщательного проектирования [9] [25]. В результате программист может быть более эффективным в процессе кодирования фазы. От аналитиков, перспективы, эффективные аналитики (те, кто работал на эффективное автоприцепы) провел 25% своего времени на анализ и проектирование, и 74% своего времени на интеграцию и контроль качества (см. колонку 4 таблицы 2). Они потратили немного времени (1%), причем вполне обоснованно, на кодирование. Неэффективное аналитиков, с другой стороны, провел значительную часть своего времени (44%), в стадии кодирования, меньше времени (42%) в процесс интеграции, и гораздо меньше времени на этапе анализа (+14%). Если аналитики выполнить адекватную работу в ходе анализа и на стадии проектирования, программисты должны быть в состоянии эффективно добавлять, изменять или удалять коды. Это, в свою очередь, должны требовать очень мало времени, аналитиков, чтобы проверить эти изменения (это объясняет, почему он принимает их, в среднем, 1% своего времени для рассмотрения эффективных против МДП

44% за неэффективное TIR). С другой стороны, если анализ не сделано должным образом, в первую очередь, это займет больше времени для программистов добавлять, изменять или удалять коды. Аналитики тогда придется тратить огромное количество времени (в среднем 44%), пытаясь понять сложность кодов. Это также объясняет, почему неэффективные автоприцепы тратили больше времени на кодирование фазы (59% времени программистов (см. столбец 9 таблицы 2) по сравнению с 50% для эффективного них), чтобы компенсировать недостаточный анализ и проектирование проводится на стадии разработки . Очевидно, что первоначальные затраты выше анализ эффективного группы более чем компенсируется общим короче времени, затрачиваемого на общую проекта ..

Из программистов точки зрения эффективного программисты (те, кто работал на эффективное автоприцепы) провел около 22% своего времени на анализ и проектирование, 50% от кодирования, а 28% на интеграцию и контроль качества (см. колонку 5 таблицы 2) . Неэффективное программистов, с другой стороны, провел 19% своего времени на анализ и проектирование, 59% от кодирования, а около 22% на интеграцию и контроль качества (см. столбец 9 таблицы 2). Интересно отметить, что эффективное программистов создает дополнительные коды, даже если они провели меньше времени на кодирование. Напомним, что эффективная аналитики потратили больше времени на этапе анализа. Эффективное программистов и потратили больше времени на этапе анализа. Вместе они смогли обеспечить более тщательный дизайн. В результате эффективной программисты могли быть более эффективными в стадии кодирования. В целом, по эффективному автоприцепы, 32% от общего времени проекта было израсходовано аналитиков и 61% по сравнению с программистами 29% и 67% соответственно, за неэффективное автоприцепы (см. колонки, 3 и 7 табл. 2). Эти результаты показывают, что для эффективного автоприцепы, 3% времени стоит аналитиков на переднем конце спасает около 6% времени стоит программистов в бэк-конец. Если посмотреть на время, проведенное в интеграционном этапе, существует значительная разница между эффективной автоприцепы и неэффективному автоприцепы.

На этом этапе изменения кода (дополнения, изменения или удаления) объединяются и новый код испытания. Интересно отметить, что эффективное аналитиков провел около 74% своего времени на интеграцию и контроль качества. Ясно одно-неэффективной аналитики должны не только сделать хорошую работу в интерфейсных анализа и проектирования, но и нужно тратить больше времени на бэк-конец интеграции и контроля качества, чтобы стать эффективной. При таком понимании сравнительный анализ эффективных и неэффективных МДП группы, в течение ближайших пунктах внимательно изучить отдельные автоприцепы. Это более тщательного раскрывает широкий диапазон эффективности. Приложения А и В показывают, что лишь 4 из неэффективных автоприцепы более 50% эффективным (см. Рисунок 3). Более детальное изучение Приложение показывает, что 71,9% (46 из в общей сложности 64) неэффективного автоприцепы имел избыток работы, проделанной в ходе анализа и этап проектирования. Из них, системы инженерного отдела (СЭД) несет ответственность за превышение сдачи работы на 82,6% (38 из в общей сложности 46) и системы инженерно-аналитический отдел (ЮВАО) несет ответственность за превышение работы на 43,5% (20 из в общей сложности 46) ..

Дальнейшее изучение Приложение показывает, что 28% от неэффективных КТВ (18 из в общей сложности 64) имел избыток работы, проделанной на стадии кодирования. Программисты несут ответственность за чрезмерное работы по 100%, тогда как аналитики были ответственны за всего лишь 6%. Общий процент, в этом и в предыдущих случаях, добавляет более 100%, потому что некоторые автоприцепы имел избыток часов как программистов и аналитиков. Другой способ просмотра этих неэффективных автоприцепы, следует отметить, что только 12,5% (8 из в общей сложности 64) этой группы использовали избыточное поступление анализа. Остальные автоприцепы использовали слишком много времени, либо в фазе программирования (40,6%) или в обоих программ и анализа фаз (18,8%). Эти проценты в соответствии с нашими предыдущими наблюдениями. Эти данные показывают, что неэффективные автоприцепы было компенсировать, не подчеркивая интерфейсных дизайн аналитиков, и, следовательно, с использованием более аналитик и программист позже. Это правда, что эти выводы уже упоминалось в ряде системного анализа и развития книг (например, Грейди [22], а Уиттен, Bentley, и Барлоу [41]), но в меру авторов знания, наше исследование это первое, что эмпирически утверждает ее. Наконец, более 92% (59 из в общей сложности 64) неэффективного автоприцепы пришлось пережить чрезмерного работать в интеграции и тестирования.

Опять же, СЭР ответственность за чрезмерное работать почти в два раза больше автоприцепы (43 из в общей сложности 59). ЮВАО был ответственен за приведение чрезмерной работы по 32 автоприцепы и контроля качества (КК) отдел несет ответственность за чрезмерной работы по 30 неэффективных автоприцепы. Возможно, менеджеры проектов этих неэффективных автоприцепы необходимо тщательно изучать программист деятельности во всех трех фаз обычно неэффективной МДП. Им также необходимо сосредоточить внимание на аналитиков в области анализа и этап проектирования ..

DEA результаты (см. Приложение B) также показывают, что около 61% (39 из в общей сложности 64) неэффективного автоприцепы были недостатки в код изменения. Эти результаты также показывают, что более 45% (29 из в общей сложности 64) неэффективного автоприцепы не хватало в комментарии изменений, в то время как более 17% (11 из в общей сложности 64) одного и того же не хватает адекватных обычные изменения. Иными словами, количество времени, потраченного на SED, ЮВАО, а также по анализу качества и дизайна, программирования, интеграции и контроля качества этих проектов (автоприцепы), не получают достаточную прибыль от своих инвестиций.

В последнем столбце Приложение B указывает МДП была небольшой по своим масштабам (например, только несколько строк кода, были изменены). Результаты показывают, что колонна 17,2% от неэффективных автоприцепы были очень малы по масштабам. Многие из этих автоприцепы являются наиболее неэффективными. Во всех категориях меры производительности программного обеспечения, эффективного автоприцепы превысил неэффективной автоприцепы в соотношении 10 к 1 (см. средних значений выходной для эффективного и неэффективного ТИ в нижней части таблицы 2107:14, 1661:165 и 3408 : 356). Это говорит о том, что некоторые из неэффективных автоприцепы должны были работать под большим МДП. Этот вывод подтверждается эмпирического исследования, проведенного Banker и Кемирр [6]. Их результаты показывают, что местные масштаба зависит от размера проектов. Некоторые дополнительные сведения, которые могут быть полезными в управлении программными проектами теперь предоставляется. Физический осмотр самых неэффективных автоприцепы также показали большую комментарий изменений. Есть, может быть три причины для этого. Первая причина может быть, что есть большое количество технических трудностей при разработке и документированию этих изменений. Другой причиной является время, затрачиваемое о внесении изменений комментарий выходит за рамки оптимального уровня усилий.

Третья возможность заключается в том, что программа, первоначально не были должным образом задокументированы и времени пришлось провел документирования кода. Руководители должны знать, какой из этих вариантов не применяются к их группам программного обеспечения. Один из способов сделать это является ассоциированным лицом или группой с МДП. Будущее продольных исследований могут изучать или нет разницы в использовании комментарии между эффективной и неэффективной групп делает разницы на последующие оценки эффективности. Управленческих последствий изучаются некоторые руководящие принципы для рассмотрения управленческих представлены здесь, большинство из которых основаны на результатах данного исследования. Другие взяты из литературы. Во-первых, производительность меры должны быть согласованы заранее. Это утверждение авторов, что либо строк кода или FPs может быть использован как мера производительности тех пор, пока они используются последовательно в рамках проекта, между проектами, и в течение разумного периода времени. Если нет согласованности, то сравнение между проектами, скорее всего, будет недействительным. Во-вторых, многомерных выходы должны быть использованы при измерении производительности программного обеспечения. Выход меры, например, количества строк кода не является достаточной мерой сам по себе. В настоящем исследовании, в дополнение к строк кода, количество процедур и линий комментарии добавление, удаление и изменение были использованы.

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

В-третьих, многомерных входы должны быть включены в измерении производительности программного проекта. Многие компании, отслеживать время, затраченное на проекты, поэтому, так как время уже все, это естественный вход. При разработке программного обеспечения, стоимость рабочих часов является очень серьезной затрат и зачастую тесно наблюдал со стороны руководства. Maglitta [30] указал, что капитальные расходы и сокращение персонала были привилегированной меры по сокращению расходов. В компаниях, стоящих перед сокращения персонала, рабочих часов стало еще более важное значение. С помощью часов, вход, менеджеры могут соотнести результаты обратно на сокращение персонала, чтобы помочь сделать трудно, но ключевые решения по сокращению расходов.

В-четвертых, сосредоточить внимание на время, проведенное в общий процесс разработки программного обеспечения, включая проектирование, разработку, интеграцию и проверку качества, необходимо для общей картины. Используя время, проведенное в течение всего процесса развития, продуктивность мера обеспечивает два преимущества. Во-первых, менеджер может изучить все развитие проекта со всеми ее взаимодействия. После всего проекты изучаются общей эффективности, менеджеры второго выгоды. Отдельных фаз и их компоненты могут быть изучены в целях повышения эффективности. Соответствующие выбор входных будет способствовать задача руководства повышения эффективности и сдерживания расходов. В-пятых, для оценки будущих проектов и для оценки эффективности совершенствования программного обеспечения групп, таких, как метод DEA должны быть использованы для создания базового уровня в два этапа. На первом этапе, DEA запускается на текущие проекты для анализа эффективных и неэффективных групп. Менеджер две основные обязанности на этом этапе. Во-первых, проанализировать сильные эффективной команды и слабые стороны неэффективных групп. Вторая задача состоит не только способствовать эффективной команды, но также для решения проблем неэффективной деятельности. Например, в этом исследовании неэффективных групп МДП не оставило времени адекватных аналитиков в области анализа и стадии разработки и в процессе интеграции и контроля качества этапа.

Таким образом, больше времени нужно было потратил эти команды в стадии кодирования. Возможной причиной этой проблемы может быть, что руководители проектов этих неэффективных автоприцепы имеют неэффективными аналитиков. Так как больше времени, затраченного неэффективными аналитики не принесет пользы, повышение квалификации этих аналитиков необходимо будет, чтобы в будущем проекты программного обеспечения более эффективной. После того как неэффективные групп были выявлены и переподготовку, второй этап базового уровня начинается. DEA запускается на всех будущих проектов программного обеспечения (автоприцепы), и результаты анализируются. Идеальная ситуация, когда все автоприцепы являются более эффективными и близко к 1,00. Как IS менеджеры подготовку и переподготовку своих команд программное обеспечение, а также в процессе, повысить производительность этих команд, предыдущие DEA работает обеспечить базовые показать улучшение. В какой-то момент времени, менеджеров установить допустимого уровня (например, 0,97 до 1,0) в качестве приемлемой оценки эффективности для всех программных проектов. Для достижения этой цели, процесс работает DEA и анализ результатов и переподготовки повторяется в итерационных моды. После того как все проекты имеют рейтинги эффективности в рамках допустимого уровня, менеджмент регулярно анализирует показатели производительности и настраивает навыков групп как требуется, чтобы проекты в эффективности на уровне терпимости ..

Еще одно преимущество этого долгосрочного отслеживания проектов является возможность присвоить ответственности. Примером этого было бы приложить личности команды в проекте программного обеспечения. Производительность будущих групп изменением и обновлением системы могли бы быть связаны с производительностью оригинальной команды. Настоящее ярлыки для прироста производительности мог причинить снижению производительности в будущем. Путем присоединения ответственность за проект, то было бы легче приложить эти будущие затраты к первоначальному ответственная команда. Данное исследование демонстрирует пример того, как первый этап базового процесса может быть выполнена. Хотя исследование не выполнить второй этап вышеупомянутого процесса, это изложить общие процедуры. Будущие исследования, исследования могут решить, будет ли производительность может быть улучшена за счет базового уровня, используя отличную процедуры (DEA, который использует в два этапа), предоставленных Charnes, Купер, Родос [IS). Будущие исследования также могут сосредоточиться на определении реального уровня терпимости упоминал ранее. Менеджеры, в ходе будущих исследований, следует также сосредоточить внимание на определении наиболее продуктивных шкале размеров для своих организаций, как она колеблется между организациями и между прикладных средах [6].

ВЫВОДЫ И ОГРАНИЧЕНИЯ Результаты этого исследования показывают, что технология DEA могут быть использованы для выявления эффективных и неэффективных проектов программного обеспечения. В группе неэффективных, DEA может также определить факторы, влияющие на производительности программного обеспечения в позитивном или негативном плане, что позволит руководителям принять меры по исправлению ..

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

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

И наконец, настоящее исследование имеет ряд ограничений. Во-первых, данные, использованные в этом исследовании из одного крупного поставщика программного обеспечения. Внимание должно быть принято в обобщающие результаты данного исследования для других фирм. Во-вторых, все автоприцепы, связанные с тем же основным прикладным программным обеспечением. Надо быть осторожным в обобщении результатов этих исследований в других приложениях. В-третьих, качество мера не была включена в продукции, используемой для данного исследования, в основном из-за отсутствия данных. Это может быть полезным для оценки какой-то степени удовлетворенности пользователей, как меру качества продукции. [Поступила: 31 августа 1994 года. Принято: 27 сентября 1995.] Mo Махмуд Адам является профессором информационных систем и Эллис и Сьюзен Мейфилд Обладая профессор бизнес-администрирования в Университете Техаса в Эль-Пасо. Он получил докторскую степень в управлении информационных систем от Texas Tech University. Его исследовательские интересы включают разработку программного обеспечения, информационной технологии в поддержку высшего организационной стратегической и экономической эффективности, перспективы стратегического руководства в вопросах информационных технологий и информационных технологий для национальной и международной конкурентоспособности. Д-р Махмуд опубликовал в Decision Sciences, MIS Quarterly, журнал информационных систем управления, Европейский журнал по информационным системам, INFOR-канадский журнал Исследование операций и обработки информации, а также информации и управления, среди других.

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

Ссылки

[1] Альбрехт A.J. Измерительные разработки приложений производительность. В путешествий / SHARE: Материалы Симпозиум по развитию IBM приложения, Монтерей, штат Калифорния., 1979, 83-92.

[2] Альбрехт A.J.,

[3] Banker, R.D., Charnes, А. Купер, складской варрант,

[5] Banker, Р.,

[6] Banker, Р.,

[8] Бок, D.B.,

[10] Бем, B.W Улучшение производительности программного обеспечения. IEEE Computer, 1987, сентябрь, 43-57.

[11] Дело, А. компьютерного программного обеспечения (CASE): Технологии для повышения производительности разработки программного обеспечения. База данных, 1985, 17 (1), 35-43. [12] Charnes, А. Кларк, C.T., Купер, складской варрант,

[16] Chrysler, Е. Некоторые основные детерминанты компьютера продуктивность работы программистов. Сообщения ACM, 1978, 21 (6), 472-483. [17] Конте, неопределенный срок, Дансмор, H.E.,

[18] Cusumano, магистр гуманитарных наук,

[19] Диксон Г. Leitheiser Р.,

[21] Эпштейн, M.K.,

1 декабря 1986, 61-78.

[26] Kauffman, R.J.,

[27] Кемирр, C.F. Надежность измерения функции пунктов: полевой эксперимент. Сообщения ACM, 1993, 36 (2), 85-97. [28] Крибел, С. Оценка качества информационных систем. В Разработка и внедрение компьютерных информационных систем. Нидерланды: Sitjhoff

[29] Низкий, G.C.,

[30] Maglitta, с реальностью J. Это раз. Computerworld, 11 сентября 1991, 81-84. [31] Махмуд, магистр гуманитарных наук,

[32] Mohanty, С. Программное обеспечение оценки стоимости: настоящее и будущее. Software-практики и опыта, 1981, II, 103-121.

[33] Прессман, протоколист Разработка программного обеспечения: подход практикующего. Нью-Йорк: McGraw-Hill, 1987.

[34] Putnam, L. Общие эмпирические решения макрос программного обеспечения калибровки и оценки проблемы. Сделка IEEE Software Engineering, 1978, 4, 345-361. [35] Рудольф, Е. Производительность труда в компьютер для разработки приложений. Рабочий документ 9, Департамент управления, Университет Окленда, Окленд, Новая Зеландия, 1983.

[36] Сенгупта J.K.,

[39] Весси И.,

[41] Уиттен, J.L., Bentley, L.D.,

М. Адам Махмуд

Информация и решение наук, Университет Техаса в Эль-Пасо, Эль-Пасо, Техас 79968, адрес электронной почты: <a href="mailto:mmahmood@mail.utep.edu"> mmahmood@mail.utep.edu </ A> Карен J. Петтингелл

Информация и решение наук, Университет Техаса в Эль-Пасо, Эль-Пасо, Техас 79968 Александра I. Shaskevich

950 Камино Дель Rex, Лас-Крусес Н.М. 88001

Карен Петтингелл имеет 15 лет опыта IS в промышленности. Она провела такую работу как программист, руководителя операций, системных аналитиков и DP менеджера. Она получила степень доктора философии в Университете Северного Техаса в бизнес-систем компьютерной информации. Ее исследовательские интересы включают разработку программного обеспечения, системного анализа, человеческий фактор и систем поддержки принятия решений.

Александр I. Shaskevich получил диплом МВА в Университете Техаса в Эль-Пасо в 1993 году.

Hosted by uCoz