A high quality product is a good product. System Quality
common problems with computer systems, and presents techniques to develop
and maintain high quality systems. We subdivide quality into software
quality and data quality.
The quality of software is measured in several ways, including
functionality, suitability for the specified task, reliability, usability,
efficiency, and maintainability (ISO standard 9126). We discuss the
best software development practices. We explore techniques that efficiently
reduce defect rates, such as peer reviews, 'extreme programming' and careful
testing. We investigate approaches that can improve the quality of
an organization's management of software development processes.
The quality of data is also measured in several ways, including
completeness, accuracy, and absence of duplication. We investigate
the cost of poor data quality. Following the work of Loshin, we discuss
how poor quality data can be cleaned, and how data collection can be designed
to ensure high quality.
Throughout the course we try to focus on small-scale techniques that
students can implement individually or in small teams in their IT workplace,
with or without management support.
Course home page: http://www.cs.nyu.edu/artg/systemquality/Fall2002/index.html
Update history in 2002:
Time: Wednesdays, 7 - 9 PM
Place: Silver (formerly Main) Room 208
Email beacon: SystemQuality@yahoogroups.com
Prerequisites: Experience and skill writing programs at
least 15 pages long. Comfort reading Java.
Other course constraint: System Quality cannot be taken
by students who took David Loshin's Data Quality course.
Office: 251 Mercer, WWH, Room 409
Home page: www.cs.nyu.edu/artg
Office hour: By appointment, schedule by email
Listed in the syllabus.
Papers are in http://www.cs.nyu.edu/artg/systemquality/Fall2002/readings/index.html
Capers Jones, Becoming Best in Class. SPR technical report,
1998, 40 pages. I have tried to obtain this.
I'm uncertain which books I should require, if any.
Software Assessments, Benchmarks, and Best Practices, by Capers
Jones, 659 pages; Addison-Wesley Pub Co; ISBN: 0201485427; 1st edition
(April 28, 2000). Jones provides more quantitative support for software
engineering practices than anyone else. The basis for my lectures
"Software Development Best Practices, Capers Jones".
Peer Reviews in Software: A Practical Guide, Karl E. Wiegers,
Addison Wesley Professional; ISBN: 0201734850; 1st edition (December 15,
2001). A well organized description of how to do peer reviews. The
basis for our discussion on inspections.
Enterprise Knowledge Management: The Data Quality Approach,
by David Loshin, Paperback: 491 pages ; Morgan Kaufmann Publishers; ISBN:
0124558402; 1st edition (January 22, 2001). An excellent, thorough,
book about data quality problems and their solutions. The primary
source for our discussions on data quality.
Quality Software Management: Anticipating Change (Vol 4), by
Gerald M. Weinberg, 504 pages, Dorset House; ISBN: 0932633323; (May 1997).
The last volume of Weinberg's opus on quality software management, focusing
on how organizations change. A basis for Estes' lecture.
The Mythical Man-Month, Fred Brooks, 1995 (1st edition 1975).
A classic, updated. All programmers and development managers should
read this, at least once.
David Garmus, David Herron, Function Point Analysis: Measurement
Practices for Successful Software Projects Addison-Wesley Pub Co; ISBN:
0201699443; 1st edition, 2000. By the leaders of the IFPUG.
A fairly comprehensive and clear explanation of the black art of function
point counting, but only of interest to people who plan to do function
Handbook of Walkthroughs, Inspections, and Technical Reviews: Evaluating
Programs, Projects, and Products, by Daniel P. Freedman, Gerald M.
Weinberg, Dorset House; ISBN: 0932633196; 3rd edition (August 1990).
Many good ideas about reviews, but written in an annoying Q&A style.
Watts S. Humphrey, Managing the Software Process, 494 pages
(May 1989), Addison-Wesley Pub Co; ISBN: 0201180952. The classic
book on the SEI's capability maturity model.
Steve C McConnell, Rapid Development: Taming Wild Software Schedules,
647 pages (July 1996), Microsoft Press; ISBN: 1556159005. A highly
practical book (like all of McConnell's work) with much good advice.
Steve C McConnell, Code Complete: A Practical Handbook of Software
Construction, 857 pages (May 1993), Microsoft Press; ISBN: 1556154844.
An extremely practical, concrete and useful presentation of good coding
practices, from variable naming, to comment writing to system decomposition.
Steve C McConnell, Software Project Survival Guide, 250
pages, Microsoft Press; ISBN: 1572316217; (November 1997). Excellent
ideas for small (less than a few hundred function point), new development
MIS projects. Makes frequent cogent reference to the software engineering
Gerald M. Weinberg, Quality Software Management series: Vol I: First-Order
Measurement, Vol 2: Systems Thinking and Vol 3: Congruent Action.
Watts S. Humphrey, A Discipline for Software Engineering (SEI Series
in Software Engineering), 789 pages (January 1995), Addison-Wesley
Pub Co; ISBN:
0201546108. A controversial, personal CMM. Many think the
overhead too high.
Student evaluation is distributed as follows:
Assignment : Portion (%)
Software inspection exercise : 30
Data profiling program : 30
Take home final : 30
Class participation : 10
All students must read and respond to Internet email. All students should
join the SystemQuality@yahoogroups.com class mailing list http://groups.yahoo.com/group/SystemQuality.
This document and associated materials were authored or compiled by
Arthur Goldberg. This compilation and supporting electronic teaching materials
may be freely used for non-commercial use provided any electronic or print
version includes this notice. All rights reserved. Copyright Arthur P.