Questions
ayuda
option
My Daypo

ERASED TEST, YOU MAY BE INTERESTED ONSoftware Evolution and Maintenance (SEAM)

COMMENTS STATISTICS RECORDS
TAKE THE TEST
Title of test:
Software Evolution and Maintenance (SEAM)

Description:
Software Evolution and Maintenance Questions Bank

Author:
AVATAR

Creation Date:
14/01/2024

Category:
Open University

Number of questions: 241
Share the Test:
Facebook
Twitter
Whatsapp
Share the Test:
Facebook
Twitter
Whatsapp
Last comments
No comments about this test.
Content:
Why does a system become less useful over time, according to the Laws of Evolution? a) Lack of user needs b) Continual change c) Increasing complexity d) Self-regulation .
What is Mehdi Jazayer's view on software evolution? a) Software evolves over time b) Knowledge about software remains constant c) Software remains static d) Users' needs don't impact software evolution .
What happens to a system if additional work is not done to reduce complexity? a) The system remains the same b) It becomes less useful c) It becomes more complex d) Self-regulation occurs .
How is the evolution process self-regulating, according to the Laws of Evolution? a) It follows close to normal distributions b) It remains constant c) It involves declining quality d) It avoids user feedback .
What does the Conservation of Organizational Stability refer to? a) The system's qualities decline b) The average effort for a new release remains almost the same c) The system becomes increasingly complex d) Knowledge about software decreases .
Why does a large incremental growth in a release reduce understanding? a) It satisfies user needs b) It follows normal distributions c) It increases familiarity d) It decreases familiarity .
What happens to the functional content of a system over time? a) It remains constant b) It continually decreases c) It continually increases d) It becomes less useful .
According to Mehdi Jazayer, what is the perception of the system's qualities over its lifetime? Stable b) Declining c) Improving d) Unpredictable .
What does the Feedback System in the evolution process involve? a) Single-loop feedback b) No feedback c) Multi-loop, multi-agent, multi-level feedback d) User feedback only .
What do developers need to recognize in order to continually evolve an existing system? Stability b) Lack of feedback c) Complex interactions d) Static nature of the system .
Why is it preferable to classify maintenance tasks based on objective evidence? a) To rely on personnel knowledge b) To avoid observing actual maintenance activities c) To prioritize preventive maintenance d) To be more informative and verifiable with observations .
What does the granularity of the proposed classification aim to reflect? a) Hardware platform choices b) Organizational practices c) The actual mix of observed activities d) Availability of personnel doing original development.
Which classification groups are independent of various factors in software maintenance? a) Corrective, adaptive, preventive b) Design methodology, implementation language c) Operating system choice, hardware platform d) Evidence-based, Groomative, Evaluative.
What is the purpose of preventive maintenance in software maintenance? a) To observe actual maintenance activities b) To prioritize corrective maintenance c) To prevent future issues and problems d) To rely on personnel knowledge.
What is the significance of the term "Groomative" in software maintenance? a) Corrective maintenance b) Evaluative maintenance c) Reductive maintenance d) Maintenance focused on enhancing the system's appearance.
Which factor is NOT a major difference between CBS and custom-built software systems? a) Skills of system maintenance teams b) Availability of personnel c) Complexity of planning d) Operating system choice.
What characterizes the Staged model of maintenance and evolution in SMLC? a) A linear progression through stages b) A series of small, incremental changes c) Split maintenance functions d) More complex planning.
What does COTS stand for in the context of software maintenance differences? a) Custom-Optimized Training System b) Commercial Off-The-Shelf c) Component-Oriented Testing Standard d) Customized Organizational Technical Support.
Which SMLC model involves a series of small, incremental changes to the software? a) Staged model b) Iterative model c) Change mini-cycle model d) Groomative model.
What is the purpose of the software maintenance life cycle (SMLC) model? a) To observe actual maintenance activities c) To acknowledge the unique lifecycle of maintenance activities b) To prioritize preventive maintenance d) To rely on personnel knowledge.
What distinguishes the Change Mini-Cycle model in SMLC? a) A linear progression through stages b) A series of small, incremental changes c) Split maintenance functions d) More complex planning.
What major difference is associated with the infrastructure and organization of CBS? a) Similar skills of maintenance teams b) Complexity of planning c) Availability of personnel d) Different infrastructure and organization.
What is the focus of Evaluative maintenance in software maintenance activities? a) Observing actual maintenance activities b) Preventing future issues and problems c) Assessing and analyzing the system's performance d) Relying on personnel knowledge.
What does the term "Corrective" refer to in the context of software maintenance? a) Observing actual maintenance activities b) Preventing future issues and problems c) Fixing defects and errors in the system d) Relying on personnel knowledge.
Why is the Evidence-based classification preferred for software maintenance? a) It relies on organizational practices c) It is more informative and observable d) It is specific to the availability of personnel b) It requires accessing original development knowledge .
Why is it essential for software maintenance classifications to be verifiable with observations? a) To rely on personnel knowledge b) To avoid organizational practices c) To prioritize adaptive maintenance d) To ensure objectivity and validation.
What does the term "Updative" signify in the context of software maintenance activities? a) Corrective maintenance b) Updating the software with the latest features c) Reductive maintenance d) Evaluative maintenance.
In the major differences between CBS and custom-built software systems, what role do the skills of system maintenance teams play? a) They are similar in both CBS and custom-built systems b) They contribute to more complex planning c) They differ between CBS and custom-built systems d) They focus on infrastructure and organization.
What characterizes the Reformative category in software maintenance? a) Observing actual maintenance activities b) Making significant changes to improve the system c) Preventing future issues and problems d) Relying on personnel knowledge.
Why does software maintenance need its own Software Maintenance Life Cycle (SMLC) model? a) To prioritize preventive maintenance b) To avoid organizational practices c) To acknowledge the unique lifecycle of maintenance activities d) To follow iterative models.
What distinguishes Iterative models in SMLC from other models? a) A linear progression through stages b) A series of small, incremental changes c) Split maintenance functions d) More complex planning.
What is the primary focus of Consultive maintenance in software maintenance activities? a) Preventing future issues and problems b) Consulting with original developers c) Assessing and analyzing system performance d) Updating the software with the latest features.
How does the larger user community contribute to the major differences between CBS and custom-built systems? a) It impacts the infrastructure and organization b) It results in a similar planning complexity c) It increases COTS maintenance costs d) It is not a significant factor.
What does the term "Enhancive" mean in the context of software maintenance activities? a) Corrective maintenance b) Evaluative maintenance c) Making improvements to the system's functionality d) Reducing system complexity.
Why is a split maintenance function considered a major difference in CBS and custom-built systems? a) It results in a larger user community b) It contributes to a more complex planning process c) It decreases COTS maintenance costs d) It is not relevant to the differences.
What is Software Configuration Management (SCM) primarily focused on? a) Developing new software b) Managing and controlling change in the evolution of software systems c) Ensuring software security d) Auditing software configurations.
Why is SCM important in software development? a) To introduce uncontrolled changes b) To contaminate released software c) To manage and control change in software evolution d) To avoid any changes in software.
What is the main purpose of SCM in relation to released software? a) Introducing uncontrolled changes b) Contaminating software with unapproved changes c) Ensuring released software is free from uncontrolled or unapproved changes d) Preventing the evolution of software systems.
How many elements does an SCM system have, and what do they address? a) Two elements: control and auditing b) Three elements: identification, control, and auditing c) Four elements: identification, control, auditing, and accounting d) Five elements: identification, development, control, auditing, and accounting.
What does the element "Identification of software configurations" in an SCM system address? a) Managing and controlling change b) Developing new software c) Identifying software configurations d) Auditing software configurations.
Which element of an SCM system is responsible for controlling software configurations? a) Identification of software configurations b) Control of software configurations c) Auditing software configurations d) Accounting software configuration status.
What is the purpose of the "Auditing software configurations" element in an SCM system? a) Controlling software configurations b) Identifying software configurations c) Ensuring released software is free from uncontrolled or unapproved changes d) Verifying the integrity of software configurations.
What user need does the "Accounting software configuration status" element in an SCM system address? a) Identifying software configurations b) Controlling software configurations c) Auditing software configurations d) Keeping track of the status of software configurations.
How is Reengineering defined according to Jacobson and Lindstorm? ) Reengineering = Forward engineering b) Reengineering = Reverse engineering - Forward engineering c) Reengineering = Reverse engineering + Forward engineering d) Reengineering = Forward engineering * Reverse engineering.
What is Reverse Engineering in the context of software reengineering? a) A process of changing the software b) A process of defining a more abstract representation of the system c) A process of forward engineering d) A process of physical implementation.
According to Jacobson and Lindstorm, what does the formula "Reengineering = Reverse engineering + ^ + Forward engineering" represent? a) Reengineering involves only reverse engineering b) Reengineering involves both reverse and forward engineering c) Reengineering excludes forward engineering d) Reengineering involves only forward engineering.
What is the core activity of Reverse Engineering? a) Changing the software under examination b) Defining a more abstract representation of the system c) The physical implementation of the system d) Forward engineering.
What does the third element, "Forward Engineering," represent in the formula provided? a) The process of examination b) Moving from high-level abstraction to physical implementation c) The alteration and change of the system d) Logical, implementation-independent designs.
How is the process of reverse engineering different from forward engineering? a) Reverse engineering involves changing the software b) Forward engineering focuses on examination, not change c) Reverse engineering is the physical implementation of the system d) Forward engineering is the alteration of the system.
According to the definition, what does the term "forward engineering" refer to? a) The process of examination b) Alteration and change of the system c) Moving from high-level abstraction to physical implementation d) Logical, implementation-independent designs.
In the formula, what does the second element (represented by '^') capture? a) Physical implementation of the system b) Examination and change of the system c) Logical, implementation-independent designs d) Alteration that is the change of the system.
What is the "Freeze" option in managing legacy systems? a) Continuously develop the legacy system b) Stop any further work on the legacy system c) Outsource maintenance to a specialist organization d) Discard and redevelop the application.
In the context of managing legacy systems, what does the "Outsource" solution entail? a) Freezing all further work on the legacy system b) Carrying on maintenance for an extended period c) Deciding that supporting software is not a core business and outsourcing it d) Migrating the legacy system to a new platform.
What does the "Carry on maintenance" solution involve in managing legacy systems? a) Freezing all further work on the legacy system b) Continuing maintenance despite challenges c) Discarding and redeveloping the application d) Outsourcing maintenance to a specialist organization.
How does the "Discard and redevelop" option contribute to managing legacy systems? a) Continuously developing the legacy system b) Throwing away the software and redeveloping the application from scratch c) Freezing all further work on the legacy system d) Outsourcing maintenance to a specialist organizatio.
What characterizes the "Wrap" technique in legacy system management? a) Discarding and redeveloping the application b) Surrounding the legacy system with a layer to hide complexity c) Migrating the legacy system to a new platform d) Freezing all further work on the legacy system.
What is the primary goal of the "Migrate" solution in legacy system management? a) Throwing away the software and redeveloping the application b) Moving an existing system to a new platform while retaining functionality c) Carrying on maintenance for an extended period d) Freezing all further work on the legacy system.
Which legacy system management option involves moving an existing operational system to a new platform? a) Discard and redevelop b) Migrate c) Carry on maintenance d) Wrap.
What does the "Wrap" technique specifically aim to achieve in legacy system management? a) Migrating the legacy system to a new platform b) Hiding the complexity of the existing system with a software layer c) Outsourcing maintenance to a specialist organization d) Freezing all further work on the legacy system.
What is the purpose of the "Freeze" option in managing legacy systems? a) Outsource maintenance to a specialist organization b) Stop any further work on the legacy system c) Carry on maintenance despite challenges d) Migrate the legacy system to a new platform.
In the context of legacy system management, what does the "Outsource" option prioritize? a) Discarding and redeveloping the application b) Moving an existing system to a new platform c) Deciding that supporting software is not a core business and outsourcing it d) Carrying on maintenance for an extended period.
What is impact analysis in software development? a) The process of estimating the cost of software changes b) Identifying the parts of the software that can be affected by a proposed change c) Analyzing the performance impact of software modules d) Evaluating the impact of software documentation changes.
How can impact analysis techniques be categorized? a) Into design and code analysis b) Into syntactic and semantic analysis c) Into traceability and dependency analysis d) Into high-level and low-level analysis.
What is the goal of traceability analysis in impact analysis techniques? a) Assessing the effects of change on semantic dependencies b) Constructing a model of inter-artifacts to locate pieces of design, code, and test cases c) Identifying syntactic dependencies between program entities d) Analyzing the ripple effect of software changes.
What is the main focus of dependency (or source-code) analysis in impact analysis? a) Analyzing the ripple effect of software changes b) Identifying the syntactic dependencies that signal semantic dependencies c) Constructing a model of inter-artifacts to locate pieces of design, code, and test cases d) Assessing the effects of change on traceability analysis.
Which two dependency-based impact analysis techniques are mentioned in the provided information? a) Call graph based analysis and design-based analysis b) Dependency graph based analysis and traceability analysis c) Ripple effect analysis and change propagation analysis d) Call graph based analysis and dependency graph based analysis.
What does the term "ripple effect" refer to in the context of impact analysis? a) Analyzing the effects of change on semantic dependencies b) Measuring the impact or likelihood of change causing problems in the rest of the program c) Constructing a model of inter-artifacts to locate pieces of design, code, and test cases d) Propagating changes throughout the entire system.
What knowledge does measuring the ripple effect provide about the system's evolution? a) Evaluating the impact of software documentation changes b) Assessing the effects of change on traceability analysis c) Understanding how much the system's complexity has changed since the previous version d) Analyzing the performance impact of software modules.
What is the purpose of the change propagation activity in impact analysis? a) Identifying syntactic dependencies between program entities b) Analyzing the ripple effect of software changes c) Propagating changes throughout the entire system d) Constructing a model of inter-artifacts to locate pieces of design, code, and test cases.
What is refactoring in software development? a) Rewriting the entire codebase b) Making changes to the internal structure to improve understandability and maintainability c) Adding new features without modifying existing code d) Changing the observable behavior of the software.
What is the main goal of refactoring? a) Changing the observable behavior of the software b) Making the software harder to understand c) Making the software easier to understand and cheaper to modify d) Restructuring the external interface of the software.
What does the term "observable behavior" mean in the context of refactoring? a) The internal structure of the software b) The way the software interacts with external systems c) The impact of refactoring on software documentation d) The outwardly visible aspects of the software.
What is program understanding or comprehension? a) The process of rewriting the entire codebase b) The task of building mental models of an underlying software system c) The elimination of duplicate code in a program d) The introduction of new features to a software system.
How does program comprehension contribute to software maintenance and re-engineering? a) By rewriting the entire codebase b) By constructing mental models of the underlying software system c) By introducing new features to the software d) By eliminating all syntactic dependencies in the code.
What is the purpose of generating hypotheses in program comprehension? a) To introduce new features to the software b) To eliminate all syntactic dependencies in the code c) To understand code in an incremental manner d) To rewrite the entire codebase.
What are program families in the context of software reuse? a) Sets of programs with individual differences b) Sets of programs with extensive common properties c) Reusable artifacts for data standardization d) An activity of identifying objects in a problem domain.
What does Capers Jones identify as types of reusable artifacts in software reuse? a) Reusable assets and software knowledge b) Program families and domain analysis c) Data reuse and architectural reuse d) Syntactic dependencies and semantic dependencies.
What characteristics encourage the reusability of a software component? a) High complexity and tight coupling b) Loose coupling and environmental independence c) Limited adaptability and low cohesion d) Reduced understandability and low reliability.
What are benefits of software reuse? a) Increased risk and reduced productivity b) Decreased reliability and accelerated development c) Improved maintainability and standards compliance d) Higher process risk and longer maintenance time.
What is the main goal of classifying maintenance tasks based on objective evidence? a) To access the knowledge of the personnel who developed the system. b) To create a subjective classification. c) To make maintenance tasks more complex. d) To provide verifiable information.
What is the purpose of the proposed classification in software maintenance? a) To complicate the process of maintenance. b) To accurately reflect the mix of activities observed in practice. c) To rely on the original developers' knowledge. d) To limit the classification to specific hardware platforms.
What is the primary objective of corrective maintenance? a) To prevent problems from occurring. b) To make improvements in user experience. c) To isolate and correct defective elements. d) To adapt the system to new hardware configurations.
When is corrective maintenance typically performed? a) Proactively before defects are detected. b) After detecting defects with the system. c) During the initial development phase. d) Independently of system failur.
What is an example of a situation that can be described as corrective maintenance? a) Modifying the system to support new hardware. b) Improving the program's processing efficiency. c) Correcting a program that produces incorrect results. d) Changing the system to be compatible with other applications.
What is the focus of adaptive maintenance? a) Improving user experience. b) Adapting the system to changes in its environment. c) Restructuring the code for maintainability. d) Making improvements in processing efficiency.
Which activities fall under perfective maintenance? a) Isolation and correction of defective elements. b) Restructuring code and creating documentation. c) Changing the system to support new hardware. d) Converting the system from batch to on-line operation.
What is another term for perfective maintenance? a) Reengineering. b) Adaptive maintenance. c) Corrective maintenance. d) Preventive maintenance.
What is the goal of preventive maintenance? a) To improve the internal structure of the code. b) To perform maintenance activities proactively. c) To adapt the system to new hardware configurations. d) To isolate and correct defective elements.
What is the concept of "software rejuvenation" in preventive maintenance? a) Terminating an application without restarting. b) Continuously running the software system without interruptions. c) Cleaning the internal state and restarting the application occasionally. d) Avoiding any maintenance activities.
How does preventive maintenance relate to safety-critical and high-available software systems? a) It is rarely performed on such systems. b) It involves continuous restructuring of the code. c) It is often performed to prevent future risks and unknown problems. d) It has no impact on the reliability of these systems.
What is the purpose of the concept of "software rejuvenation"? a) To decrease the downtime of the application. b) To increase the occurrence of more severe failures. c) To prevent the occurrence of failures due to continuous running. d) To make the system less adaptable.
How many clusters were the twelve types of maintenance activities grouped into? a) Two b) Three c) Four d) Five.
What are the criteria used to cluster the types of maintenance activities? a) Hardware and software. b) The whole software, external documentation, program code properties, and system functionality. c) User experience and processing efficiency. d) The knowledge of the personnel and organizational practices.
Which cluster involves modifications to the whole software? a) External documentation. b) Program code properties. c) System functionality. d) The whole software.
What activities fall under the cluster of external documentation? a) Restructuring the code. b) Creating and updating documentation. c) Tuning the system for better performance. d) Adapting the system to new hardware.
What does the cluster of program code properties involve? a) Activities related to the whole software. b) Restructuring code and creating documentation. c) Isolation and correction of defective elements. d) Modifying the properties of the program code.
Which cluster is related to activities affecting the system functionality experienced by the customer? a) External documentation. b) The whole software. c) System functionality. d) Program code properties.
What is the primary goal of restructuring the code in perfective maintenance? a) Making the program outputs more readable. b) Isolating and correcting defective elements. c) Creating and updating documentation. d) Improving the maintainability of the program.
How do chunking and cross-referencing contribute to program comprehension? a) By introducing new features to the software. b) By making the software harder to understand. c) By constructing mental models at different levels of abstraction. d) By isolating and correcting defective elements.
What is the purpose of generating hypotheses in program comprehension? a) To eliminate all syntactic dependencies. b) To understand code in an incremental manner. c) To rewrite the entire codebase. d) To make software maintenance more complex.
Which strategy involves starting program comprehension from high-level goals? a) Bottom-up. b) Opportunistic. c) Top-down. d) Cross-referencing.
What are program families in the context of software reuse? a) Sets of programs with extensive common properties. b) Reusable artifacts for data standardization. c) The properties of the program code. d) Domain analysis.
What does Capers Jones identify as types of reusable artifacts in software reuse? a) Syntactic dependencies and semantic dependencies. b) Program families and domain analysis. c) Reusable assets and software knowledge. d) Data reuse and architectural reuse.
What characteristic encourages the reusability of a software component? a) High complexity and tight coupling. b) Loose coupling and environmental independence. c) Limited adaptability and low cohesion. d) Reduced understandability and low reliability.
What does the "Training" type of maintenance involve? a) Reviewing program code and documentation. b) Improving system up time. c) Training stakeholders about system implementation. d) Modifying conventions for naming data.
What is the main focus of the "Consultive" type of maintenance? a) Improving system up time. b) Substituting components and algorithms. c) Estimating costs and time for maintenance work. d) Correcting identified bugs.
Which activities are typically associated with the "Evaluative" type of maintenance? a) Substituting components and algorithms. b) Reviewing program code and documentation. c) Enhancing system functionality. d) Adding and modifying business rules.
What is a common task in the "Reformative" type of maintenance? a) Substituting out-of-date documentation. b) Porting the software to a different execution platform. c) Adding entries to a data dictionary. d) Reviewing program code and documentation.
What are ordinary activities in the "Updative" type of maintenance? a) Modifying conventions for naming data. b) Adding and modifying business rules. c) Substituting components and algorithms. d) Updating documentation with test plans.
What does the "Groomative" type of maintenance focus on? a) Correcting identified bugs. b) Substituting components and algorithms. c) Modifying conventions for naming data. d) Improving system up time.
What is the main goal of "Preventive" maintenance activities? a) Correcting identified bugs. b) Establishing a base for future transition to emerging technology. c) Adding and modifying business rules. d) Substituting out-of-date documentation.
What results do activities in the "Performance" type of maintenance produce? a) Enhancing system functionality. b) Improving system up time. c) Modifying conventions for naming data. d) Reviewing program code and documentation.
What are ordinary activities in the "Adaptive" type of maintenance? a) Correcting identified bugs. b) Porting the software to a different execution platform. c) Substituting out-of-date documentation. d) Adding and modifying business rules.
What does "Reductive" maintenance involve? a) Dropping some data generated for the customer. b) Modifying conventions for naming data. c) Correcting identified bugs. d) Enhancing system functionality.
What are ordinary activities in the "Corrective" type of maintenance? a) Adding entries to a data dictionary. b) Modifying conventions for naming data. c) Correcting identified bugs. d) Updating documentation with test plans.
What is the primary focus of "Enhancive" maintenance? a) Porting the software to a different execution platform. b) Adding and modifying business rules to enhance system functionality. c) Modifying conventions for naming data. d) Updating documentation with test plans.
In the "Corrective" type of maintenance, what is an ordinary activity? a) Substituting components and algorithms. b) Adding entries to a data dictionary. c) Correcting identified bugs. d) Reviewing program code and documentation.
What is the main goal of ordinary activities in the "Enhancive" type of maintenance? a) Dropping some data generated for the customer. b) Improving system up time. c) Enhancing the system's functionality available to the customer. d) Reviewing program code and documentation.
What is a common task in "Enhancive" maintenance? a) Modifying conventions for naming data. b) Adding and modifying business rules. c) Reviewing program code and documentation. d) Substituting out-of-date documentation.
What is the key component of a software product according to the provided information? a) Artifacts b) Maintenance c) Source code d) Evolution.
What does a product upgrade create in the context of software maintenance? a) A new baseline b) A notice explaining system restriction c) A coherent collection of artifacts d) A patch code for an object.
Which activities ensure that modifications on a system do not damage its integrity? a) Investigation activity b) Modification activity c) Management activity d) Quality assurance activity.
What do artifacts include in the context of maintenance processes? a) System representations b) Change requests c) Service Level Agreements (SLA) d) Change control board.
What is the primary purpose of the event management process in a maintenance organization? a) Evaluate the impact of change b) Handle change requests c) Manage the change control system d) Maintain the integrity of the system.
What is the role of the Configuration Management process in a maintenance organization? a) Implement specific change requests b) Evaluate results of investigations c) Maintain the integrity of a system d) Sign Service Level Agreements (SLA).
Who handles maintenance change requests in a maintenance organization? a) Users and customers b) Maintenance personnel c) Change control board d) All of the above.
When is a proposed modification activity scheduled in a maintenance organization? a) After the modification is approved by the board b) Before an initial investigation c) Without signing a Service Level Agreement (SLA) d) During the event management process.
What does SLA stand for in the context of maintenance services? a) System Lifecycle Agreement b) Source code License Agreement c) Service Level Agreement d) Software Loading Agreement.
What is the main purpose of Level 3 support in a maintenance organization? a) File problem reports b) Analyze problems and recommend quick fixes c) Communicate with users and analyze problems d) Perform actual changes to the product software.
Why do maintenance activities need to consider the human element? a) To increase system integrity b) To decrease maintenance time c) Because software production and maintenance are human-intensive activities d) To minimize the impact of change requests.
What does "Maintenance means preserving software from decline or failure" imply? a) Maintenance prevents software from evolving b) Maintenance avoids software updates c) Maintenance aims to keep software in a stable state d) Maintenance is only concerned with adding new features.
How is evolution defined in the context of software maintenance? a) A one-time change to software b) A continuously changing software from a worse state to a better state c) The process of maintaining software integrity d) The process of downgrading software versions.
What is the primary focus of the investigation activity in maintenance types? a) Evaluate the impact of change b) Change the system's implementation c) Manage the configuration control d) Ensure the quality of the system.
What is the significance of the Management activity in maintenance types? a) It changes the system's implementation b) It relates to the configuration control of the maintained system c) It evaluates the impact of change d) It ensures the quality of the system.
What is the main focus of the explanatory approach in software evolution? a) Managing the effects of evolution b) Developing better methods and tools c) Explaining the causes and effects of evolution d) Implementing real-world solutions.
How does the process improvement approach view software evolution? a) Scientific viewpoint b) Engineering viewpoint c) Business viewpoint d) Artistic viewpoint.
What does the SPE Taxonomy stand for in the context of software evolution? a) Software Program Evolution b) Specified, Problem, Evolving programs c) Software Process Enhancement d) Systematic Program Evaluation.
What characterizes S-type (Specified) programs in the SPE Taxonomy? a) Defined only by correctness criteria b) Based on a practical abstraction c) Mechanize real-world activities d) Evolve as the world changes.
What is a key difference between S-type and P-type programs in the SPE Taxonomy? a) S-type relies on practical abstractions b) P-type is defined by correctness criteria c) S-type is specified with formal definitions d) P-type does not change as the world changes.
What characterizes an E-type (Evolving) program in the SPE Taxonomy? a) Defined only by correctness criteria b) Mechanizes human or societal activities c) Based on a formal specification d) Does not change as the world changes.
What is FOSS, as described in Eric Raymond's article "The Cathedral and the Bazaar"? a) Fragmented and Overly Complex Software Structure b) Flexible and Open Source Software c) Free and Open Source Software d) Fictitious Organization for Software Standards.
What distinguishes the evolution of FOSS from Closed Source Software (CSS)? a) Similarities in team structure b) Identical release processes c) Consistent global factors d) Differences in team structure, process, releases, and global factors.
How is a Commercial Off-The-Shelf (COTS) component defined? a) A custom-built software component b) A unit with unspecified interfaces c) A component with implicit context dependencies d) A unit with contractually specified interfaces and explicit context dependencies.
Why is the use of COTS components increasing in modern software development? a) Decreased productivity b) Longer time to market c) High-quality assurance d) Limited reusability.
What is the primary challenge in maintaining COTS-based Systems (CBS)? a) Lack of skilled personnel b) Inability to tailor COTS components c) Unreliable middleware d) Black-box nature of COTS components.
What is the purpose of a wrapper in the context of COTS-based Systems (CBS)? a) To isolate components from the system b) To enhance component functionality c) To create a middleware layer d) To replace COTS components.
What are some difficulties in maintaining CBS? a) Expanding functionality b) Compatibility of upgrades c) Reliable COTS components d) Intuitive middleware.
What cost-drivers influence maintenance activities for CBS? a) Marketing and promotion b) Component reconfiguration, testing, and debugging c) Software development tools d) External partnerships.
What design attributes influence CBS maintainability according to Vigder and Kark? a) Encapsulated component collaborations, controlled interfaces, and consistent failure handling b) Uncontrolled dependencies and minimal component coupling c) Maximal build and deployment effort d) Lack of visibility and community support.
Which of the following is a potential challenge in maintaining COTS-based Systems (CBS)? a) Frozen functionality b) Openness of components c) Controlled component dependencies d) Minimal build effort.
What activities contribute to maintenance difficulties for CBS? a) Component reconfiguration and testing b) Openness of components and community support c) Tailoring of components and consistent failure handling d) Frozen functionality and incompatible upgrades.
How does the architecture of a Component-Based System (CBS) impact maintainability? a) It has no impact on maintainability b) It influences the component selection c) It minimizes configuration management efforts d) It hinders component reconfiguration.
What is the role of a glue component in COTS-based Systems (CBS)? a) Isolate components from the system b) Provide functionality to combine different components c) Enhance the functionality of a component d) Tailor individual components.
What attributes of components affect the evolution maintenance of CBSs? a) Closed nature and inconsistent support b) Proprietary interfaces and minimal build effort c) Openness, tailorability, and available support community d) Unspecified context dependencies and unreliable COTS components.
What distinguishes FOSS from Closed Source Software (CSS)? a) Similarities in releases b) Identical team structure c) Process differences d) Similar global factors.
What is the purpose of abstraction in software reengineering? a) To increase the complexity of understanding a system b) To focus on irrelevant details c) To reduce complexity by hiding irrelevant details d) To replace abstraction with refinement.
What is the reverse of abstraction in software reengineering? a) Reflection b) Reduction c) Refinement d) Abstraction.
How does forward engineering differ from reverse engineering in software development? a) Forward engineering focuses on selected system characteristics b) Reverse engineering moves from the top level to the bottom c) Forward engineering follows a sequence from design to requirements d) Reverse engineering involves analyzing the software and representing it at a higher level of abstraction.
What is decompilation, and how does it relate to reverse engineering? a) Decompilation involves creating a new system b) Decompilation translates object code into a high-level program c) Decompilation is an example of forward engineering d) Decompilation is unrelated to reverse engineering.
What are the four levels used in creating models of software development during reengineering? a) Initial, Development, Testing, Deployment b) Conceptual, Requirements, Design, Implementation c) High, Medium, Low, Very Low d) Alpha, Beta, Gamma, Delta.
Which principle involves making changes to a system representation without modifying the degree of abstraction? a) Refinement b) Abstraction c) Alteration d) Integration.
How is alteration represented in the context of reengineering principles? a) Up-arrow d) Diagonal arrow c) Horizontal arrow b) Down-arrow .
What does the reengineering process accept as input to produce the code of the renovated system? a) New design documents b) Hardware components c) Existing code of the system d) User requirements.
What complex activities may be involved in the reengineering process? c) Finding new requirements for the system b) Recreating a design from the existing source code a) Translating source code to a new language d) Both b and c.
What does the horseshoe metaphor describe in the context of reengineering? a) A new coding technique b) A three-step architectural reengineering process c) A tool for source code translation d) A visual representation of abstraction.
According to Chikofsky and Cross II, what does software reengineering involve? a) Modifying an operational system b) Analyzing and altering an operational system c) Creating a new system without altering the existing one d) Improving system performance without changing the representation.
What is the primary purpose of the reengineering process according to Byrne? a) Analyzing system components b) Improving system comprehension c) Creating a new system at the same level of abstraction d) Altering the system's degree of abstraction.
What are the major dimensions of alteration in reengineering? a) Change in abstraction and change in requirements b) Change in functionality and change in implementation technique c) Change in design and change in testing strategy d) Change in documentation and change in coding style.
What equation summarizes the reengineering process, according to the provided information? a) Reengineering = Reverse engineering - + Forward engineering b) Reengineering = Reverse engineering + Alteration + Forward engineering c) Reengineering = Reverse engineering - Forward engineering d) Reengineering = Alteration + Forward engineering - Reverse engineering.
What element in the reengineering equation represents alterations made to the original system? a) Alpha b) Beta c) Delta d) Gamma.
What does rehosting mean in the context of software reengineering? a) Adding features to the source code b) Transforming targeted source code without feature changes c) Reducing system functionality d) Increasing maintenance costs.
In the context of system characteristics, what does "recode" involve in software reengineering? a) Altering design characteristics b) Changing the requirement scope c) Changing implementation characteristics at the source-code level d) Transforming system documentation.
What is the primary focus of "redesign" in software reengineering? a) Altering the requirement characteristics b) Restructuring the architecture and modifying the data model c) Replicating the original system at a higher level of abstraction d) Replacing a procedure or algorithm with an inefficient one.
How does "respecify" change the requirement characteristics of a system in software reengineering? a) By altering the design b) By changing the form of requirements d) By changing the implementation technique c) By restructuring the architecture .
What does "rethink" involve in the context of software reengineering? a) Altering the conceptual characteristics of the system b) Incrementally improving system components d) Reducing the abstraction level of the system c) Replacing the entire system at once .
Which strategy reflects the principle of alteration in software reengineering? a) Rework strategy b) Replace strategy c) Rewrite strategy d) Refactoring strategy.
What does the rework strategy aim to achieve in software reengineering? a) Altering design characteristics b) Applying abstraction to the entire system c) Replacing unstructured control flow constructs d) Translating the system into a different language.
Which approach involves substituting the entire system at once in software reengineering? a) Incremental approach b) Partial approach c) Iterative approach d) Big Bang approach.
What is a disadvantage of the Big Bang approach in software reengineering? a) Reduced scope of reengineering b) Limited resource consumption c) Monolithic task and long completion time d) Easy identification of errors.
What is an advantage of the incremental approach in software reengineering? a) Long completion time b) Difficulty in locating errors c) Clear identification of newly added components d) Inability to change the entire system architecture.
What is a disadvantage of the partial approach in software reengineering? a) Reduced scope of reengineering b) Modifications to the interface between modified and non-modified portions c) Clear identification of interim versions d) Easy integration of reengineered and non-reengineered parts.
What does the iterative approach guarantee during the reengineering process in software reengineering? a) Continued operation of the system b) Monolithic task completion c) Reduced resource consumption d) Changing the entire system architecture.
What is a major disadvantage of the iterative approach in software reengineering? a) Continued operation of the system b) Need to keep track of different components c) Preservation of maintainers' and users' familiarity d) Reduced scope of reengineering.
What does the evolutionary approach focus on in software reengineering? a) Substituting components irrespective of functionality b) Grouping existing components by locations c) Building new components unrelated to functionality d) Substituting components based on functionality.
What is a major disadvantage of the evolutionary approach in software reengineering? a) Reduced scope of individual components b) Increased cohesiveness in design c) Difficulty in identifying functions with similarities d) Preservation of familiarities with the system.
What is the SCORE/RM model used for in software reengineering? a) Describing process models b) Comprehending, evaluating, and reasoning about processes c) Quantifying improvements in the software d) Managing the interfaces among elements.
What elements constitute the SCORE/RM model? a) Function, design, documentation, and interface b) Function, documentation, repository database, and metrication c) Abstraction, transformation, encapsulation, and certification d) Requirement, redesign, refactor, and respecify.
What does the metrication element in the SCORE/RM model quantify? a) Changes in abstraction level b) Improvements in software resulting from reengineering c) Documentation structures and values d) The number of layers in the reengineering process.
Which approach substitutes components of the original system with reengineered components in the SCORE/RM model? a) Incremental approach b) Iterative approach c) Evolutionary approach d) Big Bang approach.
How are the interfaces among elements represented in the SCORE/RM model? a) Function/Design, Design/Repository, Repository/Documentation b) Metrication/Function, Documentation/Function, Function/Function c) Abstraction/Refinement, Refinement/Alteration, Alteration/Abstraction d) Interface1, Interface2, Interface3.
What is the major advantage of the Big Bang approach in software reengineering? a) Reduced resource consumption b) Monolithic task completion c) Easy identification of errors d) Immediate transition of the system into a new environment.
What does the rework strategy in software reengineering involve? a) Substituting the entire system at once c) Altering the design characteristics d) Translating the system into a different language b) Incrementally improving system components .
What is the primary focus of the iterative approach in software reengineering? a) Changing the entire system architecture b) Continued operation of the system c) Locating errors becomes easier d) Guaranteeing the coexistence of different types of components.
What is a disadvantage of the partial approach in software reengineering? a) Reduced scope of reengineering b) Limited resource consumption c) Modifications to the interface between modified and non-modified portions d) Easy integration of reengineered and non-reengineered parts.
What does the evolutionary approach in software reengineering aim to achieve? a) Easy identification of errors b) Increased cohesiveness in design c) Preservation of familiarities with the system d) Building a new system with functionally cohesive components.
What does rehosting mean in the context of software reengineering? a) Adding features to the source code b) Transforming targeted source code without feature changes c) Reducing system functionality d) Increasing maintenance costs.
How does wrapping hide the complexity of the legacy component? a) By removing the legacy component entirely b) By exposing the internal details to clients c) By encapsulating with a new software layer and providing a new interface d) By reducing the communication with the legacy component.
Which communication mechanisms can the encapsulation layer use to connect with the legacy component? a) Direct memory access b) Encrypted channels c) Sockets, RPCs, or predefined APIs d) Manual file transfers.
How is the wrapped component viewed in the context of a wrapper? a) As a standalone application b) As an obsolete system c) As a remote server providing services d) As an isolated entity with no interaction.
What does a wrapper do by means of a message passing mechanism? a) Disconnects from clients b) Accepts requests, restructures them, and invokes the target object c) Ignores input messages d) Reduces the output from the wrapped entity.
What is a primary function of the wrapper on the input front in message passing? a) Ignoring client requests b) Capturing outputs from the wrapped entity c) Accepting requests, restructuring them, and invoking the target object d) Reducing the communication speed with the legacy component.
Which problem is not solved by the wrapping technique in legacy systems? a) Complexity reduction b) Improved communication c) Integration of new components d) Issues with legacy systems.
What is the classification of database wrappers based on? b) Direction of integration (forward or backward) a) Size of the legacy database c) Age of the legacy system d) Complexity of the database queries.
What does a forward database wrapper do in integrating a new component with a legacy system? a) Migrates data first, then develops new components b) Develops new components first, then migrates data c) Ignores the legacy data and queries d) Encapsulates the entire legacy system.
What services do system service wrappers support customized access to? b) User interfaces c) Commonly used system services like routing, sorting, and printing d) Legacy system APIs a) Database queries .
What do application wrappers encapsulate in the context of legacy systems? c) Database queries b) Online transactions or batch processes d) Function wrappers a) System services .
What is the primary purpose of function wrappers? a) Providing an interface to call functions in a wrapped entity d) Integrating new components with legacy systems c) Substituting program inputs with data inputs b) Encapsulating online transactions .
Which level of encapsulation involves starting a job on the server and transferring input and output data through files? a) Process level b) Transaction level c) Program level d) Module level.
In transaction level wrapping, what does the wrapper simulate? a) Database queries b) Legacy user terminal d) System services c) Program APIs .
How are batch programs called in the program level of encapsulation? a) Via encrypted channels b) Via APIs d) Via direct memory access c) Via wrappers .
What is a significant deviation in module level encapsulation from usual calls? a) Parameters passed by value, not by references b) Parameters passed by references, not by value c) Direct memory access to parameters d) No parameters passe.
What does a wrapper do in module level encapsulation when parameters are passed by value? a) Invokes the module directly b) Buffers received values and passes them on c) Ignores the parameters d) Encapsulates the parameters.
What is invoked in procedure level encapsulation as if it was compiled separately? a) Legacy user terminal b) Internal procedure of the system d) Entire legacy program c) System services .
What is the first step in constructing a wrapper for a legacy system? a) Adapting the target program b) Verifying interactions c) Constructing a wrapper d) Adapting the client program.
What does the external interface of a wrapper contain? a) Legacy source code b) Wrapper's internal details c) Control information and input arguments d) Encrypted messages from the legacy system.
What is screen scraping commonly used for in wrapping? a) Enhancing text-based interfaces b) Replacing graphical user interfaces c) Automating legacy systems d) Providing a new software layer .
What is NOT addressed by screen scraping when mounting a GUI on a legacy system? a) Evolution to support new functions b) High maintenance cost c) Overloading d) Substantial risk.
What is the primary benefit of migration over wrapping when dealing with a legacy information system (LIS)? a) Shorter time duration b) Higher system complexity c) Easier maintenance d) Increased overloading.
What are the three main steps involved in LIS migration? a) Program conversion, data cleaning, and schema transformation b) Extract, load, and transform (ELT) c) Conversion of schema, data, and program d) Portfolio analysis, stakeholder identification, and requirement understanding.
What does data conversion involve in LIS migration? a) Extract, load, and transform (ELT) b) Conversion of schema, data, and program c) Data cleaning, program transformation, and schema adaptation d) Creating a modern database, schema conversion, and data cleaning.
What is the purpose of program conversion in LIS migration? a) Transforming the target schema b) Modifying the program to access the migrated database c) Cleaning the legacy data d) Adapting the application components.
What is the focus of portfolio analysis in migration planning? a) Stakeholder perspectives b) Technical quality and business value c) Data conversion strategies d) Legacy system understanding.
Who are the stakeholders in migration planning? a) Only developers b) Only architects c) Only customers d) Architects, developers, maintainers, managers, customers, and end users.
What is the purpose of understanding the LIS in migration planning? a) To develop a business case b) To perform portfolio analysis c) To evaluate available technologies d) To ensure the success of the migration project.
In migration planning, what does Step 7 involve? b) Understanding the target technology a) Understanding the LIS d) Defining the target architecture c) Evaluating available technologies .
How is the feasibility of the migration strategy evaluated in migration planning? a) Based on portfolio analysis results b) Based on stakeholder feedback c) After completing all migration steps d) Throughout the entire migration process.
Which step in migration planning involves creating a business case? a) Step 3: Understand the requirements b) Step 4: Create a business case c) Step 5: Make a go or no-go decision d) Step 6: Understand the LIS.
What does Step 10 in migration planning involve? a) Defining the target architecture c) Reconciling the strategy with stakeholder needs d) Determining the required resources b) Defining a migration strategy .
What is the purpose of Step 11 in migration planning? a) Determining the required resources b) Reconciling the strategy with stakeholder needs c) Evaluating the feasibility of the strategy d) Creating a business case.
What is the purpose of Step 11 in migration planning? a) Determining the required resources b) Reconciling the strategy with stakeholder needs c) Evaluating the feasibility of the strategy d) Creating a business case.
What is COCOMO II used for in migration planning? a) Evaluating available technologies b) Estimating the resource needs c) Defining the target architecture d) Reconciling the strategy with stakeholder needs.
What is the primary purpose of defining a target architecture in migration planning? b) Evaluating available technologies d) Representing stakeholders' vision of the new system c) Reconciling the strategy with stakeholder needs a) Creating a business case .
What is the Butterfly methodology in migration planning? a) Requires simultaneous access of both legacy and target databases b) Involves evolving the legacy system incrementally c) Implements the migration process all at once d) Focuses on database-first migration.
What does the iterative method imply in migration planning? a) Reengineering one component at a time b) Evolving the legacy system incrementally c) Simultaneous access to both legacy and target databases d) Implementing migration all at once.
What are the different states a component can be in during the iterative reengineering process? a) New, evolved, and decomposed b) Restored, cleaned, and transformed c) Legacy, restored, reengineered, and new d) Migrated, adapted, and extracted.
What is the primary advantage of the iterative method in migration planning? a) Simultaneous access to both legacy and target databases c) Implementing migration all at once d) Reengineering all components simultaneously b) Evolving the legacy system incrementally .
What is the Cold Turkey approach in migration planning? a) Evolving the legacy system incrementally b) Implementing migration all at once c) Simultaneous access to both legacy and target databases d) Focusing on database-first migration.
What does the Chicken Little approach refine in migration planning? a) Cold Turkey strategy b) Composite database strategy d) Iterative method c) Butterfly methodology .
What does the Composite Database strategy focus on in migration planning? a) Reengineering one component at a time c) Decomposing the legacy system b) Simultaneous access to both legacy and target databases d) Evolving the legacy system incrementally.
What is the Database Last approach in migration planning? a) Evolving the legacy system incrementally c) Focusing on database-first migration b) Decomposing the legacy system d) Incrementally migrating the database.
What is the focus of the Chicken Little approach in migration planning? a) Reengineering one component at a time b) Simultaneous access to both legacy and target databases d) Decomposing the legacy system c) Refining the composite database strategy .
Report abuse Consent Terms of use