CS 435 - Week 2 Lecture 1 - 2014-01-28 - in-class projections
------------------------------------
from Pfleeger and Atlee, "Software Engineering: Theory and Practice":
fault - "occurs when a human makes a mistake,
called an error, in performing some
software activities"
failure - "is a departure from the system's required
behavior"
------------------------------------
SWEBOK - Software Engineering Body of Knowledge
* looks like it is overseen by the IEEE Computer Society;
* from http://www.computer.org/portal/web/swebok/faq :
"The Computer Society began defining this body of knowledge in
1998 as a necessary step toward making software engineering a
legitimate engineering discipline and a recognized profession. As
software becomes the center of critical systems, it is only
natural that standards of practice, knowledge, and training would
arise in software engineering, as the usage section explains."
* the PDF version of the SWEBOK Guide does appear to
be free (although there is a terms of use -- possibly
the most readable/straightforward I've seen --
and you do provide your name and e-mail, and then
they e-mail you a link to download from)
* form for obtaining the PDF version of the SWEBOK Guide
is linked from:
http://www.computer.org/portal/web/swebok
* this is a resource that could be interesting;
----------------------------------
...recurring themes for software development:
* quality
* cost
* schedule
* ...Jalote calls these the main forces that
drive "industrial strength" software projects
* Extreme Programming: choose 2 of these 3?
----------------------------------
Defining quality can be ... interesting;
* International Standards Organization (ISO)
suggest some quality attributes for software:
* functionality -the capability to provide
functions that meet stated and implied
needs when the software is used
* reliability - the capability to provide
failure-free service
* usability - the capability to be understood,
learned, and used
* efficiency - the capability to provide appropriate
performance relative to the resource used
* maintainability - the capability to be
modified for purposes of corrections,
improvements, and/or adaptations
* portability - capability to be adapted
for different specified environments