Spec checklist
Rate each point. Be honest: 'Secure' means you could answer an exam question on it now without notes.
| 6.1.1 | Explain the differences and relationships between data, information and knowledge |
| 6.1.2 | Describe sources of data: humans, AI/machine learning (feedback loops), sensors, IoT, transactions |
| 6.1.3 | Explain ethical data practices and the metrics for the value of data: quantity, timeframe, source, veracity |
| 6.1.4–5 | Explain how organisations use data and information; judge the suitability of data and how it is generated |
| 6.2.1 | Explain manipulating, analysing and processing data |
| 6.3.1–6 | Define quantitative/qualitative, structured/unstructured, discrete/continuous/categorical data and the properties of qualitative data |
| 6.4.1–4 | Define integer, real, character, string, Boolean, date and Blob; judge suitability of data types |
| 6.5.1–2 | Define JSON, text file, CSV, UTF-8, ASCII and XML, and when each is used |
| 6.6.1–4 | Explain metadata, file-based, directory-based and hierarchy-based storage structures |
| 6.7.1–3 | Explain Big Data and the six Vs: volume, variety, variability, velocity, veracity, value |
| 6.7.4–6 | Explain data quality assurance (validation, verification, reliability, consistency, integrity, redundancy) and factors affecting maintenance (time, skills, cost) |
| 6.8.1–2 | Explain data wrangling and its steps: structure, clean, validate, enrich, output |
| 6.8.3 | Explain the core functions of a data system: input, search, save, integrate, organise, output, feedback loop |
| 6.8.4–8 | Explain transcription and transposition errors, methods to avoid them and factors that affect data entry |
| 6.9.1–2 | Choose data visualisation formats based on type of data, audience and brief |
| 6.10.1–4 | Explain and draw hierarchical, network and relational data models; judge which to use |
| 6.11.1–3 | Explain permissions, RBAC, RuBAC and APIs for accessing data across platforms |
| 6.12.1–2 | Explain data warehouse, data lake, data mart, data mining, reporting, financial planning and CRM |
6.1 Data, information and knowledge
Sources of data (6.1.2)
| Source | Examples | Points to note |
|---|---|---|
| Humans | Surveys, online forms, feedback | Subject to errors, bias and dishonesty; can capture opinions |
| AI / machine learning | Predictions, recommendations, generated content | Danger of feedback loops: if AI outputs are fed back as training data, errors and bias are reinforced (e.g. predictive policing sending officers to the same areas, which produces more recorded crime there) |
| Sensors | Temperature, accelerometer, vibration, sound, light, pressure | Continuous, automatic, accurate if calibrated; huge volumes |
| Internet of Things | Smart thermostats, lights, security cameras, trackers | Real-time data from many devices; privacy and security concerns |
| Transactions | Customer data, membership, timing, basket contents | Shows real behaviour; used for stock control and marketing |
Ethical data practices and the value of data (6.1.3)
Ethical practice means collecting only what is needed, being transparent, getting consent, keeping data secure, avoiding bias, and following data protection law. The value of data is judged by:
| Metric | Question to ask |
|---|---|
| Quantity | Is there enough data to draw reliable conclusions? (More is not always better if it is poor quality.) |
| Timeframe | Is it recent enough? Last year's prices may be useless today. |
| Source | Where did it come from? Is the source reliable and was it collected ethically? |
| Veracity | Is it accurate and trustworthy? |
How organisations use data (6.1.4)
| Use | Example |
|---|---|
| Analysis to identify patterns | Supermarket sees barbecue food sells out when the forecast is sunny |
| System performance analysis: load, outage, throughput, status | IT team monitors server load and outages to plan upgrades |
| User monitoring: login/logout, resources accessed | Spot unusual logins at 3am; check who opened a sensitive file |
| Targeted marketing: discounts, upselling | 'Customers who bought this also bought...'; personalised vouchers |
| Threat/opportunity assessment: competitors, security, compliance | Monitor competitor prices; detect attacks; check data retention rules are met |
- Data
- Raw facts and figures with no context, e.g. 18, 22, 25.
- Information
- Data that has been processed and given context so it has meaning, e.g. 'Temperatures in Leeds this week: 18–25°C'.
- Knowledge
- Understanding gained from information that can be applied to make decisions, e.g. 'Ice cream sales rise above 20°C, so order more stock'.
- Feedback loop (AI)
- When an AI system's outputs influence the data it is later trained on, which can reinforce errors or bias.
- Veracity
- How accurate and trustworthy data is.
6.2–6.4 Transforming data, taxonomy and data types
Methods of transforming data (6.2.1)
| Method | Meaning | Example |
|---|---|---|
| Manipulating | Changing data's form or arrangement: sorting, filtering, merging, reformatting | Sort customers by surname; convert dates to DD/MM/YYYY |
| Analysing | Examining data to find patterns, trends and meaning | Calculate average spend by age group |
| Processing | Performing operations to produce an output | Calculate payroll from hours worked; generate invoices |
Data taxonomy (6.3)
| Quantitative | Qualitative | |
|---|---|---|
| Definition | Measurable or countable numeric data | Descriptive, non-numeric data |
| Structure | Structured: fits neatly into rows and columns | Unstructured: no fixed format |
| Examples | Sales figures, temperatures, ages | Customer reviews, emails, photos, videos, voice recordings |
| Purpose | Statistical analysis, calculations, charts | Understanding opinions, reasons and experiences |
| Representation of quantitative data | Meaning | Example |
|---|---|---|
| Discrete | Specific separate values, counted | Number of items in a basket (3, not 3.5) |
| Continuous | Any value in a range, measured | Delivery time 23.7 minutes; weight 1.42 kg |
| Categorical | Values in a fixed set of groups | Membership level: bronze, silver, gold |
Properties of qualitative data (6.3.5): it is stored and retrieved only as a single object (a photo or a review is saved and loaded whole; you can't query part of it like a database field), and it can be codified into structured data, e.g. tagging reviews as positive/negative, or rating comments on a 1–5 scale, so it can be analysed.
Practise: discrete, continuous or categorical?
The temperature inside a server room.
The number of tickets a customer books.
A customer's preferred contact method: email, phone or post.
How long a web page takes to load.
The number of failed login attempts.
A hotel room type: single, double or suite.
Data types (6.4)
| Data type | Stores | Example | Use |
|---|---|---|---|
| Integer | Whole numbers | 42 | Quantities, IDs, counts |
| Real | Numbers with a decimal part | 19.99 | Prices, measurements |
| Character | A single character | 'M' | Codes, initials, single-key menu choices |
| String | Text | "WF1 2DH" | Names, postcodes, phone numbers |
| Boolean | True or false | True | Flags: paid, active, subscribed |
| Date | A calendar date (and possibly time) | 2026-11-03 | Dates of birth, order dates; allows date calculations and sorting |
| Blob | Binary large object | A JPEG photo or PDF | Storing images, audio or documents inside a database |
■ INTERRELATIONSHIPS (6.4.2–6.4.4)
- Structured data uses specific data types (integer, date) so it can be calculated, sorted and validated. Unstructured data is often stored as a Blob or long string.
- The data type controls what transformations are possible: you can average integers but not strings; you can sort dates chronologically only if stored as a date, not as text.
- Choosing the wrong type causes problems: phone numbers stored as integers lose the leading 0.
- Quantitative data
- Data that can be measured or counted as numbers.
- Qualitative data
- Descriptive data such as opinions, text, images or video.
- Structured data
- Data organised in a fixed format, such as rows and columns in a table.
- Unstructured data
- Data with no predefined format, such as emails, images and audio.
- Discrete data
- Numeric data that can only take specific values, usually counted, e.g. number of tickets.
- Continuous data
- Numeric data that can take any value in a range, usually measured, e.g. height.
- Categorical data
- Data that falls into a limited set of groups, e.g. T-shirt size S/M/L.
- Real
- A data type for numbers with a fractional part (float in Python).
- Character
- A data type holding a single letter, digit or symbol.
- Blob
- Binary large object: a data type for storing large binary data such as images, audio or files in a database.
6.5–6.6 Data formats and storage structures
| Format | What it is | When used | Benefits / drawbacks |
|---|---|---|---|
| JSON | Text format of key–value pairs and arrays | Web APIs, config files, app data | Lightweight, human-readable, maps directly to Python dictionaries / less descriptive than XML, no comments |
| Text file | Plain unformatted text | Logs, notes, simple data | Simple, opened by anything / no structure, hard to query |
| CSV | Records on lines, fields separated by commas | Spreadsheets, data import/export, data analysis | Simple, small, works with Excel and pandas / no data types, commas inside fields need quotes, flat only |
| UTF-8 | Unicode character encoding, 1–4 bytes per character | Almost all web pages and modern files | Every language and emoji, ASCII compatible / non-English characters take more bytes |
| ASCII | 7-bit character set, 128 characters | Older systems, simple English text | Small, universal / no accented letters, other alphabets or emoji |
| XML | Text with custom tags describing the data | Document formats (.docx), RSS feeds, older APIs, data exchange between systems | Self-describing, supports nesting and validation against a schema / verbose, larger files, slower to parse |
JSON and CSV in Python
import json
import csv
order = {"id": 1042, "customer": "Asha",
"items": ["latte", "scone"], "paid": True}
text = json.dumps(order) # Python dictionary -> JSON string
print(text)
back = json.loads(text) # JSON string -> dictionary
print(back["items"][1])
with open("orders.csv", "w", newline="") as f:
writer = csv.writer(f)
writer.writerow(["order_id", "customer", "total"])
writer.writerow([1042, "Asha Patel", 5.40])
with open("orders.csv") as f:
for row in csv.reader(f):
print(row)
{"id": 1042, "customer": "Asha", "items": ["latte", "scone"], "paid": true}
scone
['order_id', 'customer', 'total']
['1042', 'Asha Patel', '5.4']
Notice the CSV reader returns every field as a string: CSV has no data types, so values must be converted after reading.
The same order in XML
<order id="1042"> <customer>Asha Patel</customer> <item>latte</item> <item>croissant</item> <paid>true</paid> </order>
Try it: is this valid JSON?
Edit the text, then check it. Try removing a quote mark or adding a comma after the last item.
ASCII and UTF-8
print(ord("A"), "A".encode("ascii"))
print(len("café".encode("utf-8")), "bytes in UTF-8")
try:
"café".encode("ascii")
except UnicodeEncodeError:
print("é cannot be stored in ASCII")
65 b'A' 5 bytes in UTF-8 é cannot be stored in ASCII
Structures for storing data (6.6)
| Structure | Definition | When used |
|---|---|---|
| Metadata | Data about data: describes and gives context, e.g. author, date created, file size, GPS location, column names and types. | Searching and organising files; understanding what a data set contains; but can leak private information (photo location) |
| File-based | Data stored in individual separate files, each managed by the program that uses it. | Small systems, single-user apps, logs. Simple but leads to duplication and inconsistency across files. |
| Directory-based | Files organised into folders (directories) by category. | Organising documents on a shared drive or project folder; easy to navigate and set permissions per folder. |
| Hierarchy-based | Data organised as a tree of parent–child levels, each item with one parent (folders within folders, XML, organisation charts). | Data with a natural one-to-many structure; fast to navigate down a known path; awkward for many-to-many relationships. |
Interrelationship (6.6.4): the storage structure affects how easily data can be transformed. Data scattered across separate files must be merged before analysis; hierarchical data may need flattening into rows before it can go in a CSV or spreadsheet.
- JSON
- JavaScript Object Notation: a lightweight text format storing data as key–value pairs and arrays, widely used by web APIs.
- CSV
- Comma-separated values: a plain text format where each line is a record and fields are separated by commas.
- XML
- Extensible Markup Language: a text format that uses custom tags to describe and structure data.
- ASCII
- A character set using 7 bits to represent 128 characters (English letters, digits, symbols, control codes).
- UTF-8
- A variable-length Unicode encoding (1–4 bytes per character) that can represent characters from every language and emoji, and is backwards compatible with ASCII.
- Metadata
- Data about data, e.g. a photo's date, location, file size and camera model.
6.7 Big Data, quality and maintenance
Big Data is data that is too large, fast or varied for traditional tools to handle. It has multiple dimensions, the six Vs:
| V | Meaning | Impact on gathering, storing, maintaining and processing |
|---|---|---|
| Volume | The amount of data | Needs scalable storage (cloud, data lakes) and distributed processing |
| Variety | Different types and formats: structured, unstructured, images, sensor readings | Needs flexible storage; harder to combine and analyse |
| Variability | Data flow and meaning change over time (seasonal peaks; words changing meaning) | Systems must handle peaks; analysis must account for changing context |
| Velocity | The speed data arrives and must be processed | Needs real-time processing and fast networks (e.g. fraud detection) |
| Veracity | Accuracy and trustworthiness | Needs cleaning and validation; poor data leads to poor decisions |
| Value | How useful the data is to the organisation | Storing data costs money; only worth keeping if it delivers insight |
Data quality assurance methods (6.7.4)
| Method | Meaning | Example |
|---|---|---|
| Validation | Automatic check that data is sensible and follows rules | Age must be 16–99; email must contain @ |
| Verification | Check that data has been entered or copied accurately | Enter password twice; proofread against the original form |
| Reliability | Data comes from a trustworthy source and gives consistent results when collected again | Calibrated sensors; reputable data suppliers |
| Consistency | Data is the same across systems and uses the same formats | Dates all in DD/MM/YYYY; customer address the same in sales and delivery systems |
| Integrity | Data stays accurate and complete and isn't corrupted or altered without authorisation | Foreign keys must match an existing record; checksums; access control |
| Redundancy | Control of duplicate data: remove unplanned duplicates; plan duplicates for backup | Remove duplicate customer records; keep a replicated copy for disaster recovery |
Factors that affect maintenance (6.7.5): time (cleaning and updating data takes staff time), skills (specialists such as data engineers are needed for large data sets), cost (storage, software, staff, training).
- Big Data
- Data sets so large, fast-moving or varied that traditional tools can't process them; described by the six Vs.
- Verification
- Checking data has been entered or transferred accurately, e.g. double entry or proofreading.
- Data integrity
- Data remains accurate, complete and consistent throughout its life.
- Data redundancy
- The same data stored in more than one place. Unplanned redundancy causes inconsistency; planned redundancy (backups) improves resilience.
6.8 Data systems
Data wrangling (6.8.1–6.8.2)
Data wrangling transforms raw data from different sources into a clean, consistent format ready for analysis. It is used before analysis, when combining data sets, or importing data into a new system.
| Step | Purpose | Example: combining shop sales spreadsheets from 5 branches |
|---|---|---|
| Structure | Organise the raw data into a consistent layout | Make all files use the same columns in the same order |
| Clean | Fix or remove errors, duplicates, missing values and inconsistent formats | Remove duplicate rows; change '£5' and '5.00' to 5.00; fill or flag blanks |
| Validate | Check the data meets rules and is accurate | Check no negative quantities; dates within the right month |
| Enrich | Add useful data from other sources | Add product category and branch region from other tables |
| Output | Save or publish the data in the format needed | Export to one CSV or load into the data warehouse |
Core functions of a data system (6.8.3)
| Function | Purpose |
|---|---|
| Input | Capture data into the system (forms, sensors, imports) |
| Search | Find specific records quickly |
| Save | Store data permanently |
| Integrate | Combine data from or share data with other systems |
| Organise (index) | Arrange data and create indexes so it can be found and sorted efficiently |
| Output | Present results: screens, reports, exports |
| Feedback loop | Use outputs to improve inputs or the system itself, e.g. users report errors, results refine future data collection |
Data entry errors (6.8.4–6.8.8)
| Error | What happens | Why it occurs |
|---|---|---|
| Transcription | Data copied incorrectly: wrong character, missing or extra characters | Misreading handwriting, typing fast, mishearing on the phone, tiredness |
| Transposition | Two characters swapped: 56 becomes 65 | Typing quickly; common with long numbers |
| Method to avoid errors | How it helps | Limitation |
|---|---|---|
| Validation of user input | Rejects impossible values automatically | Can't spot valid but wrong data |
| Verification by double entry | Data typed twice and compared | Takes longer; both entries could share the same mistake |
| Drop-down menus | User picks from fixed valid options, so no typing errors | Only for limited sets of options; long lists slow to scroll |
| Pre-filled data entry boxes | Known data (e.g. today's date, address from postcode lookup) filled in automatically | Users may not check pre-filled data that is wrong |
Factors that impact data entry (6.8.6): time needed to create the screens; expertise needed to create the screens; time needed to enter the data. Better screens (drop-downs, lookups, validation) reduce errors and entry time, but cost more time and expertise to build, so the choice depends on how much data will be entered and how costly errors are.
- Data wrangling
- Transforming raw data into a clean, structured format ready for analysis.
- Transcription error
- A mistake made when copying data, e.g. typing 'Smtih' for 'Smith' or a wrong digit.
- Transposition error
- Two characters swapped, e.g. 1243 instead of 1234.
6.9–6.10 Data visualisation and data models
Visualisation formats (6.9)
| Format | Best for | Drawbacks |
|---|---|---|
| Graphs (line, scatter) | Trends over time; relationships between two variables | Can mislead with scaled axes; need some numeracy |
| Charts (bar, pie) | Comparing categories; proportions of a whole (pie) | Pie charts poor with many categories; colour alone may not be distinguishable |
| Tables | Exact values; looking up specific figures | Hard to spot trends at a glance |
| Reports | Detailed written analysis with figures, for formal decisions | Long; take time to produce and read |
| Dashboards | Real-time KPIs on one screen for managers | Can oversimplify; costly to build and maintain |
| Infographics | Communicating key points to the public or non-specialists | Little detail; time-consuming to design; risk of style over accuracy |
Choose based on the type of data (categories → bar chart; time series → line graph), the intended audience (directors → dashboard; public → infographic; analysts → tables) and the brief (what decision is it for?).
Data models (6.10)
Hierarchical model
- T Level DSD
- Level 2 IT
- T Level Management
- Level 3 Electrical
Network model
Relational model
Data stored in tables (relations) of rows (records) and columns (fields), linked by keys.
| StudentID (PK) | Name | Course |
|---|---|---|
| S01 | Asha | DSD |
| S02 | Ben | DSD |
| S03 | Chloe | Business |
| EnrolmentID (PK) | StudentID (FK) | Module |
|---|---|---|
| E1 | S01 | Python |
| E2 | S01 | Networks |
| E3 | S02 | Python |
| Model | Access to individual items | Storage efficiency | Complexity | Suits |
|---|---|---|---|---|
| Hierarchical | Fast down a known path; slow otherwise | Duplication if an item belongs to two parents | Simple | Org charts, file systems, XML |
| Network | Fast following links | Efficient: no duplication for many-to-many | Complex to design and change | Transport routes, social networks |
| Relational | Flexible: any query using SQL | Efficient: normalised tables avoid duplication | Moderate; joins can be slow on huge data | Most business systems: orders, customers, stock |
- Hierarchical model
- Data organised as a tree: each child record has one parent.
- Network model
- Data organised as a graph: records can have many parents and many children (many-to-many).
- Relational model
- Data organised in tables linked by primary and foreign keys.
- Primary key
- A field that uniquely identifies each record in a table.
- Foreign key
- A field in one table that is the primary key of another table, creating a link.
6.11–6.12 Data access and analysis tools
Accessing data across platforms (6.11)
| Concept | Meaning |
|---|---|
| Permissions: authorisation | Confirming a user is allowed to access a resource |
| Permissions: privileges | The actions a user can perform (read, write, delete, administer) |
| Permissions: access rights | The specific resources a user or group can access |
| Permissions: rules | Conditions that decide access, e.g. only during working hours |
| Role-based access control (RBAC) | Permissions attached to roles (nurse, receptionist, manager); users get the permissions of their role. Easy to manage; roles can become too broad. |
| Rule-based access control (RuBAC) | Access decided by rules set by an administrator, e.g. only from the office network, only 08:00–18:00. Flexible and context-aware; rules can become complex. |
| APIs | Defined interface that lets other platforms request data (e.g. a weather app requesting forecast data). Controlled, secure sharing with authentication and rate limits; depends on the provider and must be secured. |
Data analysis tools (6.12)
| Tool | Purpose | Example |
|---|---|---|
| Data warehouse | Central store of cleaned, structured data from many systems, for reporting | A retailer combines sales, stock and web data for company-wide reports |
| Data lake | Stores huge amounts of raw data in any format until needed | Streaming service stores all viewing logs, clicks and video files |
| Data mart | Subset of a warehouse for one department | Marketing team's data mart of campaign and customer data |
| Data mining | Algorithms find hidden patterns and relationships | Bank finds spending patterns that indicate fraud |
| Reporting | Presents data as summaries, charts and dashboards | Weekly sales report to directors |
| Financial planning and analysis | Uses business intelligence to forecast, budget and track performance | Forecast next quarter's revenue from trends |
| CRM: customer data analytics | Analyse customer behaviour, value and churn | Identify customers likely to cancel |
| CRM: communications | Manage and personalise contact with customers | Automated, personalised email campaigns |
Scale (6.12.2): a small business can analyse data in a spreadsheet; as volume and variety grow, a database and reporting tool are needed; with Big Data, warehouses, lakes and mining tools become necessary.
- RBAC
- Role-based access control: permissions given according to the user's role.
- RuBAC
- Rule-based access control: access decided by rules, e.g. time of day or location.
- API
- Application programming interface: a defined way for one program to request data or services from another.
- Data warehouse
- A central store of structured, cleaned data from many sources, organised for reporting and analysis.
- Data lake
- A store holding large amounts of raw data in any format until it is needed.
- Data mart
- A smaller subset of a data warehouse focused on one department or topic.
- Data mining
- Using algorithms to find hidden patterns and relationships in large data sets.
- CRM
- Customer relationship management: systems that store and analyse customer data and manage communications.
Knowledge organiser
DATA, INFORMATION, KNOWLEDGE
- Data: raw facts
- Information: data with context
- Knowledge: information applied
- Sources: humans, AI (feedback loops), sensors, IoT, transactions
VALUE AND USE
- Quantity, timeframe, source, veracity
- Patterns, system performance, user monitoring
- Targeted marketing, threat assessment
TAXONOMY AND TYPES
- Quantitative = structured; qualitative = unstructured
- Discrete, continuous, categorical
- Integer, real, character, string, Boolean, date, Blob
FORMATS AND STORAGE
- JSON: key–value, APIs
- CSV: rows, no data types
- XML: tags
- ASCII 128 chars; UTF-8 all languages
- Metadata; file, directory and hierarchy structures
BIG DATA: SIX VS
- Volume, variety, variability
- Velocity, veracity, value
- Quality: validation, verification, reliability, consistency, integrity, redundancy
- Maintenance: time, skills, cost
DATA SYSTEMS
- Wrangling: structure, clean, validate, enrich, output
- Input, search, save, integrate, organise, output, feedback
- Transcription and transposition errors
- Prevent: validation, double entry, drop-downs, pre-filled boxes
VISUALISATION AND MODELS
- Graphs, charts, tables, reports, dashboards, infographics
- Choose by data type, audience, brief
- Hierarchical (one parent), network (many-to-many), relational (tables + keys)
ACCESS AND ANALYSIS
- Permissions: authorisation, privileges, rights, rules
- RBAC, RuBAC, APIs
- Data warehouse, lake, mart
- Data mining, reporting, financial planning, CRM
Flashcards
Every Quick recall definition on this page. Click the card to flip it; use the arrow keys to move.
Quiz me
Random questions on CA6 from the course question bank. Pick a topic or question type, answer in your head or on paper, then check. Your score is saved on this device.
Exam-style questions
Allow about 90 minutes.
Explain the difference between data and information, using an example.
- Data is raw facts with no context (1); information is data that has been processed / given context so it has meaning (1); valid example showing both (1), e.g. '07:45' vs 'the next train to Leeds leaves at 07:45'.
Explain the danger of a feedback loop when AI is used to generate data.
- The AI's outputs are used as future training data / influence the data collected (1) so errors or bias are reinforced and amplified over time (1).
State whether each is discrete, continuous or categorical: (a) shoe size category S/M/L (b) time to run 100 m (c) number of goals scored.
- (a) Categorical (b) Continuous (c) Discrete
State the most suitable data type for: (a) a product photo stored in a database (b) a delivery date (c) a customer's middle initial.
- (a) Blob (b) Date (c) Character
A weather app requests forecast data from a server. Explain why JSON is suitable for transferring the data.
- Lightweight / small, so quick to transfer to a phone (1); human-readable key–value structure (1); easily converted into objects/dictionaries in most programming languages / widely supported by APIs (1).
Explain one reason why UTF-8 is used instead of ASCII for a social media platform.
- Users post in many languages and use emoji (1); ASCII only has 128 characters / English characters, while UTF-8 can represent all Unicode characters (1).
Describe the difference between a transcription error and a transposition error.
- Transcription: data copied incorrectly, e.g. wrong/missing character (1). Transposition: two characters swapped in order, e.g. 12 → 21 (1).
A GP surgery's receptionists enter patient details by phone. Explain two methods to reduce data entry errors.
- Method (1) + explanation (1), twice. E.g. postcode lookup to pre-fill address (1) avoids mistyping addresses heard over the phone (1); validation of date of birth / NHS number format (1) rejects impossible values (1); read details back to the patient to verify (1); drop-downs for titles/GP names (1).
Describe the steps of data wrangling a company would follow to combine customer lists from two systems.
- Structure: put both lists into the same fields/layout (1)
- Clean: remove duplicates, fix formats, handle missing values (1)
- Validate: check data meets rules, e.g. valid emails/postcodes (1)
- Enrich: add extra data, e.g. region or purchase history (1)
- Output: save as a single combined file / load into the target system (1)
Explain two of the six Vs of Big Data in the context of a ride-sharing app.
- V (1) + context (1), twice. E.g. velocity: thousands of GPS locations per second must be processed in real time to match drivers (1)(1); volume: millions of journeys stored (1) requiring scalable cloud storage (1); veracity: GPS errors in city centres (1) give inaccurate fares (1); variety: GPS, payments, ratings text (1)(1).
Draw a relational model for a library showing members, books and loans. Include table names, fields and keys.
- Member table with MemberID as primary key (1)
- Book table with BookID/ISBN as primary key (1)
- Loan table (1)
- Loan includes MemberID and BookID as foreign keys (1)
- Sensible additional fields, e.g. name, title, loan date, due date (1)
Explain the difference between RBAC and RuBAC.
- RBAC grants permissions based on the user's role (1), e.g. all receptionists can view appointments (1).
- RuBAC grants access based on rules/conditions set by an administrator (1), e.g. access only from the office network or during working hours (1).
A chain of gyms wants to analyse membership, attendance and payment data from 40 sites. Discuss the suitability of a data warehouse and a data lake.
Indicative content:
- Warehouse: structured, cleaned data from all sites; consistent reporting for managers (attendance trends, revenue); data must be wrangled first, which takes time and skill; good fit because the data is mostly structured.
- Lake: stores raw data cheaply in any format, including CCTV or app logs; flexible for future analysis; but harder to query, risk of becoming a 'data swamp', needs specialist skills.
- Could use both: lake for raw data, warehouse/marts for reporting.
A hospital is choosing between a hierarchical and a relational data model for patient, ward, doctor and appointment data. Evaluate which model is more suitable.
◆ SUPPORT: SENTENCE STARTERS
- A data warehouse would suit the gym chain because the data is ... However, ...
- In a hierarchical model each patient would have only one ... which is a problem because ...
- A relational model links tables using ...
Indicative content:
- Hierarchical: simple; fast for one-to-many paths, e.g. ward → patients; but a patient may see many doctors and a doctor has many patients (many-to-many), forcing duplication; changes are difficult; inconsistent data risk.
- Relational: tables for patients, doctors, wards, appointments linked by keys; appointments resolve the many-to-many relationship; reduces duplication and inconsistency; flexible queries (e.g. all appointments for a doctor this week); integrity enforced by foreign keys; more complex to design; joins on very large data can be slower.
- Judgement: relational is more suitable because hospital data has many-to-many relationships and needs accuracy and flexible querying; integrity is critical for patient safety.
▲ STRETCH
- Write Python that reads a CSV of temperatures, validates each reading (−50 to 60) and writes the valid readings to a JSON file.
- Explain how metadata attached to photos uploaded to a website could create a privacy risk, and how the developer should handle it.