1.
What methodology requires pair programming?
Correct Answer
B. Agile/XP
Explanation
Agile/XP methodology requires pair programming. Pair programming is a practice in which two programmers work together on the same task, with one person typing the code and the other person reviewing it in real-time. This approach promotes collaboration, knowledge sharing, and helps in catching errors early on. It is a key aspect of Agile/XP methodology as it enhances the quality of the code, reduces the chances of bugs, and improves overall productivity.
2.
What does the acronym JAD stand for
Correct Answer
C. Joint Application Development
Explanation
JAD stands for Joint Application Development. This approach involves bringing together key stakeholders, such as end-users, developers, and project managers, to collaborate and actively participate in the software development process. By involving all parties from the beginning, JAD aims to ensure that the resulting application meets the requirements and expectations of the users. It promotes effective communication, reduces misunderstandings, and allows for quicker decision-making, ultimately leading to the development of high-quality software.
3.
What methodology uses Inception, Elaboration,
Construction, & Transition?
Correct Answer
B. UP/RUP
Explanation
The correct answer is UP/RUP, which stands for Unified Process/Rational Unified Process. This methodology is a software development process that divides the project into four phases: Inception, Elaboration, Construction, and Transition. In the Inception phase, the project's scope and feasibility are determined. The Elaboration phase focuses on requirements gathering and analysis. The Construction phase involves the actual development of the software, and the Transition phase is when the software is deployed and tested. UP/RUP is a comprehensive and iterative approach to software development.
4.
Which action does TDD NOT do?
Correct Answer
B. TDD promotes the development of low-quality code
Explanation
TDD, or Test-Driven Development, does not promote the development of low-quality code. In fact, TDD is a software development practice that emphasizes writing tests before writing the actual code. This approach helps ensure that the code is thoroughly tested and meets the desired requirements. By following TDD, developers can catch bugs early in the development process and produce higher-quality code.
5.
Which is not an Agile methodology?
Correct Answer
D. Waterfall
Explanation
Waterfall is not an Agile methodology because it follows a linear and sequential approach to software development, with distinct phases such as requirements gathering, design, development, testing, and deployment. Unlike Agile methodologies, Waterfall does not emphasize iterative and incremental development, customer collaboration, and adaptability to changing requirements. Instead, it relies on upfront planning and documentation, making it less flexible and less responsive to changes during the development process.
6.
What does the acronym UP/RUP stand for?
Correct Answer
B. Unified Process/ Rational Unified Process
Explanation
The acronym UP/RUP stands for Unified Process/Rational Unified Process. The Unified Process is a software development methodology that emphasizes iterative and incremental development. The Rational Unified Process is a specific implementation of the Unified Process that is supported by IBM's Rational software tools.
7.
Which of the following methodologies use sprints?
Correct Answer
C. Agile/SCRUM
Explanation
Agile/SCRUM is the correct answer because Agile is a software development methodology that focuses on iterative and incremental development. It emphasizes flexibility, collaboration, and customer satisfaction. SCRUM is a specific framework within Agile that uses sprints, which are time-boxed iterations of work, typically lasting 1-4 weeks. During each sprint, a set of user stories or tasks are planned and completed. This allows for regular feedback, adaptation, and continuous improvement throughout the development process. TDD, UP/RUP, and JAD are methodologies that do not specifically use sprints.
8.
Which of the following is NOT true about TDD
Correct Answer
C. Write the test cases while you are writing code
Explanation
The correct answer is "Write the test cases while you are writing code". This statement is not true about TDD because in Test-Driven Development (TDD), the test cases are written before writing the code. TDD follows a cycle where the developer first writes a failing test case, then writes the code to make the test pass, and finally refactors the code if necessary. This approach ensures that the code is driven by the requirements specified in the test cases, promoting better code quality and test coverage.
9.
Which methodology follows these steps- Write the test- Write the code to pass the test and Refactor?
Correct Answer
C. TDD
Explanation
TDD stands for Test-Driven Development, which is a software development methodology that follows the steps of writing the test first, then writing the code to pass the test, and finally refactoring the code. This approach ensures that the code is developed in small increments and is continuously tested, leading to higher code quality and fewer bugs.
10.
Which methodologies use design sessions?
Correct Answer
C. JAD
Explanation
JAD (Joint Application Development) is a methodology that uses design sessions. JAD involves bringing together stakeholders, users, and developers to actively participate in the design and development process. During these design sessions, participants collaborate to gather requirements, define system functionalities, and create prototypes. This approach encourages open communication and ensures that all parties have a shared understanding of the project goals and objectives. Both Agile and UP/RUP methodologies also involve collaborative sessions, but JAD specifically focuses on design sessions. TDD (Test-Driven Development) does not typically involve design sessions, as its primary focus is on writing tests before writing the code.