Software Engineering › Memorise › Key terms bank
Key terms bank
Use these exact words in answers
Key terms A to F
terms
Abstraction — Hiding detail so only the essential features are shown.
Acceptance testing — Client/users check the system meets their needs.
Accountability — Actions are traceable to a person (logs).
Actuator — Output device that moves or acts (motor, hydraulic actuator).
Adaptive maintenance — Changing software for a new environment.
Agile — Iterative approach with short sprints and continuous feedback.
AI — Machines performing tasks that need human intelligence; ML is a subset.
API — Rules letting software components request data or services from each other.
Asymmetric encryption — Public key encrypts, private key decrypts.
Authentication — Proving who you are.
Authorisation — Deciding what you may do.
Availability — Systems and data are accessible when needed.
Backtracking — Try an option, retreat on a dead end, try another.
Beta testing — Real users trial a near-final version.
Bias (human, dataset) — Unfair skew in data, labels or decisions that favours some outcomes or groups.
Big data — Huge, fast, varied data sets.
Boundary testing — Test at and either side of the limits.
BPA — Business process automation of whole workflows.
Breakpoint — Pauses execution at a chosen line.
Business continuity — Keeping critical operations running through disruption.
Cipher text — Encrypted, unreadable data. Plain text: readable data.
Class — Blueprint for objects.
CMS — Content management system (WordPress, Drupal, Joomla).
Code review — People read code to find flaws.
Confidentiality — Only authorised people can read data.
Corrective maintenance — Fixing bugs after release.
CRUD — Create, Read, Update, Delete (INSERT, SELECT, UPDATE, DELETE).
CSRF — Cross-site request forgery: forged request using a logged-in user's trust.
CSS — Cascading Style Sheets: presentation of web pages.
DAST — Dynamic application security testing of the running app.
Data dictionary — Table describing every variable (type, format, size, description, example, validation).
Data mining — Finding patterns in large data sets.
Data packet — Chunk of data with header and payload.
Decision tree — Diagram of decisions and resulting actions (also an ML model).
DevOps — Development plus operations: CI/CD, rapid feedback, automation, shared ownership.
DFD — Data flow diagram.
Digital signature — Hash encrypted with sender's private key; proves origin and integrity.
Direct implementation — Old system off, new on at once.
Disaster recovery — Restoring systems and data after a major incident (RTO, RPO).
DNS — Domain name system: name to IP address (port 53).
Driver — Test code that calls a module under test.
Encapsulation — Data and methods bundled and protected.
Exception management — Handling runtime errors without crashing (try/except).
Feasibility — Whether a project is achievable (schedule, financial).
FTP / SFTP — File transfer (port 21) / secure file transfer over SSH (port 22).
Functional requirement — What the system must do.
Key terms G to P
terms
Gantt chart — Tasks against time with dependencies and milestones.
Generalisation — Common features pulled up into a superclass.
GDPR — EU General Data Protection Regulation.
Hardening — Reducing attack surface through configuration and patching.
Hash value — Fixed-length output of a one-way function.
HTTP / HTTPS — Web protocol (port 80) / encrypted version (port 443).
IMAP / POP3 / SMTP — Email: sync on server (143) / download (110) / send (25).
Inheritance — Subclass reuses and extends a superclass.
Input validation — Checking input meets rules before use.
Integrity — Data accurate and unchanged by unauthorised parties.
IPv4 — 32-bit address written as four numbers 0-255.
K-nearest neighbour — Classify by the majority of the K closest points.
Language-dependent optimisation — Efficiency gains using features of a specific language.
Lazy loading — Load media only when needed.
Linear regression — Predicts a continuous numeric value on a straight line.
Logbook / process diary — Dated record of progress, issues and reflections.
Logistic regression — Classification (yes/no) using probability.
Machine learning — Algorithms that learn patterns from data.
Metadata — Data about data.
Minification — Removing unnecessary characters from code to reduce file size.
MLOps — Design, model development and operations stages for ML.
Neural network — Layers of weighted nodes trained by backpropagation.
ORM — Object-relational mapping: database rows as objects.
Parallel implementation — Old and new run side by side.
Penetration testing — Authorised simulated attack that exploits weaknesses.
Perfective maintenance — Improving performance or features.
Phased implementation — New system introduced in stages.
Pilot implementation — New system trialled by a small group first.
Polymorphism — Same method name, different behaviour per class.
Privacy by design — Proactive not reactive; embed privacy into design; respect for user privacy.
Progressive web app (PWA) — Installable, offline-capable web app (service worker, manifest, HTTPS).
Key terms Q to Z
terms
Race condition — Outcome depends on the timing of concurrent access to shared data.
Regulatory compliance — Meeting laws, regulations and standards.
Reinforcement learning — Learn from rewards and penalties.
RPA — Robotic process automation: bots mimic user actions.
Sandboxing — Isolated environment that limits what code can do.
SAST — Static application security testing of source code without running it.
Sanitisation — Cleaning or encoding input to neutralise dangerous characters.
Security by design — Security built in from the start.
Semi-supervised learning — Few labels plus many unlabelled examples.
Sensor — Input device detecting the environment.
Service worker — Background script that caches and intercepts requests.
Session management — Tracking a user's state across requests with a session ID.
Side-channel attack — Learning secrets from timing, power or electromagnetic leakage.
SQL injection — Malicious SQL inserted via input; stopped by parameterised queries.
SSL/TLS certificate — Proves a site's identity and enables HTTPS.
Stub — Placeholder for an unfinished module.
Supervised learning — Learn from labelled data.
Symmetric encryption — One shared key.
TCP/IP — Reliable delivery (TCP) and addressing/routing (IP).
Two's complement — Signed binary: invert bits and add 1.
Unsupervised learning — Find patterns in unlabelled data.
Version control — Tracks changes, branches, merges and reverts code.
Volume testing — Test with large amounts of data.
W3C / WAI — Web standards body / web accessibility initiative.
Waterfall — Sequential, plan-driven phases.
WAgile — Hybrid of Waterfall planning and Agile iteration.
Web manifest — JSON file with app name, icons and display mode.
XSS — Cross-site scripting: malicious script injected into a page other users view.