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

Ch 2(Q)

2

Uploaded by

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

Ch 2(Q)

2

Uploaded by

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

Chapter 2

SOFTWARE DESIGN
MCQ :
1 - - ……………. defines how software is
decomposed and organized into components
and the interfaces between those components
?
A – Hardware architecture
B – System architecture
C – Software architecture
D – Network architecture
2 - ……………… is important to
understand the major characteristics of
software requirements analysis, software
design, software construction, software
testing, and software maintenance ?
A – Software design
B – system design
C – Software architecture
D – System architecture
3 - …………..is a measure of the
interdependence among modules in a
computer program, ……………….. is a
measure of the strength of association of the
elements within a module ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Decomposition and modularization
D – Coupling and Cohesion

4 - …………… means that large software is


divided into a number of smaller named
components having well-defined interfaces
that describe component interactions ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Decomposition and modularization
D – Coupling and Cohesion
5 - ………………… the goal is to place different
functionalities and responsibilities in different
components ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Decomposition and modularization
D – Coupling and Cohesion

6- …………….. means grouping and packaging


the internal details of an abstraction and
making those details inaccessible to external
entities ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Decomposition and modularization
D – Coupling and Cohesion
7 - …………… defining a component by
specifying a public interface (known to the
clients) that is separate from the details of
how the component is realized ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Decomposition and modularization
D – Coupling and Cohesion

8 - ……………… means ensuring that a


software component captures all the
important characteristics of an abstraction
and nothing more, ………………… means the
design should be based on patterns that are
easy to implement ?
A – Encapsulation and information hiding
B – Separation of interface and
implementation
C – Separation of concerns
D – Sufficiency, completeness, and
primitiveness

9 - …………………….. is area of interest with


respect to a software design ?
A – Coupling
B – Cohesion
C – primitiveness
D – Concern
10 - These lower level design patterns not
include?
A – Creational patterns
B – Structural patterns
C – Behavioral patterns
D – Conceptual patterns
11 - It is useful to think of the architectural
design process from a …………….. perspective
rather than from an activity perspective?
A – network-design
B – software-design
C – hardware-design
D – decision-making

12 - …………the process of defining the


architecture, components, interfaces, and
other characteristics of a system or
component ?
A – Design
B – Software Detailed design
C – Software Architectural design
D – Software design

13 - …………. is the software engineering life


cycle activity in which software requirements
are analyzed in order to produce a description
of the software’s internal structure that will
serve as the basis for its construction ?
A – Design
B – Software Detailed design
C – Software Architectural design
D – Software design
14 - …………how software is decomposed and
organized into components and the interfaces
between those components ?
A – Design
B – Software detailed design
C – Software architecture
D – Software design

15 - …………..develops top-level structure and


organization of the software and identifies the
various components ?
A – Design
B – Software detailed design
C – Software architectural design ( high-level
design )
D – Software design
16 - ……………… specifies each component in
sufficient detail to facilitate its construction ?
A – Design
B – Software detailed design
C – Software architectural design ( high-level
design )
D – Software design

17 - Software design fundamentals introduced


here form an underlying basis for
understanding the ……and…….. of the
software design ?
A – role and scope
B – Concepts and notations
C – Notations and terminology
D – Coupling and Cohesion
18 - A number of other notions and concepts
are also of interest in understanding design in
its general sense are ……………….. ?
A – goals, alternatives, representations,
solutions
B – goals, constraints, representations,
solutions
C – goals, constraints, alternatives, solutions
D – goals, constraints, alternatives,
representations, solutions

19 - ……………. is a comprehensive and


fundamental law, doctrine, or assumption ?
A – Coupling
B – Cohesion
C – Abstraction
D – Principle
20 - ……………….. is a view of an object that
focuses on the information relevant to a
particular purpose and ignores the remainder
of the information ?
A – Coupling
B – Cohesion
C – Abstraction
D – Principle

21- ……………… is concerned with


decomposing software into processes, tasks,
and threads and dealing with related issues of
efficiency, atomicity, synchronization, and
scheduling ?
A – Concurrency
B – Control and handling of events
C – Data Persistence
D – Distribution of components
22 - …………. is concerned with how to
organize data and control flow as well as how
to handle reactive and temporal events ?
A – Concurrency
B – Control and handling of events
C – Data Persistence
D – Distribution of components

23 - …………… is concerned with how to


handle long-lived data ?
A – Concurrency
B – Control and handling of events
C – Data Persistence
D – Distribution of components
24 - …………….. is concerned with how to
distribute the software across the
hardware ,how the components communicate,
how middleware can be used to deal with
heterogeneous software ?
A – Concurrency
B – Control and handling of events
C – Data Persistence
D – Distribution of components

25 - ………………. …is concerned with how to


prevent, tolerate, and process errors and deal
with exceptional conditions ?
A – Error and exception handling and fault
tolerance
B – Interaction and presentation
C – Security
D – Concurrency
26 - ……………. is concerned with how to
structure and organize interactions with users
as well as the presentation of information ?
A – Error and exception handling and fault
tolerance
B – Interaction and presentation
C – Security
D – Concurrency

27 - …………. . is concerned with how to


prevent unauthorized disclosure, creation,
change, deletion, or denial of access to
information and other resources ?
A – Error and exception handling and fault
tolerance
B – Interaction and presentation
C – Security
D – Concurrency
28 - ……………………… is concerned with how
to tolerate security-related attacks or
violations by limiting damage, continuing
service, speeding repair and recovery, and
failing and recovering securely ?
A – Error and exception handling and fault
tolerance
B – Interaction and presentation
C – Security
D – Concurrency

29 -………………. is “the set of structures


needed to reason about the system, which
comprise software elements, relations among
them, and properties of both ?
A – Design
B – Software detailed design
C – Software architecture
D – Software design
30 - A …………………. represents a partial
aspect of a software architecture that shows
specific properties of a software system ?
A – View
B – Abstraction
C – Principle
D – Design
31 - ……………..is which “tend not to be units
of software’s functional decomposition, but
rather to be properties that affect the
performance or semantics of the components
in systemic ways ?
A – Components
B – Aspects
C – Concerns
D – None of them
32 - ……………….. for example, builder,
factory, prototype, singleton ?
A – Creational patterns
B – Structural patterns
C – Behavioral patterns
D – None of them

33 -…………… for example, adapter, bridge,


composite, decorator, façade, flyweight, proxy
?
A – Creational patterns
B – Structural patterns
C – Behavioral patterns
D – None of them
34 - ………….. for example, command,
interpreter, iterator, mediator, memento,
observer, state, strategy, template, visitor ?
A – Creational patterns
B – Structural patterns
C – Behavioral patterns
D – None of them

35 - ………………….. is a creative process.


During the design process, software designers
have to make a number of fundamental
decisions that profoundly affect the software
and the development process ?
A – Design
B –detailed design
C –architectural design
D – Software design
36 -………… for example, layers, pipes and
filters, blackboard ?
A – General structures
B – Distributed systems
C – Interactive systems
D – Adaptable systems

37 – ………………… for example, client server,


three-tiers, broker ?
A – General structures
B – Distributed systems
C – Interactive systems
D – Adaptable systems
38 - ……………… for example, Model-View
Controller, Presentation-Abstraction-Control ?
A – General structures
B – Distributed systems
C – Interactive systems
D – Adaptable systems
39 - ………….. for example, microkernel,
reflection ?
A – General structures
B – Distributed systems
C – Interactive systems
D – Adaptable systems

40 - ………………. for example, batch,


interpreters, process control, rule-based ?
A – General structures
B – Distributed systems
C – Interactive systems
D – Others
41 - ………………… is a specialization of
element and relation types, together with a
set of constraints on how they can be used ?
A – architectural style
B – Architectural design
C – All of them
D – None of them
True or False Questions :
1 - Detailed design describes the desired
behavior of these components ?

2 – Architectural design describes how


software is organized into components ?

3 - A design concern is an area of design


that is relevant to one or more of its
stakeholders ?

4 - Primitiveness means the design should


be based on patterns that are difficult to
implement ?

5 - Each architecture view frames one or


more concerns ?

6 - A pattern is “a common solution to a


common problem in a given context ” ?
7 - A software design describes the
software architecture ?

8 - Software design consists of two


activites : Software architectural design
and Software detailed design ?

9 – Software design can be viewed as a


form of problem solving ?

10 - design is an important part of the


software development process ?

11 - it isn’t important to understand the


major characteristics of software
requirements analysis, software design,
software construction, software testing,
and software maintenance ?
12 - The output of these two processes is
a set of models and artifacts ?

13 - In the context of software design, two


key abstraction mechanisms are
parameterization and specification ?

14 - Abstraction by specification abstracts


from the details of data representations
by representing the data as named
parameters ?

15 - Abstraction by parameterization
leads to three major kinds of abstraction:
procedural abstraction, data abstraction,
and control (iteration) abstraction ?

16 - Access control is a fundamental


concept of security, and one should also
ensure the proper use of cryptology ?
17 - Some of these concepts can be
useful during the architectural design (for
example, architectural styles) as well as
during the detailed design (for example,
design patterns) ?

18 - A number of key issues must be dealt


with when designing software. Some are
quality concerns that all software must
address—for example, decompose,
organize, and package software
components ?

19 - Another important issue is how to


performance, security, reliability ,
usability ?

20 - In object-oriented (OO) programming,


a key related notion is that of a
framework ?
21 - One approach to providing for reuse
of software designs and components is to
design families of programs, also known
as software product lines ?

You might also like