Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Структурное программирование






Структу́ рное программи́ рование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом. В соответствии с данной методологией 1. Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций: последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы; ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия; цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).

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

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

3. Разработка программы ведётся пошагово, методом «сверху вниз». Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Достоинства структурного программирования: 1. Структурное программирование позволяет значительно сократить число вариантов построения программы по одной и той же спецификации, что значительно снижает сложность программы и, что ещё важнее, облегчает понимание её другими разработчиками. 2. В структурированных программах логически связанные операторы находятся визуально ближе, а слабо связанные — дальше, что позволяет обходиться без блок-схем и других графических форм изображения алгоритмов (по сути, сама программа является собственной блок-схемой). 3. Сильно упрощается процесс тестирования и отладки структурированных программ.

30. Основное содержание моделей качества CMM/CMMI. Уровни зрелости. Самым известным стандартом качества программного средства считается CMM (Capability Maturity Model – модель оценки уровня зрелости процессов разработки программных средств). Данный стандарт был создан организацией SEI Software Engineering Institute, финансируемым за счёт Министерства обороны США. Модель СММ предусматривает 5 уровней зрелости, каждому из которых соответствуют определённые ключевые области процессов (Key Process Areas - KPA).Уровни модели СММ/CMMI. 1.Начальный - Если организация находится на этом уровне, то ключевых областей процессов к ней не предусмотрено. 2 Повторяющийся - Управление программными конфигурациями. Обеспечение качества программных продуктов. Управление контрактами подрядчиков. Контроль за ходом проектов. Планирование проектов по разработке программного обеспечения. Управление требованиями к программному обеспечению. 3. Определённый - Экспортные оценки. Координация взаимодействия проектных групп. Инжинирия программного продукта. Комплексный менеджмент программного обеспечения. Программа обучения персонала. Наличие определения организационного процесса и наличия области деятельности организационного процесса. 4. Управляемый - Менеджмент качества программного обеспечения и управление процессом на основе количественных методов. 5. Оптимизируемый - Управление изменениями процессов. Управление изменениями технологий. Наличие эффективной системы предотвращение дефектов программного обеспечения.

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

Разрешить проблемы стандарта СММ призван новый стандарт CMMI (Capability Maturity Model Integrate – интегрированная модель оценки уровня зрелости процессов разработки программного обеспечения). В рамках CMMI были объединены все существующие варианты CMMI и исключены какие-либо противоречия при практическом применении стандарта в различных сферах деятельности. Для того, чтобы устранить необходимость выравнивания процессов организации, стандарт CMMI имеет более глубокую структуру и две формы представления:

1. классическую многоуровневую, соответствующую CMM— это поэтапное представление, позволяющее представить 22 области процесса на одном из пяти уровней зрелости организации. В ходе оценки организации определяется уровень ее работы, который характеризует способность организации управлять рисками и, следовательно, выполнять взятые на себя обязательства.

2. новую непрерывную рассматривающую не уровни зрелости, а уровни возможности, которые оцениваются для отдельных областей процессов. Моделирует возможности процессов внутри каждой из 22 областей процесса отдельно. Это позволяет организации скорректировать меры по совершенствованию деятельности в соответствии с процессами, приносящими наибольшую коммерческую выгоду. Кроме того, SEI, продвигая CMMI, обещает ужесточить контроль за сертификацией ПО, обеспечивая совместимость стандартами ISO. Соответствие уровней CMM/CMMI

Уровень зрелости CMM Уровень зрелости многоуровневого представления CMMI Уровень возможностей непрерывного представления CMMI
  Незавершенный
  Начальный Начальный Выполнимый
  Повторяющийся Управляемый Управляемый
  Определенный Определенный Определенный
  Управляемый Управляемый количественно Управляемый количественно
  Оптимизируемый Оптимизируемый Оптимизируемый

 

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.008 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал