AISE502/moodle/week_09.html

60 lines
6.5 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- ==========================================================================
AISE502 · Moodle course page · Week 9
Section title (Edit section → Section name): Week 9: Classes C6–C9 – and Ten Profiles Side by Side
Three blocks follow, matching the FHGR section template. Paste each block into the
corresponding 'Text and media area' (editor → source code view), or all three into one.
The slide set of lecture 9 is added by the lecturer as a file resource below block 2.
Generated by src/build_moodle.py from src/content/week_09.json – edit the JSON, not this file.
========================================================================== -->
<!-- BLOCK 1 · Learning objectives -->
<h4>🎯 Learning objectives</h4>
<ul>
<li>I can explain why C6 replaces the interactive vocabulary with makespan, batch-window adherence and cost per simulation.</li>
<li>I can distinguish the third consistency semantics – reproducibility and refresh contracts – from ACID and eventual consistency.</li>
<li>I know that C7 is an integration product over C1–C5 whose ADR to write is the freshness contract.</li>
<li>I can explain why C8's hard requirement is declared correctness semantics under failure, not throughput.</li>
<li>I can judge, per stream and per scenario, when at-least-once plus idempotence is legitimate instead of exactly-once.</li>
<li>I can explain why C9's binding load is connection fan-out and push, with concurrent-connection count as tiebreaker.</li>
<li>I can explain each H of C6–C9 as a veto trigger backed by a scenario with a response measure.</li>
<li>I can read the consolidated requirements table by columns and by rows, including its seventeen footnotes.</li>
<li>I can name the five cross-class observations, including that D11 High, not scale, forces microservices.</li>
<li>I can explain why the freshness contract appears twice in the course project's measurement contract.</li>
</ul>
<!-- BLOCK 2 · Theory -->
<h4>🧑‍🏫 Theory</h4>
<p><strong>Lecture 9: Classes C6–C9 – and Ten Profiles Side by Side</strong> · 3 lessons lecture + 1 lesson standup/coaching<br>
This lecture completes the demand side: classes C6–C9 in the same rhythm, then the consolidated requirements table with its seventeen footnotes and five cross-class observations.</p>
<ul>
<li>C6 replaces the interactive vocabulary: makespan, batch-window adherence and cost per simulation are the response measures; correctness means bit-level reproducibility from versioned inputs and seeds (Highs D2, D9, D10).</li>
<li>C6 and C7 define a third consistency semantics beside ACID and eventual: reproducibility (“as of this run”) and freshness by refresh contract (“as of yesterday 24:00”), contracts with response measures.</li>
<li>C7 is an integration product over C1–C5 (Highs D1, D10); the ADR to write is the freshness contract; tightening it towards real time is a class change into C8 economics.</li>
<li>The course project inherits C6 (ingestion and eval pipelines) and C7 (analytics); its freshness contract appears twice: as a pipeline fitness function and as a grounding rule for generated answers.</li>
<li>C8 must keep pace with the world indefinitely (Highs D2, D3, D5); the hard requirement is declared correctness semantics under failure; at-least-once plus idempotence is decided per stream, per scenario.</li>
<li>AI lens: C7 docks text-to-SQL onto the governed semantic layer, not onto raw tables; C8 rules out per-event LLM calls; models score events in the stream as checkpointed operators.</li>
<li>C9's binding load is connection fan-out and push (Highs D3, D5); same domain, four structures: scale and business model move the weights at the edges; concurrent-connection count is the tiebreaker.</li>
<li>In the consolidated requirements table an H is a veto trigger backed by a scenario, an L a licence not to pay; the seventeen footnotes are part of the semantics.</li>
<li>Five observations: read/write ratio and consistency semantics discriminate most; D11 High, not scale, forces microservices; rollbacks cut dataflows along technical seams; regulation lives in K(a); C10 inherits before it innovates.</li>
<li>The ten profiles are derivable, not arbitrary: weights trace to binding scenarios, constraints to statutes or contracts, workload shapes to production numbers – the other operand, R(a), is ready.</li>
</ul>
<p>📎 <strong>Materials:</strong> Slide set of Lecture 9 <em>(added below by the lecturer)</em> · Script: Part III – Sections 24 (C6 – Scientific Simulation / Batch Compute), 25 (C7 – Decision Support / BI Analytics), 26 (C8 – Real-Time / IoT Streaming), 27 (C9 – Collaboration / Messaging) and 29 (Stepping Back: Ten Profiles Side by Side).</p>
<!-- BLOCK 3 · Self-study and assignments -->
<h4>🧑‍💻 Self-study and assignments</h4>
<p><strong>📖 Reading before the lecture:</strong> Part III – Sections 24 (C6 – Scientific Simulation / Batch Compute), 25 (C7 – Decision Support / BI Analytics), 26 (C8 – Real-Time / IoT Streaming), 27 (C9 – Collaboration / Messaging) and 29 (Stepping Back: Ten Profiles Side by Side).</p>
<p><strong>Also before the lecture:</strong></p>
<ul>
<li>Have the walking skeleton ready for the milestone check M3 in the coaching session: it must run end-to-end.</li>
</ul>
<p><strong>🧩 Exercise session:</strong> Coaching session (1 lesson): the teams finish the walking skeleton and the milestone check M3 takes place – the end-to-end thin slice must run.</p>
<p><strong>🛠️ Project work this week</strong> · Milestone M3 – Walking Skeleton (weeks 8–9)</p>
<ul>
<li>Finish the walking skeleton: the end-to-end thin slice runs – MarketDataService delivers prices, a minimal ResearchAgent produces one validated Insight, delivered through the stable API; a placeholder UI calls it.</li>
<li>Keep the deterministic core free of LLM calls – this is the line that is graded.</li>
<li>Use a snapshot of market and news data so that demo and grading are reproducible even if the live APIs misbehave.</li>
<li>Commit after the milestone and record your decisions as ADRs as you go.</li>
<li>Apply today's lecture: your ingestion and eval pipelines are C6, your analytics are C7 – the skeleton should already show where an Insight's freshness stamp comes from.</li>
</ul>
<div style="border-left:4px solid #1b6ec2; background:#eef5fc; padding:8px 12px; margin:10px 0;">📌 <strong>Due this week:</strong> Milestone check (week 9): walking skeleton runs end-to-end</div>