Reviewed by Editorial Team
The ProProfs editorial team is comprised of experienced subject matter experts. They've collectively created over 10,000 quizzes and lessons, serving over 100 million users. Our team includes in-house content moderators and subject matter experts, as well as a global network of rigorously trained contributors. All adhere to our comprehensive editorial guidelines, ensuring the delivery of high-quality content.
Learn about Our Editorial Process
| By Jo
J
Jo
Community Contributor
Quizzes Created: 2 | Total Attempts: 547
| Attempts: 467 | Questions: 45
Please wait...
Question 1 / 45
0 %
0/100
Score 0/100
1. Functional decomposition takes high-level functionality and breaks it down into several lower-level functions.

Explanation

Functional decomposition is a process used in software engineering and systems analysis to break down a complex system or problem into smaller, more manageable parts. By breaking down high-level functionality into lower-level functions, it becomes easier to understand, design, and implement the system. This approach allows for better organization, modularization, and reusability of code. Therefore, the given statement is true.

Submit
Please wait...
About This Quiz
Ian Is A Cuck - Quiz

Explore principles of software engineering and systems analysis through generalization, functional decomposition, and use case modeling.

Tell us your name to personalize your report, certificate & get on the leaderboard!
2. The trickiest aspect of noun/verb analysis is finding any "hidden" classes.

Explanation

The statement is true because the trickiest part of noun/verb analysis is identifying classes that may not be immediately obvious or apparent. These "hidden" classes can be challenging to identify and categorize, requiring a deeper understanding of the language and its nuances.

Submit
3. Ultimately, all commercial software development serves some business need within a problem domain.

Explanation

Commercial software development refers to the process of creating software for sale or distribution to customers. The purpose of developing commercial software is to fulfill a business need within a specific problem domain. This means that the software is created to address a specific problem or requirement within a particular industry or market. Therefore, it can be concluded that all commercial software development serves some business need within a problem domain.

Submit
4. Good analysis classes should __________ cohesion.

Explanation

Good analysis classes should maximize cohesion. Cohesion refers to the degree to which the elements within a class are related and work together to achieve a common goal. By maximizing cohesion, the analysis classes will have a stronger and more focused purpose, with all the elements working together efficiently. This will lead to better organization, maintainability, and reusability of the code.

Submit
5. Objects collaborate by sending messages to the system:

Explanation

Objects collaborate by sending messages to the system. This means that objects interact with each other by sending messages, which can be requests for information or instructions to perform certain actions. This communication between objects allows them to work together and achieve the desired functionality of the system.

Submit
6. Relationships are semantic connections between things

Explanation

Relationships are semantic connections between things. This means that relationships are not just physical connections, but they also involve the meaning and context between the connected entities. They can be understood and interpreted based on the semantic associations and dependencies between the things involved. Therefore, the statement "Relationships are semantic connections between things" is true.

Submit
7. Which of the following is the only mandatory item for an analysis class:

Explanation

The class name is the only mandatory item for an analysis class because it serves as the identifier for the class and is essential for distinguishing it from other classes. While operations, attributes, and visibility are important aspects of an analysis class, they are not mandatory and can be optional depending on the specific requirements of the analysis.

Submit
8. Which of the following is NOT a visibility specification in UML:

Explanation

In UML, there is no visibility specification called "Global". The visibility specifications in UML are Public, Protected, Package, and Private. "Global" is not a recognized visibility specification in UML.

Submit
9. Generalization requires <<abstract>> actors and use cases.

Explanation

Generalization does not require abstract actors and use cases. Generalization is a concept in object-oriented programming where a class can inherit properties and behaviors from another class. In the context of use cases, generalization refers to the relationship between use cases where one use case inherits the behavior of another use case. This relationship can exist between any type of actors and use cases, not just abstract ones. Therefore, the statement is false.

Submit
10. Concrete operations typically have code defined:

Explanation

Concrete operations typically have code defined. This means that in programming, concrete operations refer to specific actions or functions that are implemented with a specific set of instructions or code. These operations are well-defined and can be executed by the computer. Therefore, the statement "True" indicates that concrete operations do have code defined.

Submit
11. Only abstract operations can be polymorphic.

Explanation

Polymorphism refers to the ability of an object to take on many forms. It allows objects of different classes to be treated as objects of a common superclass. While abstract operations can indeed be polymorphic, it is not limited to them. Polymorphism can also be achieved through other means, such as method overriding or method overloading, which allows different classes to have methods with the same name but different implementations. Therefore, the statement that only abstract operations can be polymorphic is incorrect.

Submit
12. Association names:

Explanation

The given correct answer is "all of the above" because it states that association names in UML diagrams may be prefixed or postfixed with a small black arrowhead, should be a verb or verb phrase, and should be in lowerCamelCase. This means that association names can have a black arrowhead to indicate the direction of the association, they should be descriptive action words or phrases, and they should follow the lowerCamelCase naming convention.

Submit
13. Good analysis classes should __________ coupling.

Explanation

Good analysis classes should minimize coupling. Coupling refers to the degree of interdependence between classes, and minimizing it is a desirable goal in software design. When classes are tightly coupled, changes in one class can have a ripple effect on other classes, making the system more fragile and harder to maintain. On the other hand, when classes are loosely coupled, changes can be made to one class without affecting others, leading to a more flexible and modular system. Therefore, minimizing coupling is important for creating robust and maintainable software.

Submit
14. Which of the following is NOT a general rule of thumb for analysis classes:

Explanation

The given answer "About three to five attributes per class" is NOT a general rule of thumb for analysis classes. In analysis classes, there is no specific limit on the number of attributes that a class should have. The number of attributes in a class can vary depending on the requirements and complexity of the system being analyzed. The other options mentioned in the question, such as "Beware of many very small classes," "Beware of omnipotent classes," "Beware of 'functoids'," and "Beware of few, but very large classes," are general rules of thumb for analysis classes.

Submit
15. An object is defined by:

Explanation

The correct answer is "identity, state, behavior". This is because an object is defined by its identity, which distinguishes it from other objects. It also has a state, which represents the data or information it holds. Lastly, an object has behavior, which refers to the actions or operations it can perform. Together, these three components define the essence of an object.

Submit
16. A constructor would be considered to be in which scope?

Explanation

A constructor is a special method in a class that is used to initialize objects of that class. It is typically defined within the class scope and is used to create and initialize objects of that class. Therefore, a constructor would be considered to be in the class scope.

Submit
17. Generalization of actors and use cases invoke which main principle:

Explanation

The principle of substitutability refers to the ability to replace one object or component with another without affecting the overall functionality or behavior. In the context of actors and use cases, this principle implies that different actors can be substituted for each other, or different use cases can be substituted for each other, as long as they fulfill the same role or provide the same functionality. This allows for flexibility and adaptability in the system design, as changes can be made without impacting the overall structure and functionality.

Submit
18. Analysis classes will:

Explanation

Analysis classes are a type of class used in software development to understand and define the problem domain. They are focused on capturing the requirements and functionalities of the system without considering the specific implementation details. By avoiding implementation details, analysis classes can provide a high-level view of the system, making it easier to communicate and understand the overall design. This allows for flexibility in the implementation phase, as the specific details can be determined later during the design and development stages.

Submit
19. The THREE pillars of OO systems are:(right minus wrong)

Explanation

The correct answer is Polymorphism, Inheritance, and Encapsulation. These three pillars are fundamental concepts in object-oriented systems. Polymorphism allows objects of different classes to be treated as objects of a common superclass, providing flexibility and reusability. Inheritance enables the creation of new classes based on existing ones, inheriting their properties and behaviors. Encapsulation ensures that the internal details of an object are hidden and can only be accessed through defined interfaces, promoting data security and code maintainability. Analysis classes and Use Cases are not pillars of OO systems, making them incorrect options.

Submit
20. In order for an object to be a member of a particular class it must have:

Explanation

For an object to be a member of a particular class, it must have the same state structure and implement the same behaviors. This means that the object should have the same set of attributes and methods as defined by the class. The state structure refers to the variables and their types that make up the object's state, while behaviors refer to the methods or functions that define the object's actions. Having the same state structure and behaviors ensures that the object can be treated as an instance of the class and can interact with other objects of the same class in a consistent and predictable manner.

Submit
21. Which of the following can not be part of an association.

Explanation

The scope of an association refers to the visibility or accessibility of the association from different parts of the system. It determines which classes or objects can access the association. While the other options (name, multiplicity, navigability, and role name) are all valid components of an association, the scope is not. The scope is typically associated with the visibility of attributes or methods within a class, not with the association itself. Therefore, scope cannot be part of an association.

Submit
22. Two classes can not have multiple independent associations between them.

Explanation

This statement is false because two classes can indeed have multiple independent associations between them. In object-oriented programming, classes can have multiple relationships with each other, including associations. These associations can be one-to-one, one-to-many, or many-to-many. Each association represents a separate and independent relationship between the classes involved. Therefore, it is possible for two classes to have multiple independent associations between them.

Submit
23. UP analysis workflow comprises which of the following items except:

Explanation

The UP analysis workflow includes various activities such as architectural analysis, analyzing a package, and analyzing a use case. However, analyzing an interface is not a part of the UP analysis workflow. Interface analysis is usually performed during the design phase rather than the analysis phase. It involves defining the methods, attributes, and relationships of an interface to ensure proper communication and interaction between different components of a system.

Submit
24. To create hierarchies and networks in a class model you need to introduce which kind of association:

Explanation

In a class model, a reflexive association is needed to create hierarchies and networks. A reflexive association refers to a relationship where an object is associated with itself. This allows for the representation of hierarchical structures and interconnected networks within the class model. By using a reflexive association, objects can be linked to other objects of the same class, enabling the creation of complex relationships and hierarchies.

Submit
25. Class A is a generalization of Class B. Select all statements that are true (right minus wrong):

Explanation

The correct answer is: Class B is a subclass of Class A, Class A is more general than Class B, Class B is more specialized than Class A.

A generalization in object-oriented programming refers to a relationship where one class (the superclass) is more general and another class (the subclass) is more specific. In this case, Class A is a generalization of Class B, which means that Class B is a subclass of Class A. Therefore, the statement "Class B is a subclass of Class A" is true. Additionally, since Class A is more general than Class B, the statement "Class A is more general than Class B" is also true. Finally, since Class B is more specific than Class A, the statement "Class B is more specialized than Class A" is true as well.

Submit
26. Use case modeling should focus on:

Explanation

Use case modeling should focus on what the actors need the system to do. This means that the main objective of use case modeling is to identify and describe the specific actions and functionalities that the system should provide in order to meet the needs and requirements of the actors or users. It involves understanding the interactions between the actors and the system, and capturing these interactions in the form of use cases. By focusing on what the actors need, use case modeling helps to ensure that the system is designed and developed to meet the actual requirements and expectations of the users.

Submit
27. Links are instances of ______________ like objects are instances of classes.

Explanation

In object-oriented programming, objects are instances of classes, meaning they are created based on the blueprint provided by the class. Similarly, links can be seen as instances of associations. Associations represent the connections or relationships between objects. Therefore, the correct answer is "associations."

Submit
28. Given a unidirectional association from class A to class B, which of the following statements are true (select all that apply):

Explanation

In a unidirectional association from class A to class B, it means that class A has a reference to class B but class B does not have a reference to class A. Therefore, A to B is navigable because class A can access class B. On the other hand, B to A is not navigable because class B does not have a reference to class A and cannot access it.

Submit
29. When using advanced features for use case modeling, which of the following are true statements (select all that apply; right minus wrong):

Explanation

The correct answer is stakeholders have great difficulty with extend relationships because extend relationships can make the use case model more complex and harder to understand for stakeholders. Additionally, generally, all stakeholders can easily understand actors and use cases is also a true statement because actors and use cases are fundamental components of use case modeling and are designed to be easily understandable by stakeholders.

Submit
30. Functional decomposition is good for use case modeling.

Explanation

Functional decomposition is not specifically designed for use case modeling. Functional decomposition is a technique used in system analysis and design to break down a complex system into smaller, more manageable parts. It helps in understanding the system's functionality and relationships between different components. While use case modeling is a technique used to capture and represent the interactions between actors and a system, it does not necessarily rely on functional decomposition. Therefore, the statement that functional decomposition is good for use case modeling is false.

Submit
31. Match the use case stereotyped relationship to its semantics.
Submit
32. Generalization forms a high degree of ____________ between two classes (select the best answer to fill in the blank).

Explanation

Coupling refers to the degree of interdependence between two classes. In the context of generalization, coupling represents the level of dependency between the superclass and its subclasses. When a superclass is highly coupled with its subclasses, any changes made to the superclass may have a significant impact on the subclasses. Therefore, coupling in generalization can be seen as a measure of how closely related and dependent the superclass and subclasses are to each other.

Submit
33. Select the THREE main RUP stereotypes used on analysis-level classes that also support the MVC architecture:

Explanation

The RUP (Rational Unified Process) is a software development methodology that follows the Model-View-Controller (MVC) architecture. In this architecture, the model represents the data and business logic, the view represents the user interface, and the controller handles the communication between the model and the view. The stereotypes used on analysis-level classes that also support the MVC architecture are entity, control, and boundary. The entity stereotype represents the data model, the control stereotype represents the business logic and control flow, and the boundary stereotype represents the user interface and communication with external systems.

Submit
34. Select all the elements that association classes can have:

Explanation

Association classes are used to represent relationships between classes in object-oriented programming. They can have associations, which define the relationship between the classes involved. The name of the association class is also an important element as it helps in identifying and distinguishing it from other classes. Additionally, association classes can have attributes, which represent the properties or characteristics of the relationship, and operations, which define the behavior or actions associated with the relationship. Therefore, the correct answer includes all these elements.

Submit
35. Deep inheritance trees provide well defined structure that lead to good analysis classes.

Explanation

Deep inheritance trees do not necessarily provide well-defined structures that lead to good analysis classes. In fact, deep inheritance trees can often lead to complex and convoluted code, making it harder to understand and maintain. It is generally recommended to keep inheritance trees shallow and use composition or other design patterns to achieve better code organization and maintainability.

Submit
36. If a Customer actor is a generalization of a Sales Agent actor then:

Explanation

If a Customer actor is a generalization of a Sales Agent actor, it means that Customer inherits all the attributes and behaviors of Sales Agent. Therefore, Customer can trigger all the use cases connected to Sales Agent because it has all the capabilities and functionalities of a Sales Agent. This indicates that the use cases of Customer and Sales Agent are not independent of one another, as Customer can perform all the actions that a Sales Agent can perform.

Submit
37. In UML object notation every object element has 3 things:

Explanation

In UML object notation, every object element does not have just 3 things. UML object notation includes various elements such as attributes, operations, associations, and more. These elements help to define the structure and behavior of an object in a UML diagram. Therefore, the given statement is false.

Submit
38. Select the TWO key artifacts of an Analysis model (right minus wrong):

Explanation

The analysis model is a representation of the system requirements and design at a high level. It focuses on understanding the problem domain and identifying the key elements and interactions. Analysis classes are the key artifacts that represent the essential entities and their attributes and behaviors in the system. Use case realizations, on the other hand, depict how the use cases are implemented in the system and provide a detailed view of the system's behavior. Therefore, analysis classes and use case realizations are the two key artifacts of an analysis model.

Submit
39. Select the elements that are inherited with generalization:

Explanation

In object-oriented programming, generalization is a concept where a class inherits the properties and behaviors of another class. In this context, the elements that are inherited with generalization are operations, stereotypes, attributes, and relationships.

Operations refer to the methods or functions that can be performed on an object. Stereotypes are used to categorize classes and provide additional information about their purpose or behavior. Attributes are the properties or characteristics of an object. Relationships represent the associations or connections between different classes. Names, on the other hand, are not inherited through generalization as they are specific to each individual class.

Submit
40. Which of the following are approaches for discovering analysis classes (select all that apply):

Explanation

CRC Analysis, RUP Stereotypes, and Noun/Verb Analysis are all approaches for discovering analysis classes.

CRC Analysis involves identifying the classes based on their responsibilities, collaborations, and classes.

RUP Stereotypes is a technique used in the Rational Unified Process (RUP) methodology to classify classes based on their characteristics and behaviors.

Noun/Verb Analysis involves analyzing the system requirements and identifying classes based on the nouns (objects) and verbs (actions) present in the requirements.

UP Workflows and SEP Phases are not approaches specifically used for discovering analysis classes, so they are not applicable in this context.

Submit
41. An object diagram is a snapshot of a collective of collaborating classes

Explanation

An object diagram is not a snapshot of a collective of collaborating classes. Instead, it represents a specific instance of a class or classes at a particular point in time. It shows the objects and their relationships, but it does not capture the collaboration between classes.

Submit
42. Which of the following is NOT part of a first-cut analysis class model:  

Explanation

A first-cut analysis class model is an initial representation of the classes and their relationships in a system. It helps in understanding the structure of the system and identifying key responsibilities and collaborations. The model includes three to five responsibilities per class, collaborating classes with associations among them, key attributes defined for classes, and stereotypes defined on classes. However, data types and default values for all class attributes are not typically included in a first-cut analysis class model. This level of detail is usually added in later stages of the modeling process.

Submit
43. The nouns of Noun/Verb Analysis are focused on discovering which of the following (select all that apply):

Explanation

In Noun/Verb Analysis, the focus is on discovering the attributes and classes. Attributes refer to the characteristics or properties of a noun, while classes refer to the categories or groups that nouns belong to. This analysis helps in understanding the structure and organization of the nouns in a system or domain.

Submit
44. Match the multiplicity to its meaning.
Submit
45. Identify whether each item on the left is an input or output of the "analyze a use case" process, or whether it is not applicable to the process.
Submit
View My Results

Quiz Review Timeline (Updated): Mar 20, 2023 +

Our quizzes are rigorously reviewed, monitored and continuously updated by our expert board to maintain accuracy, relevance, and timeliness.

  • Current Version
  • Mar 20, 2023
    Quiz Edited by
    ProProfs Editorial Team
  • Dec 13, 2017
    Quiz Created by
    Jo
Cancel
  • All
    All (45)
  • Unanswered
    Unanswered ()
  • Answered
    Answered ()
Functional decomposition takes high-level functionality and breaks it...
The trickiest aspect of noun/verb analysis is finding any...
Ultimately, all commercial software development serves some business...
Good analysis classes should __________ cohesion.
Objects collaborate by sending messages to the system:
Relationships are semantic connections between things
Which of the following is the only mandatory item for an analysis...
Which of the following is NOT a visibility specification in UML:
Generalization requires <<abstract>> actors and use cases.
Concrete operations typically have code defined:
Only abstract operations can be polymorphic.
Association names:
Good analysis classes should __________ coupling.
Which of the following is NOT a general rule of thumb for analysis...
An object is defined by:
A constructor would be considered to be in which scope?
Generalization of actors and use cases invoke which main principle:
Analysis classes will:
The THREE pillars of OO systems are:(right minus wrong)
In order for an object to be a member of a particular class it must...
Which of the following can not be part of an association.
Two classes can not have multiple independent associations between...
UP analysis workflow comprises which of the following items except:
To create hierarchies and networks in a class model you need to...
Class A is a generalization of Class B. Select all statements...
Use case modeling should focus on:
Links are instances of ______________ like objects are instances of...
Given a unidirectional association from class A to class B, which of...
When using advanced features for use case modeling, which of the...
Functional decomposition is good for use case modeling.
Match the use case stereotyped relationship to its semantics.
Generalization forms a high degree of ____________ between two classes...
Select the THREE main RUP stereotypes used on analysis-level classes...
Select all the elements that association classes can have:
Deep inheritance trees provide well defined structure that lead to...
If a Customer actor is a generalization of a Sales Agent actor then:
In UML object notation every object element has 3 things:
Select the TWO key artifacts of an Analysis model (right minus wrong):
Select the elements that are inherited with generalization:
Which of the following are approaches for discovering analysis...
An object diagram is a snapshot of a collective of collaborating...
Which of the following is NOT part of a first-cut analysis class...
The nouns of Noun/Verb Analysis are focused on discovering which of...
Match the multiplicity to its meaning.
Identify whether each item on the left is an input or output of the...
Alert!

Advertisement