Answer Key for Chapter 1 Questions

 

1.2 Important attributes are maintainability, dependability, performance and usability.
Other attributes that may be significant could be reusability (can it be reused in other
applications), distributability (can it be distributed over a network of processors),
portability (can it operate on multiple platforms) and inter-operability (can it work
with a wide range of other software systems). Decompositions of the 4 key attributes
e.g. dependability decomposes to security, safety, availability, etc. are also possible
answers.


1.3 A software process is what actually goes on when software is developed. A software
process model is an abstraction and simplification of a process. Process models can
be used to help understand real processes and to identify which aspects of these
processes could be supported by CASE tools.

1.6 Problems and challenges for software engineering
Developing systems that are trusted by their users
Developing systems that are resistant to attack
Developing systems that can be adapted and configured by end-users
Finding ways of testing, validating and maintaining end-user developed systems
There are obviously lots of other problems that could be mentioned here.


1.7 Advantages of certification
• Certification is a signal to employers of some minimum level of competence.
• Certification improves the public image of the profession.
• Certification generally means establishing and checking educational standards and is
therefore a mechanism for ensuring course quality.
• Certification implies responsibility in the event of disputes.
Certifying body is likely to be accepted at a national and international level as
‘speaking for the profession’.
• Certification may increase the status of software engineers and attract particularly able
people into the profession.
Disadvantages of certification
• Certification tends to lead to protectionism where certified members tend not to
protect others from criticism.
• Certification does not guarantee competence merely that a minimum standard was
reached at the time of certification.
• Certification is expensive and will increase costs to individuals and organisations.
• Certification tends to stultify change. This is a particular problem in an area where
technology developments are very rapid.