CSCI 4330 SOFTWARE DEVELOPMENT MID TERM, Exams of Social Sciences

CSCI 4330 SOFTWARE DEVELOPMENT MID TERM

Typology: Exams

2025/2026

Available from 01/17/2026

ROCKY-B
ROCKY-B šŸ‡°šŸ‡Ŗ

4.4

(16)

40K documents

1 / 16

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1 / 16
CSCI 4330 SOFTWARE DEVELOPMENT MID TERM
What are the descriptions of the system services and constraints called?
a. Requirements
b. Specifications
c. Assumptions
d. Constraints - Answers -a. Requirements
What are the two types of requirements?
a. User requirements and system constraints
b. User constraints and system constraints
c. System constraints and operational constraints
d. User requirements and system requirements - Answers -d. User requirements and system
requirements
What is a system stakeholder?
a. Any person responsible for developing the system
b. Any person who uses the system
c. Any person who owns the system
d. Any person or organization affected by the system and thus has a legitimate interest - Answers -d.
Any person or organization affected by the system and thus has a legitimate interest
To make non-functional system properties testable, which metric could be used for the property 'Ease
of use'?
a. Mean time to failure
b. Processed transactions/second
c. Training time
d. Number of target systems - Answers -c. Training time
Why might non-functional requirements' implementation be spread throughout the system? (Could be
Multiple)
a. Because they are easier to manage in small pieces
b. Because they impact the system's overall architecture
c. Because non-functional requirements are irrelevant to the system's performance
d. Because they are related to functional requirements - Answers -b. Because they impact the
system's overall architecture
d. Because they are related to functional requirements
What are functional requirements in software engineering?
a. They outline the system's expected operations.
b. They outline the system's architectural design.
c. They outline the system's expected errors.
d. They outline the system's unexpected operations. - Answers -a. They outline the system's
expected operations.
What best describes non-functional requirements in a software system?
a. They are statements of what the system should not do.
b. They are constraints on the services or functions offered by the system.
c. They are statements of services the system should provide.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download CSCI 4330 SOFTWARE DEVELOPMENT MID TERM and more Exams Social Sciences in PDF only on Docsity!

CSCI 4330 SOFTWARE DEVELOPMENT MID TERM

What are the descriptions of the system services and constraints called? a. Requirements b. Specifications c. Assumptions d. Constraints - Answers - a. Requirements What are the two types of requirements? a. User requirements and system constraints b. User constraints and system constraints c. System constraints and operational constraints d. User requirements and system requirements - Answers - d. User requirements and system requirements What is a system stakeholder? a. Any person responsible for developing the system b. Any person who uses the system c. Any person who owns the system d. Any person or organization affected by the system and thus has a legitimate interest - Answers - d. Any person or organization affected by the system and thus has a legitimate interest To make non-functional system properties testable, which metric could be used for the property 'Ease of use'? a. Mean time to failure b. Processed transactions/second c. Training time d. Number of target systems - Answers - c. Training time Why might non-functional requirements' implementation be spread throughout the system? (Could be Multiple) a. Because they are easier to manage in small pieces b. Because they impact the system's overall architecture c. Because non-functional requirements are irrelevant to the system's performance d. Because they are related to functional requirements - Answers - b. Because they impact the system's overall architecture d. Because they are related to functional requirements What are functional requirements in software engineering? a. They outline the system's expected operations. b. They outline the system's architectural design. c. They outline the system's expected errors. d. They outline the system's unexpected operations. - Answers - a. They outline the system's expected operations. What best describes non-functional requirements in a software system? a. They are statements of what the system should not do. b. They are constraints on the services or functions offered by the system. c. They are statements of services the system should provide.

d. They are the needs for user authentication facilities in the system. - Answers - b. They are constraints on the services or functions offered by the system. Who might be involved in the requirements elicitation process? a. End-users b. Domain experts c. Managers d. All of them - Answers - d. All of them What potential problem could arise with the ethnography technique? a. It requires high technical expertise b. It relies heavily on interviewee honesty c. It studies practices which might be historically based and no longer relevant d. It can only be used in closed, traditional environments - Answers - c. It studies practices which might be historically based and no longer relevant In the process model for requirement elicitation and analysis, which stage involves resolving conflicting requirements among stakeholders? a. Requirements specification b. Requirements discovery c. Requirements prioritization and negotiation d. Requirements classification and organization - Answers - c. Requirements prioritization and negotiation What might cause the requirements to change during the analysis process? a. New stakeholders emerging b. Business environment changes c. Both d. None of them - Answers - c. Both What is a problem that can arise due to requirements imprecision? a. Requirements may be too detailed for developers to understand. b. Requirements may be too complicated for users to understand. c. Requirements may not be relevant to the software's purpose. d. Requirements may be interpreted differently by developers and users. - Answers - d. Requirements may be interpreted differently by developers and users. What is the main challenge in requirements elicitation process? a. Stakeholders express requirements in computer technical terms b. Stakeholders know exactly what they want c. Organizational factors have no influence on the system requirements d. Different stakeholders may have conflicting requirements - Answers - d. Different stakeholders may have conflicting requirements What does the 'System Architecture' section of the requirements document highlight? a. The expected readership of the document. b. The fundamental assumptions on which the system is based. c. The high-level overview of the anticipated system architecture. d. Detailed information related to the application being developed. - Answers - c. The high-level overview of the anticipated system architecture. Which of the following is NOT a problem commonly associated with Natural Language

a. Pricing check b. Verifiability check c. Consistency check d. Validity check - Answers - a. Pricing check What is the main purpose of prototyping in the context of requirements validation? a. To create a final product for release b. To ensure the system operates without errors c. To market the product to stakeholders d. To use an executable model of the system to check requirements - Answers - d. To use an executable model of the system to check requirements What is the challenge in defining system requirements for large systems with a diverse user community? a. It is difficult to gather requirements from a large user community. b. There are often conflicting or contradictory requirements and priorities among users. c. It is challenging to communicate with a large number of users. d. Large user communities often do not understand the technical aspects of the system. - Answers - b. There are often conflicting or contradictory requirements and priorities among users. What causes most changes to the system requirements after it's installed? a. Technical glitches in the system. b. User complaints and suggestions. c. Changes in the system's business environment. d. Updates in software technology. - Answers - c. Changes in the system's business environment. Why are requirements considered inevitable? a. They serve only as the basis for a contract b. They are required by law c. They serve only as the basis for a bid for a contract d. They can serve both as the basis for a contract and a bid for a contract - Answers - d. They can serve both as the basis for a contract and a bid for a contract What is meant by the completeness of requirements? a. They should include descriptions of the required software architecture. b. They should only include essential system facilities. c. They should include descriptions of all facilities required. d. They should include descriptions of all potential errors. - Answers - c. They should include descriptions of all facilities required. What are functional requirements in a software system? a. They are requirements that apply to the system as a whole rather than individual system features b. They are requirements that include timing constraints, constraints on the development process, and constraints imposed by standards. c. They are statements of services the system should provide, its reactions to certain inputs, and its behavior in specific situations d. They are constraints on the services or functions offered by the system - Answers - c. They are statements of services the system should provide, its reactions to certain inputs, and its behavior in specific situations The classifications of non-functional requirements are: a. Product, process, and performance requirements

b. Functional, non-functional, and extra-functional requirements c. Internal, external, and transitional requirements d. Product, organizational, and external requirements - Answers - d. Product, organizational, and external requirements What is the primary goal of requirements elicitation in software engineering? a. To resolve conflicting requirements b. To prioritize the requirements c. To understand the application domain, services that the system should provide, and operational constraints d. To code the system - Answers - c. To understand the application domain, services that the system should provide, and operational constraints What are the two primary types of interviews used in the requirements elicitation process? a. Open and closed b. Formal and informal c. Group and individual d. Direct and indirect - Answers - a. Open and closed What can ethnography reveal during the requirements elicitation process? a. Stakeholders' personal preferences b. Hidden system requirements and work practices c. Obsolete system hardware d. Inherent errors in the system - Answers - b. Hidden system requirements and work practices Who among the following utilize the requirements document? a. System customers b. System engineers c. System maintenance engineers d. All of the above - Answers - d. All of the above What does the 'User Requirements Definition' section of the requirements document entail? a. The system's distribution of functions across modules. b. Services provided for the user and the nonfunctional system requirements. c. Description of the anticipated changes in the system. - Answers - b. Services provided for the user and the nonfunctional system requirements. What does a basic "use-cases" identify? a. Only the type of interaction b. Only the actors involved in an interaction c. Both the actors involved and the type of interaction d. None of them - Answers - c. Both the actors involved and the type of interaction Which of the following is true about structured specifications? a. They reduce variability in the specification and organize requirements more effectively b. They are more ambiguous than natural language specifications c. They completely eliminate the problems of natural language specification d. They cannot be used to specify complex computations - Answers - a. They reduce variability in the specification and organize requirements more effectively The information about anticipated system evolution in the requirements document primarily benefits: a. System engineers

What kind of requirements does ethnography help to discover? a. Requirements based on formal job descriptions b. Requirements based on theoretical job scenarios c. Requirements based on stakeholder preferences d. Requirements based on actual work practices and cooperative activities - Answers - d. Requirements based on actual work practices and cooperative activities Which of the following is NOT a method of requirements elicitation? a. Use Case Diagramming b. Ethnography c. Rapid Application Development d. Interviewing - Answers - a. Use Case Diagramming c. Rapid Application Development Who might be involved in the requirements elicitation process? a. Managers b. All of them c. Domain experts d. End-users - Answers - b. All of them What is the benefit of including an explanation (rationale) for a requirement in the natural language specification? a. It reduces the number of requirements b. It highlights key parts of the requirement c. It provides knowledge on whom to consult regarding the requirement d. It simplifies the language used - Answers - c. It provides knowledge on whom to consult regarding the requirement What observations have been made about the practical application of use cases? a. They are extremely useful in discussing requirements b. Stakeholders always find the graphical model to be useful c. Use cases may be more helpful in systems design than in requirements engineering d. The term use case is universally understood - Answers - c. Use cases may be more helpful in systems design than in requirements engineering What is the main purpose of the Software Requirements Document (SRS)? a. It is a design document b. It details how the system should function c. It states what is required of the system developers. d. It is a user manual for the software. - Answers - c. It states what is required of the system developers. True or False: All issues related to requirements are typically detected during the validation process. - Answers - False What does requirements validation ensure? a. The system can be implemented within the budget b. The development process will be smooth c. The system will operate without errors d. The defined requirements match the customer's actual needs - Answers - d. The defined requirements match the customer's actual needs

What is the argument of many agile methods regarding system requirements? a. Requirements should be determined post-delivery b. Incremental requirements engineering should not be used c. Producing detailed system requirements is vital for all systems d. Producing detailed system requirements is a waste of time due to the rapid change in requirements

  • Answers - d. Producing detailed system requirements is a waste of time due to the rapid change in requirements For which type of system is a detailed requirements document particularly necessary? a. Critical systems b. Incrementally developed systems c. All types of systems d. In-house software products - Answers - a. Critical systems What does a software design generally describe? a. The software structure, data models, interfaces, and sometimes algorithms b. The personal preferences of the programmer c. The marketing strategies for the software d. The customer's requirements - Answers - a. The software structure, data models, interfaces, and sometimes algorithms In integration and configuration model, What is the purpose of the refinement stage? a. To identify and assess components b. To revise requirements based on available components c. To configure the existing system d. To modify and develop new components - Answers - b. To revise requirements based on available components What is the approach of Incremental Delivery in software development? a. Break down the development and delivery into increments, each delivering a part of required functionality b. Deliver only the basic facilities of the system first c. Deliver the system only when all functionality is complete d. Deliver the system as a single delivery - Answers - a. Break down the development and delivery into increments, each delivering a part of required functionality What is a challenge in implementing Incremental Delivery for replacement systems? a. It's easier to identify common facilities needed by all increments b. Increments tend to have equivalent functionality as the system being replaced c. Increments typically have less functionality than the system being replaced, making it difficult to implement d. All increments have more functionality than the system being replaced - Answers - c. Increments typically have less functionality than the system being replaced, making it difficult to implement In which phase of the software development process is the software system abstraction turned into actual programs or units of code? a. Implementation and unit testing b. Operation and maintenance c. Requirements analysis and definition d. System and software design - Answers - a. Implementation and unit testing

testing How does incremental delivery support software development adaptation to change? a. It allows changes to be incorporated into later increments at a lower cost b. It enforces premature commitment to full system requirements c. It reduces the need for customer feedback d. It increases the overall cost of software development - Answers - a. It allows changes to be incorporated into later increments at a lower cost What does customer (acceptance) testing typically involve? a. Testing with customer data to ensure the system meets their needs b. Sending the system to the customer without testing c. Testing with simulated data d. Ignoring the customer's needs - Answers - a. Testing with customer data to ensure the system meets their needs What are the four basic process activities in software development? a. Specification, Designing, Validation, and Debugging b. Designing, Development, Validation, and Evolution c. Specification, Development, Validation, and Evolution d. Specification, Designing, Debugging, and Testing - Answers - c. Specification, Development, Validation, and Evolution Which is typically the longest phase in the software development process? a. System and software design b. Operation and maintenance c. Implementation and unit testing d. Requirements analysis and definition - Answers - b. Operation and maintenance What stage of software development involves creating an executable system for delivery to the customer? a. Requirements Gathering b. Testing c. Maintenance d. Implementation - Answers - d. Implementation What are the outputs of the design process for critical systems? a. Program code b. Detailed design documents c. Market analysis d. Agile methodologies - Answers - b. Detailed design documents Which of the following factors influence how software development activities are carried out? a. Type of software being developed b. Experience and competence of the developers c. All of the answer choices are correct d. Type of organization developing the software - Answers - c. All of the answer choices are correct What does a plan-driven process entail? a. None of the answer choices are correct b. All process activities are planned in advance and progress is measured against this plan c. The planning is incremental and easily changes to accommodate customer requirements

d. The process activities are spontaneously decided upon - Answers - b. All process activities are planned in advance and progress is measured against this plan How is software engineering best perceived in the current context? a. As a sporadic process b. As a static process c. As a declining process d. As an evolutionary process adapting to changing needs - Answers - d. As an evolutionary process adapting to changing needs In an agile approach to development, How is the design usually developed in software implementation? a. By skipping the detailing process b. By the customer c. In stages, with progressive detailing d. In one single step - Answers - c. In stages, with progressive detailing What does change anticipation in software development entail? a. Avoiding any possible changes b. Implementing activities that can predict possible changes to minimize rework c. Reacting to changes once they occur d. Ignoring possible changes until they occur - Answers - b. Implementing activities that can predict possible changes to minimize rework What kind of activities does real software process involve? a. Technical only b. Collaborative only c. All of the answer choices are correct d. Managerial only - Answers - c. All of the answer choices are correct How are the processes of software development and software maintenance traditionally viewed? a. Both are seen as creative activities b. Both are considered dull and uninteresting c. Development is seen as creative, maintenance as uninteresting d. Maintenance is seen as creative, development as uninteresting - Answers - c. Development is seen as creative, maintenance as uninteresting Considering integration and configuration model, What is the first step in the given process? a. Refinement b. Configuration c. Initial Requirements d. Discovery & Evaluation - Answers - c. Initial Requirements What is the aim of software validation, or verification and validation (V & V)? a. To confirm the system is user-friendly b. To test the speed of the software c. To check the marketing viability of the software d. To ensure the system adheres to its specifications and meets customer requirements - Answers - d. To ensure the system adheres to its specifications and meets customer requirements In an agile approach to development, how are design and implementation treated? a. They are combined and no formal design documents are produced

What tools might software developers use in real software processes? a. Design model editors b. All of the answer choices are correct c. Automated testing tools d. Requirements management systems - Answers - b. All of the answer choices are correct What makes software a preferable choice for incorporation into large, complex systems? a. The complexity of the software b. The cost of software c. The flexibility and capacity for change d. The ease of hardware design - Answers - c. The flexibility and capacity for change Which statement is true about software processes? a. Plan-driven processes are always the correct approach to software development b. Most practical processes combine elements of both plan-driven and agile approaches c. There are definitive right and wrong software processes d. Agile processes don't allow changes to reflect customer requirements - Answers - b. Most practical processes combine elements of both plan-driven and agile approaches In integration and configuration model, when is the configuration step applied? a. After modifying reusable components b. When there's no suitable existing system c. When a suitable off-the-shelf system is found d. Before identifying initial requirements - Answers - c. When a suitable off-the-shelf system is found Which model organizes the four basic process activities in a sequential manner? a. Waterfall model b. Incremental development model c. Spiral model d. Agile model - Answers - a. Waterfall model In integration and configuration model, What step involves assessing components for system suitability? a. Initial Requirements b. Refinement c. Adaptation & Integration d. Discovery & Evaluation - Answers - d. Discovery & Evaluation What are pre- and post-conditions in the context of process descriptions? a. Regulations that must be adhered to during a process activity b. Predictions about the potential success of a process activity c. Statements that dictate the profit margin before and after a process activity d. Statements that are true before and after a process activity has been carried out - Answers - d. Statements that are true before and after a process activity has been carried out For design process, What does a model-driven approach typically produce? a. Detailed specification documents b. Design diagrams c. Market studies d. Agile methodologies - Answers - b. Design diagrams What is a key advantage of Incremental development?

a. It makes changes more expensive during development b. It requires all system requirements to be defined in the beginning c. It allows for user evaluation at a relatively late stage d. It makes changes cheaper and easier during development - Answers - d. It makes changes cheaper and easier during development What is the basis of Incremental development? a. It is based on final implementation and no user feedback b. It is based on initial implementation, user feedback, and evolving the software c. It involves only validation activities d. It is based on perfect initial implementation - Answers - b. It is based on initial implementation, user feedback, and evolving the software What activity primarily happens during the operation and maintenance phase? a. Translation of design into code b. Testing of individual program units c. Correcting errors from earlier stages and refining system unit implementations d. User consultation - Answers - c. Correcting errors from earlier stages and refining system unit implementations What does change tolerance in software development involve? a. Designing the software to easily accommodate changes b. Making abrupt changes without considering their impacts c. Making changes difficult to implement d. Rejecting any changes to the initial plan - Answers - a. Designing the software to easily accommodate changes How should testing be approached if an incremental development method is used? a. Only the final increment should be tested b. The testing should be random c. Each increment should be tested as it is developed d. The increments should be tested collectively at the end - Answers - c. Each increment should be tested as it is developed Which type of application is designed to process data in large batches, with the goal of creating corresponding outputs? a. Batch processing systems b. Embedded control systems c. Stand-alone applications d. Interactive transaction-based applications - Answers - a. Batch processing systems Which of the following is a characteristic of a software-controlled insulin delivery system? a. It relies on regular injections of genetically engineered insulin. b. It must be designed and implemented to ensure availability and reliable delivery of the correct amount of insulin. c. It uses an external meter to measure blood sugar levels. d. It does not require a permanently attached needle. - Answers - b. It must be designed and implemented to ensure availability and reliable delivery of the correct amount of insulin. Which approach has become the dominant approach for constructing web-based systems? a. Specifying all requirements in advance b. Building from scratch

a. Web-based systems b. Web browsers c. Software as a service d. Web services - Answers - d. Web services What is not among the key challenges facing Software Engineering? a. Developing trustworthy Software b. Competition with Computer Science field c. Demands for reduced delivery time d. Coping with increasing diversity - Answers - b. Competition with Computer Science field What is considered as an essential characteristic of a professional Software system? a. Acceptability b. Efficiency c. Maintainability d. All of the above - Answers - d. All of the above Which of the following is not a fundamental notion applicable to all types of software systems? a. Implementation and programming techniques. b. Managed and understood development process. c. Understanding and managing software specifications and requirements. d. Dependability and performance. - Answers - a. Implementation and programming techniques. Which software engineering principle emphasizes the reuse of existing software rather than writing new software? a. Understanding and managing software specifications and requirements. b. Managed and understood development process. c. Dependability and performance. d. Making effective use of existing resources. - Answers - d. Making effective use of existing resources.