An Advanced Software Development Patterns Practice Test assesses knowledge of software architecture and design. It covers canonical model structures, refinement relationships, and documentation practices, providing insights into abstract system perspectives.
A type that appears in one model also appears in another.
Defines the correspondence between two models to show consistency
Allows one to carry constraints from one model to another
Both a and c
Both b and c
Rate this question:
Models of design.
Different perspectives.
Very high-level representations of the system.
Both a and b
Both a and c
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
The domain is too simple to bother modeling.
Domain modeling is open-ended and is a never-ending analysis task.
The domain is irrelevant to your architecture choices.
The best way to learn the domain is incrementally.
It is someone else’s job to do requirements.
Rate this question:
It takes too long to create the diagrams.
Good UML tools are too expensive.
It is not a language known by most non-developers.
Its use is incompatible with the goals of domain modeling.
The diagrams require you to include too much detail.
Rate this question:
Can be used to model the structure of a system.
Is similar to natural language in its support for modeling systems
Can be used to model the relationships in the domain.
Is a language that is understood by most non-technical people.
Is good for describing invariants in a model.
Rate this question:
Structure
Behavior
The way people will use the system
Both a and b
Both a and c
Rate this question:
Both a and b
A deployment view shows how the system is installed in the target environment.
A deployment view shows how the system interacts with its environment.
A deployment view shows where process will run and how they will interact.
Both a and c
Components describe units of code
Connectors are pathways of runtime interaction.
A module is associated with exactly one component.
Design decisions are clearly identifiable in views
Views always describe subsystems.
Rate this question:
Describes how the software being created interacts with elements in its environment.
Can be based on a use case diagram.
Might show the Internet.
Describes what is in and what is outside the scope of the software project.
All of a-d
Only a and d
Rate this question:
Component and Connector, Designation, and Module
Runtime, Documentation, and Miscellaneous
Component, Module, Deployment
Component, Allocation, Module
Runtime, Allocation, Module
Rate this question:
Built in the pipe and filter style
Is designed to allow new code to be inserted easily
Was designed with few constraints to support the system’s performance goals
A web server
Was designed around the goal of modifiability
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
Something to worry about.
A cause of failure.
A chance of failure.
A primary driver of architecture.
Rate this question:
An internals diagram
A context diagram
A sequence diagram
A functionality scenario
Rate this question:
Risky, safe, and uncertain
Planned, evolutionary, and minimal planned
Spiral, waterfall, and agile
Risk-based, architectural, and code-based
Rate this question:
A decision not to modify the system
A process that will run as part of the system
An argument that drives system design
A goal for actors the system interacts with
A diagram that shows what the system does
Rate this question:
Waterfall
Interative
RUP
XP
Rate this question:
The architect has the most familiarity with it
The developers who will implement the system are most familiar with it
It is known to ensure quality attributes of concern
It will make the system easier to maintain
None of the above
Rate this question:
A.Functionality, Archetypes, Jigsaw Puzzle
B.Functionality, Architectural Design, Orthogonal abstraction
C.Dominant Component, Attribute Driven Design, Ports
D.Architectural Style, Ports, Archetypes
Both a and
Both c and d
Rate this question:
Rate this question:
A sequence diagram is used to model a sequence of activities associated with a use case.
A sequence diagram is used to model a sequence of messages exchanged among objects.
A sequence diagram is used to model a sequence of transitions among objects in a use case.
Both a and b.
Both a and c.
United Models for Languages
Universal Modeling Language
Unified Modeling Language
United Modeling Language
Rate this question:
UML is a combination of notations.
UML supports modeling multiple views of software.
UML has evolved over time.
UML was created by the OMG
All of a-d
Only a and d
Rate this question:
Activity diagrams, Component diagrams, Construction diagram
Component diagrams, Action diagrams, Sequence diagrams
Class diagrams, ER diagrams, Action diagrams
Canonical diagrams, Activity diagrams, Sequence diagrams
Class diagrams, Sequence diagrams, Use Case diagrams
Rate this question:
A.A component diagram shows a configuration of the system at a given moment.
B.A component diagram shows all potential interactions among components in a view.
C.A component diagram can show instances of classes.
Both a and b.
Both b and c.
Rate this question:
Ports are represented using dots on a component border.
Each port on a component has exactly one interface associated with it.
Assembly connectors show the relationship between ports on the component’s boundary and its internals.
Lollipop symbol is used to represent provides interfaces.
Socket symbol is used to represent provides interfaces.
Rate this question:
Component Internals
Potential interactions with external components
Complex components
Complex connectors
None of a-d
Both a and d
Rate this question:
Component diagrams show all potential interactions among a group of components whereas sequence diagram shows the interactions involved in response to a particular kind of request.
There is very little difference, they are just two different ways of viewing component interactions.
In component diagram the components use a rectangular shape with the component icon in the upper right corner but no component icon appears in sequence diagrams.
Component diagrams represent the code whereas sequence diagrams represent behavior.
Rate this question:
Subsystem elements have critical differences from components, which must be represented.
Subsystem elements and component elements are not substantially different so there is no need for them.
Component elements have important aspects that are not representable using the provided subsystem element notation.
Both a and c
None of the above.
True
False
Rate this question:
A class diagram shows a configuration of the system at a given moment.
A class diagram shows all potential interactions among components in a view
A class diagram can show relationships between java interfaces and other classes.
Both a and b.
Both b and c.
Rate this question:
A class diagram for a module always has three components.
A class diagram shows relationships among code units.
A class diagram supports analyzing behavior of complex protocols.
Lollipop symbol is used to represent provides interfaces.
Socket symbol is used to represent provides interfaces.
Class and components diagrams are always very similar.
Rate this question:
Identifying public and private members of a class.
Identifying which classes depend on other classes.
Discussing how the system will behave.
Discussing how to add newly required functionality to the system.
Both a and d
Rate this question:
A.Help programmers understand the context of the code they are creating.
B.Help the project sponsors understand how the system will work.
C.Help the project manager identify responsible people for each of the coding tasks.
D.Help maintainers identify the source of bugs.
All of the above.
Each of a, b, and c.
Each of a, c, and d.
Each of b, c, and d.
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
True
False
Rate this question:
Contains a description of other related patterns.
Can be useful describing how a software problem was solved by a developer.
Is a general reusable solution to a commonly occurring problem within a given context in software design.
Gives examples of code that used the pattern.
Both a and c
All of a-d.
Rate this question:
Quiz Review Timeline (Updated): Mar 21, 2023 +
Our quizzes are rigorously reviewed, monitored and continuously updated by our expert board to maintain accuracy, relevance, and timeliness.
Wait!
Here's an interesting quiz for you.