Unit 2 - Practice Quiz

CSE320 60 Questions
0 Correct 0 Wrong 60 Left
0/60

1 In software design, what is the primary goal of modularity?

Modularity Easy
A. To ensure the software only runs on one specific operating system.
B. To divide a complex system into smaller, manageable, and independent parts called modules.
C. To write the entire software in a single, large file.
D. To use as many global variables as possible.

2 Which term describes the degree to which the elements inside a single module belong together and are focused on a single task?

Cohesion Easy
A. Encapsulation
B. Abstraction
C. Coupling
D. Cohesion

3 In software design, what does 'coupling' refer to?

Coupling Easy
A. The physical connection of hardware components.
B. The process of compiling code.
C. The strength of connections within a single module.
D. The degree of interdependence between different software modules.

4 Which type of cohesion is considered the most desirable and strongest?

Types of cohesion and coupling Easy
A. Logical Cohesion
B. Temporal Cohesion
C. Functional Cohesion
D. Coincidental Cohesion

5 Which type of coupling is generally considered the worst or most undesirable, where one module modifies the internal data of another?

Types of cohesion and coupling Easy
A. Data Coupling
B. Control Coupling
C. Stamp Coupling
D. Content Coupling

6 A software design is considered to have good module independence if its modules have:

Measuring module independence Easy
A. Low cohesion and low coupling
B. High cohesion and high coupling
C. High cohesion and low coupling
D. Low cohesion and high coupling

7 In a Data Flow Diagram (DFD), what does a circle or a rounded rectangle typically represent?

Function-oriented design: Data Flow Diagrams (DFD) - symbols, notations and leveling Easy
A. A data flow
B. A process
C. An external entity
D. A data store

8 What does an arrow represent in a Data Flow Diagram (DFD)?

Function-oriented design: Data Flow Diagrams (DFD) - symbols, notations and leveling Easy
A. Data flow
B. A user
C. A database
D. Control flow

9 What is a Level 0 DFD also known as?

Context diagrams and decomposition and Rules for constructing DFDs Easy
A. A Flowchart
B. A Structure Chart
C. A Context Diagram
D. A Class Diagram

10 What is the primary purpose of a Structure Chart?

Structure Charts - components and notation Easy
A. To show the flow of data through a system.
B. To describe the database schema.
C. To detail the step-by-step logic of an algorithm.
D. To illustrate the module hierarchy and control flow between modules.

11 The design principle of hiding the implementation details of a module from other parts of the system is known as:

Basic principles of software design Easy
A. Abstraction
B. Information Hiding
C. Modularity
D. Refinement

12 In a DFD, what is represented by two parallel lines or an open-ended rectangle?

Function-oriented design: Data Flow Diagrams (DFD) - symbols, notations and leveling Easy
A. A Process
B. An External Entity
C. A Data Flow
D. A Data Store

13 The process of breaking down a high-level DFD process into a more detailed, lower-level DFD is called:

Context diagrams and decomposition and Rules for constructing DFDs Easy
A. Aggregation
B. Compilation
C. Decomposition or Leveling
D. Generalization

14 A common design trade-off in software engineering involves balancing performance with which other quality attribute?

Design trade-offs Easy
A. Compilation speed
B. Number of code files
C. Programming language choice
D. Maintainability

15 In a Structure Chart, what does a small arrow with an empty circle at its tail represent?

Structure Charts - components and notation Easy
A. A data couple
B. A control couple
C. A conditional call
D. A module call

16 What is the primary purpose of a Software Design Document (SDD)?

Design documentation and design review techniques Easy
A. To list all the bugs found during testing.
B. To serve as a user manual for the end-users.
C. To provide the complete source code of the application.
D. To describe the system's architecture, components, interfaces, and data for developers.

17 Which of the following is a common, informal technique for reviewing a software design document?

Design documentation and design review techniques Easy
A. Code Compilation
B. Beta Testing
C. Unit Testing
D. Design Walkthrough

18 According to the rules of DFD construction, which of the following connections is generally considered illegal?

Context diagrams and decomposition and Rules for constructing DFDs Easy
A. A data flow from a data store to a process.
B. A data flow from a process to a data store.
C. A data flow directly between two external entities.
D. A data flow from an entity to a process.

19 Transform Analysis is a design strategy used to convert a DFD into what?

Module hierarchy and control flow and Transform and transaction analysis Easy
A. A structure chart
B. Source code
C. A database schema
D. A flowchart

20 In a structure chart, what does a diamond symbol at the base of a module call represent?

Structure Charts - components and notation Easy
A. A data-only module.
B. A loop (iteration).
C. A recursive call.
D. A conditional call (selection).

21 A module named ProcessStudentData performs the following tasks in order: 1) It retrieves student records from a data store. 2) It calculates the GPA for each student. 3) It generates a formatted report with the calculated GPAs. The output of each step is the input for the next. Which type of cohesion does this module most accurately exhibit?

Types of cohesion and coupling Medium
A. Communicational Cohesion
B. Functional Cohesion
C. Temporal Cohesion
D. Sequential Cohesion

22 A system design involves multiple modules (Authentication, UserProfile, OrderProcessing) that all read and write to a shared global data structure holding the current user's session information. What is the primary design flaw associated with this approach?

Coupling Medium
A. It improves performance by avoiding parameter passing, which is a good trade-off.
B. It increases the logical cohesion of the system as a whole.
C. It exemplifies stamp coupling because a complex data structure is used.
D. It creates high common coupling, making modules interdependent and difficult to maintain.

23 A DFD for an online ordering system shows a data flow labeled Payment_Details moving directly from the Customer external entity to a Credit_Card_Transactions data store. What fundamental DFD rule does this violate?

Function-oriented design: Data Flow Diagrams (DFD) - symbols, notations and leveling Medium
A. A process must have at least one input and one output data flow.
B. Data stores cannot be duplicated in a DFD.
C. Data cannot flow directly from an external entity to a data store.
D. Data cannot flow directly between two data stores.

24 In a Structure Chart, a diamond symbol is drawn at the base of a superordinate module A, with an arrow pointing from the diamond to a subordinate module B. What does this notation represent?

Structure Charts - components and notation Medium
A. Module A iteratively calls module B in a loop.
B. Module A makes a conditional call to module B based on a decision.
C. Module A and B are asynchronously coupled.
D. Module B is a reusable library function called by module A.

25 A development team decides to implement a microservices architecture for a new e-commerce platform. While this choice enhances scalability and independent deployment, it significantly increases the complexity of network communication, service discovery, and data consistency management. This decision is a classic example of trading off...

Design trade-offs Medium
A. Modularity and scalability for operational simplicity.
B. Performance for security.
C. Development speed for runtime performance.
D. Usability for maintainability.

26 A Level-0 DFD for a University_Registration_System shows two inputs from the Student entity: Course_Selection and Personal_Details, and one output to the Student entity: Registration_Confirmation. When this system is decomposed into a Level-1 DFD, which of the following must be true to maintain balance?

Context diagrams and decomposition and Rules for constructing DFDs Medium
A. The Level-1 DFD must introduce a new external entity, such as Professor.
B. The Level-1 DFD must contain exactly three processes, one for each data flow.
C. All processes within the Level-1 DFD must connect to a central Student_DB data store.
D. The net sum of all data flows entering and leaving the boundary of the Level-1 DFD must be Course_Selection, Personal_Details, and Registration_Confirmation.

27 A system's DFD shows an incoming data stream User_Command that flows into a process called Dispatch_Command. Based on the command type (e.g., 'ADD', 'UPDATE', 'DELETE'), this process activates one of three different downstream data flow paths. Which design strategy is most appropriate for converting this DFD into a structure chart?

Module hierarchy and control flow and Transform and transaction analysis Medium
A. Transaction Analysis
B. Data Structure-Oriented Design
C. Object-Oriented Design
D. Transform Analysis

28 Module independence is a key indicator of a good software design. It is achieved by having...

Measuring module independence Medium
A. High cohesion and high coupling.
B. High cohesion and low coupling.
C. Low cohesion and high coupling.
D. Low cohesion and low coupling.

29 Module A calls Module B and passes it a reference to a large Employee object. Module B only uses the employee_ID field from the object to perform a database lookup. This is a classic example of which type of coupling?

Types of cohesion and coupling Medium
A. Content Coupling
B. Stamp Coupling
C. Control Coupling
D. Data Coupling

30 During a design review meeting, the author of the design document leads a group of peers through the document, explaining the logic and flow, while the peers ask questions and look for errors and ambiguities. The atmosphere is collaborative and focused on improving the design, not on formally approving it. Which technique does this best describe?

Design documentation and design review techniques Medium
A. A management review
B. An audit
C. A formal inspection
D. A design walkthrough

31 A software company is developing a large ERP system. By designing the system as a set of modules (e.g., HR, Finance, Inventory), different teams can work on different modules simultaneously. Which key advantage of modularity does this practice directly leverage?

Modularity Medium
A. Improved algorithmic efficiency
B. Reduced runtime complexity
C. Parallel development
D. Guaranteed information hiding

32 A utility module contains several functions: one to initialize the system log, one to close database connections, and one to write shutdown metrics. These functions are grouped together because they all need to be executed at system shutdown. This module exhibits which type of cohesion?

Types of cohesion and coupling Medium
A. Logical Cohesion
B. Sequential Cohesion
C. Temporal Cohesion
D. Functional Cohesion

33 In the context of transform analysis, the part of the DFD that handles incoming data, validates it, and converts it into a format suitable for the main processing is known as the...

Module hierarchy and control flow and Transform and transaction analysis Medium
A. Efferent stream
B. Afferent stream
C. Central transform
D. Transaction center

34 A DFD shows a process Generate_Report with no data inflows, but it has one data outflow called Final_Report going to an external entity. What is the common name for this error in DFD modeling?

Rules for constructing DFDs Medium
A. Data Sink
B. Spontaneous Generation
C. Black Hole
D. Miracle

35 A designer chooses to create a generic, highly configurable DataParser module that can handle XML, JSON, and CSV formats. This makes the module very reusable. However, the internal logic of the module is now extremely complex due to the need to handle all formats. This decision prioritizes...

Design trade-offs Medium
A. Performance over reusability.
B. Reusability over simplicity and maintainability.
C. Simplicity over functionality.
D. Security over performance.

36 Which software design principle advocates for separating the user interface from the application logic, ensuring that changes to the UI will have minimal impact on the underlying business rules and data processing?

Basic principles of software design Medium
A. Information Hiding
B. Don't Repeat Yourself (DRY)
C. Principle of Least Astonishment (POLA)
D. Separation of Concerns (SoC)

37 Module X calls module Y. Based on a result from Y, module X then decides whether to call module Z or module W. How does this control logic affect the coupling between modules X, Y, Z, and W?

Types of cohesion and coupling Medium
A. It creates control coupling between X and Y.
B. It is an example of data coupling, as Y returns data to X.
C. It creates control coupling between X and modules Z and W.
D. It creates content coupling between X and the other modules.

38 Which of the following elements is most characteristic of a detailed design document rather than an architectural design document?

Design documentation and design review techniques Medium
A. A breakdown of the system into its major components or subsystems.
B. The choice of architectural pattern, such as layered or client-server.
C. The protocols for communication between major subsystems.
D. The data structures and algorithms to be used within a specific module.

39 Which of the following lists represents the general hierarchy of cohesion types, from most desirable (strongest) to least desirable (weakest)?

Cohesion Medium
A. Sequential, Functional, Communicational, Temporal, Coincidental, Logical
B. Functional, Communicational, Sequential, Logical, Temporal, Coincidental
C. Functional, Sequential, Communicational, Temporal, Logical, Coincidental
D. Coincidental, Logical, Temporal, Communicational, Sequential, Functional

40 In a structure chart, an arrow with an open circle at its tail is shown going from subordinate module B up to superordinate module A. What does this notation signify?

Structure Charts - components and notation Medium
A. Module B returns a data parameter to Module A.
B. Module A passes a control flag to Module B.
C. The invocation of Module B by Module A is optional.
D. Module B is a data source.

41 A development team is designing a ReportGenerator module. To achieve high cohesion, they place all functions related to report creation (e.g., generateHeader, generateBody, fetchData, formatData, saveToFile) into this single module. However, fetchData and formatData are also needed by a separate DataAnalytics module. To avoid code duplication, the DataAnalytics module now calls these two functions within the ReportGenerator module. What is the most significant design trade-off that has occurred?

Design trade-offs Hard
A. The effort to achieve high cohesion and avoid duplication has introduced high functional coupling (specifically, Stamp or Data coupling) for functions that could have been in a separate utility module.
B. The pursuit of high cohesion within ReportGenerator has led to undesirable Control coupling with DataAnalytics.
C. Logical cohesion in ReportGenerator has been unintentionally created, weakening its initial design.
D. A shift from Stamp to Content coupling has occurred between the two modules.

42 Consider a design metric for module instability, , defined as , where (efferent coupling) is the number of modules this module depends on (fan-out), and (afferent coupling) is the number of modules that depend on it (fan-in). A module is considered stable if is close to 0 and unstable if close to 1. In a layered architecture, which scenario represents the most severe design flaw?

Measuring module independence Hard
A. A database utility module has .
B. A core domain logic module has .
C. A module in the UI layer has .
D. A core domain logic module has .

43 A module ProcessOrder is defined with the following sequential operations: 1. It receives a complex CustomerOrder object. 2. It calls validateOrder(CustomerOrder) which uses only the orderID and items fields. 3. It then calls checkInventory(CustomerOrder) which uses only the items field. 4. It then accesses a global SystemConfig object to get the taxRate. 5. Finally, it calculates the total and updates a FinancialLedger object, which is also a global variable. Which pair of coupling and cohesion types represents the most significant design problem in this module?

Types of cohesion and coupling Hard
A. Stamp Coupling and Procedural Cohesion
B. Common Coupling and Communicational Cohesion
C. Common Coupling and Temporal Cohesion
D. Data Coupling and Sequential Cohesion

44 You are given a DFD for a command processing system. The central part of the DFD shows a single process, Parse Command, which receives a User Command data flow. Based on the command type (e.g., 'add', 'delete', 'query'), Parse Command routes a formatted request to one of three separate downstream processes: Add Record, Delete Record, or Query Database. This entire segment is identified as a transaction center. However, the Query Database process itself is complex: it receives the formatted query, transforms it into an SQL query, executes it, receives raw results, formats the results into a report, and outputs the report. How should a structure chart for this system be designed?

Transform and transaction analysis Hard
A. Two separate structure charts: one for the transaction processing of add/delete, and another for the transform flow of the query functionality.
B. A hybrid structure: The top level is a transaction-driven hierarchy with a dispatcher module for commands, but the branch for the 'query' command becomes the root of a transform-driven sub-hierarchy.
C. A single, large transaction-driven structure with the main controller calling Parse Command, which then directly calls the sub-functions for add, delete, and query.
D. A purely transform-driven structure, where User Command is the afferent flow and the final report is the efferent flow, ignoring the transaction-like nature.

45 A Level 1 DFD for a system contains Process 1.0, Process 2.0, an external entity 'User', and a data store 'Inventory'. A data flow 'Item Details' goes from 'Inventory' to Process 1.0. Another data flow, 'Updated Stock Count', goes from Process 2.0 to 'Inventory'. The decomposition of Process 1.0 into a Level 2 DFD shows two sub-processes, 1.1 and 1.2. In this Level 2 DFD, a new data flow 'Low Stock Alert' is shown going from Process 1.1 to the 'User' external entity. Based on DFD leveling rules, what is the primary error?

Rules for constructing DFDs Hard
A. The 'Inventory' data store should not be visible at both Level 1 and Level 2.
B. Process 1.1 cannot create a new data flow; all flows must originate from its parent, Process 1.0.
C. The data flow 'Low Stock Alert' violates the principle of balancing, as it appears at Level 2 without a corresponding parent flow at Level 1.
D. A process ('Low Stock Alert' source) cannot directly communicate with an external entity in a leveled DFD.

46 A team is developing a safety-critical avionics system. The design is complex and has zero tolerance for ambiguity or error. The design document is dense, formal, and over 500 pages long. The review team consists of domain experts who are geographically distributed. Which design review technique is most appropriate and why?

Design documentation and design review techniques Hard
A. A formal design inspection, because its structured process with defined roles (Moderator, Reader, Scribe) and phases (Preparation, Meeting, Follow-up) is essential for rigorous, evidence-based defect detection in a critical system.
B. A design walkthrough, because its informal nature encourages collaborative problem-solving and brainstorming among the distributed experts.
C. An ad-hoc review, where experts review the document on their own time to maximize efficiency and accommodate different time zones.
D. Pair designing, where two engineers review and modify the design together in real-time, as this is the quickest way to find deep logical errors.

47 A structure chart shows that a high-level module A calls module B. A passes a flag named computation_mode to B. Inside B, an if statement checks this flag and executes one of two completely different algorithms, both of which calculate a result and return it to A. Which statement provides the most accurate and critical analysis of this design?

Module hierarchy and control flow Hard
A. This design exhibits high Control Coupling, which is problematic because module A must know about the internal logic of module B, and B has low, Logical Cohesion.
B. The design is flawed due to Pathological Coupling, as A is directly modifying the execution path within B.
C. This represents excellent design, as module B is highly cohesive (Functional Cohesion) by performing a single, well-defined conceptual task: 'compute result'.
D. This is an example of Stamp Coupling because a control flag is part of a larger data structure passed from A to B.

48 A module named ProcessStudentData contains the following functions in order: readStudentInfo(), validateStudentInfo(), calculateGPA(), and generateTranscript(). The output of readStudentInfo() (student record) is the input to validateStudentInfo(). The validated student record is then used by calculateGPA(), and the output of calculateGPA() (the GPA value) is added to the student record which is then used by generateTranscript(). What is the highest level of cohesion this module exhibits?

Cohesion Hard
A. Sequential Cohesion
B. Functional Cohesion
C. Communicational Cohesion
D. Procedural Cohesion

49 Module A updates a status record in a shared database. Module B, which runs periodically, reads this status record. If the status is 'Complete', Module B triggers a cleanup process. This interaction is mediated entirely through the database record; the modules do not call each other directly. What is the most precise classification of the coupling between A and B?

Coupling Hard
A. This is Content Coupling because B's logic depends on data written by A.
B. This is Stamp Coupling because the entire status record is read, even if only one field is used to make the decision.
C. This is Data Coupling because they only communicate through data.
D. This is a combination of Common Coupling (due to the shared database) and Control Coupling (as the status value directs B's logic).

50 A Level 0 (Context) DFD shows one process, 'System', and two external entities, 'Manager' and 'Employee'. The diagram shows a data flow 'Timesheet Data' from 'Employee' to 'System' and a data flow 'Payroll Report' from 'System' to 'Manager'. The Level 1 DFD, which decomposes 'System', shows three processes. It correctly shows 'Timesheet Data' entering the diagram boundary and 'Payroll Report' exiting. However, inside the Level 1 diagram, there is also a data flow named 'Error Log' that goes from a process to a new data store 'System Errors', which was not shown on the context diagram. Analyze this situation.

Context diagrams and decomposition and Rules for constructing DFDs Hard
A. The Level 1 DFD is correct, but only if the 'System Errors' data store is also shown on the context diagram, interacting with the 'System' process.
B. The Level 1 DFD is incorrect because the 'Error Log' flow violates balancing, as it does not cross the parent process boundary.
C. The Level 1 DFD is correct. Data stores that are internal to the system are not shown on the context diagram and can be introduced at any level of decomposition.
D. The Level 1 DFD is incorrect because a data store cannot be introduced at this level; it must be shown at the context level.

51 A developer writes the following line of code in a method within the UIController class: customer.getAccount().getProfile().setPrimaryEmail(newEmail). This code directly chains multiple method calls to navigate through objects and finally modify a state. This is a direct violation of which design principle, and what is its primary negative consequence?

Modularity Hard
A. The Single Responsibility Principle; its consequence is low cohesion in the UIController.
B. The Law of Demeter (Principle of Least Knowledge); its consequence is high coupling between the UIController and the internal structure of the Account and Profile classes.
C. The Liskov Substitution Principle; its consequence is that subtypes of Account might behave unexpectedly.
D. The Open-Closed Principle; its consequence is that adding new profile fields requires modifying the controller.

52 During transform analysis, the process of 'first-level factoring' in creating a structure chart from a DFD involves what specific steps?

Transform and transaction analysis Hard
A. Decomposing the DFD into Level 2, then creating a structure chart module for each Level 2 process.
B. Identifying the central transform and creating a main module, then subordinate input, transform, and output modules that directly mirror the DFD processes.
C. Creating a main coordinating module, and then creating one subordinate module for each data flow on the DFD, representing data transformation.
D. Identifying all external entities and creating corresponding controller modules in the structure chart.

53 Module A is a generic XMLParser utility. 25 other modules in the system use it. The XMLParser itself depends on one system library for file I/O. Module B is a BillingReportGenerator. It is used by only one module (the AdminUI). The BillingReportGenerator depends on 8 other modules (DBConnector, CustomerModel, InvoiceCalculator, PDFWriter, etc.). Using the instability metric (), which module is considered more 'responsible' and stable within the architecture?

Measuring module independence Hard
A. Neither, as both have a Fan-out greater than 0, making them inherently unstable.
B. Module A, because its instability is very low, indicating it is a stable component that many others rely upon.
C. Module B, because its instability is high, indicating it is a volatile component.
D. Module B, because its low Fan-in (1) means changes to it will have a small ripple effect across the system.

54 Module M1 calls Module M2, passing it a large Employee object. M2 only reads the employeeID and startDate fields to calculate the employee's tenure. This is a classic example of Stamp Coupling. Which refactoring strategy provides the most significant improvement in module independence?

Types of cohesion and coupling Hard
A. Modify M2 to accept the entire Employee object but internally create a copy to avoid side effects, changing the coupling to Data Coupling.
B. Change M1 to pass only the employeeID and startDate as separate parameters to M2. This changes the coupling from Stamp to Data.
C. Create a global CurrentEmployee object that M1 sets and M2 reads. This changes the coupling from Stamp to Common.
D. Move the tenure calculation logic from M2 directly into the Employee class itself. M1 would then call employee.calculateTenure(). This eliminates the coupling to M2 entirely.

55 On a structure chart, a small diamond symbol is drawn at the point where several lines from a superior module converge on a single subordinate module. What does this notation, known as a 'conditional call' or 'decision symbol', represent in the control flow?

Structure Charts - components and notation Hard
A. The subordinate module will be called repeatedly in a loop until a condition is met.
B. The subordinate module returns a value that is a condition used by the superior module for its own logic.
C. The subordinate module can be called concurrently by multiple threads spawned by the superior module.
D. The superior module will call the subordinate module, but only if a specific condition is true.

56 A team is building a data processing framework. The lead architect insists on using a complex plugin architecture with abstract base classes and dependency injection, allowing new data formats to be added in the future without modifying the core framework code. A junior developer argues that they only need to support CSV files for the foreseeable future and that this architecture is a case of 'over-engineering'. This conflict highlights the tension between which two design principles?

Basic principles of software design Hard
A. Open-Closed Principle (OCP) vs. You Ain't Gonna Need It (YAGNI)
B. Dependency Inversion Principle (DIP) vs. Law of Demeter (LoD)
C. Liskov Substitution Principle (LSP) vs. Information Hiding
D. Single Responsibility Principle (SRP) vs. Interface Segregation Principle (ISP)

57 During a formal design inspection meeting for a critical module, the Author continuously refutes every logged defect with lengthy justifications. The Scribe, being junior, is intimidated and only records defects that the Author agrees are valid. The Moderator notices this dysfunctional dynamic. What is the Moderator's most critical and immediate responsibility according to the formal inspection process?

Design documentation and design review techniques Hard
A. To overrule the Author and instruct the Scribe to log every potential issue raised by the reviewers.
B. To halt the meeting, speak with the Author and Scribe privately to remind them of their roles (objective defect finding, not resolution), and restart only if the process can be followed correctly.
C. To take over the Scribe's role personally to ensure every point is captured accurately.
D. To side with the Author if their justifications seem technically sound to save time.

58 A Level 1 DFD shows a data store D1 with a data flow F1 going from D1 to process P1. The decomposition of P1 into a Level 2 DFD shows sub-process P1.1 and P1.2. Inside this Level 2 diagram, a flow F2 is shown originating from sub-process P1.2 and going to the data store D1. What can be concluded about the validity of this DFD design?

Function-oriented design: DFD - symbols, notations and leveling Hard
A. The design is invalid. The write operation (F2) from a sub-process (P1.2) to D1 violates balancing because there is no corresponding output flow from the parent process P1 to D1 at Level 1.
B. The design is valid; this simply means that process P1 as a whole reads from and writes to the data store D1, which should be reflected by adding an output flow from P1 to D1 at Level 1.
C. The design is valid because data flows between internal processes and data stores do not need to be balanced across levels.
D. The design is invalid because a data store cannot be both a source and a destination for flows related to a single parent process.

59 A module named SystemMonitor performs three actions: it runs a self-check diagnostic at system startup, it logs runtime errors to a file whenever they occur, and it archives log files during system shutdown. The elements are grouped in this module because they all relate to system lifecycle events. What is the highest level of cohesion exhibited by this module?

Cohesion Hard
A. Logical Cohesion
B. Communicational Cohesion
C. Temporal Cohesion
D. Procedural Cohesion

60 In a high-frequency trading application, performance is the absolute highest priority. To minimize latency, a designer makes a conscious decision for the MarketDataProcessor module to directly access and modify a data structure inside the OrderExecution module's memory space, bypassing any function call interfaces. This is a clear instance of Content Coupling. What is the most sophisticated justification for this extreme design choice?

Coupling / Design trade-offs Hard
A. This is an acceptable design pattern for real-time systems and does not negatively impact software quality.
B. This design decision represents a trade-off where a critical non-functional requirement (performance) is prioritized over software quality attributes like maintainability and modularity.
C. The designer is using a shared memory approach, which is classified as Common Coupling, not Content Coupling.
D. The designer is prioritizing high cohesion within the MarketDataProcessor over low coupling.