+ All Categories
Home > Documents > Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science...

Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science...

Date post: 26-Dec-2015
Category:
Upload: donna-marshall
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
14
Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering
Transcript
Page 1: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

Notes on Software Quality

Sergiu Dascalu

University of Nevada, RenoDepartment of Computer Science and Engineering

CS 425 Software Engineering

Page 2: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering 2 / 14

Software quality Software quality assurance (SQA) SQA challenges Current trends Research directions Main references

Overview

Page 3: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering 3 / 14

It is rather hard to define what exactly software quality is

In general, it is acknowledged that software that satisfies its requirements has good quality

Several quality model exists, one of them stresses [Sommerville, 2006]: Maintenability Efficiency Dependability Acessibility

1 Software Quality

Page 4: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering 4 / 14

In practical terms, software quality is important because lack of quality translates to user frustration, financial losses, material damages, human injuries and even deaths

Known disasters due to software failures include [Glass 1998; Endres and Rombach 2003]: The baggage handling system for the Denver airport The welfare administration system for the state of Florida The air-traffic control system for the FAA

Other examples are listed by Tywebb Ltd 2007-8

1 Software Quality

Page 5: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

August 25, 2010 CS 425 Software Engineering 5 / 14

Some other illustrations [YouTube 2008]: Operating system demo crash TV show software error Arctic Tortoise field test problems Autonomous crash in DARPA Urban Challenge

To do justice to software developers, their job is a very demanding one, something captured in the ad “if programmers had to make a plane” [YouTube 2008]

1 Software Quality

Page 6: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

August 25, 2010 CS 425 Software Engineering 6 / 14

Software Quality Assurance (SQA) is defined by the IEEE Standard 610.12 – 1990 as “a planned and systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms with established technical requirements”

The SQA Handbook defines SQA as “the set of systematic activities providing evidence of the ability of the software process to produce a software product that is fit to use” [Schulmeyer and McManus 1998]

2 Software Quality Assurance

Page 7: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

August 25, 2010 CS 425 Software Engineering 7 / 14

SQA is distinct from software quality control which consists primarily of inspecting requirements documents and software testing. SQA covers the entire software development process, which includes software specification, design, implementation, integration, testing, source code control, code reviews, version control, and release management [Wikipedia 2008].

2 Software Quality Assurance

Page 8: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

August 25, 2010 CS 425 Software Engineering 8 / 14

Also according to [Wikipedia 2008] SQA focuses on the control of processes, rather than on the control of products.

Current software processes have evolved for waterfall to the Unified Process (UP), with many variations in between The waterfall model [Sommerville 2006]

2 Software Quality Assurance

Requirementsdefinition

System andsoftware design

Implementationand unit testing

Integration andsystem testing

Operation andmaintenance

Page 9: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering 9 / 14

The Unified Process [Arlow and Neustadt 2005]

2 Software Quality Assurance

Page 10: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering10 /

14

SQA challenges include [Voas 2003, Pressman 2004, McConnell 1993]:▪ Dealing with increasing complexity of software

processes and products▪ Defining improved quality models▪ Integrating better with development processes▪ Increasing the evidence that standards that promote

higher quality software bring indeed significant benefits

3 SQA Challenges

Page 11: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering11 /

14

SQA challenges include [Voas 2003, Pressman 2004, McConnell 1993] – continued:▪ Finding out ways to compose standards▪ Improving QA models and processes ▪ Increasing software quality-centric adaptability▪ Increasing SQA independence from software

development▪ Dealing with the perception that QA is less glamorous

than development

3 SQA Challenges

Page 12: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering12 /

14

Current SQA trends relate to focusing on the following [Lyu 2007; SEI 2008; McConnell 1993; Sommerville 2006]: Metrics and measurements Methods and tools Testing effectiveness and code coverage Inspections, reviews, and walkthroughs Software architectures Management and certification

4 Current Trends

Page 13: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

August 25, 2010 CS 425 Software Engineering13 /

14

Research directions in SQA, besides facing challenges mentioned previously, include [Lyu 2007; Bertolino 2007, Mnkandla 2006, Parsons 2003] : QA for COTS-based software QA for agile development processes QA for open-source software Metrics for software reliability prediction 100% automatic testing Personal and Team software processes

5 Research Directions

Page 14: Notes on Software Quality Sergiu Dascalu University of Nevada, Reno Department of Computer Science and Engineering CS 425 Software Engineering.

CS 425 Software Engineering14 /

14

Endres, A and Rombach, D., A Handbook of Software and Systems Engineering, Addison-Wesley Pearson, 2003

Ghezzi, C., Jazayeri, M, and Mandrioli, D., Fundamentals of Software Engineering, 2nd edition, Prentice Hall, 2002.

McConnell, S., Code Complete: A Practical Handbook of Software Construction, Microsoft Press, 1993.

Pressman, R., Software Engineering: A Practitioner’s Approach, 6th edition, Prentice Hall, 2006.

Software Engineering Institute at Carnegie Melon University, last accessed March 8, 2008 at www.sei.cmu.edu

Sommerville, I., Software Engineering, 8th edition, Addison-Wesley, 2006

Voas, J., Assuring Software Quality Assurance, IEEE Software, May?June 2003, pp. 48-49

Wikipedia.com, last accessed March 9, 2008 at www.wikipedia.com YouTube.com, last accessed March 9, 2008 at www.youtube.com

Main References


Recommended