Software Engineering
Module 3: Software Design & Metrics
Q1a. To achieve a good design, modules should have a) Weak cohesion and low coupling b) Weak cohesion and high coupling c) Strong cohesion and low coupling d) Strong cohesion and high coupling20232m
Module 3: Software Design & Metrics
View this question on its own page →To achieve a good design, modules should have
a) Weak cohesion and low coupling
b) Weak cohesion and high coupling
c) Strong cohesion and low coupling
d) Strong cohesion and high couplingQ1b. Which of the following is a complementary approach to function-oriented approach? (i) Object-oriented analysis (ii) Object-oriented design (iii) Structured approach (iv) Both object-oriented analysis and design20202m
Module 3: Software Design & Metrics
View this question on its own page →Which of the following is a complementary approach to function-oriented approach?
(i) Object-oriented analysis
(ii) Object-oriented design
(iii) Structured approach
(iv) Both object-oriented analysis and designQ1e. What is the main purpose of using UML (Unified Modeling Language) in software design? (i) To write executable code (ii) To visualize and document software architecture (iii) To enforce coding standards (iv) To test software functionality20242m
Module 3: Software Design & Metrics
View this question on its own page →What is the main purpose of using UML (Unified Modeling Language) in software design?
(i) To write executable code
(ii) To visualize and document software architecture
(iii) To enforce coding standards
(iv) To test software functionalityQ1e. "An ordering system may be adapted to cope with a centralized ordering process in one company and a distributed process in another." Which category the example belongs to? (i) Process specialization (ii) Platform specialization (iii) Environment specialization (iv) Functional specialization20212m
Module 3: Software Design & Metrics
View this question on its own page →"An ordering system may be adapted to cope with a centralized ordering process in one company and a distributed process in another." Which category the example belongs to?
(i) Process specialization
(ii) Platform specialization
(iii) Environment specialization
(iv) Functional specializationQ1f. ______ is a measure of the degree of interdependence between modules. (i) Cohesion (ii) Coupling (iii) None of the mentioned (iv) All of the mentioned20212m
Module 3: Software Design & Metrics
View this question on its own page →______ is a measure of the degree of interdependence between modules.
(i) Cohesion
(ii) Coupling
(iii) None of the mentioned
(iv) All of the mentionedQ1f. Which of the following is *not* a characteristic of good software design? (i) Low coupling (ii) High cohesion (iii) High complexity (iv) Modularity20252m
Module 3: Software Design & Metrics
View this question on its own page →Which of the following is not a characteristic of good software design?
(i) Low coupling
(ii) High cohesion
(iii) High complexity
(iv) ModularityQ1f. In the COCOMO model, which type of project is characterized as a "Semi-Detached" project? (i) Small projects with minimal documentation (ii) Medium projects with moderate documentation and staffing (iii) Large projects with extensive documentation (iv) Projects with very high complexity and risk20242m
Module 3: Software Design & Metrics
View this question on its own page →In the COCOMO model, which type of project is characterized as a "Semi-Detached" project?
(i) Small projects with minimal documentation
(ii) Medium projects with moderate documentation and staffing
(iii) Large projects with extensive documentation
(iv) Projects with very high complexity and riskQ1f. Cyclomatic complexity method comes under which testing method? (i) Yellow box (ii) White box (iii) Grey box (iv) Black box20202m
Module 3: Software Design & Metrics
View this question on its own page →Cyclomatic complexity method comes under which testing method?
(i) Yellow box
(ii) White box
(iii) Grey box
(iv) Black boxQ1g. In a Data Flow Diagram (DFD), which symbol represents an external entity? (i) Circle (ii) Arrow (iii) Open rectangle (iv) Double line20252m
Module 3: Software Design & Metrics
View this question on its own page →In a Data Flow Diagram (DFD), which symbol represents an external entity?
(i) Circle
(ii) Arrow
(iii) Open rectangle
(iv) Double lineQ1g. Independent modules are easier to maintain and test because of (i) code modification is limited (ii) reusable modules are possible (iii) error propagation is reduced (iv) All of the above20222m
Module 3: Software Design & Metrics
View this question on its own page →Independent modules are easier to maintain and test because of
(i) code modification is limited
(ii) reusable modules are possible
(iii) error propagation is reduced
(iv) All of the aboveQ1g. Function Point Analysis is used to measure (i) The number of lines of code in a software project (ii) The functionality delivered to the user (iii) The performance of the code (iv) The user interface complexity20242m
Module 3: Software Design & Metrics
View this question on its own page →Function Point Analysis is used to measure
(i) The number of lines of code in a software project
(ii) The functionality delivered to the user
(iii) The performance of the code
(iv) The user interface complexityQ1g. In size-oriented metrics, metrics are developed based on the (i) number of functions (ii) number of user inputs (iii) number of lines of code (iv) amount of memory usage20202m
Module 3: Software Design & Metrics
View this question on its own page →In size-oriented metrics, metrics are developed based on the
(i) number of functions
(ii) number of user inputs
(iii) number of lines of code
(iv) amount of memory usageQ1h. Cyclomatic Complexity is primarily used to measure: (i) Lines of code (ii) Logical paths in a program (iii) Execution speed (iv) Code documentation quality20252m
Module 3: Software Design & Metrics
View this question on its own page →Cyclomatic Complexity is primarily used to measure:
(i) Lines of code
(ii) Logical paths in a program
(iii) Execution speed
(iv) Code documentation qualityQ1i. Classes communicate with one another via (i) processed information (ii) interfaces (iii) messages (iv) coupling20222m
Module 3: Software Design & Metrics
View this question on its own page →Classes communicate with one another via
(i) processed information
(ii) interfaces
(iii) messages
(iv) couplingQ1j. A company needs to develop digital signal processing software for one of its newest inventions. The software is expected to have 40000 lines of code. The company needs to determine the effort in person-months needed to develop this software using the basic COCOMO model. The multiplicative factor for this model is given as 2.8 for the software development on embedded systems, while the exponentiation factor is given as 1.20. What is the estimated effort in person-months? (i) 234.25 (ii) 932.50 (iii) 287.80 (iv) 122.4020212m
Module 3: Software Design & Metrics
View this question on its own page →A company needs to develop digital signal processing software for one of its newest inventions. The software is expected to have 40000 lines of code. The company needs to determine the effort in person-months needed to develop this software using the basic COCOMO model. The multiplicative factor for this model is given as 2.8 for the software development on embedded systems, while the exponentiation factor is given as 1.20. What is the estimated effort in person-months?
(i) 234.25
(ii) 932.50
(iii) 287.80
(iv) 122.40Q1j. ______ is a measure of the degree of interdependence between modules. (i) Cohesion (ii) Coupling (iii) None of the above (iv) All of the above20202m
Module 3: Software Design & Metrics
View this question on its own page →______ is a measure of the degree of interdependence between modules.
(i) Cohesion
(ii) Coupling
(iii) None of the above
(iv) All of the aboveQ2b. A program is to be developed to simulate the operations of a scientific calculator. List the facilities to be provided by this calculator. Analyze this using a DFD 0-level and 1-level diagram.20207m
Module 3: Software Design & Metrics
View this question on its own page →A program is to be developed to simulate the operations of a scientific calculator. List the facilities to be provided by this calculator. Analyze this using a DFD 0-level and 1-level diagram.
Q2b. Draw the first two levels of DFDs for an 'Online Examination System'. Make necessary assumptions.20217m
Module 3: Software Design & Metrics
View this question on its own page →Draw the first two levels of DFDs for an 'Online Examination System'. Make necessary assumptions.
Q3a. What are the different architectural styles applied for software development?20237m
Module 3: Software Design & Metrics
View this question on its own page →What are the different architectural styles applied for software development?
Q3b. Explain cohesion and coupling. How are the concepts of coupling and cohesion useful in arriving at good software design?20217m
Module 3: Software Design & Metrics
View this question on its own page →Explain cohesion and coupling. How are the concepts of coupling and cohesion useful in arriving at good software design?
Q4a. Compare the top-down and bottom-up approaches in software design, with examples of when each is appropriate.20257m
Module 3: Software Design & Metrics
View this question on its own page →Compare the top-down and bottom-up approaches in software design, with examples of when each is appropriate.
Q4a. Define cohesion and coupling. Explain various types of each of them.20227m
Module 3: Software Design & Metrics
View this question on its own page →Define cohesion and coupling. Explain various types of each of them.
Q4a. Define coupling and cohesion with examples, and explain their roles in creating modular structures.20247m
Module 3: Software Design & Metrics
View this question on its own page →Define coupling and cohesion with examples, and explain their roles in creating modular structures.
Q4a. Discuss the software metric that can be applied to the qualitative assessment of software quality and side effects that occur during maintenance phase.20237m
Module 3: Software Design & Metrics
View this question on its own page →Discuss the software metric that can be applied to the qualitative assessment of software quality and side effects that occur during maintenance phase.
Q4b. What is a design pattern? Provide an example of a design pattern and explain its use.20257m
Module 3: Software Design & Metrics
View this question on its own page →What is a design pattern? Provide an example of a design pattern and explain its use.
Q4b. Discuss the Unified Modeling Language (UML) in detail. Explain its significance in software design, including its advantages.20247m
Module 3: Software Design & Metrics
View this question on its own page →Discuss the Unified Modeling Language (UML) in detail. Explain its significance in software design, including its advantages.
Q4b. What is cyclomatic complexity? How is it computed? Calculate cyclomatic complexity for the program to find the smallest of three numbers.20217m
Module 3: Software Design & Metrics
View this question on its own page →What is cyclomatic complexity? How is it computed? Calculate cyclomatic complexity for the program to find the smallest of three numbers.
Q4b. Explain COCOMO model for estimation.20237m
Module 3: Software Design & Metrics
View this question on its own page →Explain COCOMO model for estimation.
Q5. What are the different COCOMO models? Explain the phases involved in the detailed COCOMO model.202214m
Module 3: Software Design & Metrics
View this question on its own page →What are the different COCOMO models? Explain the phases involved in the detailed COCOMO model.
Q5a. What are project metrices? Explain different types of project metrics with an example for each.20217m
Module 3: Software Design & Metrics
View this question on its own page →What are project metrices? Explain different types of project metrics with an example for each.
Q5a. What is the purpose of software measurement and metrics? How can they improve software quality or project management?20257m
Module 3: Software Design & Metrics
View this question on its own page →What is the purpose of software measurement and metrics? How can they improve software quality or project management?
Q5a. Briefly describe Halstead's software science and its measures. How does it help in assessing software quality?20247m
Module 3: Software Design & Metrics
View this question on its own page →Briefly describe Halstead's software science and its measures. How does it help in assessing software quality?
Q5b. Describe Cyclomatic Complexity and how it is used to measure software. What insight does it provide?20257m
Module 3: Software Design & Metrics
View this question on its own page →Describe Cyclomatic Complexity and how it is used to measure software. What insight does it provide?
Q5b. Define the COCOMO model. Also, explain the types of COCOMO model and their benefits.20247m
Module 3: Software Design & Metrics
View this question on its own page →Define the COCOMO model. Also, explain the types of COCOMO model and their benefits.
Q5b. Design the following for an 'E-commerce solution for an electronic products company' that gives choice to the users to select a/few product(s) from the available range, order them and allow to make the payments online: (i) Design the DFDs (level-0, 1 and 2). (ii) Prepare SRS document. List assumptions, if any. (iii) Design an ER-diagram. List all the entities, attributes, key constraints and cordiality. (iv) Draw a Gantt chart. (v) Specify the s/w engineering pre-design which suits this application development.20207m
Module 3: Software Design & Metrics
View this question on its own page →Design the following for an 'E-commerce solution for an electronic products company' that gives choice to the users to select a/few product(s) from the available range, order them and allow to make the payments online:
(i) Design the DFDs (level-0, 1 and 2).
(ii) Prepare SRS document. List assumptions, if any.
(iii) Design an ER-diagram. List all the entities, attributes, key constraints and cordiality.
(iv) Draw a Gantt chart.
(v) Specify the s/w engineering pre-design which suits this application development.Q5b. Draw the context diagram and Level 1 DFD for the following Mail Order Processing System. "HMV Records is a mail-order company that distributes CDs and tapes at discount prices to record club members. When an order processing clerk receives an order form, he/she verifies that the sender is a club member by checking the member file. If the sender is not a member, the clerk returns the order along with a member form. If the sender is a member, the clerk verifies the order item data by checking the Item file. Then the Daily Order file. The clerk also prints an invoice and shipping list for each order, which are forwarded to order fulfillment."20237m
Module 3: Software Design & Metrics
View this question on its own page →Draw the context diagram and Level 1 DFD for the following Mail Order Processing System.
"HMV Records is a mail-order company that distributes CDs and tapes at discount prices to record club members. When an order processing clerk receives an order form, he/she verifies that the sender is a club member by checking the member file. If the sender is not a member, the clerk returns the order along with a member form. If the sender is a member, the clerk verifies the order item data by checking the Item file. Then the Daily Order file. The clerk also prints an invoice and shipping list for each order, which are forwarded to order fulfillment."
Q6a. What are the types of user-interface design?20227m
Module 3: Software Design & Metrics
View this question on its own page →What are the types of user-interface design?
Q6b. Explain the stages of object-oriented design process.20227m
Module 3: Software Design & Metrics
View this question on its own page →Explain the stages of object-oriented design process.
Q6c. What is "Top-Down and Bottom-Up Design" approach?20235m
Module 3: Software Design & Metrics
View this question on its own page →What is "Top-Down and Bottom-Up Design" approach?
Q7. Write short notes on the following: (a) Unified modelling language [5] (b) Object-oriented analysis modelling [5] (c) Object-oriented design concepts and methods [4]202214m
Module 3: Software Design & Metrics
View this question on its own page →Write short notes on the following:
(a) Unified modelling language [5]
(b) Object-oriented analysis modelling [5]
(c) Object-oriented design concepts and methods [4]Q7a. Differentiate between cohesion and coupling, and explain their types in brief.20237m
Module 3: Software Design & Metrics
View this question on its own page →Differentiate between cohesion and coupling, and explain their types in brief.
Q8. Explain coding standards, coding guidelines and code review techniques in detail.202214m
Module 3: Software Design & Metrics
View this question on its own page →Explain coding standards, coding guidelines and code review techniques in detail.
Q8a. Explain software reliability and its importance in software development.20247m
Module 3: Software Design & Metrics
View this question on its own page →Explain software reliability and its importance in software development.
Q8a. Consider a large scale project for which the manpower requirement is K = 600PY and the development time is 3 years 6 months. (i) Calculate the peak manning and peak time. (ii) What is the manpower cost after 1 year and 2 months?20207m
Module 3: Software Design & Metrics
View this question on its own page →Consider a large scale project for which the manpower requirement is K = 600PY and the development time is 3 years 6 months.
(i) Calculate the peak manning and peak time.
(ii) What is the manpower cost after 1 year and 2 months?Q8a. What are the different methods used for estimating cost and effort required for completing a project successfully? Explain any one method in detail.20217m
Module 3: Software Design & Metrics
View this question on its own page →What are the different methods used for estimating cost and effort required for completing a project successfully? Explain any one method in detail.
Q8b. Define coupling and cohesion in module design. Why is low coupling and high cohesion preferred?20257m
Module 3: Software Design & Metrics
View this question on its own page →Define coupling and cohesion in module design. Why is low coupling and high cohesion preferred?
Q8b. What is software quality? What are three dimensions of software quality? Explain briefly.20217m
Module 3: Software Design & Metrics
View this question on its own page →What is software quality? What are three dimensions of software quality? Explain briefly.
Q8b. What is cyclomatic complexity? Write a C program to calculate GCD of two numbers and calculate the cyclomatic complexity of the program.20237m
Module 3: Software Design & Metrics
View this question on its own page →What is cyclomatic complexity? Write a C program to calculate GCD of two numbers and calculate the cyclomatic complexity of the program.
Q9a. What is software quality? Discuss software quality attributes.20227m
Module 3: Software Design & Metrics
View this question on its own page →What is software quality? Discuss software quality attributes.
Q9a. What are the different architectural styles applied for software development? Explain with diagrams.20207m
Module 3: Software Design & Metrics
View this question on its own page →What are the different architectural styles applied for software development? Explain with diagrams.