The following are the Interview questions related to the topics Design Concepts: Design with Context of Software Engineering, The Design Process , Design Concepts ,The Design Model, Architectural Design: Software Architecture, Architecture Genres, Architecture Styles ,Architectural Design ,Assessing Alternative Architectural Designs, Architectural Mapping Using Data Flow, Component-Level Design: Component , Designing Class-Based Components Conducting Component-level Design, Component Level Design for WebApps, Designing Traditional Components , Component-Based Development.
1.List out the elements that a design model comprises of.
A. The elements of the design model are:
- Data design
- Component-level design
- Interface design
- Architectural design.
2.What is meant by Design phase?
A. The requirements which are specified in SRS document are translated into a logical form so that it can be implemented in a programming language. System design helps in specifying hardware, system requirements and also in defining the complete system architecture.
3.Define cohesive module?
A. A cohesive module performs only single task in software process with less interaction with the rest of the modules. In simpler terms, it performs only single task.
4. What is high-level design (HLD)?
A. A High-level design provides the complete System design considering Functional architecture and Database design. It designs the overall architecture of a complete system from main module to all the parts of modules (sub modules). High level design is otherwise called as Global design.
5. What do you mean by a detailed design?
A. It is the view of the application which is developed during the high level design is divided into modules and programs. Logic design is made for every program and later documented as program specifications. A unit test plan is created for every program. Detailed design is also called as Low level design.
6. Mention some principles of Software design.
A.The following are some of the principles of software design:
- Design is not coding.
- The design should be traceable to the analysis model.
- The design should exhibit uniformity and integration.
- The design process should not suffer from “tunnel vision”.
7. State the different cohesion types?
A. The types of cohesion include coincidentally cohesive, logically cohesive, Temporal cohesion, Procedural cohesion, communicational cohesion.
8. Define Modular design and one of its benefit?
A. In SE, Modular design, or “modularity in design”, is a method (design and otherwise) that subdivides a system into smaller parts called modules, that can be independently created and then used in different systems. The benefit with this modular design is that the changes made during testing and maintenance phases can be managed and it do not influence the other modules.
9.Describe the basic activities in design process in one-liners.
A. The basic activities are:
- System structuring – The system is subdivided into principle subsystems components and communications between these subsystems are identified.
- Control modeling – A model of control relationships between different parts of the system is established.
- Modular decomposition – The identified subsystems are decomposed into modules.
10. What are the basic architectural models that are basically used?
A The architectural models which are commonly used are Data centered architecture, Layered architecture, Data flow architecture, Object-oriented architecture.
11. On what basis a good design can be made?
A. A good design process is one that follows the design principles. A good design must be interesting to any software engineering. It should involve basic principles and functionality.
12. What are the components that a Blackboard model composed of?
A. A Blackboard model composed of three components namely: a)Knowledge sources b)black board data structure and control.
13.Mention the key artifacts of software design process.
The following are the important artifacts that every software design process includes:
- SRS (Software Requirements Specification) document.
- High-Level Design (HLD).
- Low-Level Design (LLD).
- Detailed Design.
14. Define architectural design.
A. The relationship between major structural elements of the software is defined by an architectural design. It also defines some design patterns so that to achieve the requirements that have been defined for the system.
15. Define the terms : “Data design” and “Component level design”.
A. Data design transforms the data domain model generated during analysis into the data structures that will be essential during software implementation; whereas a component level design refers to the transformation of structural elements of software architecture into a procedural description of software components.
16. What is the difference between “interface design” and “user interface design”?
A. An interface design depicts the way how the software communicates within itself and with system that interoperate with it, and with the users who use it. A user interface design provides an effective interaction medium between a user and the system.
17. List some of the design notations.
A. There exist various design notations. Some of the them are Dataflow diagram, Structure charts, HIPO diagram, Pseudo code.
18. What methods do an Architect uses while building systems?
A. An architect uses four models like Normative, rational, argumentative, heuristic methodologies. The selection depends on the project’s circumstances and current problem. The first two methodologies are extensively applied in engineering institutions.
19. What are the factors which influences the decisions of Architect’s?
A. stakeholders, technical environment, problem domain area, organization’s intellectual assets, architect’s education and experience, and politics are the factors influences the Architect;s decisions.
20. State the essential role of a Software architect?
A. Making the right decisions at the right time is the chief responsibility of a software architect. Specifically the architect must evaluate various design options in light of overall system objectives and constraints.