Software Engineering › Notes › Key terms bank
Key terms bank
Key terms A to F
- 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
- 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
- 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.