Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Классификация процессов совершенствования




 

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

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

 

1. Неформальный процесс. Не имеет четко выраженной модели совершенствования производства. Его с успехом может использовать отдельная команда разработчиков. Неформальность процесса никоим образом не исключает такие формальные действия, как управление конфигурацией; однако при этом сами действия и их взаимосвязи не предопределены заранее.

2. Управляемый процесс. Имеет подготовленную модель, которая управляет процессом совершенствования. Модель определяет действия, их график и взаимосвязи между ними.

3. Методически обоснованный процесс. Подразумевается, что введены в действие определенные методы (например, систематически применяются методы объектно-ориентированного проектирования). Для процессов этого типа будут полезными CASE-средства поддержки проектирования и анализа процессов.

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

 

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

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

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

Многие технологические процессы в наше время имеют CASE-средства поддержки, поэтому их можно назвать поддерживаемыми процессами. Методически обоснованные процессы поддерживаются инструментальными средствами анализа и проектирования. Эффективность средства поддержки зависит от применяемого процесса совершенствования. Например, в неформальном процессе могут использоваться типовые средства поддержки (средства прототипирования, компиляторы, средства отладки, текстовые процессоры и т.п.). Вряд ли в неформальных процессах будут использоваться на постоянной основе более специализированные средства поддержки.

 

Рис. 25.8. Применимость процессов совершенствования

 

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

 

Рис. 25.9. Средства поддержки процессов совершенствования

КЛЮЧЕВЫЕ ПОНЯТИЯ

 

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

• Модели процесса совершенствования состоят из описания действий, этапов, ролей, исключений, связей, контрольных элементов.

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

• Согласно модели оценки уровня развития SEI процессы совершенствования классифицируются как начальные, повторения, становления, управления и оптимизации.

• Модель оценки уровня развития SEI была разработана и подходит, в основном для больших программных систем, разрабатываемых большими командами специалистов. Эта модель обязательно должна адаптироваться к условиям конкретной организации-разработчика.

• Классификация процессов совершенствования производства ПО подразделяет их на неформальные, управляемые, методически обоснованные и непосредственного совершенствования. Такая классификация полезна для определения средств поддержки выбранного процесса совершенствования.

Упражнения

 

25.1. Создайте модели следующих процессов.

• Разжигание костра.

• Приготовление комплексного обеда (меню по вашему выбору).

• Написание небольшой программы (не более 50 строк).

25.2. В каких условиях качество работы команды разработчиков будет определять качество готового программного продукта? Приведите примеры программных систем, при разработке которых особое значение имеют талант и способности отдельного программиста.

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

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

25.5. Назовите два главных достоинства и два основных недостатка концепции оценивания и совершенствования процесса разработки ПО, которая положена в основу модели оценки уровня развития SEI.

25.6. Приведите две области применения ПО, для которых модель SEI неприменима. Обоснуйте ваш выбор.

25.7. Рассмотрите технологический процесс создания ПО в вашей компании и определите его тип. Сколько ключевых составля'ющих процесса по модели SEI находятся в применении? Какого уровня развития достигла ваша компания по этой модели?

25.8. Приведите пример трех средств поддержки, которые могут использоваться для сопровождения процесса совершенствования производства ПО.

25.9. Объясните, почему методически обоснованный процесс не обязательно должен быть управляемым.

25.10. Считаете ли вы унижающими достоинство программы совершенствования производства, которые предусматривают оценивание работы персонала компании? Что, по-вашему, вызовет сопротивление введению такой программы в действие?

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...