You are on page 1of 9

INSE 6250/4/UU-Quality Methodology for Software

(Winter 2009)

Mid-Term Exam

Professor: J. Bentahar
Date: Tuesday, March 10, 2009
Duration: 105 minutes

NAME: ____________________________________ ID: __________________

INSTRUCTIONS:

• Answer all questions on these sheets in the space provided, and if you run out of
space please use the back of the page.

• The use of calculators is permitted.

• This exam is 9 pages long, including the cover page and the appendix. Check that
your copy is complete.

• This exam is out of 50 points.

• This is a closed book examination.


_________________________________________________________

1
Q1. Explain the meaning of evolutionary models (3P)

Q2. Compare model checking with testing (3P)

2
Q3. What are the key quality issues for software? (3P)

Q4. Check for the following PLTL formulas whether they are satisfiable, and/or valid:
1- ((p U q) U (r U t)) ⇒ q U t (3P) (for satisfiability you should give an example in
which the left part is true)

3
2- p U Fq ⇒ Fq (3P) (for satisfiability you should give an example in which the left part
is true)

3- FFq ⇒ p U FFq (3P) (for satisfiability you should give an example in which the left
part is true)

4
4- F(p ∧ q) ⇒ Fp ∧ Fq (4P) (for satisfiability you should give an example in which the
left part is true)

5- Fp ∧ Fq ⇒ F(p ∧ q) (3P) (for satisfiability you should give an example in which the
left part is true)

5
Q5. Without using temporal operators, give the semantics of the following formula:
(4P)

s  Φ A Ψ. Φ A Ψ means that if Ψ holds in some future, Φ does so later on.

6
Q6. Consider the following Kripke structure consisting of 6 states that are labeled with
atomic propositions from the set {p, q, r, s, t}

5 r, s q, s

1 2 3
p, q q, t p, r

4
p, s

Indicate for each of the following PLTL formulas the set of states for which these
formulas are valid:

1- p U q (3P)

2- Ft (3P)

3- p U fr (3P)

7
Q7. Let us consider a multi-agent system in which agents communicate by the
following messages:

Inform(X,Y, p): meaning that agent X informs agent Y about p.


Request(X, Y, p): meaning that agent X requests agent Y about p.
Invite(X,Y): meaning that agent X invites agent Y to start a communication.
Accept(X,Y): meaning that agent X accepts the invitation of agent Y to start a
communication.
Refuse(X,Y): meaning that agent X refuses the invitation of agent Y to start a
communication.

Use PLTL to express the following properties, and if you need new operators you should
define them first:

1- Agent α has always the possibility of informing and the possibility of requesting agent
β about φ (liveness property). (4P)

2- For agent α, there is always a possibility of accepting or refusing an invitation sent by


Agent β (the acceptance and refusal of an invitation are not supposed to be immediate).
(4P)

3- Agent α cannot accept or refuse an invitation from β if β has never sent an invitation
before. (4P)

8
Appendix

You might also like