CP317 Final Exam (1) PDF

Summary

This document contains a final exam for the course CP317, likely covering software engineering concepts and principles. The questions cover various software development models and methodologies. This document likely includes questions to test the students' understanding of these topics.

Full Transcript

Q1. Which of the following is not a deployment strategy in software engineering? a. Staged deployment b. Incremental deployment c. Iterative deployment d. Cutover deployment Q2. Which of the following is not a phase in the waterfall model of software engineering? a. Implementation...

Q1. Which of the following is not a deployment strategy in software engineering? a. Staged deployment b. Incremental deployment c. Iterative deployment d. Cutover deployment Q2. Which of the following is not a phase in the waterfall model of software engineering? a. Implementation b. Design c. Testing d. Training e. Requirement analysis Q3. Compare the pure waterfall model with the modified waterfall models (waterfall-with-feedback, Sashimi, incremental waterfall, V-model), which of the following is one of the strengths of the modified waterfall models? a. None of them b. Milestones are clear c. Flexibility d. Interdependency is clear Q4. Which of the following is not correct about Scrum? a. Scrum uses RAD to reduce project time. b. Scrum is a type of Agile software development c. Scrum is a process framework used to manage software development d. Scrum uses iterative and incremental practices to increase productivity Q5. Which of the following is not an advantage of V-model in software engineering? a. Deliverables are based on each phase b. Success rate is higher than the waterfall model c. Simplicity and ease of use d. Requirements are not ambiguous Q6. What is requirement discovery in software engineering? a. It is the process of working with customers to understand their needs and gathering detailed requirements. b. It is the process of working with customers to document functional requirements only. c. It is the process of working with coworkers to find out detailed requirements. d. It is the process of working with coworkers to document customer's needs. Q7. Which of the following statements is correct? a. Encapsulation is an "is-a" relationship and composition is a "has-a" relationship. b. Aggregation is an "is-a" relationship and composition is a "has-a" relationship. c. Inheritance is an "is-a" relationship and composition is a "has-a" relationship. d. Inheritance is a "has-a" relationship and composition is an "is-a" relationship. Q8. Which of the following diagrams has a hidden time dimension? a. Class diagram b. Sequence diagram c. State transition diagram d. Use case diagram Q9. Compare the spiral model with the pure waterfall model, which of the following statements is correct? a. The spiral model does not require better communication skills while the pure waterfall model requires high-level communication skills b. The spiral model needs freeze requirements while the pure waterfall model is flexible for requirements c. The spiral model works in loops while the pure waterfall model works in a linear sequential model d. The spiral model does not consider risk factors while the pure waterfall model considers risk factors Q10. Which of the following is not an advantage of the prototype model in software engineering? a. Helps resolve discrepancies between the client and the company b. Helps determine technical feasibility c. Gives users a feel for the final system d. Shorten the project time Q11. Compare the Scrum with XP, which of the following statements is correct? a. Scrum focuses on management and planning while XP focuses on pair programming and test-driven development. b. XP is a type of Agile development while Scrum is not a type of Agile development c. Scrum is a type of Agile development while XP is not a type of Agile development d. XP focuses on management and planning while Scrum focuses on pair programming and test-driven development. Q12. Which of the following is the best description of waterfall model in software engineering? a. It is a process model that breaks project activities down into different phases, where each phase depends on each other. b. It is a process model that breaks project activities down into parallel phases, where each phase depends on its neighbor phase. c. It is a process model that breaks project activities down into linear sequential phases, where each phase depends on the outputs of the previous phase. d. It is a process model that breaks project activities down into non-linear sequential phases, where each phase depends on the outputs of the previous phase. Q13. Which of the following is not a benefit of test-driven development? a. Facilitates change. b. Early problem discovery. c. Reducing the line of code. d. Simplifies integration. Q14. In object-oriented design, compare method overloading with method overriding, which of the following statement is correct? a. Method overloading is performed within a class while method overriding occurs in two classes that have inheritance relationship b. Method overloading is the example of run-time polymorphism while method overriding is the example of compile-time polymorphism c. Method overloading uses the keyword virtual while method overriding does not need the keyword. d. Method overriding is performed within a class while method overloading occurs in two classes that have inheritance relationship Q15. Which of the following is the best description of the concept of extreme programming (XP)? a. XP is a software development methodology that intends to improve software security and responsiveness to changing customer requirements b. XP is a software development methodology that intends to improve software scalability and responsiveness to changing customer requirements c. XP is a software development methodology that intends to improve software quality and responsiveness to changing customer requirements d. XP is a software development methodology that intends to improve softw Q16. What is the single responsibility principle in software engineering? a. Each module, class, or function should have responsibility over a single part of the functionality. b. Each module, class, or function should have responsibility over many parts of the functionality. c. Each module, class, or function should have responsibility over a simple part of the functionality. d. Each module, class, or function should have responsibility over a single interface of the functionality Q17. Which of the following is incorrect about Agile software development? a. Agile is a set of guidelines rather than an actual development model b. Agile is an actual development model rather than a set of guidelines c. Agile is a conceptual framework for software engineering d. Agile promotes iteration techniques throughout the life cycle of the software products Q18. Which of the following is not an advantage of the incremental waterfall model? a. It is flexible and less expensive to change requirements b. The software will be generated quickly c. Defects are easier to identify than the pure waterfall model d. Inter-communication is not required Q19. Compare the pure waterfall model with the iterative model, which of the following statements is correct? a. The pure waterfall model actively deals with risks while the iterative model is averse to risks b. The iterative model has a runnable software system earlier than the pure waterfall model. c. The progress of the pure waterfall model is measured with objective measurement whereas the progress of the iterative model is measured with subjective measurement. d. The pure waterfall model and the iterative model actively deal with risks Q20. Which of the following is the purpose of the system redundancy? a. system capacity b. system ability c. system reliability d. system performance Q21. Which of the following is not mentioned in SOLID principle in software engineering? a. Interface Segregation Principle. b. Dependency Inversion Principle. c. Liskov Substitution Principle. d. Single Command Principle. Q22. Which of the following describes two types of polymorphism in object-oriented design? a. Compile time and run time b. Overwritten and overloading c. Overloading and execution d. All correct. Q23. Which of the following is not an advantage of the Spiral model in software engineering? a. Accommodating changes well b. Emphasizing risk analysis c. Highly flexible model d. Inexpensive Q24. Which of the following statements is correct? a. RAD and Scrum are types of Agile software development framework. b. Spiral model and RAD are types of Agile software development framework. c. Iterative model and incremental model are types of Agile software development framework. d. Scrum and extreme programming are types of Agile software development framework. Q25. Which of the following is not a benefit of using the process model of software engineering? a. Detecting errors earlier and reducing system defects b. The optimization of processes and projects in software engineering c. Finding causes and effects using process model traceability d. Reducing workloads for project teams and save money for companies. Q26. Which of the following is not a type of architecture design in software engineering? a. Object-oriented design b. Monolithic design c. Service-oriented design d. Client/server design Q27. Which of the following is not the technique of requirements elicitations? a. Communications. b. Brainstorming. c. Scientific research. d. Task analysis. Q28. Which of the following is not an item of the benefits of using documents in software engineering? a. Prevents conflicts b. Reduce expense c. Provide clear direction for work d. Keep team on tracks Q29. Which of the following is the best description of the concept of fail-safe defaults principle? a. Access decisions should be based on permission rather than exclusion b. Permissions should be based on access control rather than authorization c. Access decisions should be based on authorization rather than authentication d. Access decisions should be based on authentication rather than authorization Q30. Which of the following is not an item for calculating function points in function point metrics? a. Inquiries: the number of times the software performs a query/response action b. Outputs: the number of times outputs move out of the software c. Modules: the number of modules that a software product has d. Inputs: the number of times data moves into the software and update the software internal data Q31. What is method overloading (MO) in object-oriented programming? a. MO is a technique that there are multiple methods with different names within a class but their parameters are same. b. MO is a technique that there are multiple methods with the same name within a class but their parameters are different. c. MO is a technique that there are multiple methods with the same parameters within a class. d. MO is a technique that there are multiple methods with different parameters within a class. Q32. Which of the following is the best description of the Spiral model in software engineering? a. A spiral model is a software development process model to help project teams decide on what development approach to take by using spiral lines. b. A spiral model is a risk-driven software development process model to help project teams decide on what development approach to take for various parts of a project. c. A spiral model is a software development process model to help project teams decide on what development approach to take. d. A spiral model is a software development process model to help project teams decide on what development approach to take by applying spiral geometric theory. Q33. Which of the following is an advantage of distributed architecture in software engineering? a. All incorrect b. Good performance c. Scalability d. Simplicity Q34. Which of the following is the best description of the incremental waterfall model in software engineering? a. It is a process of software development where the waterfall model is applied for groups of requirements. b. It is a process of software development where requirements are broken down into multiple standalone modules of the software development cycle that uses the waterfall model. c. It is a process of software development where the waterfall-with-feedback model is applied for each requirement. d. It is a process of software development where the waterfall model is applied for each requirement. Q35. What are the reasons that software products can be developed quickly by using the RAD method? a. High-end computer and high-speed internet connection b. Friendly manager and good working environment c. Higher salary and great benefits d. Proven technology and Computer-Assisted Software Engineering tools Q36. Which of the following statements is the best description about the unified process model? a. A unified process model is a combination of iterative model and incremental model. b. A unified process model is a combination of waterfall model and iterative model. c. A unified process model is a Rational unified process model. d. A unified process model has static workflows such as requirement workflow, business model workflow, and etc. Q37. Which of the following statements is incorrect in software engineering? a. Gantt charts show the duration of tasks while PERT charts show the dependencies between tasks b. Gantt charts are better and more accurate than PERT charts c. Gantt charts has time dimension while PERT charts show the time by numbers d. Gantt charts show time overlap between tasks while PERT charts show which tasks can be done in parallel Q38. Which of the following is the best description of test-driven development (TDD)? a. TDD is a technique for building software, that creates unit tests frequently by writing tests. b. TDD is a technique for building software, that guides software development by writing tests. c. TDD is a technique for building software, that performs unit tests regularly by testers. d. TDD is a technique for building software, that iterates unit tests by writing tests. Q39. Which of the following is not a benefit of using process models in software engineering? a. Standardization b. Quantity c. Mutual understanding d. Documentation Q40. Which of the following is the best description of the iterative model in software engineering? a. It is a process model that focuses on an initial customer need, then a broader feature set and complexity are added when the system is completed b. It is a process model that focuses on a simplified implementation, then gains full functionalities when the system is completed c. It is a process model that focuses on company budget, then gains complexity and a broader feature set when the system is completed d. It is a process model that focuses on initial, simplified implementation, then progressively gains more complexity and a broader feature set until the final system is completed Q41. Which of the following is the best description of domain analysis (DA) in the requirement gathering in software engineering? a. DA is a process by which a software engineer learns the background information of a company. b. DA is a process by which a software engineer learns the background information of users. c. DA is a process by which a software engineer learns the background information of competitors. d. DA is a process by which a software engineer learns the background information of a software product. Q42. Which of the following is not an advantage of the iterative model in software engineering? a. Easier to test and debug during a smaller iteration b. Generating working software quickly c. More flexible than waterfall model d. Requiring a smaller number of developers Q43. Which of the following is an advantage of the cutover deployment strategy? a. Less impact on customers b. Easy to setup c. No downtime d. Low risks Q44. Which of the following is not a type of functions that are measured in function point metrics? a. Synchronization functions b. Data functions and transaction functions c. Data functions d. Transaction functions Q45. Which of the following is not a benefit of using a coding standard? a. Enhance code understanding. b. Software becomes secure. c. Easier to code review work. d. Software code is easier to collaborate. Q46.Which of the following is used to categorize system requirements in software engineering? a. MOSCOW b. All correct. c. COCOMO d. FURPS Q47. Which of the following is the best description of requirement specification in software engineering? a. It is a document that clearly and precisely describes each of the essential interfaces between software modules. b. It is a document that clearly and precisely describes the essential requirements of the software only. c. It is a document that clearly and precisely describes how the software should be programmed in C++. d. It is a document that clearly and precisely describes each of the essential requirements of the software and external interfaces. Q48. Overall which of the following is the best deployment strategy of software engineering? a. Incremental deployment b. Gradual cutover c. Cutover d. Staged deployment Q49. Which of the following is the best description of software development life cycle (SDLC)? a. SDLC is a structured step-by-step approach for programming b. SDLC is a structured step-by-step approach for software coding c. SDLC is a step-by-step structure for software coding standard d. SDLC is a structured step-by-step approach for developing software systems Q50. Which of the following is the correct values of x, y and z after execution of the following code? int x, y, z; y = 1; z = 5; x = 0 - (++y) + z++; a. x = 4, y = 2, z = 6 b. x = -7, y = 1, z = 5 c. x = 3, y = 2, z = 6 d. x = 4, y = 1, z = 5 https://chat.openai.com/share/29473324-6d12-4052-9559-38825da0b33f

Use Quizgecko on...
Browser
Browser