Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Конспект лекций по курсу

Системный подход как метод сформировался в связи с изучением объектов и явлений как систем и базируется на ряде специфических принципов: системности, иерархичности познания, интеграции и формализации.

Тема 6. Роль процессов в обеспечении качества.

 

Процессный подход

Понятия «системный подход» и «процессный подход»

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

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

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

Системы исследуются на макроскопическом и микроскопическом уровнях. На макроскопическом уровне оценивают общее поведение системы как единого целого без учета ее детальной структуры. Цель такого изучения – создание модели системы в ее взаимодействии с окружающей средой, выявление её интегративных свойств. На микроскопическом уровне детально исследуют структуру системы, свойства элементов, взаимосвязи между ними и т.д.

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

Рисунок 6.1 Схема системы

 

I. Структура S = {E, P, R}:

а) элементы E={e1, e2,…, en}, n – число элементов;

б) свойства P={P(ei)};

в) отношения R={(ei, ej)};

II. Входы {x}, выходы {y};

III. Функция {x} ® {y}.

Структура системы характеризует её внутреннюю организацию и определяется рядом ее элементов Е, соответствующими свойствами элементов Р и связями элементов, устанавливаемыми как отношения между ними R. С системных позиций значение имеют лишь наиболее существенные связи, определяющие свойства системы и её функционирование. Связь между элементами рассматривают как физический канал, по которому происходит обмен между элементами веществом, энергией или информацией. Структура системы, таким образом, представляет собой множество S={E, P, R}. Для системы свойственно не только наличие связей и отношений между её элементами, но и неразрывное единство с окружающей средой, включающей все, что не входит в данную систему: атмосферу, биосферу (например, людей) и т.д. Каждая система может быть отделена от окружающей среды гипотетической оболочкой. Связи между системой и окружающей средой, пересекаемые оболочкой, разделяют на входы {x} и выходы {y}. Совокупность всех входов составляет обобщенный вход, представляемый в виде вектора.

Некоторую способность системы к определенным действиям, т.е. её целенаправленное поведение, называют функцией системы. Функция системы состоит в преобразовании входов {x}в выходы {y}. Такое преобразование можно описать математическими уравнениями, физическим аналогом, словесно. Функционирование системы во многом определяется её структурой, причем одну и ту же функцию реализуют различные структуры. Всякая система, как уже отмечалось, представляет собой в то же самое время часть другой, более обширной системы, в свою очередь, отдельные ее части и подсистемы могут рассматриваться как самостоятельные системы.

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

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

Системный анализ является технологией системного подхода. Его основа – построение моделей систем на базе широкого использования вычислительной техники. При этом применяют практически все математические методы исследования операций, «чёрного ящика», теории графов, теории информации и др. Для исследования сложных систем данные методы оказываются неэффективными. В этой связи широкое распространение получают, в частности, методы эвристического программирования и имитационного моделирования.

Общая методика системного подхода включает обычно следующие этапы:

1. Определение функции системы:

а) отделение системы от её окружения путем выбора оболочки (располагая ее как можно ближе к главным элементам системы);

б) перечисление всех входов и выходов;

в) описание функциональных соотношений между входами и выходами, дополненное изучением их изменений во времени.

2. Определение структуры системы:

а) идентификация элементов системы;

б) выявление взаимосвязей между элементами;

в) установление свойств элементов.

Системный подход к исследованию сложных объектов часто имеет форму представления их в виде блок-схем, карт системного описания, а также в виде математических моделей.

Системный подход к менеджменту – выявление, понимание и менеджмент взаимосвязанных процессов как систем для содействия результативности и эффективности организации при достижении ее целей. Систему можно определить, как совокупности взаимосвязанных, зависящих друг от друга процессов, протекающих последовательно или параллельно, которые совместно составляют программу, проект, продукт или целую организацию.

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

Ключевыми моментами при внедрении процессного подхода в организации являются:

- определение и описание существующих бизнес-процессов и порядка их взаимодействия в общей сети процессов организации;

- чёткое распределение ответственности руководителей за каждый сегмент всей сети бизнес-процессов организации;

- определение показателей эффективности и методик их измерения (например, статистических);

- разработка и утверждение регламентов, формализующих работу системы;

- управление ресурсами и регламентами при обнаружении отклонений, несоответствий в процессе или продукте или изменений во внешней среде (в том числе изменение требований заказчика), на основе спирали улучшений (цикла Шухарта – Деминга) (рис. 6.2).

 

Рисунок 6.2. Спираль улучшений (Цикл Шухарта-Деминга):

1 – планирование; 2 – осуществление; 3 – проверка (изучение);

4 – действие

Цикл Шухарта-Деминга (PDCA/PDSA) представляет собой повторяющуюся последовательность действий, направленных на постоянное совершенствование и внедрение инноваций: планирование-осуществление-проверка (изучение) - действие (табл. 6.1).

Таблица 6.1 Описание достигаемых

результатов при реализации цикла Шухарта - Деминга

 

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

 

Системный подход к менеджменту и процессный подход – два базовых принципа (четвертый и пятый) менеджмента качества из восьми, включающих также такие принципы, как «ориентация на потребителя», «лидерство руководителя», «вовлечение работников», «постоянное улучшение», «принятие решений на основе фактов», «взаимовыгодные отношения с поставщиками». Руководствуясь ими, сотрудники организации могут обеспечить её эффективное функционирование и повышение конкурентоспособности на внутреннем и внешнем рынках.

«Объектно-ориентированное программирование»

 

Литература:

1. Б.Страуструп. Язык программирования C++, 3-е изд./Пер. с англ. – СПб.; М.: «Невский диалект» – «Издательство БИНОМ», 1999 г. – 991 с., ил.

2. А. Пол. Объектно-ориентированное программирование на C++, 2-е изд./Пер. с англ. – СПб.; М.: «Невский диалект» – «Издательство БИНОМ», 1999 г. – 462 с., ил.

3. C/C++. Программирование на языке высокого уровня/ Т.А. Павловская. – СПб.: Питер, 2001. – 464 с.: ил.

4. Г. Буч. Объектно-ориентированный анализ и проектирование с примерами приложений на C++, 2-е изд./Пер. с англ. – М.: «Издательство «Бином», СПб: «Невский диалект», 1998 г. – 560 с., ил.

5. Мейерс С. Эффективное использование C++. 50 рекомендаций по улучшению ваших программ и проектов: Пер. с англ. – М.: ДМК, 2000. – 240 с.: ил. (Серия «Для программистов»).

6. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. – СПб: Питер, 2001. – 368 с.: ил. (Серия «Библиотека программиста»)

7. По UML.

 

1. Введение

 

1.1. История развития C++.

(Язык C был спроектирован Деннисом Ритчи в начале 70-х для создания UNIX).

Создатель C++ – Бьерн Страуструп (Bjarne Stroustrup), AT&T.

1980 г. «C с классами»

1998. Ратифицирован стандарт C++

 

Нововведение Источник нововведения
Основные средства C
Концепция классов (c производными классами и виртуальными функциями) Simula67
Средства перегрузки операторов и возможность помещения объявлений в любом месте, где может быть записана инструкция Algol68
Шаблоны Ada, параметризованные модули в Clu
Механизм обработки исключений Ada, Clu, ML
Множественное наследование, чисто виртуальные функции, пространства имен Опыт использования C++

 

1.2. Использование C++

 

На C++ написаны операционные системы (полностью или частично).

Эффективность позволяет использовать C++ для написания драйверов и других программ, предназначенных для работы в реальном времени.

Малый объем требуемой памяти.

Связь с ассемблером.

Как правило, ключевыми аспектами являются удобство сопровождения, расширяемость и простота тестирования. Эти свойства C++ привели к его широкому использованию в областях, где совершенно необходима надежность, а также там, где требования к программам значительно меняются со временем (банковское дело, торговля, страхование, телекоммуникации, военные приложения).

На C++ решается множество численных, научных и инженерных задач. (Причина этого в том, что традиционные численные задачи должны совмещаться с графикой и вычислениями, связанными со структурами данных, которые не укладываются в традиционный Фортран.)

Графика и пользовательские интерфейсы – области интенсивного использования C++.

С++ возможно эффективно использовать в программах, предназначенных для широкого диапазона прикладных областей.

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

С++ может сосуществовать с фрагментами кода и программами, написанными на других языках.

C++ широко используется для обучения и исследований (моделирующие программы), т.к. он:

Реализация C++:

Для PC, Windows: Microsoft Visual C++ 6.0, 7.0, Borland C++.

Для UNIX-систем это – системный компилятор GNU v3.XX.

 

 

1.3. ООП

 

[Павловская]

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

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

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

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

Для работы с этими данными требуются специальные функции (напрмер переместить, повернуть, сменить цвет, прочертить). Они помещаются вместе с данными в модуль.

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

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

Введение понятия класса является развитием идей модульности. В отличие от модуля, где описываются данные, в классе описыватся тип данных. Тот, кто использует модуль, работает с одной копией данных (одна фигура). Тот, кто использует класс, сам создает столько копий данных (фигур), сколько ему требуется.

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

Даже если программа и не предназначена для моделирования объектов реального мира, все равно особенность человеческого мышления такова, что человеку удобно мыслить понятиями (объектами), а не действиями (функции). Поэтому ООП более приспособлено к особенности мышления человека, чем процедурное программирование.

Класс является типом данных, определяемым пользователем. Тип задает внутреннее представление данных в памяти компьютера, множество значений, которое могут принимать величины этого типа, а также операции и функции, применяемые к этим величинам. Все это можно задать и в классе. Например, тип int определяет, что величина этого типа (int i) занимает 4 байта, принимает значения от -231 до 231-1 и ее можно складывать, вычитать, и т.д. Создаваемый тип данных (квадрат) определяет, что объект этого типа (конкретный квадрат) будет занимать столько байт, сколько необходимо для размещения отдельных данных (положение, размер, ориентация (угол поворота), цвет). Размещение и размер квадрата ограничены пределами экрана, угол поворота – от 0 до 90 градусов. Квадрат можно переместить, повернуть, сменить цвет, прочертить.

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

 

Объектно-ориентированное программирование (ООП) – основная методология программирования 90-х. Она берет начало в Simula 67 и продолжается в (ранних) Smalltalk, LISP, Clu и (более поздних) Actor, Eiffel, Objective C, Java и C++.

[Буч]: ООП – это методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования.

В данном определении можно выделить три высказывания:

1) ООП использует в качестве базовых элементов объекты, а не алгоритмы;

2) каждый объект является экземпляром какого-либо определенного класса;

3) классы организованы иерархически.

 

[Пол]: Концепции ООП

- Моделирование действий из реального мира

- Наличие типов данных, определяемых пользователем

- Сокрытие деталей реализации

- Возможность многократного использования кода благодаря наследованию

- Интерпретация вызовов функций на этапе выполнения

 

[Буч]: (Инкапсуляция – маскировка всех внутренних деталей, не влияющих на внешнее поведение.)

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

Inheritance – наследование.

 

<== предыдущая лекция | следующая лекция ==>
Экономические коэффициенты | Фазы трансляции
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 409; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.