All flashcards
Flashcard 1: Identify the role of the 'navigator' in pair programming.
Answer: The navigator reviews code and suggests improvements. Strategic role providing oversight and guidance.
Flashcard 2: Identify the role of the 'driver' in pair programming.
Answer: The driver writes code and manages the keyboard and mouse. Active role handling actual coding tasks.
Flashcard 3: What is pair programming?
Answer: A collaborative coding method with two programmers at one workstation. Two developers share one computer to code together.
Flashcard 4: What is 'collaborative filtering' in computing?
Answer: A method for making automatic predictions using user data. Recommends items based on similar user preferences.
Flashcard 5: What is a 'user story'?
Answer: A description of a feature from the user's perspective. Brief requirement from end-user viewpoint.
Flashcard 6: What is 'test-driven development' (TDD)?
Answer: A practice where tests are written before code implementation. Tests guide and validate code implementation.
Flashcard 7: What is 'technical debt'?
Answer: The cost of additional rework caused by choosing an easy solution. Accumulates when shortcuts compromise code quality.
Flashcard 8: What is a 'sprint' in Agile?
Answer: A set period during which specific work must be completed. Fixed timeframe for delivering working software.
Flashcard 9: What is 'refactoring' in the context of collaboration?
Answer: Improving code without changing its functionality. Team effort to clean up existing code.
Flashcard 10: What is 'mob programming'?
Answer: A development method where the whole team works on the same task. Entire team collaborates on single task together.
Flashcard 11: What is the role of a 'scrum master'?
Answer: Facilitates Agile practices and removes impediments. Servant leader supporting team effectiveness.
Flashcard 12: Define 'continuous delivery'.
Answer: The practice of automating release processes to deliver software quickly. Automates deployment for faster releases.
Flashcard 13: What is the benefit of using automated testing in collaboration?
Answer: Ensures code changes do not introduce new bugs. Immediate feedback on code integration issues.
Flashcard 14: What is 'continuous integration'?
Answer: A practice of frequently integrating code into a shared repository. Regular merging prevents integration conflicts.
Flashcard 15: What is a Kanban board used for?
Answer: Visualizing and managing work in progress. Visual workflow management tool for tasks.
Flashcard 16: Identify a key advantage of using GitHub for collaboration.
Answer: GitHub facilitates distributed version control and collaboration. Cloud platform enabling team code sharing.
Flashcard 17: What is the purpose of code review?
Answer: To improve code quality and share knowledge among developers. Peer review catches bugs and improves design.
Flashcard 18: What is an Agile methodology?
Answer: A flexible approach to software development emphasizing collaboration. Iterative development with frequent stakeholder feedback.
Flashcard 19: Name a common Agile practice for collaboration.
Answer: Scrum meetings. Regular team check-ins for coordination.
Flashcard 20: What is the purpose of a daily stand-up meeting?
Answer: To synchronize team activities and address blockers. Brief daily coordination meeting format.
Flashcard 21: What is a 'retrospective' in Agile?
Answer: A meeting to reflect on and improve team processes. Team evaluates what worked and what didn't.
Flashcard 22: What is a 'pull request'?
Answer: A pull request is a request to merge changes into a main branch. Formal process for code review and integration.
Flashcard 23: What is a 'merge' in Git?
Answer: A merge combines changes from different branches. Integrates separate development streams safely.
Flashcard 24: What is the function of a 'branch' in Git?
Answer: A branch allows separate lines of development within a repository. Enables parallel development without conflicts.
Flashcard 25: What is a 'repository' in Git?
Answer: A repository is a storage location for software projects. Central hub for project files and history.
Flashcard 26: What is a 'commit' in the context of version control?
Answer: A commit is a saved change or set of changes to a repository. Creates permanent record of project history.
Flashcard 27: Name a popular version control system.
Answer: Git. Distributed version control system for collaboration.
Flashcard 28: What is the main purpose of using a version control system?
Answer: To track changes and enable collaboration on code. Prevents conflicts in multi-developer projects.
Flashcard 29: Define version control in software development.
Answer: System for tracking changes to code and managing versions. Essential for coordinating team development efforts.
Flashcard 30: Which tool facilitates remote collaboration in coding?
Answer: Integrated Development Environment (IDE) with collaboration features. Allows real-time code sharing and editing.