KEMBAR78
Section A - Multiple Choice (Circle The Correct Answer) | PDF | Use Case | Unified Modeling Language
0% found this document useful (0 votes)
17 views10 pages

Section A - Multiple Choice (Circle The Correct Answer)

The document consists of multiple sections including multiple choice questions, true/false statements, and short answer questions related to software engineering and UML diagrams. Key concepts covered include the purpose of modeling, types of UML diagrams, roles in software projects, and the importance of requirements elicitation. Additionally, it discusses methods for managing complexity and differentiates between functional and nonfunctional requirements.

Uploaded by

tarunjoseph17
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)
17 views10 pages

Section A - Multiple Choice (Circle The Correct Answer)

The document consists of multiple sections including multiple choice questions, true/false statements, and short answer questions related to software engineering and UML diagrams. Key concepts covered include the purpose of modeling, types of UML diagrams, roles in software projects, and the importance of requirements elicitation. Additionally, it discusses methods for managing complexity and differentiates between functional and nonfunctional requirements.

Uploaded by

tarunjoseph17
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/ 10

SECTION A: MULTIPLE CHOICE (Circle the correct

answer)
1. What is the main purpose of modeling in software engineering?​
A) Increase software speed​
B) Help programmers memorize code​
C) Manage complexity by simplifying understanding​
D) Avoid user interaction

Answer: C​
Explanation: Modeling helps reduce complexity by abstracting important parts of
the system, allowing developers to focus on what matters at each phase.

2. Which UML diagram best represents the interaction between objects over time?​
A) Use Case Diagram​
B) Class Diagram​
C) Sequence Diagram​
D) Activity Diagram

Answer: C​
Explanation: Sequence diagrams are used for dynamic modeling and show object
interactions in time sequence.

3. In a UML diagram, which relationship means "a part of" where the part can exist
independently?​
A) Dependency​
B) Aggregation​
C) Composition​
D) Generalization

Answer: B​
Explanation: Aggregation represents a “has-a” relationship where parts can exist
on their own (e.g., a car and its tires).

4. What is the first activity in the software development process?​


A) Design​
B) Testing​
C) Requirements Elicitation​
D) Implementation

Answer: C​
Explanation: Requirements elicitation comes first and helps define what the
customer wants.

5. Which of the following is NOT a key role in a software project?​


A) Project Manager​
B) Control Object​
C) Developer​
D) Client

Answer: B​
Explanation: Control objects are part of object modeling, not a project team role.

SECTION B: TRUE/FALSE (Write T or F)


6. A class diagram represents the dynamic behavior of a system.

False – Class diagrams show static structure, not dynamic behavior.

7. Generalization in UML refers to inheritance between classes.

True – Generalization models an “is-a” relationship, like inheritance.

8. Adding more developers to a late project will always reduce delivery time.

False – According to Brooks' Law, it can actually delay the project more.

9. A use case is a type of object diagram.

False – A use case diagram is a functional diagram showing user interactions.

10. The main goal of requirements elicitation is to understand what the customer wants.

True – This phase captures customer needs before design begins.

SECTION C: SHORT ANSWER


11. Name and briefly explain the three ways to deal with complexity in software
engineering.

Answer:

1.​ Abstraction – Focus on high-level concepts and hide low-level details.​

2.​ Decomposition – Break the system into smaller, manageable parts.​

3.​ Hierarchy – Organize components in layers or levels.​

12. What is the difference between functional and nonfunctional requirements? Give an
example of each.

Answer:

●​ Functional Requirements: Define what the system should do (e.g., “The


user can log in”).​

●​ Nonfunctional Requirements: Define how the system should behave (e.g.,


“The system must respond within 2 seconds”).​

13. What are control objects in object modeling?

Answer:​
Control objects manage the flow of a use case. They coordinate between entity
objects (data) and boundary objects (user interfaces). Think of them as the “brains”
behind a scenario.

SECTION D: UML/ANALYSIS EXERCISE


14. Scenario (Campus Housing System)

Owners list apartments. Students search and contact owners. Owners can delete listings.
Students use filters like budget and location.

🖼️ Draw a UML Use Case Diagram (hand-drawn or software allowed)


Actors:

●​ Student​

●​ Apartment Owner​

Use Cases:

●​ Fill Out Listing​

●​ Search Apartments​

●​ Contact Owner​

●​ Delete Listing​

✏️ [Your drawing should include Student connected to “Search” and “Contact,” and
Owner connected to “Fill Out” and “Delete.” All use cases go inside the system
boundary.]

15. Fill in the Use Case Table (for "Search Apartments")


Field Description

Use Case Name Search Apartments

Actors Student

Flow of Events Student inputs preferences → System filters listings → Shows


matching apartments

Entry Condition Student has access to search page

Exit Condition Matching results displayed or "no results" message

Quality Must return results within 2 seconds; support mobile access


Requirements

16. Abbott’s Technique Example

Sentence: “The user can create an account, login, and update their profile.”
Answer:

●​ Nouns → user, account, profile → classes​

●​ Verbs → create, login, update → methods​

●​ Adjectives (if any, like "registered") → attributes

SECTION A: MULTIPLE CHOICE


1. What does the term “software engineering” primarily emphasize?​
A) Writing code as fast as possible​
B) Designing simple games​
C) Building software systematically under constraints​
D) Creating beautiful user interfaces

2. Which UML diagram helps visualize user goals and how the system supports them?​
A) Class Diagram​
B) Use Case Diagram​
C) Sequence Diagram​
D) Deployment Diagram​

B

3. In object modeling, what are entity objects responsible for?​


A) Representing system interfaces​
B) Coordinating logic between parts​
C) Representing persistent information (e.g., data)​
D) Providing animation support​

C

4. Which is a valid reason for using UML in software engineering?​


A) It replaces the need to code​
B) It increases the number of lines of code​
C) It provides a standard way to visualize system design​
D) It is required for Agile

5. What does the COCOMO model estimate?​


A) Diagram accuracy​
B) Software cost/effort​
C) User interface quality​
D) Communication patterns​

B

SECTION B: TRUE/FALSE
6. The realization relationship in UML connects an interface to the class that implements
it.

true

7. A boundary object is used to represent core business logic in a system.

false

8. Project success relies heavily on effective communication among stakeholders.

true

9. Nonfunctional requirements define what the system should do.

false

10. Aggregation is stronger than composition in UML.

false

SECTION C: SHORT ANSWER


11. What are the key benefits of using a project plan in software engineering? List at least
two.

12. What is the difference between a dependency and an association in UML?

13. Explain what use case diagrams are and how they are helpful during requirements
elicitation.

SECTION D: DIAGRAM & OBJECT MODELING


14. Use Abbott’s Technique to extract objects from this sentence:​
“Drivers use the system to reserve parking spots in advance and update vehicle details.”

15. Given the following situation, identify actors and use cases, and draw a Use Case
Diagram:

A gym software system allows trainers to log sessions with clients. Clients can view their
progress and schedule sessions.

✅ ANSWER KEY & EXPLANATIONS


✅ MULTIPLE CHOICE
1. C

Software engineering means applying engineering principles to build software


under constraints like time, budget, and changing requirements.

2. B

Use Case Diagrams show system functions from the user's point of view.

3. C
Entity objects hold and manage data, often tied to database records.

4. C

UML is a standardized visual language for modeling systems clearly.

5. B

COCOMO estimates the effort (in person-months) needed based on Lines of Code.

✅ TRUE/FALSE
6. True

Realization indicates a class implements an interface (e.g., Java’s implements).

7. False

That’s an entity object. A boundary object handles system interaction (like UI).

8. True

Poor communication is a top cause of project failure.

9. False

Functional = what system does; Nonfunctional = how well it performs (e.g., speed,
security).

10. False

Composition is stronger than aggregation; the part cannot exist without the whole.

✅ SHORT ANSWER
11. Key benefits of a project plan:

●​ Helps manage scope, schedule, and resources.​

●​ Clarifies team responsibilities and deadlines.​

●​ Enables tracking progress and identifying risks early.​


12. Dependency vs Association:

●​ Dependency is a weaker relationship showing one class uses another temporarily.​

●​ Association is a structural link, often bi-directional, between class instances.​

13. Use Case Diagrams:​


These diagrams show what users (actors) can do with the system. During requirements
elicitation, they help stakeholders visualize and agree on system goals.

✅ OBJECT MODELING
14. Abbott’s Technique

Sentence: “Drivers use the system to reserve parking spots in advance and update vehicle
details.”

●​ Nouns (objects): Driver, System, Parking Spot, Vehicle​

●​ Verbs (methods): reserve, update​

●​ Adjectives (attributes): advance → reservation time, vehicle details → license, color,


model​

15. Use Case Diagram – GYM SYSTEM

Actors:

●​ Trainer​

●​ Client​

Use Cases:
●​ Log Session (Trainer)​

●​ View Progress (Client)​

●​ Schedule Session (Client)​

🖼️ Diagram Description:
●​ Trainer → (Log Session)​

●​ Client → (View Progress), (Schedule Session)​


All use cases are within a system boundary box.​

You might also like