Software Eng Fundamentals
Date of exam:
Start time of exam:
Total number of pages (incl. this cover sheet)
NOTE: This exam paper may be
RETAINED by the student
Other aspects of the life cycle
Forgetting to put boundaries on what you are prepared to achieve is a continuing
problem in many projects. Although a project may start off with a limited brief of what to
achieve, this can soon be overwhelmed by users aski
It was a sad indictment of the status of the computing industry that in 1994 only 17% of
the projects surveyed were completed on time and on budget. However 10 years later
that figure has doubled.
This is due to a much better understanding
Do not think of it as a sequence of actions that are followed. Each use case is
a separate behaviour.
For example the following (if drawn as a sequence of use cases) is incorrect.
"Insert card and enter PIN"-> "Withdraw cash"->"Take Card"-
Components of Software Engineering
Like all engineering, SE involves Process, Notation, Tools and Products.
To reliably build systems, that is to be able to predict reasonably accurately how likely
success is, how much a system will cost, how long
The conditions that must be true before the use case can even be considered.
This should be written as a predicate, that is as a statement that is either true
For Withdraw Cash a precondition is "The person is a customer of the ban
Use case extends
People new to use cases find the extends concept the most confusing. The
use case text format discussed below may help you understand this better, so
don't be concerned if you don't see the purpose immediately.
Although we have only seen
Week 2 Use cases
Amazing as it sounds there have been a lot of software developed where the
user's requirements have been overlooked or ignored.
Projects can be started for many reasons - generally it's to fulfil a business
need. Sometimes these projects
Why do we want to "Engineer" Software?
Engineering has been defined as.
[T]he creative application of scientific principles to design or develop structures,
machines, apparatus, or manufacturing processes, or works utilizing them singly or in
SE Life Cycle
The development of software can be likened in many ways to that of building a house. If
you are in the construction company there is a natural order in which the steps must be
First of all you must find out what the client wants - eit
Introduction - notes
SEF - Week 1 Introduction
Software is one of the most amazing concepts - immensely flexible, immensely powerful,
Unfortunately it can also be immensely difficult to create unless you have the appropriate
Naming Use Cases
A use case is an action - a set of steps that are followed to produce achieve a
goal. The use case's name should indicate this fact, and so should be an
active verb phrase. When you read it out it should be possible to think of it as
Even though a patient may not be considered an actor in the system this
doesn't mean we forget about them completely!
We would still record details about them - their medical history, personal
details, which consultations they have h