Welcome to your comprehensive guide for Software Development Processes and Methodologies quiz answers! Whether you’re completing practice quizzes to enhance your understanding or preparing for graded quizzes to test your knowledge, this guide is here to help.
Covering all course modules, this resource will teach you about various software development processes and methodologies, including Agile, Scrum, Waterfall, and DevOps, and how to effectively apply them in real-world projects to ensure successful development cycles.
Software Development Processes and Methodologies Quiz Answers for All Modules
Table of Contents
Software Development Processes and Methodologies Module 01 Quiz Answers
Requirements and Architecture Quiz Answers
Q1. Which of the following is considered the most difficult in the software development process?
Correct Answer: Accurately identifying user needs
Explanation: Understanding and accurately capturing the needs of the users is often the most challenging part of software development, as it forms the foundation for all other stages, including designing and testing.
Q2. What is a Requirements Specification?
Correct Answer: A product, a written specification of the requirements
Explanation: A Requirements Specification is a detailed, written description of the requirements that need to be fulfilled by the system being developed.
Q3. Based on the NASA statistics on budget and schedule overrun vs. time spent on requirements process, what is the recommended amount of time to spend on the requirements stage?
Correct Answer: 20% of the total time spent on the project
Explanation: Spending 20% of the total project time on the requirements phase is generally recommended, as it leads to a significant reduction in both budget and schedule overruns.
Q4. Which of the following matches the terms to the correct definition?
Correct Answer: Requirements – user needs in user language; Specification – solution properties designed to solve problem
Explanation: Requirements describe what the users need, typically in their own language, while the specification outlines the technical solution designed to meet those needs.
Q5. Which of these is a user requirement?
Correct Answer: Allow the user to post a message to Facebook
Explanation: This is a user requirement because it is describing what the user needs to be able to do in simple terms.
Q6. Which of the following is NOT an example of a non-functional requirement?
Correct Answer: The user shall be able to select the course number.
Explanation: This is a functional requirement because it specifies a feature that the system should provide. Non-functional requirements typically describe how the system performs or behaves, such as performance, security, or scalability.
Q7. What element(s) of the WRSPM model belong in the system (including the overlap between environment and system)?
Correct Answer: S, P, M
Explanation: In the WRSPM model, the elements S (System), P (Process), and M (Model) represent parts of the system or the overlap between the environment and the system.
Q8. Which of these is a proper definition of software architecture?
Correct Answer: partitioning large systems into smaller ones that can be created separately, have individual business value, and can be easily integrated
Explanation: Software architecture involves organizing a system into smaller, manageable components that can be developed and integrated independently.
Q9. Which of the following models is best suited for a system with significant shared data that needs to be shared across a variety of components or sub-systems, somewhat like global variables, but with better data integrity?
Correct Answer: blackboard
Explanation: A blackboard model is suited for systems with shared data where different components interact with and modify the shared data, maintaining better data integrity.
Q10. Which of the following models is best suited for a system that includes several subsets of functionality that are used in more than one area of the system?
Correct Answer: layered
Explanation: A layered architecture is ideal when different subsets of functionality are used in multiple parts of the system, as it allows for modularization and reuse.
Q11. Which of the following models is best suited for a system that benefits from the separation of complexity and processing between work which can be done locally and that which should be completed on a shared, remote service?
Correct Answer: client-server
Explanation: The client-server model separates local and remote processing, with clients handling local tasks and servers providing remote services.
Q12. Which of the following would be considered a sub-system, rather than a module?
Correct Answer: A set of classes which generates reports
Explanation: A sub-system is a larger, self-contained component of a system that performs a specific function, such as generating reports, while modules are smaller, individual parts within a sub-system.
Software Development Processes and Methodologies Module 02 Quiz Answers
Design, Implementation, and Testing Quiz Answers
Q1. Where does software design fit in the traditional waterfall software development lifecycle?
Correct Answer: Between architecture and implementation
Explanation: Software design typically occurs after architecture, where the system’s overall structure is defined, but before implementation, where the actual coding takes place.
Q2. Which of the following is NOT an aspect of software design?
Correct Answer: Polymorphism
Explanation: Polymorphism is a concept in object-oriented programming, but it is not directly an aspect of software design itself, which typically involves modularity, cohesion, and coupling.
Q3. The ability to use a built-in function of a programming language to generate a random number is an example of which of the following?
Correct Answer: Modularity
Explanation: Modularity refers to the use of self-contained units or functions (like generating a random number) that can be reused and integrated into different parts of a system.
Q4. Analyzing the extent to which other modules must change when a module is modified is an example of which of the following?
Correct Answer: Coupling
Explanation: Coupling refers to the degree of dependence between different modules. Higher coupling means changes in one module may affect others more significantly.
Q5. When all of the responsibilities of a module are easily classified as being strongly related, this is an example of high what?
Correct Answer: Cohesion
Explanation: Cohesion refers to how closely related and focused the responsibilities of a single module are. High cohesion means that the tasks performed within the module are highly related.
Q6. Which of the following is most preferred?
Correct Answer: Having more than one module rely on the same version of the RSS standard (external coupling)
Explanation: External coupling is preferred over other types because it keeps the modules isolated, with interactions occurring only through well-defined interfaces or standards, reducing internal dependencies.
Q7. Which of the following is LEAST desirable?
Correct Answer: including functionality which relies on the same input
Explanation: When multiple functions or modules depend on the same input, it can lead to unnecessary dependencies and increased complexity, which is not ideal in a system design.
Q8. Which of the following are necessary before proper testing?
Correct Answer: inputs, expected output, an oracle, and the actual output
Explanation: An oracle is a reference point that helps to determine if the output from the test is correct, and all of these elements are required to properly perform tests.
Q9. Which of the following is a mistake made by the developer?
Correct Answer: Fault
Explanation: A fault is a mistake or defect in the system caused by a developer, often referred to as a bug or error in the code.
Q10. Which of the following is an example of validation?
Correct Answer: use of the software provides the correct results as documented
Explanation: Validation ensures that the software does what it is supposed to do according to the specified requirements, confirming that it works as intended.
Q11. In your current project, you have access to some intern development resources, which are not currently operating at full capacity. You also know that the testing timeline will be truncated, due to delays in critical-path module development. Which strategy should you employ?
Correct Answer: Utilize the intern resources to design and develop drivers and stubs, while work continues on critical-path module development
Explanation: By using the intern resources to design and develop drivers and stubs, you can ensure that testing proceeds smoothly without delaying critical-path development.
Q12. When is testing complete?
Correct Answer: When you have completed all the tests in the test plan
Explanation: Testing is complete when all the predefined tests outlined in the test plan have been executed, and the results have been analyzed.
Q13. Which of the following is an example of black-box testing?
Correct Answer: Developing test cases based on typical user behavior
Explanation: Black-box testing focuses on testing the system based on its functionality and the end user’s experience, without regard for the internal workings of the system.
Software Development Processes and Methodologies Module 03 Quiz Answers
Traditional Software Development Models Quiz Answers
Q1. Which of the following is true for adaptive models? (Select any two)
Correct Answers:
- You may end up building something different than what you originally thought
- You are not sure about what exactly you want to build
Explanation: Adaptive models are flexible, allowing for adjustments as development progresses, which can lead to different outcomes than originally planned. They are also suitable when the full requirements are not clear at the start.
Q2. A team divided the application they were building into 4 parts and planning to build one part at a time. To build each part, they are planning to go through the steps of requirements, design, implementation, test, and deployment. Also, they are planning to complete each part fully with high fidelity. By fidelity we mean the completeness of the features implemented in each part. Based on this information, what type of model do you suggest they use for their software development process?
Correct Answer: Incremental
Explanation: The team is building the application in parts, with each part being completed fully and released. This aligns with the incremental model, where features are added incrementally and delivered in stages.
Q3. A team is working on a problem where the requirements are well known but they are short on time. They prefer to start the design phase when some of the requirements have been defined. Similarly, they want to start coding when the design for part of the system is ready. What model will best fit their needs?
Correct Answer: Sashimi
Explanation: The Sashimi model allows for overlapping phases (design and development), making it suitable for situations where parts of the design can begin early, even while the requirements are still being finalized.
Q4. In the incremental model variation where you do requirements and design for all of the application once and then just increment on implementation, testing, and deployment, are you making the process more suitable for a predictive or adaptive situation?
Correct Answer: Predictive
Explanation: The process is predictive because the overall design and requirements are established at the beginning, and the incremental implementation follows a more structured, predictable path.
Q5. Which of following is NOT true about incremental and iterative models?
Correct Answer: An incremental model is one where you can build each part of the system individually but you release all at once.
Explanation: In the incremental model, features are typically released as they are completed, rather than waiting to release all parts at once.
Q6. Which of the following is NOT true for the Waterfall model, V-model and Sashimi model?
Correct Answer: These models will be a good model to be used by a startup to implement a new idea that is new to market
Explanation: Waterfall, V-model, and Sashimi models are better suited for projects with well-defined requirements, not for innovative or new ideas where requirements may change over time.
Q7. In the Unified Process, what does the milestone of “Lifecycle Architecture” mean?
Correct Answer: Agreement among the stakeholders about the technical approach.
Explanation: The “Lifecycle Architecture” milestone focuses on agreeing on the technical approach and architecture of the system to ensure alignment among stakeholders.
Q8. Which of the following is true for the Unified Process? (Select any 3)
Correct Answers:
- It is a framework and not a specific model.
- It is an architecture-centric framework.
- The construction phase supports both iterative and incremental approaches.
Explanation: The Unified Process is a flexible framework that emphasizes architecture, and the construction phase can support both iterative and incremental approaches to development.
Q9. Select situations listed below where you would NOT use the Unified Process framework.
Correct Answer: Very small, simple project where the problem and solution are well known.
Explanation: The Unified Process is more beneficial for complex projects. For smaller, well-understood problems, simpler models may be more appropriate.
Q10. Which of the following is NOT true for the Spiral Model?
Correct Answer: You always have to perform all the steps mentioned in the Spiral Model diagram
Explanation: The Spiral Model allows for flexible and risk-driven iterations, and not all steps must be followed in every iteration depending on the project’s needs.
Q11. Which of the following is NOT the benefit of the Unified Process?
Correct Answer: Easy to understand and implement.
Explanation: The Unified Process, being a comprehensive and detailed framework, can be complex and difficult to implement without proper expertise.
Software Development Processes and Methodologies Module 04 Quiz Answers
Agile & Lean Software Development Quiz Answers
Q1. What are some of the challenges with the Waterfall methods that prompted the software industry to come up with alternatives like Agile? (Select 2)
Correct Answers:
- Incorrect interpretations of requirements by developers go undetected for a long time. During user acceptance tests, these issues are discovered but it is very late.
- It is difficult to predict user/customer needs.
Explanation: Waterfall’s linear approach can lead to delayed detection of requirement issues, and it struggles with adapting to changing or unclear user needs.
Q2. Which of the following statements aligns with the value “Working software over comprehensive documentation” of the Agile manifesto? (select any 2)
Correct Answers:
- Value delivering software over writing documentation.
- If documentation is absolutely essential then create it.
Explanation: The Agile manifesto prioritizes delivering functional software rather than focusing too much on documentation unless it is truly necessary.
Q3. Which one of the following statements/situations/conversations align with an Agile mindset?
Correct Answer:
- Manager: “The customer is suggesting another change in feature X which is complete as per specification. They agree that it was built as we agreed upon but it lacks some functionality and will result in user frustration. Should we implement the change or not?”
Developer: “Yes, if it does not fulfill user needs, we should make the change.”
Explanation: This response aligns with Agile values of adaptability, user-centric development, and responding to change.
Q4. Which of the following is TRUE about lean startup? (select all that apply)
Correct Answers:
- Lean Startup concepts recommend going through Build-Measure-Learn cycles as fast as you can.
- In Lean Startup, you try to validate/invalidate your assumptions (crucial for the success of your product) as fast as you can.
Explanation: Lean Startup focuses on rapid experimentation and quick learning cycles to validate ideas and assumptions.
Q5. Which of the following is valid on a Kanban Board? (select any 2)
Correct Answers:
- WIP limit for Step X is 3. Step X is divided into “Doing” and “Done.” Number of items in “Doing” column is 2, and number of items in “Done” column is 1.
- WIP limit for Step X is 3. Step X is divided into “Doing” and “Done.” Number of items in “Doing” column is 3, and number of items in “Done” column is 2.
Explanation: Kanban boards focus on limiting work in progress (WIP) and tracking the flow of tasks through different stages.
Q6. Which of the following Framework/process models supports Agile Mindset? (select all that apply)
Correct Answers:
- Scrum
- Crystal
- Kanban
- XP
- Lean Startup
- DSDM
Explanation: These frameworks all align with Agile principles of flexibility, continuous delivery, and adaptability.
Q7. A software development team just started using Kanban. They had the following columns with WIP limit of 3 for each column on their Kanban board from left to right: Backlog(3), Analysis(3), Development(3), Testing(3), Deployment. There are currently 3 items in Testing (3 items being tested). Similarly, there are 3 items in the Development column (2 items are in development and 1 item is done being developed). One of the developers does not have anything to work on so the manager wants to add one more item to the development column so the developer looking for work can work on it. Which one of the following would be a valid action in this situation? (Select any 3)
Correct Answers:
- The manager should ask the testers to move one of the items of the Test column temporarily to the Deployment column so that we can move items from the Development column. Later, we can move items back from the Deployment column to the Testing column.
- Team should get together and discuss if we should increase the WIP limit of the development column as we have more developers and it will be smoother flow if WIP limit of the Development column is increased.
- Manager should ask the developer waiting for work to help the testers so that they can finish one of the items from their column and move it to Deployment column.
Explanation: These actions are in line with optimizing flow and adhering to WIP limits while resolving bottlenecks.
Q8. In Scrum, when is the sprint backlog created?
Correct Answer:
- During the sprint planning meeting
Explanation: The sprint backlog is created during the sprint planning meeting as part of defining the work for the upcoming sprint.
Q9. In Scrum, how is Product Backlog Arranged?
Correct Answer:
- Most important items at the top, least important items at the bottom.
Explanation: The Product Backlog is prioritized by the business value and importance, with the most valuable items at the top.
Q10. Which of the following is TRUE about Scrum? (Select all that apply)
Correct Answers:
- Scrum is an adaptive framework/model.
- Scrum has fixed time-boxed development cycles called sprints.
Explanation: Scrum is flexible and adaptive, and it uses time-boxed iterations (sprints) to deliver increments of the product.
Sources: Software Development Processes and Methodologies
Get All Course Quiz Answers of Software Development Lifecycle Specialization
Software Development Processes and Methodologies Quiz Answers
Agile Software Development Coursera Quiz Answers
Lean Software Development Coursera Quiz Answers