1. What are the elements of design model?
i. Data design
ii.
Architectural design
iii.
Interface design
iv.
Component-level design
2. Define design process.
Design process is
a sequence of steps carried through which the requirements are translated into
a system or software model.
3. List the principles of a software design.
i. The design
process should not suffer from “tunnel vision”
ii. The design
should be traceable to the analysis model.
iii. The design
should exhibit uniformity and integration.
iv. Design is not
coding.
v. The design
should not reinvent the wheel.
4. What is the benefit of modular design?
Changes made
during testing and maintenance becomes manageable and they do not affect other
modules.
5. What is a cohesive module?
A cohesive module
performs only “one task” in software procedure with little interaction with
other modules. In other words cohesive module performs only one thing.
6. What are the different types of Cohesion?
i. Coincidentally
cohesive - The modules in which the set I\of tasks are related with each other
loosely.
ii. Logically cohesive – A module that
performs the tasks that are logically related with each other.
iii. Temporal cohesion – The module in which
the tasks need to be executed in some specific time span.
iv. Procedural cohesion – When processing
elements of a module are related with one another and must be executed in some
specific order.
v.
Communicational cohesion – When the processing elements of a module share the
data then such module is called communicational cohesive.
7. What is coupling?
Coupling is the
measure of interconnection among modules in a program structure. It depends on
the interface complexity between modules.
8. What are the various types of coupling?
i. Data coupling –
The data coupling is possible by parameter passing or data interaction.
ii.
Control coupling – The modules share related control data in control coupling.
iii. Common
coupling – The common data or a global data is shared among modules.
iv.
Content coupling – Content coupling occurs when one module makes use of data or
control information maintained in another module.
9. What are the common activities in design process?
i. System
structuring – The system is subdivided into principle subsystems components and
communications between these subsystems are identified.
ii. Control
modeling – A model of control relationships between different parts of the
system is established.
iii. Modular
decomposition – The identified subsystems are decomposed into modules.
10. What are the
benefits of horizontal partitioning?
i. Software that
is easy to test.
ii. Software that
is easier to maintain.
iii. Propagation
of fewer side effects.
iv. Software that
is easier to extend.
11. What is vertical partitioning?
Vertical
partitioning often called factoring suggests that the control and work should
be distributed top-down in program structure.
12. What are the advantages of vertical partitioning?
i. These are easy to maintain
changes.
ii. They reduce the change impact
and error propagation.
13. What are the various elements of data design?
i. Data object – The data objects
are identified and relationship among various data objects can be represented
using ERD or data dictionaries.
ii. Databases – Using software design
model, the data models are translated into data structures and data bases at
the application level.
iii. Data warehouses – At the
business level useful information is identified from various databases and the
data warehouses are created.
No comments:
Post a Comment