Скачать презентацию Управление на качеството Ian Sommerville 2004 Software Engineering Скачать презентацию Управление на качеството Ian Sommerville 2004 Software Engineering

fa9842a8ab7b2f07e50542332a5fc2a6.ppt

  • Количество слайдов: 53

Управление на качеството ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide Управление на качеството ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 1

Цели l l Да направи въведение в процеса на управление на качеството и дейностите Цели l l Да направи въведение в процеса на управление на качеството и дейностите в този процес Да обясни ролята на стандартите за управлението на качеството. Да обясни понятието софтуерна метрика, предсказваща метрика и управляваща метрика. Да обясни как могат да се използват измервания за оценка на качеството на софтуера и ограниченията в/у измерванията на софтуера. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 2

Основни теми l l Качество на процес и на продукта Осигуряване на качеството и Основни теми l l Качество на процес и на продукта Осигуряване на качеството и стандарти Планиране на качеството Контрол на качеството ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 3

Управление на качеството на софтуера l l l Занимава се осигуряването на достигане изискваното Управление на качеството на софтуера l l l Занимава се осигуряването на достигане изискваното ниво на качество на софтуерния продукт. Включва дефинирането на подходящи стандарти и процедури и осигурява тяхното приложение. Стреми се да развива “култура на качеството”, при която качеството се смята за отговорност на всеки. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 4

Какво е качество? l l Опростено, качество означава това, че продуктът трябва да отговаря Какво е качество? l l Опростено, качество означава това, че продуктът трябва да отговаря на спецификацията си. Това е проблематично за софтуерните с-ми. • • • Има противоречие м/у изискванията за качество на клиента (ефективност, надеждност и др. и тези на разработчика (лесна поддръжка, повторно използване и др. ) Някои изисквания за качество е трудно да се специфицират недвусмислено. Спецификациите на софтуера са обикновено непълни и противоречиви. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 5

Компромиса в качеството l l Не можем да се подобрят спецификациите преди да обърнем Компромиса в качеството l l Не можем да се подобрят спецификациите преди да обърнем внимание на управлението на качеството. Трябва да се приложат процедурите за управление на качеството, за да се подобри последното вместо неточни спецификации. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 6

Област на приложение на управление на качеството l l УК е особено важно за Област на приложение на управление на качеството l l УК е особено важно за големи и сложни сми. Документацията по качеството е запис на развитието и поддържа непрекъснатостта на разработката при смяна на екипа. За по-малка с-ми, управлението на качеството се нуждае от по-малко документация и трябва да обърне внимание на “културата на качеството”. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 7

Дейности в УК l Осигуряване на качеството • l Планиране на качеството • l Дейности в УК l Осигуряване на качеството • l Планиране на качеството • l Избира приложимите за даден проект процедури и стандарти и ги променя според нуждите. Контрол на качеството • l Установява организационни процедури и стандарти за качество. Осигурява прилагането на процедурите и стандартите от разработващия екип. УК трябва да се отдели от управлението на проекта, за да се осигури независимост. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 8

УК и разработката на софтуер ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter УК и разработката на софтуер ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 9

Качество на процеса и продукта l l l Качеството на разработвания продукт се влияе Качество на процеса и продукта l l l Качеството на разработвания продукт се влияе от качеството на процеса на производство. Това е важно за разработката на софтуер, тъй като някои атрибути на качеството са трудни за оценяване. Но връзката м/у софтуерния процес и качеството на продукта е много сложна и зле изучена. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 10

Качество основано на процеса l l При промишлените стоки съществува пряка връзка м/у процеса Качество основано на процеса l l При промишлените стоки съществува пряка връзка м/у процеса и продукта. При софтуера тя е по-сложна защото: • • l При разработката на софтуер е много важно прилагането на индивидуални умения и опит. Качеството на продукта може да се влоши от външни фактори като ново приложение или съкратени срокове. Трябва да се внимава да не се налагат неподходящи стандарти – това може да влоши вместо да подобри качеството на продукта. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 11

Качество основано на процеса ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Качество основано на процеса ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 12

Практическо осигуряване на качество l l Дефинирай стандарти на процеса като: как да се Практическо осигуряване на качество l l Дефинирай стандарти на процеса като: как да се изпълняват ревюта, управление на конфигурацията. Следи процеса на разработка, за да се осигури прилагането на тези стандарти. Докладвай за процеса на отговорниците на проекта и 9 на доставчика на софтуер. Не използвай неподходящи методи само защото са били установени някакви стандарти. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 13

Осигуряване на качество и на стандарти l l Стандартите са ключа към ефективното управление Осигуряване на качество и на стандарти l l Стандартите са ключа към ефективното управление на качеството. Те могат да са международни, национални, фирмени и на самия проект Продуктовите стандарти дефинират х-ките, които трябва да притежават всички компоненти, напр. общ програмен стил. Стандартите на процеса дефинират как трябва да се осъществи софтуерния процес. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 14

Значение на стандартите l l l Енкапсулират най-добрите парктики – избягват се стари грешки. Значение на стандартите l l l Енкапсулират най-добрите парктики – избягват се стари грешки. Служат за рамка на процеса за осигуряване на качество – включва се проверка за съответствие със стандарта. Те осигуряват приемственост – нови служители могат да разберат организацията, като разберат използваните стандарти ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 15

Стандарти на продукта и на процеса ©Ian Sommerville 2004 Software Engineering, 7 th edition. Стандарти на продукта и на процеса ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 16

Проблеми със стандартите l l l Могат да не се считат за релевантни и Проблеми със стандартите l l l Могат да не се считат за релевантни и съвременни от софтуерните инженери. Често изискват много бюрократична работа – попълване на формуляри. Ако няма подходящи софтуерни средства, се създава много скучна ръчна работа, за да се поддържа документацията, свързана със стандартите. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 17

Разработка на стандартите l l l Трябва да се включват практици в разработката. Инженерите Разработка на стандартите l l l Трябва да се включват практици в разработката. Инженерите трябва да разбират смисъла в основата на стандарта. Преглеждайте редовно стандартите и тяхното използване. Стандартите бързо овехтяват и това намалява доверието на инженерите в тях. Трябва да има осигурени средства свързани с подробните детайли. Многото писмена работа е основно оплакване срещу стандартите. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 18

ISO 9000 l l Международен набор от стандарти за управление на качеството. Приложим към ISO 9000 l l Международен набор от стандарти за управление на качеството. Приложим към ред организации от производство до услуги. ISO 9001 е приложим за организации, които проектират, разработват и поддържат продукти. ISO 9001 е обобщен модел на процеса за качество, който трябва да бъде приспособен, за всяка организация, използваща стандарта. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 19

ISO 9001 ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 20 ISO 9001 ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 20

ISO 9000 сертификация l l l Стандартите за качество трябва да се документират в ISO 9000 сертификация l l l Стандартите за качество трябва да се документират в ръководство по качеството на организацията Външна организация трябва да удостовери, че ръководство по качеството е съвместим с ISO 9000 стандартите. Някои клиенти изискват доставчиците да имат ISO 9000 сертификат, въпреки че все повече се признава нуждата от гъвкавост. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 21

ISO 9000 и управление на качеството ©Ian Sommerville 2004 Software Engineering, 7 th edition. ISO 9000 и управление на качеството ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 22

Стандарти за документацията l l Особено важни – документите са осезаемата проява на софтуера Стандарти за документацията l l Особено важни – документите са осезаемата проява на софтуера Стандарти за процеса на документация • l Стандарти за документите • l Занимават се с това, как да се разработват, валидират и поддържат документите. Занимават се ссъ съдържанието, структурата, и изгледа на документите. Стандарти за обмен на документи • Занимават се със съвместимостта на електронните документи. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 23

Процес на документация ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide Процес на документация ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 24

Стандарти за документите l Идентификация на документите • l Стандарт за структурата • l Стандарти за документите l Идентификация на документите • l Стандарт за структурата • l Стандартна структура на документите на проекта Стандарти за представянето на документите • l За уникални идентификатори на документите Дефинира шрифтове, стилове, използване на лого и др. Стандарти за изменение на документите • Как промените от предишните версии се отразяват в документите ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 25

Стандарти за обмен на документи l l l Стандартите за обмен позволяват обмена на Стандарти за обмен на документи l l l Стандартите за обмен позволяват обмена на електронните документи чрез файлове, ел. поща и др. Документите се създават с различни с-ми и на различни компютри. Даже когато се използват стандартни средства, стандартите са нужни за дефиниране конвенции за използването им, напр. използването на “style sheets” и макроси. Нужда от архивиране. Жизненият цикъл на текстовите процесори може да е много по-къс от този на документирания софтуер. Може да се дефинира стандарт за архива, който да осигури достъп до документа в бъдеще. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 26

Планиране на качеството l l l Планът по качеството се занимава с желаните качества Планиране на качеството l l l Планът по качеството се занимава с желаните качества на продукта, как да се оценят последните и дефинира най-важните атрибути на качеството. Планът трябва да дефинира процеса за оценка на качеството. Той трябва да се занимае с това, кои организационни стандарти трябва да се приложат и, където е необходимо, да дефинира нови стандарти, които да се използват. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 27

Планове за качество l Структура на плана за качество • Въведение за продукта Описание Планове за качество l Структура на плана за качество • Въведение за продукта Описание на продукта, предполагаем пазар и очаквания за качеството му. • План за продукта Основни дати за разработката и отговорници заедно с планове за разпространение и сервиз. • Описания на процеса Използваните процеси за разработка и обслужване • Цели на качеството Планове и цели за качеството включващи идентификацията и обосновката на критични атрибути за качеството на продукта. • Рискове и управление на риска Основни рискове, които могат да въздействат на качеството на продукта и действия за намаляване на тези рискове. l Плановете по качеството трябва да са къси и сбити документи Ако са дълги, никой няма да ги чете ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 28

Атрибути на качеството на софтуера ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter Атрибути на качеството на софтуера ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 29

Контрол на качеството l l Включва проверка на процеса за разработка на софтуера, за Контрол на качеството l l Включва проверка на процеса за разработка на софтуера, за да се осигури следването на процедурите и стандартите. Има 2 подхода за контрол на качеството • • Прегледи на качеството Автоматична оценка на софтуера и измервания на софтуера ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 30

Прегледи на качеството l l l Това е главен метод за установяване на качеството Прегледи на качеството l l l Това е главен метод за установяване на качеството на процес или продукт Група експерти изучава част от или целия процес или с-ма и документацията, за да намери потенциални проблеми Има различни типове прегледи с различни цели • • • Инспекция за отстраняване на дефект (продукт) Преглед за оценка на напредъка (процес и продукт) Преглед на качеството (продукт и стандарт) ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 31

Типове прегледи ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 32 Типове прегледи ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 32

Прегледи на качеството l l l Група хора внимателно преглежда част от или цялата Прегледи на качеството l l l Група хора внимателно преглежда част от или цялата софтуерна с-ма и документацията Могат да бъдат прегледани кодът, проектите, плановете за тестовете, стандартите и др. Софтуерът или документите могат да бъдат утвърдени прегледа, което означава, че ръководството разрешава преминаването към следващ етап. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 33

Функции на прегледите l l l Качество – те са част от общия процес Функции на прегледите l l l Качество – те са част от общия процес на управление на качеството. Управление на проекта – дават информация на мениджърите на проекта. Обучение и комуникация – добитото знание се предава м/у членовете на екипа. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 34

Прегледи на качеството l l Целта е да се открият грешки и противоречия в Прегледи на качеството l l Целта е да се открият грешки и противоречия в с-мата Могат да се прегледа всички изработени в процеса документи. Преглеждащият екип трябва да е относително малък и прегледите да са къси. Трябва да се водят винаги архиви за прегледите по качеството. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 35

Резултати от прегледите l Коментарите, направени по време на прегледите, трябва да се класифицират: Резултати от прегледите l Коментарите, направени по време на прегледите, трябва да се класифицират: • • • l Без последствие. Не се изисква промяна в софтуера или документацията. Поправка. Проектантът или програмистът трябва да поправят установената грешка. Преразглеждане на целия проект. Установеният проблем се отразява на други части от проекта. Трябва да се направи обобщено обсъждане за икономически по-ефективно решение на проблема Грешките в изискванията и спецификациите трябва да се отправят към клиента. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 36

Измерване на софтуера и метрики l l Измерванията се занимават с извличането на числови Измерване на софтуера и метрики l l Измерванията се занимават с извличането на числови стойности за някой атрибут на софтуерния продукт или процес. Те позволяват обективно сравнение м/у техниките и процесите. Въпреки че някои компании са въвели програми за измерване, повечето организации не използват системно измерването на софтуера. Има няколко установени стандарта в тази област. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 37

Софтуерни метрики l Всеки тип измерване, което се отнася до софтуерната с-ма, процеса или Софтуерни метрики l Всеки тип измерване, което се отнася до софтуерната с-ма, процеса или документацията. Редове код в програмата, индекс на Фог, нужни човекодни за разработка на компонента l l l Позволява софтуерът и софтуерният процес да се изразят количествено. Може да се използва за предсказване на х-ки на софтуера или да се управлява софтуерния процес. Метриките на продукта могат да се използват за обши предвиждания или за установяване на аномалии в компонентите. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 38

Предвиждащи и контролни метрики Софтуерен продукт Контролни измервания Софтуерен процес Предвиждащи измервания Управленски решения Предвиждащи и контролни метрики Софтуерен продукт Контролни измервания Софтуерен процес Предвиждащи измервания Управленски решения ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 39

Допускания при измерванията l l Една софтуерна х-ка може да се измери Съществува връзка Допускания при измерванията l l Една софтуерна х-ка може да се измери Съществува връзка м/у това, което можем да измерим и това, което искаме да знаем. Ние можем да мерим само вътрешни атрибути, но повече се интересуваме от външните такива (използваемост, яснота и др. ) Тази връзка може да бъде формализирана и проверена Може да е трудно да се свърже в желаната степен това, което може да бъде измерено с външния атрибут на качество. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 40

Вътрешни и външни атрибути Леснота за поддръжка Брой на процедури и параметри Цикломатична сложност Вътрешни и външни атрибути Леснота за поддръжка Брой на процедури и параметри Цикломатична сложност Надеждност Размер на програмата в брой редове код Преносимост Брой съобщения за грешки Използваемост Големина на ръководството за потребителя ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 41

Процес на измерване l l l Процесът на измерване може да бъде част процеса Процес на измерване l l l Процесът на измерване може да бъде част процеса за контрол на качеството Данните събрани по време на този процес трябва да се поддържат като организационен ресурс. След като се създаде база от данни с измервания могат да се извършват сравнения м/у проектите. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 42

Процес на измерване на продукта ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter Процес на измерване на продукта ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 43

Събиране на данни l l l Програмата за измерване трябва да се базира на Събиране на данни l l l Програмата за измерване трябва да се базира на набор данни от продукта и процеса данните трябва да се събират в реално време (не ретроспективно) и, ако е възможно, автоматично. Три типа на автоматично събиране на данни • • • Статичен анализ на продукта Динамичен анализ на продукта Подреждане и съпоставяне на данните ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 44

Точност на данните l Не събирайте ненужни данни Предврително трябва да се дефинират въпросите, Точност на данните l Не събирайте ненужни данни Предврително трябва да се дефинират въпросите, на които трябва да се отговори и да се определят нужните данни. l Казвайте на хората, защо се събират данните Това не трябва да се оставя на лична преценка l Не се осланяйте на паметта си Събирайте данните, когато се създават, а не след края на проекта. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 45

Мерки на продукта l l Мерките на качеството трябва да предсказват качеството на продукта Мерки на продукта l l Мерките на качеството трябва да предсказват качеството на продукта Класове мерки • • Динамични мерки, които се събират от измервания, при изпълнение на програма. Помагат да се оцени ефективността и надеждността. Статични мерки, събрани при измервания на представяния на с-мата, като проект, програма или документация. Помагат да се оцени сложността, яснотата и леснината за поддръжка. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 46

Динамични и статични мерки l Динамичните мерки са тясно свързани с х-ките на качеството Динамични и статични мерки l Динамичните мерки са тясно свързани с х-ките на качеството на софтуера. Относително е лесно да се измери времето за реакция на с-мата (атрибут на ефективността) или броя на сривовете (надеждност) l Статичните мерки имат непряка връзка с х-ките на качеството Трябва да се експериментира и да се извлекат зависимостите м/у тези мерки и х-ки като сложност, яснота, и леснина за поддръжка. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 47

Мерки на софтуерния продукт ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Мерки на софтуерния продукт ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 48

Обектно ориентирани мерки ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide Обектно ориентирани мерки ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 49

Анализ на измерването l Не винаги е очевидно значението на данните. Анализът на събраните Анализ на измерването l Не винаги е очевидно значението на данните. Анализът на събраните данни е твърде труден l l Ако има професионални статистици, те трябва да се поканят за консултации Анализът на данните трябва да вземе предвид и местните обстоятелства. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 50

Изненади при измерването l Намаляването на грешките в програмата води до увеличен брой повиквания Изненади при измерването l Намаляването на грешките в програмата води до увеличен брой повиквания от потребители. • • Сега програмата се счита за по-надеждна и има по-разнообразен пазар. Процентно потребителите, които искат помощ намаляват, но броят като цяло се увеличава. По-надеждната с-ма се използва различно от тази, където потребителите се борят с грешките. Това води до повече извиквания за помощ. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 51

Обобщение l l Управлението на качеството на софтуера се занимава с осигуряването на това, Обобщение l l Управлението на качеството на софтуера се занимава с осигуряването на това, софтуерът да отговаря на нужните стандарти. Процедурите за осигуряване на качеството трябва да са документирани в ръководство за качеството. Софтуерните стандарти са еманация на найдобрите практики. Прегледите са най-използвания подход за оценка на качеството на софтуера. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 52

Обобщение l l l Измерването на софтуера събира информация за софтуерния процес и за Обобщение l l l Измерването на софтуера събира информация за софтуерния процес и за софтуерния продукт. Мерките на качеството на продукта трябва да се използват да се открият потенциално проблематични компоненти. Няма стандартизирани и универсално приложими софтуерни метрики. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 27 Slide 53