版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、軟體品質(zhì)管理,Introduction,What is software quality? How can it be measured? How can it be measured before the software is delivered? Some key quality factors Some measurable indicators of software quality,Introduction,Think of an everyday object e.g. a chair How would you measure its “quality”? constructi
2、on quality? (e.g. strength of the joints,) aesthetic value? (e.g. elegance,) fit for purpose? (e.g. comfortable,) All quality measures are relative there is no absolute scale we can say A is better than B but it is usually hard to say how much better For software: construction quality(建造的品質(zhì))? softwa
3、re is not manufactured aesthetic value (美學(xué)上的價(jià)值)? but most of the software is invisible aesthetic value matters for the user interface, but is only a marginal concern fit for purpose? Need to understand the purpose,軟體品質(zhì)因素,Measuring Quality,The Quality Concepts (abstract notions of quality properties)
4、,Measurable Quantities (define some metrics),Counts taken from Design Representations (realization of the metrics),usability,minutes taken for some user task?,time taken to learn how to use?,complexity,count procedure calls?,information flow between modules?,reliability,run it and count crashes per
5、hour?,mean time to failure?,examples.,Four Key Quality Concepts,Reliability designer must be able to predict how the system will behave: completeness - does it do everything it is supposed to do? (e.g. handle all possible inputs) consistency - does it always behave as expected? (e.g. repeatability)
6、robustness - does it behave well under abnormal conditions? (e.g. resource failure) Efficiency Use of resources such as processor time, memory, network bandwidth This is less important than reliability in most cases Maintainability How easy will it be to modify in the future? perfective, adaptive, c
7、orrective Usability How easy is it to use?,McCalls Quality Factors,operation,revision,transition,Correctness reliability usability integrity efficiency,Maintainability Flexibility Testability,Portability Reusability Interoperability,General utility,portability,As-is utility,Maintainability,reliabili
8、ty,efficiency,usability,testability,understandability,modifiability,device-independence,self-containedness,accuracy,completeness,robustness/integrity,consistency,accountability,device efficiency,accessibility,communicativeness,self-descriptiveness,structuredness,conciseness,legibility,augmentability
9、,Source: See Blum, 1992, p176,Product operation,usability,Product revision,Product transition,integrity,maintainability,testability,reusability,portability,interoperability,operability,training,I/O volume,Access control,Access audit,Storage efficiency,consistency,instrumentation,expandability,genera
10、lity,Self-descriptiveness,modularity,machine independence,s/w system independence,comms. commonality,efficiency,correctness,reliability,flexibility,communicatativeness,I/O rate,execution efficiency,Source: See van Vliet 2000, pp111-3,traceability,completeness,accuracy,error tolerance,simplicity,conc
11、iseness,data commonality,Measurable Predictors of Quality,Simplicity the design meets its objectives and has no extra embellishments can be measured by looking for its converse, complexity: control flow complexity (number of paths through the program) information flow complexity (number of data item
12、s shared) name space complexity (number of different identifiers and operators) Modularity different concerns within the design have been separated can be measured by looking at: cohesion (how well components of a module go together) coupling (how much different modules have to communicate),Quality
13、and how to achieve it,Product quality always an issue After WWII, industry in the US and elsewhere has substantially improved quality via extensive testing and statistical quality control Japanese industry has followed a different concept, a.k.a. total quality initiative (Deming, Juran), where quali
14、ty control is an intrinsic aspect of the production process, not a post-production activity In other words, you should design the quality product and build it right, rather than build it and then make sure it has good quality,SEI and the Capability Maturity Model,Software quality improvement has led
15、 to the establishment of the Software Engineering Institute at Carnegie-Mellon University Capability Maturity Model (CMM) a framework to assess the maturity level of an organizations software development and management processes CMM consists of five levels of maturity as measured by a set of guideli
16、nes called the key process areas Higher levels increase competitiveness, reduce risk Levels are monotonic: level n includes all the characteristics of all the levels below, n-1, n-2, etc.,Capability Maturity Model,Level 1Initial,end Software development follows no prescribed process You dont know wh
17、ere you stand, or when will you finish, or what you will get when you finish You have to be happy with what you get at the,Level 2Repeatable,Project management processes and practices are established, in order to track project costs, schedules, and functionality Still, you just passively track whats
18、 going on and dont know exactly what you should do,Level 3Defined,A standard system development process (sometimes called a “methodology”) purchased or developed, and integrated throughout the IT unit of the organization which means that there is a prescribed sequence of steps to follow, plus you mo
19、nitor the outcomes,Level 4Managed,Measurable goals for quality and productivity are established Constant monitoring gives real-time data about the status of the process and product Process parameters adjusted in order to obtain desired outcomes (that is management, after all),Level 5Optimizing,The s
20、tandardized system development process continuously monitored and improved, based on measures and data analysis established in Level 4 Changes can be made to process parameters But we can make change in the process itself (e.g., choose different sequence, change priorities, even introduce additional
21、 steps or delete some that do not contribute to the process/product quality),CMM certification process,CMM assessment performed by qualified personnel from SEI, through interviews and analysis of procedures and documents used in the organization Levels can be awarded to organizations or specific pro
22、jects/project groups within an organization. Each level has its own questionnaire, with a number of mandatory and optional questions In order to qualify for a specific level, Yes answers must be present in each group (though minimum percentages are different),CMM certification process,Each questionn
23、aire focuses on a number of the so-called Key Process Areas (KPAs) Each level of CMM scale has an associated set of Key Process Areas (KPAs) To qualify for a specific level, issues related to KPAs for that level must be addressed To progress from one level to the next one up, improvements in appropr
24、iate KPAs have to be made Levels are monotonic makes no sense to concentrate on KPAs for, say, level 4, if the development process is still at level 1 or 2,關(guān)鍵流程領(lǐng)域(Key Process Area, KPA),Some problems with CMM,(at least initially) Focuses on project/process management, not product development Ignores
25、 use of certain advanced technologies Did not incorporate risk analysis as a KPA Did not define its domain of applicability,But things have evolved/diversified:,Models that the SEI is currently involved in developing, expanding, or maintaining: Capability Maturity Model Integration (CMMISM) SW-CMM C
26、apability Maturity Model for Software P-CMM People Capability Maturity Model SA-CMM Software Acquisition Capability Maturity Model SE-CMM Systems Engineering Capability Maturity Model IPD-CMM Integrated Product Development Capability Maturity Model,ISO9000,ISO9000 series of quality standards, some o
27、f which are related to software and IS development ISO principles: Say what you will do Do as you have said Prove that you did so NOTE: this is a very simplified view the certification process and the documentation required to go through it are quite extensive and detailed ISO certification is perfo
28、rmed through national standards organizations,CMM vs. ISO,Partial overlap, but doubts remain It seems possible that an organization can be certified for ISO9000 and still be at level 1 of the CMM scale, or be at level 3 or 4 and still unable to obtain ISO9000 certification Note: neither ISO nor CMM
29、prescribe any ABSOLUTE level of quality but the improvements in process management are believed to have a beneficial effect on quality,SQA: What is SQA?,SQA is the process of assuring people that every effort has been made to ensure that software products have the desired level of reliability, maint
30、ainability, usability, and salability. SQA是一種執(zhí)行軟體評(píng)估與衡量的活動(dòng) (Baker and Fisher) Set of systematic activities providing evidence of the ability of the software process to produce a software product that is fit to use (G. Schulmeyer and J. McManus, Software Quality Handbook, Prentice Hall, 1998.),Softwar
31、e Quality Assurance,How do you assure the quality of your software? Good processes Good documentation and artifacts Accountability Learn and improve,The Objectives of SQA,Monitoring processes and products throughout the software development lifecycle to ensure the quality of the delivered product(s)
32、 Monitoring the processes Provides management with objective(客觀的) feedback regarding process compliance(承諾) to approved plans, procedures, standards, and analyses Monitoring the products Focus on the quality of product within each phase of the SDLC e.g., requirements, test plan, architecture, etc. O
33、bjective: identify and remove defects throughout the lifecycle, as early as possible,SQA: An SQA Program,Minimizing number of defects in delivered s/w Creating mechanisms for controlling software development and maintenance so that costs and schedules can be met Making certain that the delivered pro
34、duct can be used in its intended marketplace Improving the quality of future products,Software defects,Mistakes made at any point in the software process Requirements, design, coding, maintenance Consequences Inconvenience, loss of service, financial loss, equipment damage, injury, death,The percent
35、age of defects found by various methods,The truth of defects,1. The later in the life cycle that an error is detected the more expensive it is to repair. 2. Errors remain latent and are not detected until well after the stage at which they are made. 54% of errors detected after coding and unit testi
36、ng. 45% of these errors were requirements and design errors. 3. There are numerous requirements errors. Estimates indicate that 56% of all errors are errors during the requirements stage. 4. Requirements errors are typically non-clerical.,Relative Cost to Repair based on when it was found,Requiremen
37、ts - 1 time Design - 3-6 times Code - 10 times Unit test - 15-40 times System test - 30-70 times Field operation - 40-1000 times,When should quality assurance be done?,At every stage in the software process,The Process of SQA,定義品質(zhì)需求,制定SQA計(jì)畫,需求評(píng)估,設(shè)計(jì)評(píng)估,測(cè)試評(píng)估,需求分析,設(shè)計(jì),測(cè)試,評(píng)估客戶滿意需求程度,measurement,feedback,f
38、eedback,功能與完整性,系統(tǒng)完整性與一致性,執(zhí)行效率與正確性,SQA Planning,IEEE Std 730-2002 Standard for Software Quality Assurance Plans 12 pages IEEE Guide for Software Quality Assurance Planning draft P730.2 87 pages,SQA Planning,IEEE SQAP Purpose (Section 1 of the SQAP) Reference documents (Section 2 of the SQAP) Manageme
39、nt (Section 3 of the SQAP) Documentation (Section 4 of the SQAP) Standards, practices, conventions, and metrics (Section 5 of the SQAP) Reviews and audits (Section 6 of the SQAP) Test (Section 7 of the SQAP) Problem reporting and corrective action (Section 8 of the SQAP) Tools, techniques, and metho
40、dologies (Section 9 of the SQAP) Code control (Section 10 of the SQAP) Media control (Section 11 of the SQAP) Supplier control (Section 12 of the SQAP) Records collection, maintenance, and retention (Section 13 of the SQAP) Training (Section 14 of the SQAP) Risk management (Section 15 of the SQAP),C
41、ontents of SQA Plan (sect 1 2.5M:1) Software organizations need to assess this,SQA: Quality Software,People,Process,Management Discipline,SQA,SQA: Pursuing SQA,What organizations are doing Nothing (42%) Slogans(口號(hào)) - “Quality is Job One!” (4%) Improved testing (24%) Focus on defect prevention (20%) Process Improvements (9%) Other. (1%),SQA: Software Reliability (MTBF),Putnams Software Reliabil
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省煙臺(tái)市蓬萊區(qū)2025-2026學(xué)年魯教版(五四制)七年級(jí)上冊(cè)數(shù)學(xué)期末模擬試卷(含答案)
- 2025-2026學(xué)年廣東省深圳市坪山區(qū)九年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
- 特殊食品管理辦法
- 2026甘肅酒泉藝術(shù)職業(yè)高級(jí)中學(xué)招聘1人備考考試試題及答案解析
- 2026福建廈門市海員培訓(xùn)中心教學(xué)人員選聘1人參考考試題庫及答案解析
- 2026江蘇南京市氣象部門招聘高層次人才2人筆試參考題庫及答案解析
- 飛機(jī)小知識(shí)課件
- app暑期活動(dòng)策劃方案(3篇)
- 換門窗施工方案(3篇)
- 2026年哈爾濱市香坊第二幼兒園招聘保育員1人備考考試題庫及答案解析
- (高清版)AQ∕T 2081-2023 金屬非金屬礦山在用帶式輸送機(jī)安全檢測(cè)檢驗(yàn)規(guī)范
- 西師版 三年級(jí)下冊(cè)數(shù)學(xué) 全冊(cè) 預(yù)習(xí)單及答案
- 小學(xué)六年級(jí)上冊(cè)數(shù)學(xué)期末測(cè)試卷及參考答案(輕巧奪冠)
- DZ∕T 0130-2006 地質(zhì)礦產(chǎn)實(shí)驗(yàn)室測(cè)試質(zhì)量管理規(guī)范(正式版)
- (高清版)JGJT 178-2009 補(bǔ)償收縮混凝土應(yīng)用技術(shù)規(guī)程
- 電梯日管控、周排查、月調(diào)度內(nèi)容表格
- QC-提高衛(wèi)生間防水一次驗(yàn)收合格率
- 江蘇省徐州市2022-2023學(xué)年高一上學(xué)期期末抽測(cè)政治試題(原卷版)
- 地基處理施工中的安全風(fēng)險(xiǎn)與防范
- 人教版六年級(jí)科學(xué)上期末測(cè)試題(2份)有答案
- 食品安全全球標(biāo)準(zhǔn)BRCGS第9版內(nèi)部審核全套記錄
評(píng)論
0/150
提交評(píng)論