CN2003 Software Analysis and Design
  Examination Advice
  CN2003 Home - Examination Advice - Question 3 - Answer 3

Quick Links

Frequently-asked questions »

Question »

Questions

OO class modelling 1 »

OO class modelling 2 »

Data/ Attribute Normalisation »

Fact Gathering »

DFDs and STDs 1 »

DFDs and STDs 2 »

First, it is important to remember to answer each part of the question.  Make it clear which part of the question you are answering by using the question parts indicated (a, b, c and d). It is useful to start each part of your answer on a new page, allowing you to add extra detail after your initial answer. 


Part a

1. Stakeholder

A stakeholder is somebody or some organisation which has an interest in the proposed system.

A stakeholder might therefore be a user of the proposed system, such as a travel agent using a holiday booking system.  A travel agency customer might also be a stakeholder, because although they might not be directly using the proposed system, they have an interest in what the system will tell the travel agent.  Similarly, a holiday company whose holidays are sold through the proposed system would also be a stakeholder.

'Warden' would be a stakeholder in the proposed administration system.  They might be both a user of the system and a recipient of the information produced by the system.

2. Object

An object is something of interest, tangible or intangible, which can be described and about which we wish to hold some information for subsequent processing. 

An object might therefore be something such as a 'book', where, in a book shop system, we would want to know the author, selling price, number of copies in stock and so on.  An object can also be something which is intangible such as an 'order for a book'.  The concept of 'order' does not result from something physical which you can touch, feel and measure, but rather from a desire for a customer to have something.  Therefore the object in this case is the 'desire' or order.   Of course, sometimes we want create a record of an order, written on a piece of paper.

There are many examples of objects: accommodation unit (tangible, physical object); room offer (intangible).

3. Process

A process is defined as a related sequence of actions which impact upon one or more objects.

A process will last for a period of time, usually started or triggered by an event.  It does not make sense to consider part-processes since by definition the actions within a process are related by a common goal.

4. Event

An event is an instantaneous point in time when something of interest happens. 

An event can be classified as external or internal.  An external event is something which happens outside the system boundary to which the system must respond.  An internal event is something which happens within the system to which the system must then make some additional response.

'Confirm offer' is an event in which a prospective student confirms that he or she wants to accept a room offer.

Part b

1. Event and Process

An event can be used to start one or more processes.  In addition, an event may also be used to stop a process.

In the case study, the event 'student accepts offer'  is followed by a description of what a student does.  What the student does is in effect the process which needs to be executed to record the fact that the student has accepted their offer.

Therefore the event will trigger a process which might be named 'record student acceptance' in which a series of actions record that the student has accepted the offer and records details of the deposit paid.

2. Process and Object

When a process starts to execute, it may modify one or more objects.

Following on from the example in part b(1), when a student accepts an offer, a process of 'record student acceptance' will start.  This process will first find the details of the offer (an object) and change its state from 'offer' to 'confirmed offer'.  The reason the process might do this is prevent another process cancelling offers which have lapsed (i.e. not accepted within a certain time period).  The process might also change some of the data it holds about students.

The process will also need to create an instance of an object called 'payment' to record the fact that the student will have paid a deposit as part of the offer acceptance.

You can see from these examples that in fact, a process can modify a whole series of objects: creating new instances, reading details or updating details of existing object instances or by deleting instances of objects.  These can be represented in a CRUD matrix.

A simple CRUD matrix for this case study might be:

Process/Object  Offer Student Payment Charge
Accept offer  U R C  
Arrive    U   C
Cancel offer       

3. Event and Object

Through processes, you can link events to objects to show which events will impact which objects.

You can identify all the events (internal or external) which will cause something to happen to an object as a result of the processes they trigger.

The event 'student arrives' causes a series of things to happen, including the billing of a student's rent charge.  Therefore the event 'student arrives' has a direct impact on the student's account balance (the amount the student currently owes).

When you have collected all the events together which impact one object, you can create an object life history.  An object life history shows all the events which impact an object and the ordering in which they can occur.  It is possible to show repeated events and events which are optional or represent possible alternatives.

For example, the object life history below shows that a student can receive an offer.  Afterwards they make a decision either to reject or accept the offer.

If the student accepts the offer, there is a series of events called accept offer, arrive and then a repetition of 'pay rent' events.

Part c

Part 1

You can choose stakeholders by sampling, either randomly or systematically.  In systematic sampling, you would identify the different categories of stakeholders and may sure you take a sample from each category.

Part 2

A number of techniques might be used to run a stakeholders meeting.  Brainstorming would be a common technique to get a meeting started, where you set a question and ask those present to create as many responses as possible.  The responses are not evaluated at this stage, but are collated and used to encourage more and more answers.  Then the meeting would start to groups the answers (since some might be repeated or related) and then the different categories of answer evaluated.

An alternative approach to running a meeting would be to develop a cause-effect 'fishbone' diagram.

Part 3 

A number of techniques can be used to reconcile different views, including:

  • nominal group ranking
  • weighted group ranking
  • pairwise comparison.

Quick Tips

Show comments »


Details correct as on 28th July 2005
(c) P.J. Layzell, C. Tjortjis 2001-2005

Home | Contact Us| Legal