SEN721S - SOFTWARE ENGINEERING 2 - 2ND OPP - JAN 2020


SEN721S - SOFTWARE ENGINEERING 2 - 2ND OPP - JAN 2020



1 Page 1

▲back to top


NAMIBIA UNIVERSITY
OF SCIENCE AND TECHNOLOGY
FACULTY OF COMPUTING AND INFORMATICS
DEPARTMENT OF COMPUTER SCIENCE
QUALIFICATION: BACHELOR OF COMPUTER SCIENCE, BACHELOR OF INFORMATICS
QUALIFICATION CODE: 07BACS,07BAIF
LEVEL: 7
COURSE: SOFTWARE ENGINEERING 2
|
COURSE CODE: SEN721S
DATE: JANUARY 2020
PAPER: THEORY
DURATION: 2 HRS
MARKS: 50
SUPPLEMENTARY/ SECOND OPPORTUNITY EXAMINATION QUESTION PAPER
EXAMINER(S)
Mr. STEVEN UATUAROMUINJO TJIRASO
MODERATOR:
Ms. VALERIE GARISES
INSTRUCTIONS
1.
Answer all questions.
2
Please, ensure that your writing is legible, neat and presentable.
3.
When answering questions you should be led by the allocation of marks.
4
Clearly mark rough work as such or cross it out unambiguously in ink.
PERMISSIBLE MATERIALS
1. Calculator
THIS QUESTION PAPER CONSISTS OF 3 PAGES (Including this front page)

2 Page 2

▲back to top


Question 1 [5 Marks]
Lid.
Which of the following is a valid declaration of an abstract method?
[1 Mark]
a) public abstract double calculateArea();
b) abstract public double calculateArea();
c) public double abstract calculateArea();
d) none of the above
1.2. In UML diagrams, relationships have multiplicities associated with a given relationship. What does
the multiplicity 0..1 mean?
[ 1 Mark]
a) Exactly one
b) Zero or One
c) Zero or More
d) None of the above
1.3. Which of the following is true about the concept of “interface” in the context of object
orientation?
[1 Mark]
a) It can be inherited
b) Aninterface can be instantiated
c) An interface is a 100% abstract superclass which define a set of methods its subclasses must
support
d) None of the above
1.4.
Which UML diagram shows interactions between roles/actors and the system?
[1 Mark]
a) Class diagram
b) Sequence diagram
c) Use case diagram
d) None of the above
1.5. A component model is a definition of standards for component implementation, documentation
and deployment. Which of the following is an example of a component model.
[1 Mark]
a) State diagram
b) Class model
c) Use case
d) None of the above

3 Page 3

▲back to top


Question 2 [25 Marks]
2.1
Consider a use case called “Enrol for SEN721S” below for enrolling for Software Engineering
2(SEN721S) on the eLearning platform. Draw a use case diagram for the Enrol for SEN721S use
case below.
[13 Marks]
Use Case— Enrol for SEN721S
1. Login onto elearning
2. Search for SEN721S by entering course code
3. Select SEN721S
4. Enter Enrolment key
5. Select Enrol me
6. logout
2.2
Differentiate between generalization and specialization in the context of object orientation
concept.
[4 Marks]
2.3
Given the relationships below, answer the questions that follows.
a) Identify this type of relationship ...........
[1 Mark]
Student
OO
Exam
-NumOfPapers - int
b) Identify this type of relationship ...........
[1 Mark]
Student
o—___
StudentHand
-NumOfFingers :; int
c) Differentiate between Aggregation and composition.
[6 Marks]
Question 3 [10 Marks]
3.1 You are tasked with implementing a software project from existing components, briefly
provide key Component Based Software Engineering (CBSE) problems that you may
encounter?
[4 Marks]
3.2
Briefly define a software component.
[2 Marks]
3.3
Briefly describe The Common Closure Principle (CCP).
[2 Marks]
3.4
Define the Dependency Inversion Principle (DIP).
[2 Marks]
Question 4 [10 Marks]
4.1
Discuss any three (3) characteristic of an effective design pattern.
[6 Marks]
4.2
Briefly discuss the four (4) Ps of effective project management.
[4 Marks]
~END~

4 Page 4

▲back to top


NAMIBIA UNIVERSITY
OF SCIENCE AND TECHNOLOGY
FACULTY OF COMPUTING AND INFORMATICS
DEPARTMENT OF COMPUTER SCIENCE
QUALIFICATION: BACHELOR OF COMPUTER SCIENCE, BACHELOR OF INFORMATICS
QUALIFICATION CODE: 07BACS,07BAIF
LEVEL: 7
COURSE: SOFTWARE ENGINEERING 2
COURSE CODE: SEN721S
DATE: NOVEMBER 2019
PAPER: THEORY
DURATION: 2 HRS
MARKS: 50
EXAMINER(S)
FIRST OPPORTUNITY EXAMINATION QUESTION PAPER
Mr. STEVEN UATUAROMUINJO TJIRASO
MODERATOR:
Ms. VALERIE GARISES
INSTRUCTIONS
1.
Answer all questions.
2
Please, ensure that your writing is legible, neat and presentable.
3,
When answering questions you should be led by the allocation of marks.
4
Clearly mark rough work as such or cross it out unambiguously in ink.
PERMISSIBLE MATERIALS
1. Calculator
THIS QUESTION PAPER CONSISTS OF 4 PAGES (Including this front page)

5 Page 5

▲back to top


‘Question 1 [5 Marks]
1.1. Which of the following is not one of the fundamental concepts of object orientation?
[1 Mark]
a) Encapsulation
b) Abstraction
c) Exception
d) Inheritance
1.2. Given a sample code snippet below, which object oriented concept is indicated by the sample
snippet?
[1 Mark]
public class PartTimeStudent extends Student {......}
a) Abstraction
b) Encapsulation
c) Inheritance
d) None of the above
1.3. Consider the class diagram below for modelling a Student object in your application, why are
classes often organized in a hierarchical manner?
[1 Mark]
Student
FullTimeStudent
PartTimeStudent
a) Enable classes in the higher hierarchies to inherit all variables(static attributes) and
methods(dynamic behaviours) from classes in the lower hierarchies
b) Avoid duplication and reduce redundancy
c) Avoid inheritance
d) None of the above

6 Page 6

▲back to top


1.4.
Which UML diagram shows how the system reacts to internal and external events?
a) Class diagram
b) Sequence diagram
c) State diagram
d) Use case diagram
[1 Mark]
1.5. A component model is a definition of standards for component implementation, documentation
and deployment. Which of the following is an example of a component model.
[1 Mark]
a) EJB model (Enterprise Java Beans)
b) Class model
c) Use case
d) None of the above
Question 2 [25 Marks]
2.1
Define object orientation concept? And how does it differ from the traditional procedural
approach?
[3 Marks]
2.2
Consider the scenario below and answer the questions that follows.
The Electoral Commission of Namibia (ECN) want an online voter registration system to enable
prospective voters to register online. Voter’s Information such as name, identification
number, date of birth, citizenship and constituency should be captured by the system. The
registration officer (RO) is responsible for verifying the captured records by viewing the
records and also, he/she should be able to print reports of registered voters. To access the
system, users should be able to register with the system. You are hired to develop this online
voter registration system to replace the existing system.
a) Identify two (2) actors who will be interacting with the online voter registration system
above.
[2 Marks]
b) Identify and describe one use case for each actor identified in (a) above.
[4 Marks]
c) Draw ause case diagram for the online voter registration system.
[6 Marks]

7 Page 7

▲back to top


d) Draw a class diagram for the online voter registration system clearly showing at least two
variables (static attributes), at least two methods (dynamic behaviours) and
generalization.
[9 Marks]
2.3
Considering your UML class diagram in 2.2(d), how would your model incorporate
encapsulation?
[1 Mark]
Question 3 [10 Marks]
3.1
Define Component Based Software Engineering (CBSE) approach and what solution did
Component Based Software Engineering (CBSE) provide that Object Oriented development
did not offer?
[3 Marks]
3.2
Consider the scenario below and answer the questions that follows.
[6 Marks]
Namibia University of Science and Technology want to add an additional module to the ITS
system. As a Software Engineer, you are considering using existing components to achieve
this. Discuss any three key characteristics you would consider.
3.3
Briefly describe The Liskov Substitution Principle (LSP).
[1 Mark]
Question 4 [10 Marks]
4.1
Discuss the three(3) ’parts or elements” of a design pattern.
[6 Marks]
4,2
Differentiate between a nongenerative and a generative pattern?
[4 Marks]
~END~