Chapter 34 — Systems, endpoints and hardware security: integration
Lesson map
Lesson 34 published. Map, example, EX100.
flowchart TD
N0["Learning outcomes"]
N1["34.1 Services"]
N2["34.2 Dependencies"]
N3["34.3 End-to-end test"]
N4["34.4 Issues"]
N5["34.5 Change coordination"]
N6["Integration testing schedule"]
N7["Interface records"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
N7 --> EX["Worked example"]
EX --> Q["Exercise EX100"]
Logical drawing
flowchart LR
N0["Learning outcomes"]
N1["34.1 Services"]
N2["34.2 Dependencies"]
N3["34.3 End-to-end test"]
N4["34.4 Issues"]
N5["34.5 Change coordination"]
N6["Integration testing schedule"]
N7["Interface records"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX100"]
[Learning outcomes]
|
v
[34.1 Services]
|
v
[34.2 Dependencies]
|
v
[34.3 End-to-end test]
|
v
[34.4 Issues]
|
v
[34.5 Change coordination]
|
v
[Integration testing schedule]
|
v
[Interface records]
|
v
[Worked example] --> [Exercise EX100]
Learning outcomes
You will (1) integrate the design with library services; (2) manage dependencies on printing, catalogue and session systems; (3) test end to end.
34.1 Services
Public PCs must work with the session booking system, the print service and the catalogue.
Each service is run by a different party: the booking system by a vendor, the print service by Fernhill and the catalogue by its supplier. The public PC image must work with all three after every restore. Mateo lists what each service needs from the PC, such as a client program, a stored setting or a network route, so that the image and the restore scope include it.
34.2 Dependencies
Each service is listed with owner, interface and test.
The list shows who to contact when something breaks and which test checks the link. Mateo found that the print service had no named owner at Fernhill before the project; Marta's technician now holds that role. Each entry also records where the service's settings live on the PC, which matters because settings stored in the patron area are wiped every night, as the printing problem later showed. The list is reviewed twice a year.
34.3 End-to-end test
A tester books a session, prints, uses the catalogue and the reader, logs off and confirms restore.
The test follows a real patron's visit from start to finish, using a synthetic library card. It includes the overnight restore and a second session the next morning, because some problems appear only after a reset. Mateo runs it on each hardware model and records each step's result. Any failure stops the release until fixed. A full run takes under an hour, so it fits easily into the release schedule.
34.4 Issues
Printing fails after restore because a printer mapping is stored in the patron area; it is moved to the system image.
After each restore the printer mapping disappeared, so the first patron of the day could not print. The cause was a setting that the print client wrote to the patron's own profile. Moving it to the system image fixed the problem for every session. Mateo then checked the other services for settings stored in the same place and found none, but added the check to the integration test.
34.5 Change coordination
Service owners are told before image releases.
A week's notice gives each owner time to raise concerns and to join the integration test if they wish. Mateo sends a short note with the release date, what changes and the test results so far. Owners also tell Fernhill about their own changes, which go on the shared calendar. Coordination prevents two changes landing on the same night and making a failure hard to diagnose. Marta keeps the calendar up to date.
Integration testing schedule
Integration tests run after each image release and each change to a dependent service. The tester follows a script covering booking, logon, browsing, printing, catalogue use, the accessibility reader, logoff and overnight restore. Results are recorded with the image version and service versions.
The session system vendor is asked to notify Fernhill before updates, so tests can be scheduled. When the vendor forgets once, the end-to-end test after restore catches a logon issue before opening.
Interface records
Each interface record lists data exchanged, protocol, owner and contact.
Change calendar
A shared calendar shows planned changes across services to avoid clashes.
Results
End-to-end tests pass after the printer fix.
Vendor relationships
Contacts at each vendor are recorded with escalation routes, so integration problems are resolved quickly.
Lesson
The printer problem showed that restore scope affects integration.
Ownership
Each dependency has a named owner at Fernhill and at the vendor, and a review date. Owners are told about planned image releases a week ahead.
Worked example
The catalogue supplier updates its app; the allowlist needs updating by signature. Because rules use publisher signatures, the new version runs without changes.
Synthetic case. Synthetic.
Errors and limits
Integration problems often appear only end to end.
Exercises
- EX100 — Services. Which services must integrate? Rubric: 3 = booking, print, catalogue; 2 = two; 1 = one; 0 = none.
- EX101 — Print issue. Why did printing fail after restore? Rubric: 3 = mapping in patron area; 2 = partial; 1 = vague; 0 = none.
- EX102 — Signature rules. Why did the catalogue update work without changes? Rubric: 3 = publisher signature rule; 2 = partial; 1 = vague; 0 = none.
Synthesis
Test the whole patron journey end to end.
Continue studying — chapter 34 of 50
← Chapter 33 (draft) · Course chapter index · Chapter 35 (draft) →