ICT-App Dev Specialist FA key terms
ICT-App Dev Specialist FA · Get comfortable with the vocabulary.
- Application Programming Interface (API)
- Related: RESTful API, Endpoint, JSON
A defined set of rules and endpoints that lets one software component request data or actions from another without knowing its internal implementation. APIs specify inputs, outputs, error codes, and authentication requirements.
- RESTful API
- Related: Application Programming Interface (API), HTTP Status Code, Idempotency
A web service style that exposes resources at URLs and uses standard HTTP methods such as GET, POST, PUT, and DELETE. It is stateless, so each request carries all information needed to process it.
- Endpoint
- Related: RESTful API, HTTP Status Code
A specific URL path and method combination that an API exposes, such as a route for retrieving one record. Each endpoint has its own request format, response format, and access rules.
- JSON
- Related: Serialization, RESTful API
A lightweight text format for structured data using objects, arrays, strings, numbers, booleans, and null. It is the most common payload format for web APIs because it is readable and language-neutral.
- HTTP Status Code
- Related: RESTful API, Idempotency
A three-digit number in an HTTP response that summarizes the outcome, grouped as 2xx success, 3xx redirect, 4xx client error, and 5xx server error. Clients use it to decide whether to retry, surface an error, or continue.
- Idempotency
- Related: RESTful API, HTTP Status Code
A property where repeating the same request produces the same end state as sending it once. GET, PUT, and DELETE are typically idempotent, while POST usually is not, which matters for safe retries.
- Serialization
- Related: JSON, Data Model
Converting an in-memory object into a format that can be stored or transmitted, such as JSON or binary. Deserialization reverses the process and must validate untrusted input to avoid crashes or injection flaws.
- Authentication
- Related: Authorization, OAuth 2.0, JSON Web Token (JWT)
Verifying that a user or system is who it claims to be, typically through credentials, tokens, or certificates. It answers who you are, distinct from authorization, which decides what you may do.
- Authorization
- Related: Authentication, Role-Based Access Control (RBAC)
Deciding which resources and actions an authenticated identity may access. Implementations range from role-based checks to attribute-based policies and must be enforced server-side, never only in the client interface.
- OAuth 2.0
- Related: JSON Web Token (JWT), Authentication
A delegation framework that lets an application obtain limited access to a user's resources on another service without receiving the user's password. It issues access tokens through defined grant flows and scopes.
- JSON Web Token (JWT)
- Related: OAuth 2.0, Authentication
A compact, URL-safe token with a header, payload, and signature. The signature lets a server verify integrity, but the payload is only encoded, not encrypted, so sensitive data must not be placed there.
- Role-Based Access Control (RBAC)
- Related: Authorization
An access model that grants permissions to roles rather than individual users, and assigns users to roles. It simplifies administration and auditing because permission changes happen at the role level.
- Cross-Site Scripting (XSS)
- Related: Cross-Site Request Forgery (CSRF), Input Validation
An injection flaw where untrusted input reaches a page and executes as script in a victim's browser. Preventing it requires context-aware output encoding, input validation, and a restrictive content security policy.
- Cross-Site Request Forgery (CSRF)
- Related: Cross-Site Scripting (XSS), Authentication
An attack that tricks a logged-in user's browser into sending an unwanted state-changing request to a site that trusts the user's cookies. Defenses include anti-CSRF tokens and SameSite cookie attributes.
- Input Validation
- Related: Cross-Site Scripting (XSS), Serialization
Checking that incoming data matches expected type, length, format, and range before processing. It should be enforced on the server, with client-side checks treated only as a convenience for users.
- SQL Injection
- Related: Input Validation, ORM (Object-Relational Mapping)
An attack that inserts malicious SQL through unsanitized input so the database executes unintended commands. Parameterized queries and prepared statements are the primary defense against it.
- ORM (Object-Relational Mapping)
- Related: Data Model, SQL Injection
A library that maps program objects to relational tables and translates operations into SQL. It reduces boilerplate but can hide inefficient queries, so developers still need to inspect generated statements.
- Data Model
- Related: ORM (Object-Relational Mapping), Serialization
A structured description of the entities an application stores, their attributes, and the relationships among them. It guides schema design, API payloads, and validation rules across the system.
- Relational Database
- Related: ACID Transaction, Index
A store that organizes data into tables of rows and columns linked by keys, queried with SQL. It enforces schema and constraints and provides transactions with atomicity and isolation guarantees.
- ACID Transaction
- Related: Relational Database, Optimistic Locking
A unit of work that guarantees atomicity, consistency, isolation, and durability. Either all its changes commit or none do, which protects data integrity when several related writes must succeed together.
- Index
- Related: Relational Database, Query Optimization
An auxiliary data structure that speeds lookups on selected columns at the cost of extra storage and slower writes. Choosing indexes well requires understanding the queries an application actually runs.
- Query Optimization
- Related: Index, Caching
The process of rewriting queries or adjusting indexes and schema so the database returns results with less work. Reading execution plans reveals whether scans, joins, or sorting dominate response time.
- Caching
- Related: Query Optimization, Content Delivery Network (CDN)
Storing frequently used results in a faster layer so repeated requests avoid slower computation or I/O. Effective caching needs clear expiry, invalidation rules, and tolerance for slightly stale data.
- Content Delivery Network (CDN)
- Related: Caching, Latency
A geographically distributed network of servers that caches and serves static or cacheable content close to users. It reduces latency and origin load and can absorb traffic spikes and some attacks.
- Latency
- Related: Throughput, Content Delivery Network (CDN)
The time between a request and the corresponding response, often measured in milliseconds. Perceived performance depends on it, and network distance, server processing, and rendering all contribute.
- Throughput
- Related: Latency, Load Balancing
The volume of work a system completes per unit of time, such as requests per second. It differs from latency, and a system can raise throughput while individual requests still respond slowly.
- Load Balancing
- Related: Horizontal Scaling, Throughput
Distributing incoming traffic across several server instances so no single instance is overwhelmed. It supports horizontal scaling and can remove unhealthy instances from rotation automatically.
- Horizontal Scaling
- Related: Load Balancing, Stateless Service
Adding more server instances to share load rather than upgrading one machine's capacity. It suits stateless services well and usually requires shared session storage or sticky routing.
- Stateless Service
- Related: Horizontal Scaling, RESTful API
A service that keeps no client session data between requests, so any instance can handle any request. This simplifies scaling, failover, and deployment because state lives in external stores.
- Microservices
- Related: Stateless Service, Message Queue
An architecture that splits an application into small, independently deployable services communicating over a network. It improves team autonomy and scaling granularity but adds operational and consistency complexity.
- Message Queue
- Related: Microservices, Eventual Consistency
A durable buffer that lets producers send work asynchronously while consumers process it later. It decouples services, smooths traffic spikes, and enables retries when a consumer fails.
- Eventual Consistency
- Related: Message Queue, ACID Transaction
A model where replicas may briefly disagree but converge once updates propagate. It trades immediate agreement for availability and scale, so applications must tolerate temporary stale reads.
- Optimistic Locking
- Related: ACID Transaction, Data Model
A concurrency control that detects conflicting updates at write time, often by comparing a version number. It avoids long-held locks and suits low-contention data where conflicts are rare.
- Unit Test
- Related: Integration Test, Test Coverage
An automated test that exercises one small piece of logic in isolation, usually with dependencies replaced by fakes. Fast and focused tests give quick feedback when code changes.
- Integration Test
- Related: Unit Test, Continuous Integration (CI)
A test that verifies several components working together, such as code against a real database or API. It catches wiring and contract problems that isolated unit tests cannot reveal.
- Test Coverage
- Related: Unit Test, Regression Testing
A measure of how much code, branching, or behavior a test suite exercises. High coverage alone does not prove quality, since tests can execute lines without asserting correct outcomes.
- Regression Testing
- Related: Continuous Integration (CI), Test Coverage
Re-running relevant tests after a change to confirm existing behavior still works. Automated suites make it practical to repeat these checks on every build and before each release.
- Continuous Integration (CI)
- Related: Continuous Delivery, Integration Test
A practice where developers merge changes frequently and an automated pipeline builds and tests each one. It surfaces integration defects early and keeps the main branch releasable.
- Continuous Delivery
- Related: Continuous Integration (CI), Blue-Green Deployment
A practice that keeps software in a deployable state at all times, with an automated pipeline ready to release on demand. Deployment to production remains a deliberate human decision.
- Blue-Green Deployment
- Related: Continuous Delivery, Canary Release
A release technique that runs two identical environments and switches traffic from the old to the new one. It enables fast rollback because the previous environment remains intact.
- Canary Release
- Related: Blue-Green Deployment, Load Balancing
Gradually routing a small share of traffic to a new version while monitoring errors and metrics. If problems appear, traffic is shifted back before most users are affected.
- Version Control
- Related: Continuous Integration (CI), Code Review
A system that records changes to files over time so teams can review history, branch, and merge work. It enables parallel development and recovery from mistakes.
- Code Review
- Related: Version Control, Technical Debt
A structured peer examination of proposed changes before they merge. It catches defects, spreads knowledge, and enforces standards that automated tools cannot fully check.
- Technical Debt
- Related: Refactoring, Code Review
The future cost of shortcuts taken now, such as rushed design or missing tests. Like financial debt, it accrues interest as changes become harder and should be repaid deliberately.
- Refactoring
- Related: Technical Debt, Unit Test
Restructuring existing code to improve readability or design without changing observable behavior. It is safest when backed by tests that confirm functionality remains intact.
- Design Pattern
- Related: Refactoring, Dependency Injection
A reusable, named solution to a recurring design problem, such as observer or factory. Patterns give teams shared vocabulary but should be applied only when the problem genuinely fits.
- Dependency Injection
- Related: Design Pattern, Unit Test
Supplying an object's collaborators from outside instead of letting it construct them. This loosens coupling, simplifies testing with substitutes, and makes configuration explicit.