JNTUK B.Tech CSE 2-2(R23) Software Engineering UNIT-II 2 Marks Question and Answers. The most expected and important questions for semester or internal exams are now available. Here you can get all jntu materials, previous year papers, important questions, syllabus, e-books, lab manuals ext.
Below are several 2-mark questions along with concise answers covering Unit III topics:
Software Design
What is the general design process in software development?
Answer: The design process involves phases such as requirements analysis, conceptual design, architectural design, detailed design, and design review. This systematic approach ensures that the final software meets functional requirements and quality standards.How can you characterize a good software design?
Answer: A good software design is modular, scalable, and maintainable. It exhibits high cohesion within modules and low coupling between modules, which makes the system easier to understand, test, and modify.What is meant by a layered arrangement of modules?
Answer: A layered arrangement organizes software into hierarchical layers where each layer is responsible for specific tasks. This separation of concerns improves clarity, reusability, and simplifies maintenance.
Cohesion and Coupling
Define cohesion and explain its significance in software design.
Answer: Cohesion is the degree to which the elements within a module belong together. High cohesion indicates that a module has a well-defined purpose, which enhances readability and maintainability.What is coupling and why is low coupling desirable?
Answer: Coupling refers to the level of interdependence between modules. Low coupling is desirable because it minimizes the impact of changes in one module on others, promoting flexibility and easier maintenance.
Approaches to Software Design
- Describe one approach to software design.
Answer: The top-down design approach starts with an overview of the system and progressively breaks it down into smaller, manageable components. This method helps in organizing complex systems by ensuring that each part aligns with the overall architecture.
Agility
What does agility in software development refer to?
Answer: Agility refers to the ability to adapt quickly to changing requirements and environments. It emphasizes iterative development, frequent feedback, and continuous improvement, which together help reduce the cost of change.What are the key features of Extreme Programming (XP)?
Answer: Extreme Programming (XP) promotes rapid feedback, continuous integration, pair programming, test-driven development, and frequent releases. These practices ensure high code quality and responsiveness to change.Name one tool or technique commonly used in agile processes.
Answer: Continuous integration is a commonly used agile technique that automatically builds and tests code changes, ensuring that integration issues are identified and resolved early.
Function-Oriented Software Design
What is the SA/SD methodology?
Answer: SA/SD (Structured Analysis and Structured Design) is a methodology that uses techniques like data flow diagrams (DFDs) to analyze and design systems based on functional decomposition. It helps clarify system functionality and organize complex processes.How does developing a DFD model assist in system design?
Answer: A Data Flow Diagram (DFD) visually represents the flow of data within a system, identifying key processes, data stores, and external interactions. This visualization aids in understanding and structuring the system for effective design.What is the purpose of a design review in the software development process?
Answer: A design review assesses the design for correctness, completeness, and feasibility. It helps identify potential issues early and ensures that the system’s architecture aligns with user requirements and project goals.
User Interface Design
What are the characteristics of a good user interface?
Answer: A good user interface is intuitive, consistent, and responsive. It provides a seamless and engaging user experience while ensuring that the system is easy to navigate and use.Briefly explain the fundamentals of component-based GUI development.
Answer: Component-based GUI development relies on using reusable interface components—such as buttons, menus, and dialogs—which can be assembled and managed systematically. This approach promotes rapid development and consistency across the user interface.What is a common methodology used in user interface design?
Answer: Iterative design is a common methodology that involves user research, prototyping, usability testing, and continuous refinement. This process ensures that the final interface effectively meets user needs and expectations.