SE Gym – Lift Your Skills


SE Gym illustration: a friendly software-engineering superhero in UCLA blue and gold lifts a topic-loaded barbell overhead.

Make studying fun while following evidence-based learning techniques. Build your own study gym by adding quizzes and flashcard sets, then start a workout to review shuffled cards.

Your Hero

Customize the SE Gym super-hero to look like you or like your favorite character.

Activate the personal gym above to customize your hero.
Activate Personal Gym Allows you to add flash cards and quizzes to your personal gym stored in a local cookie.
Track Performance Allows SE Gym to track your performance on each question to be stored locally in your browser's localStorage to enable you to easily revisit the questions you often get wrong. This will track your performance across quizzes and flash cards across the entire site, not just this page. Your personal data remains on your local device and is not shared with the provider of the site.
Timed Practice Adds an optional countdown clock to SE Gym workouts. You choose either one total time limit or a per-card time that SE Gym multiplies by the workout size.
Show difficulty during question When on, each question shows its difficulty level (basic, intermediate, advanced, expert) before you answer. The difficulty is always shown after you submit, on the explanation panel.
Show hero during workout When on, desktop workouts show decorative hero animations beside the current question. Mobile workouts keep the focus on the card and never show these side heroes. On by default; turn it off for a quieter workout view.
More confetti When on, a polished burst of confetti fires after each correctly answered quiz question and each flashcard you mark as "I got it right" — not only at the end of the workout. Respects your reduced-motion preference. On by default; turn it off for quieter feedback.
Include difficulty levels

Only cards whose difficulty matches a checked level are included in the next workout. Uncheck a level to drop it. Cards without an assigned difficulty are always included regardless of these settings.

Workout of the Day

A balanced session built for you: your due reviews, the questions you keep missing, and a little new material.

Training Log

Challenge a Friend

Finish any workout and press Challenge a Friend on the results screen to save a challenge file. Send it to a friend — they open it here to take the exact same questions and try to beat your score. No accounts, and nothing leaves your device.

Your Gym

Your gym is empty. Add quizzes and flashcard sets below.

Available Quizzes

Master Quiz Current CS 130 Quizzes (329 questions)

Includes all quizzes taught until today

Master Quiz Current CS 35L Quizzes (345 questions)

Includes all quizzes taught until today

Quiz CS 35L Final Exam Fall 2025 MCQs (17 questions)

Test your knowledge on software construction principles, design patterns, testing, security, and Git based on the CS 35L Final Exam.

Quiz AI & Learning Quiz (4 questions)

Recalling what you just learned is the best way to form lasting memory. Use this quiz to test your understanding.

Quiz Layered Architecture Quiz (11 questions)

Apply layered architecture to real engineering decisions — diagnose violations, pick between strict and relaxed layering, handle upward notification, and judge when to invert dependencies.

Quiz Pipes & Filters Quiz (11 questions)

Apply the pipes-and-filters style to design decisions — choose between pipelines and batch-sequential, diagnose violations of filter independence, judge when the style is the right call, and reason about error-handling trade-offs.

Quiz Publish-Subscribe Quiz (11 questions)

Apply the publish-subscribe style to real architectural decisions — choose between push and pull, diagnose coupling smells, pick QoS levels, and judge when pub-sub is the wrong tool.

Quiz Architectural Styles Quiz (12 questions)

Reason across architectural styles — choose the right style for a problem, distinguish styles from patterns, compare platonic and embodied forms, and design heterogeneous architectures that combine multiple styles coherently.

Quiz Architectural Tactics Quiz (8 questions)

Apply availability and performance tactics to concrete quality-attribute scenarios.

Quiz C Programming Quiz (10 questions)

Test your understanding of C — what's different from C++, how memory and the compilation pipeline actually work, and the design tradeoffs that motivate the language.

Quiz Data Management Quiz (15 questions)

Test your ability to reason about ACID, CAP, and the RDBMS/NoSQL trade-off in realistic scenarios — not just recite definitions.

Quiz Debugging Quiz (10 questions)

Apply, Analyze, and Evaluate-level questions on the four-step debugging process — distinguish fault / error / failure on real scenarios, pick the right tactic (logs vs debugger vs git bisect vs rubber duck) for the situation, and recognize when a fix isn't actually done.

Quiz Command Pattern Quiz (11 questions)

Test your understanding of Command roles, refactoring triggers, undo, macro commands, null commands, and appropriate use.

Quiz Factory Method & Abstract Factory Quiz (8 questions)

Test your understanding of creational patterns — when to use which, design decisions, and their relationships.

Quiz Mediator Pattern Quiz (6 questions)

Test your understanding of the Mediator pattern, its trade-offs, and its relationship to Observer.

Quiz MVC Pattern Quiz (8 questions)

Test your understanding of the MVC architectural pattern, its compound structure, and its modern variants.

Quiz Null Object Pattern Quiz (12 questions)

Test your understanding of the Null Object pattern's intent, its relationship to Singleton/Strategy/State, when it applies, and the bug-masking risk it introduces.

Quiz Observer Pattern Quiz (10 questions)

Test your understanding of the Observer pattern's design decisions, trade-offs, and common pitfalls.

Quiz Singleton Pattern Quiz (5 questions)

Test your understanding of the Singleton pattern's controversies, thread-safety mechanisms, and modern alternatives.

Quiz State Pattern Quiz (5 questions)

Test your understanding of the State pattern's design decisions, its relationship to Strategy, and the principle of polymorphism over conditions.

Quiz Strategy Pattern Quiz (7 questions)

Test your understanding of the Strategy pattern's structure, its composition-over-inheritance principle, and the often-confused boundary with the State pattern.

Quiz Structural Patterns Quiz (6 questions)

Test your understanding of Adapter, Composite, and Facade — their distinctions, design decisions, and when to apply each.

Quiz Design Patterns Quiz (12 questions)

Test your understanding of design-pattern selection, trade-offs, and design reasoning.

Quiz Information Hiding Quiz (29 questions)

Test your ability to identify, apply, and evaluate the Information Hiding principle in real code.

Quiz Separation of Concerns Quiz (12 questions)

Test your ability to identify, apply, and evaluate Separation of Concerns in real code.

Quiz SOLID Design Principles Quiz (12 questions)

Test your ability to apply and evaluate the five SOLID principles — with an emphasis on the Single Responsibility and Liskov Substitution Principles.

Master Quiz Design Principles Master Quiz (65 questions)

A comprehensive mix of the design-principles quizzes: Separation of Concerns, Information Hiding, SOLID, and Design with Reuse.

Quiz Design with Reuse Quiz (12 questions)

Test your ability to recognize, apply, and weigh design-with-reuse decisions in real software projects.

Quiz Code Beacons Quiz (6 questions)

Recognize beacons, evaluate when they help or mislead, and apply beacon-based reading strategies in code review and education.

Quiz Code Comprehension Quiz (6 questions)

Apply code-comprehension research to realistic reading, review, architecture, and refactoring decisions.

Quiz Code Smells Quiz (6 questions)

Diagnose common code smells from realistic maintenance scenarios and choose proportionate refactoring responses.

Quiz Generative AI in Software Engineering Quiz (23 questions)

Apply GenAI judgment across Bloom levels, with extra emphasis on analyzing, evaluating, and creating safe AI-assisted engineering workflows.

Quiz Modern Code Review Quiz (8 questions)

Apply modern code-review research to PR size, reviewer cognition, socio-technical dynamics, reviewable-code practices, Google-scale workflow, and AI-era review.

Quiz Refactoring Quiz (6 questions)

Apply refactoring concepts to behavior-preservation, smell diagnosis, safe process, and AI-assisted transformation scenarios.

Quiz Top-Down Code Comprehension Quiz (6 questions)

Practice hypothesis-driven code reading, beacon recognition, layout critique, and strategic switching between top-down and bottom-up comprehension.

Master Quiz Development Practices Master Quiz (71 questions)

A comprehensive mix of the development-practices quizzes with standalone decks: comprehension, debugging, GenAI, review, code smells, refactoring, and beacons.

Quiz Study Tips Quiz (11 questions)

Test your understanding of the evidence-based study techniques.

Quiz Version Control and Git Quiz (22 questions)

Test your knowledge of core version control concepts, Git architecture, branching strategies, and advanced commands.

Quiz Advanced Git Quiz (9 questions)

Test your knowledge of advanced Git commands, debugging tools, and integration strategies.

Quiz Basic Git Quiz (13 questions)

Test your knowledge of core version control concepts, Git architecture, branching, merging, and collaboration.

Quiz Writing Good Tests Quiz (9 questions)

Apply, Analyze, and Evaluate-level questions on test design — diagnose weak assertions, choose appropriate inputs, recognize behavior-coupling, and pick the right oracle. Distractors target the misconceptions students actually hold.

Quiz Java Concepts Quiz (18 questions)

Test your deeper understanding of Java's type system, OOP model, and design idioms. Covers false friends with C++/Python, encapsulation vs information hiding, generics, collections, and exception handling. Includes Parsons problems, technique-selection questions, and spaced interleaving across all concepts.

Quiz Make and Makefiles Quiz (10 questions)

Test your understanding of Makefiles, including syntax rules, execution order, automatic variables, and underlying concepts like incremental compilation.

Quiz Networking Fundamentals Quiz (11 questions)

Test your understanding of network architectures, the TCP/IP protocol stack, HTTP, and how the internet works.

Quiz Networking: Making Decisions (9 questions)

Given real-world application scenarios, choose the right network architecture, transport protocol, and application protocol. These questions test your ability to analyze trade-offs and justify design decisions.

Quiz Node.js Concepts Quiz (22 questions)

Test your deeper understanding of JavaScript's async model, type system, and paradigm differences from C++ and Python. Includes Parsons problems, technique-selection questions, and spaced interleaving across all concepts.

Quiz Software Process & Agile Quiz (10 questions)

Apply software-process thinking to real situations — choose between Waterfall and Agile for a given domain, judge what 'over' means in the Agile Manifesto, recognize Agile anti-patterns, and reason about iterative-vs-incremental delivery.

Quiz Extreme Programming (XP) Quiz (10 questions)

Apply XP practices to real team scenarios — choose between pair and solo work, judge when XP is the wrong fit, diagnose CI feedback-loop problems, navigate TDD-vs-design tension, and reason about collective ownership and bus factor.

Quiz Python Concepts Quiz (10 questions)

Test your deeper understanding of Python's design choices, paradigm differences from C++, and when to use which tool.

Quiz Interoperability Quiz (10 questions)

Apply interoperability principles to real integration problems — diagnose semantic vs syntactic failures, write measurable interop requirements, choose adapter strategies, and balance variability against implementation effort.

Quiz Quality-Requirement Triage (9 questions)

Decide whether each statement is a usable quality-attribute requirement, then identify the smell or strength that matters.

Quiz Testability Quiz (10 questions)

Apply testability thinking to real code and architecture — diagnose controllability and observability problems, pick the right test double, recognize SOLID synergies, and judge when monkey vs metamorphic vs TDD is the right approach.

Quiz Quality Attributes Quiz (13 questions)

Apply quality-attribute thinking to real design decisions — write measurable requirements, reason about trade-offs and synergies, distinguish design-time from run-time qualities, and judge when to invest in non-functional concerns.

Quiz Quality Attributes Comprehensive Quiz (14 questions)

Practice identifying, specifying, prioritizing, and trading off quality attributes across realistic architecture scenarios.

Quiz React Concepts Quiz (17 questions)

Test your deeper understanding of React's design philosophy, state management, and component architecture. Questions 1–7 cover tutorial material. Questions 8–10 test advanced concepts from the reference page. Questions 11–15 cover event handlers, useEffect, and state immutability.

Quiz RegEx Quiz (13 questions)

Test your understanding of regular expressions beyond basic syntax, focusing on underlying mechanics, performance, and theory.

Quiz Software Requirements Quiz (8 questions)

Recalling what you just learned is the best way to form lasting memory. Use this quiz to test your ability to discriminate between problem-space statements (requirements) and solution-space statements (design) in novel scenarios.

Quiz Requirements vs. Design Practice (10 questions)

Classify each statement by deciding whether it captures the required outcome or prematurely chooses an implementation.

Quiz Scrum Quiz (10 questions)

Recalling what you just learned is the best way to form lasting memory. Use this quiz to test your understanding of the Scrum framework — its empirical pillars, accountabilities, artifacts, and events.

Quiz Security and Authentication Quiz (16 questions)

Test your ability to reason about the CIA triad, web vulnerabilities, cryptographic primitives, authentication, and security design principles in realistic scenarios — not just recite definitions.

Quiz Shell Scripting & UNIX Philosophy Quiz (22 questions)

Test your conceptual understanding of shell environments, data streams, and scripting paradigms beyond basic command memorization.

Quiz Shell Script Parsons Problems (5 questions)

Arrange shell-pipeline fragments to filter, sort, count, and combine log and config files.

Quiz Software Architecture Quiz (10 questions)

Test your understanding of architecture definitions, drivers, views, decisions, and degradation.

Master Quiz Systems Master Quiz (51 questions)

A comprehensive mix of the systems quizzes: networking fundamentals and decisions, data management, and security.

Quiz Test-Driven Development (TDD) Quiz (8 questions)

Apply, Analyze, and Evaluate-level questions on TDD — diagnose violations of the Three Rules, pick the simplest passing implementation, recognize when TDD doesn't fit, and identify the rhythm that produces TDD's real benefit.

Quiz Test Doubles Quiz (13 questions)

Apply, Analyze, and Evaluate-level questions on the test-double taxonomy — pick the right double for a scenario, recognize Spy vs Mock by failure timing, and diagnose over-mocking that tests the mock instead of the SUT.

Quiz Testing Foundations Quiz (6 questions)

Apply, Analyze, and Evaluate-level questions on the core vocabulary of testing — regression, black-box vs. white-box, and choosing the right level of the testing pyramid.

Quiz Test Quality Quiz (8 questions)

Apply, Analyze, and Evaluate-level questions on whole-suite quality — coverage vs. oracle strength, mutation testing, flake diagnosis, oracle choice, and quality metrics.

Master Quiz Tools Master Quiz (149 questions)

A comprehensive mix of the standalone tools quizzes: shell, regular expressions, programming-language essentials, Git, Java, C, and Make.

Quiz UML Class Diagram Practice (14 questions)

Test your ability to read and interpret UML Class Diagrams.

Quiz UML Component Diagram Practice (8 questions)

Test your ability to read and interpret UML Component Diagrams.

Quiz UML Sequence Diagram Practice (12 questions)

Test your ability to read and interpret UML Sequence Diagrams.

Quiz UML State Machine Diagram Practice (13 questions)

Test your ability to read and interpret UML State Machine Diagrams.

Quiz UML Use Case Diagram Practice (8 questions)

Test your ability to read and interpret UML Use Case Diagrams.

Quiz INVEST Criteria Violations Quiz (5 questions)

Test your ability to identify which of the INVEST principles are being violated in various Agile user stories, now including their associated Acceptance Criteria.

Available Flashcard Sets

Master Flashcards Current CS 130 Flashcards (383 cards)

Includes all flash cards taught until today

Master Flashcards Current CS 35L Flashcards (472 cards)

Includes all flash cards taught until today

Flashcards Layered Architecture Flashcards (16 cards)

Concepts, constraints, trade-offs, and modern evolutions of the layered architectural style — including the layers-vs-tiers distinction, the golden rule, and Clean/Hexagonal inversions.

Flashcards Pipes & Filters Flashcards (16 cards)

Concepts, constraints, execution models, and trade-offs of the pipe-and-filter architectural style — including the sorting paradox, filter independence, and modern uses in compilers and data pipelines.

Flashcards Publish-Subscribe Flashcards (18 cards)

Key concepts, structural elements, subscription models, and trade-offs of the publish-subscribe architectural style.

Flashcards Architectural Styles Flashcards (18 cards)

Foundational vocabulary, taxonomy, and combination patterns for architectural styles — including style vs pattern, platonic vs embodied, heterogeneous architectures, and the styles taxonomy from data-flow to event-based.

Flashcards Architectural Tactics Flashcards (10 cards)

Availability and performance tactics, including ping-echo, heartbeat, redundancy, and caching.

Flashcards C Programming Flashcards (14 cards)

Cards span Remember through Create. Mix of definition recall, code prediction, design-decision reasoning, and small code-writing problems for spaced retrieval practice.

Flashcards Data Management Flashcards (23 cards)

Retrieval practice for DBMS concepts, SQL, relational algebra, transactions, ACID, CAP, and NoSQL trade-offs.

Flashcards Debugging (15 cards)

Retrieval practice for the four-step debugging process — fault / error / failure vocabulary, reproduction tactics, when to use logs vs the debugger vs rubber-ducking, conditional breakpoints, and the discipline of verifying a fix. Cards span Remember through Evaluate.

Flashcards Command Pattern Flashcards (12 cards)

Key roles, refactoring triggers, undo mechanics, and trade-offs of the Command design pattern.

Flashcards Factory Method & Abstract Factory Flashcards (7 cards)

Key concepts and comparisons for creational design patterns.

Flashcards Mediator Pattern Flashcards (5 cards)

Key concepts, design decisions, and the Observer vs. Mediator comparison.

Flashcards MVC Pattern Flashcards (6 cards)

Key concepts for the Model-View-Controller architectural pattern and its compound structure.

Flashcards Null Object Pattern Flashcards (15 cards)

Key concepts, roles, applicability, and trade-offs of the Null Object design pattern.

Flashcards Observer Pattern Flashcards (5 cards)

Key concepts, design decisions, and trade-offs of the Observer design pattern.

Flashcards Singleton Pattern Flashcards (4 cards)

Key concepts, controversies, and modern alternatives for the Singleton design pattern.

Flashcards State Pattern Flashcards (5 cards)

Key concepts, design decisions, and trade-offs of the State design pattern.

Flashcards Strategy Pattern Flashcards (15 cards)

Key concepts, design decisions, and trade-offs of the Strategy design pattern.

Flashcards Structural Pattern Flashcards (10 cards)

Key concepts for Adapter, Composite, and Facade patterns.

Flashcards Design Patterns Fundamentals (12 cards)

Core concepts, categories, and principles of design patterns in software engineering.

Flashcards GoF Design Pattern Details (20 cards)

Key concepts, design decisions, and trade-offs for each individual GoF pattern covered in the course.

Flashcards Information Hiding Flashcards (33 cards)

Key definitions, examples, trade-offs, design-doc practices, software-aging lessons, and common confusions around Information Hiding.

Flashcards Separation of Concerns Flashcards (15 cards)

Key definitions, examples, trade-offs, and misconceptions of Separation of Concerns (SoC).

Flashcards SOLID Design Principles Flashcards (15 cards)

Definitions, misconceptions, and the deeper 'why' behind each SOLID principle — with extra depth on SRP and LSP.

Master Flashcards Design Principles Master Flashcards (83 cards)

A comprehensive mix of the design-principles flashcards: Separation of Concerns, Information Hiding, SOLID, and Design with Reuse.

Flashcards Design with Reuse Flashcards (20 cards)

Key definitions, principles, cases, and trade-offs for designing software with reuse.

Flashcards Code Beacons Flashcards (8 cards)

Lexical, structural, test, assertion, architectural, and contextual beacons for expert code comprehension and review.

Flashcards Code Comprehension Flashcards (8 cards)

Cognitive load, mental models, comprehension metrics, architecture-code alignment, and practical strategies for making code easier to understand.

Flashcards Code Smells Flashcards (8 cards)

Common code smells, the design forces behind them, and the refactorings that usually address them.

Flashcards Generative AI in Software Engineering Flashcards (25 cards)

Core concepts, productivity trade-offs, skill-formation risks, coding-agent safety, and best practices for using Generative AI in software engineering.

Flashcards Modern Code Review Flashcards (12 cards)

Formal inspections, modern asynchronous review, cognitive limits, socio-technical dynamics, reviewable code, Google-scale review, and AI-era review risks.

Flashcards Refactoring Flashcards (8 cards)

Semantic-preserving transformations, code smells, safe refactoring process, common refactorings, and AI-assisted refactoring supervision.

Flashcards Top-Down Code Comprehension Flashcards (8 cards)

Hypothesis-driven code reading, beacons, schemas, stepdown structure, opportunistic switching, and tools that support top-down comprehension.

Master Flashcards Development Practices Master Flashcards (92 cards)

A comprehensive mix of the development-practices flashcards with standalone decks: comprehension, debugging, GenAI, review, code smells, refactoring, and beacons.

Flashcards Git Commands Flashcards (28 cards)

Which Git command would you use for the following scenarios?

Flashcards Advanced Git Flashcards (8 cards)

Which Git command would you use for the following advanced scenarios?

Flashcards Basic Git Flashcards (20 cards)

Which Git command would you use for the following scenarios?

Flashcards Writing Good Tests (15 cards)

Retrieval practice for writing readable, trustworthy unit tests — the four-part shape, strong oracles, systematic input selection, determinism, behavior over implementation, and TDD rhythm. Cards span Remember through Create; many are scenario-based.

Flashcards Java — What Does This Code Do? (15 cards)

You are shown Java code. Go beyond naming what it does — explain *why* it behaves that way, what design choice it reflects, or what would break if it changed.

Flashcards Java — Write the Code (15 cards)

You are given a scenario or design problem. Write Java code that solves it. Questions target Apply, Evaluate, and Create levels — not just syntax recall.

Flashcards Makefile Flashcards (Example Generation) (10 cards)

Test your knowledge on solving common build automation problems using Makefile syntax and rules!

Flashcards C Program Makefile Flashcards (10 cards)

Test your ability to read and understand actual Makefile snippets commonly found in real-world C projects.

Master Flashcards Makefile Master Flashcards (30 cards)

A comprehensive collection of Makefile syntax, example generation, and real-world C project snippets.

Flashcards Makefile Flashcards (Syntax Production/Recall) (10 cards)

Test your ability to produce the exact Makefile syntax, rules, and variables based on their functional descriptions.

Flashcards Networking Concepts (13 cards)

Review key networking concepts: architectures, protocols, HTTP, and the TCP/IP stack.

Flashcards Node.js/JavaScript Syntax — What Does This Code Do? (21 cards)

You are shown JavaScript/Node.js code. Explain what it does and what it outputs.

Flashcards Node.js/JavaScript Syntax — Write the Code (18 cards)

You are given a task description. Write the JavaScript code that accomplishes it.

Flashcards Software Process & Agile Flashcards (15 cards)

Concepts, history, and trade-offs of software processes — Waterfall, Agile, the Manifesto, iterative-incremental development, and major Agile frameworks (Scrum, XP, Lean).

Flashcards Extreme Programming (XP) Flashcards (16 cards)

Concepts, practices, and trade-offs of Extreme Programming — the Agile framework that pushes good software-engineering practices to their purest form.

Flashcards Python Syntax — What Does This Code Do? (12 cards)

You are shown Python code. Explain what it does and what it returns or prints.

Flashcards Python Syntax — Write the Code (12 cards)

You are given a task description. Write the Python code that accomplishes it.

Flashcards Interoperability Flashcards (15 cards)

Concepts, syntactic vs semantic interoperability, design tactics, and trade-offs of the interoperability quality attribute.

Flashcards Testability Flashcards (15 cards)

Concepts, controllability/observability, test doubles, design tactics, and advanced techniques for the testability quality attribute.

Flashcards Quality Attributes Flashcards (19 cards)

Concepts, specification, trade-offs, and synergies of quality attributes — the non-functional 'how well' dimensions of a software system.

Flashcards Quality Attributes Comprehensive Flashcards (18 cards)

Broad review of quality attributes, measurable specifications, architectural trade-offs, tactics, and design-time versus run-time qualities.

Flashcards React Syntax — What Does This Code Do? (18 cards)

You are shown React/JSX code. Explain what it does and what it renders.

Flashcards React Syntax — Write the Code (18 cards)

You are given a task description. Write the React/JSX code that accomplishes it.

Flashcards Basic RegEx Syntax Flashcards (Production/Recall) (14 cards)

Test your ability to produce the exact Regular Expression metacharacter or syntax based on its functional description.

Flashcards RegEx Example Flashcards (10 cards)

Test your knowledge on solving common text-processing problems using Regular Expressions!

Flashcards Scrum Flashcards (20 cards)

Retrieval practice for the Scrum framework — empirical pillars, accountabilities, artifacts, values, and events. Cards span Bloom's taxonomy from recall through evaluation.

Flashcards Security and Authentication Flashcards (28 cards)

Retrieval practice for the CIA triad, SQL injection, XSS, cryptography (symmetric, public-key, signatures), authentication (sessions, JWT), and security design principles.

Flashcards Shell Commands Flashcards (19 cards)

Which Shell command would you use for the following scenarios?

Flashcards Shell Commands — What Does It Do? (18 cards)

Match each shell command to its purpose

Flashcards Shell Pipelines (14 cards)

Practice connecting UNIX commands together with pipes to solve real tasks.

Flashcards Software Architecture Flashcards (11 cards)

Definitions, architectural drivers, views, ADD, and architecture degradation.

Flashcards Study Tips Flashcards (6 cards)

Test your knowledge on evidence-based study techniques!

Master Flashcards Systems Master Flashcards (64 cards)

A comprehensive mix of the systems flashcards: networking, data management, and security.

Flashcards Test-Driven Development (TDD) (12 cards)

Retrieval practice for TDD as a development rhythm — the Three Rules, Red-Green-Refactor, BUFD vs. evolutionary design, the Patterns-Happy malady, the Rocket Ship analogy, living documentation, and where TDD struggles. Cards span Remember through Evaluate.

Flashcards Test Doubles (16 cards)

Retrieval practice for the test-double taxonomy — SUT, DOC, indirect inputs vs outputs, the five kinds of double (Dummy, Fake, Stub, Spy, Mock), procedural vs expected-behavior verification, and how to choose. Cards span Remember through Evaluate.

Flashcards Testing Foundations (8 cards)

Retrieval practice for the core vocabulary of software testing — regression, black-box vs. white-box, and the testing pyramid (unit, component, integration, system). Cards span Remember through Evaluate; scenario-based wherever possible.

Flashcards Test Quality (12 cards)

Retrieval practice for evaluating a whole test suite — coverage vs. quality, oracle types, mutation testing, flakiness, test smells, and the quality rubric. Cards mix Remember, Understand, Apply, Analyze, and Evaluate.

Master Flashcards Tools Master Flashcards (304 cards)

A comprehensive mix of the standalone tools flashcards: shell, regular expressions, programming-language essentials, Git, Java, C, and Make.

Flashcards UML Class Diagram Flashcards (10 cards)

Quick review of UML Class Diagram notation and relationships.

Flashcards UML Component Diagram Flashcards (6 cards)

Quick review of UML Component Diagram notation and architecture-level modeling.

Flashcards UML Sequence Diagram Flashcards (8 cards)

Quick review of UML Sequence Diagram notation and fragments.

Flashcards UML State Machine Diagram Flashcards (7 cards)

Quick review of UML State Machine Diagram notation and transitions.

Flashcards UML Use Case Diagram Flashcards (6 cards)

Quick review of UML Use Case Diagram notation and relationships.

Flashcards User Stories & INVEST Principle Flashcards (10 cards)

Test your knowledge on Agile user stories and the criteria for creating high-quality requirements!

Tutorial Progress

Back up, transfer, or restore tutorial progress stored in this browser's local storage.