0% found this document useful (0 votes)
770 views

Seg 2105 Sample Exam MC Questions

The document provides a series of multiple choice questions and answers to help students practice for an exam on SEG2105. It includes 17 questions related to topics like software architecture, project management, testing techniques, modeling diagrams, and software development processes. The answers are provided in separate PDF files linked in the document.

Uploaded by

Meenal Ingulkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
770 views

Seg 2105 Sample Exam MC Questions

The document provides a series of multiple choice questions and answers to help students practice for an exam on SEG2105. It includes 17 questions related to topics like software architecture, project management, testing techniques, modeling diagrams, and software development processes. The answers are provided in separate PDF files linked in the document.

Uploaded by

Meenal Ingulkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

The following is a series of multiple-choice questions in the style typically found in

SEG2105 exams. This is provided to help students practice answering multiple-choice


questions, and to review for the exam.

Questions are found in a file called SEG2105SampleExamMCQuestions.pdf and answers


are in a file SEG2105SampleExamMCAnswers.pdf

1. Which of the following is false regarding cohesion?


a) You can only organize a group of modules using one of the types of cohesion
b) Functional cohesion is generally stronger than communicational cohesion
c) Communicational cohesion relates to organizing based on type of data
d) Higher cohesion is better
e) Cohesion can be also called organizedness
Answer a because you can for example arrange for each module to be a function, but
group several of them using a different cohesion criteria.

2. Reliability can be measured as


a) The number of defects
b) The frequency of failures
c) The frequency of errors
d) The percentage of time that an application is available
e) 100 minus percent of defects found in testing
Answer b

3. Which o the following architectural patterns should be employed in virtually every


software system?
a) Client-Server
b) Layered Architecture
c) Service-Oriented Architecture
d) Pipe-And-Filter
e) Transaction Processing
Answer b

4. Which of the following would not be a key task of a software project manager?
a) Co-ordinating with the managers of other teams
b) Giving advice about the software architecture
c) Designing the database
d) Ensuring the developers have the right tools and technology
e) Helping to resolve conflicts among developers
Answer c
5. Using equivalence classes to design tests helps improve what?
a) The efficiency of the testing process
b) The coverage of nodes in the flow graph
c) The reusability of the system
d) The ability to find defects relating to timing, such as critical races
e) The ability to find defects relating to stress, such as crashes in a heavily loaded system
Answer a

6. Which of the following is a multi-level certification for an organizations software


process, where you receive higher levels of certification, as the organization gets better?
a) ISO 9000 series
b) IS) 9000-2
c) PSP
d) TSP
e) CMMi
Answer e. Note that in the book and notes it says CMM, but I said in class the up-to-date
term is CMMi

7. What is the keyword used in a sequence diagram to indicate iteration


a) opt
b) loop
c) repeat
d) while
e) fragment
Answer b

8. Which kind of UML diagram describes how code is arranged into directories?
a) Deployment
b) Component
c) Communication
d) State
e) Package
Answer e

9. According to the professor, the waterfall model of software development


a) Became widely used largely due to a journalists misinterpretation of what an expert
said
b) Should never be used in software projects today
c) Was the basis for military software development standards in the US for many years
d) All of the above
e) Two of the above
Answer d. Note that this knowledge was discussed in the lectures, not the book
10. Which of the following is false regarding a use case?
a) It should describe in detail an aspect of the user interface of the system
b) It should have a series of steps, some done by the system and some by an actor
c) It should have a name
d) It appears as an ellipse in a use case diagram
e) It can help in planning development
Answer a

11. In livelock, which of the following is true?


a) The system will be completely frozen and will consume no CPU time
b) The system will be completely frozen and will always use as much CPU time as it can
obtain
c) The system will be unable to reach certain states
d) The system will crash after a short period of time
e) More than one of the above is always true
Answer c. The others may be true, but not always

12. The Delphi technique is:


a) A method for calculating costs algorithmically
b) An approach to object-oriented modeling
c) A strategy for ensuring that the right number of people work on a project team
d) An approach for combining cost estimates from different estimators
e) None of the above
Answer d. This would have required reading the book, but the answer can be readily
found in the open book exam if needed. We did not mention this in class

13. When should code inspection be performed if you are using test-driven development?
a) As soon as the code is written, but before the automated tests are first run
b) As soon as possible after most of the automated tests have passed
c) After most automated and manual tests have passed
d) After all testing is complete
e) On any code after a test fails and the defect is in that code

Answer b. This was covered in the lecture. If you just refer to the book, you may be
inclined to answer a since the book says to do inspection before testing, but in the lecture
I pointed out that in test-driven development you run automated tests and these should
always be run as soon as any change is made to the code.
14. Control coupling exists in OCSF. Which of the following changes would reduce it?
a) Changing the client and server so they use the Observer pattern
b) Changing from a client-server to a peer-to-peer architecture
c) Passing commands to the server as method names that are executed directly on the
server, rather than interpreting a command string in handleMessageFromClient
d) Inserting a broker between the client and the server to send different commands to
different servers
e) None of the above
Answer c. You would not want to do this, since it would result in a security vulnerability
(anybody could execute arbitrary methods in your server) but it would reduce control
coupling.

15. In a state diagram, the behavior while in a state is defined by


a) The set of incoming transitions
b) The set of self transitions
c) The set of outgoing transitions
d) The set of events that the state does not respond to
e) Three of the above
Answer c

16. Which form of coupling can be effectively reduced by the delegation pattern?
a) External coupling
b) Data coupling
c) Stamp coupling
d) Routine call coupling
e) Functional coupling
Answer d.

17. Affordance is:


a) The cost of software for the consumer
b) The value of a software development contract
c) The set of operations a user can do
d) A situation in which the UI restricts what the user can do
e) None of the above

Answer c.

You might also like