CS 2820: Version Control, LLMs, and Software Development Models

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/38

flashcard set

Earn XP

Description and Tags

Vocabulary practice cards covering Version Control with Git, LLMs in Software Development, and Software Development Life Cycle models.

Last updated 10:47 PM on 9/29/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

39 Terms

1
New cards

Version Control System (VCS)

Software that tracks, manages, and records revisions to a set of files across individual and collaborative software projects over time.

2
New cards

Repository (Repo)

A centralized or distributed storage location that holds all source code, build configurations, resource files, and complete revision history for a project.

3
New cards

Working Directory

The local workspace directory on a developer's machine containing current uncommitted file modifications, distinct from the staging index and local repository.

4
New cards

Staging Area

An intermediate phase (also known as the Index) in Git where modified files are formatted as snapshot preparations prior to being committed to the repository.

5
New cards

Remote Repository

A shared repository hosted on central platforms like GitHub or GitLab that enables team members to push local updates and pull shared changes.

6
New cards

HEAD Pointer

A reference pointer in Git that indicates the active branch or commit currently checked out in the local working directory.

7
New cards

Main Branch

The primary production-ready branch in a repository serving as the canonical source of truth, expected to contain stable and compilable code.

8
New cards
<p>Git Four Workflow Phases</p>

Git Four Workflow Phases

The sequential stages through which code changes progress: Working Directory, Staging Area/Index, Local Repository, and Remote Repository.

9
New cards

git add

A Git command that transfers modified or new files from the working directory into the staging area to prepare them for the next commit snapshot.

10
New cards

git commit

A Git command that records a permanent snapshot of all staged changes into the local repository with a mandatory descriptive message.

11
New cards

git status

A Git command that displays the state of the working directory and staging area, identifying staged, modified, and untracked files.

12
New cards

git diff

A Git command that compares line-by-line differences between files in the working directory and those in the staging area or repository.

13
New cards

git pull

A composite Git operation that fetches the latest commits from a remote branch and automatically attempts to merge them into the current active branch.

14
New cards

git push

A Git command that uploads committed local repository changes to a specified remote repository branch.

15
New cards

Large Language Model (LLM)

An artificial intelligence system trained on extensive text datasets to predict word sequences, understand human language, and generate source code.

16
New cards

LLM Token

The atomic fragment of text processed by a language model, typically representing approximately 4 characters or 0.75 English words.

17
New cards

Context Window

The maximum total token capacity an LLM can evaluate in a single prompt cycle, including system instructions, uploaded context, and the output response.

18
New cards

Lost in the Middle Phenomenon

The tendency of language models to accurately retrieve information located at the extreme start or end of long prompts while ignoring details in the center.

19
New cards

Prompt Caching

An optimization feature in AI platforms that stores repeated context tokens to reuse them across prompts, lowering API costs by up to 90%.

20
New cards

Extended Thinking Mode

A test-time compute technique where an LLM pauses before rendering text to dynamically generate hidden reasoning blocks, outline logic, and self-correct.

21
New cards

Scratchpad Block

An internal workspace generated during an LLM reasoning phase to draft algorithms and verify constraints prior to producing visible user output.

22
New cards

Thinking Tokens

Internal reasoning tokens generated during LLM extended thinking, billed to developers at the higher output rate rather than the standard input rate.

23
New cards

Software Development Life Cycle (SDLC)

The structured pipeline of software development stages: Conception, Requirements gathering, Design, Coding/debugging, Testing, Release, Maintenance, and Retirement.

24
New cards

Plan-Driven Models

Heavyweight development methodologies characterized by strict, sequential execution phases, exhaustive upfront planning, and extensive formal documentation.

25
New cards

Agile Development Models

Lightweight, iterative development approaches focusing on continuous customer collaboration, frequent working software releases, and flexibility to change.

26
New cards
<p>Waterfall Process Model</p>

Waterfall Process Model

A classical plan-driven SDLC model where project execution flows strictly downward through sequential phases from requirements gathering to maintenance.

27
New cards
<p>Evolutionary Prototyping Process Model</p>

Evolutionary Prototyping Process Model

An iterative model where a rapid prototype is built, evaluated by customers, and continuously refined through feedback until the final product release.

28
New cards

Refactoring

The disciplined software development technique of restructuring internal source code to improve design, readability, and maintainability without altering external behavior.

29
New cards

Extreme Programming (XP)

An Agile software engineering framework prioritizing practices such as test-driven development (TDD), pair programming, continuous integration, and frequent releases.

30
New cards

Pair Programming

An Agile XP technique where two developers work together at one workstation, alternating between the 'driver' writing code and the 'navigator' reviewing it every 30 to 60 minutes.

31
New cards
<p>Scrum Framework</p>

Scrum Framework

An Agile management process organized around fixed-length Sprints (up to 1 month), Daily Scrums, Product Backlogs, and key roles like Product Owner and Scrum Master.

32
New cards

Coding Standards

Organization-wide rules and guidelines governing code layout, naming conventions, and header formats to ensure uniform readability and quality across teams.

33
New cards

Checkstyle

A developer tool/plugin used to automatically inspect Java code against predefined coding style rules, such as Google or Sun guidelines.

34
New cards

Defensive Programming

A software design practice where code is written to protect itself against invalid inputs, unexpected environmental conditions, and runtime failures.

35
New cards

Assertion

A diagnostic check that tests an expression assumed to always be true, throwing an error if false, primarily used during debugging to catch unrecoverable flaws.

36
New cards

JavaDoc

A documentation tool that automatically generates HTML-based API technical documentation directly from structured doc comments embedded in Java source code.

37
New cards

Runtime Errors

Program execution failures (such as NullPointerException or ArrayIndexOutOfBoundsException) that cause a compiled application to crash while running.

38
New cards

Testing vs. Debugging

Testing is the process of executing a program to reveal the presence of defects, whereas debugging is the process of locating, isolating, and fixing those defects.

39
New cards

Fault Injection

A testing technique where unusual failures (such as network drops or memory allocation errors) are intentionally introduced to evaluate how code handles uncommon edge cases.