CWIIP study plan
CWIIP · Give each week a clear focus.
8 weeks · About 6 hours per week
Wireless IoT higher layer protocols (MQTT, CoAP, DDS, AMQP)
Compare MQTT, CoAP, DDS, and AMQP across transport, QoS, discovery, and payload model, and write a one-page decision matrix
Trace a full MQTT publish/subscribe exchange including CONNECT, SUBSCRIBE, PUBLISH at QoS 0/1/2, and retained messages
Explain CoAP's request/response model over UDP, including confirmable vs non-confirmable messages and Observe
Identify which protocol fits a given IoT scenario (constrained sensor, low-latency control loop, enterprise messaging) and justify the choice
Your checkpoint
A protocol comparison matrix covering all four protocols plus three worked scenario justifications
Wireless IoT higher layer protocols (MQTT, CoAP, DDS, AMQP) & Security solutions used within IoT integration projects
Design topic hierarchies and QoS strategies for a multi-device MQTT deployment and document the tradeoffs
Map the main threats in an IoT integration project (spoofing, eavesdropping, replay, device takeover) to concrete countermeasures
Apply TLS for transport security and explain certificate-based mutual authentication between device and broker
Compare token-based (OAuth2/JWT) and certificate-based device identity and state when each is appropriate
Your checkpoint
A threat model table with at least eight threats, each with a named countermeasure and the layer where it is enforced
Security solutions used within IoT integration projects & Database systems and their role in integration projects
Configure role-based access control on a broker so each device can only publish/subscribe to its own topic subtree
Explain how credentials and secrets should be stored and rotated in an IoT deployment
Compare relational and time-series databases for storing sensor telemetry, including write throughput and query patterns
Write SQL queries that aggregate time-windowed sensor readings (averages, min/max, gaps) and explain indexing choices
Your checkpoint
A working ACL configuration plus a query set of at least five SQL statements run against sample telemetry data
Database systems and their role in integration projects & Python programming fundamentals
Model a normalized schema for devices, readings, and alerts, and justify keys and foreign relationships
Use Python to connect to a database, parameterize queries safely, and insert and read back telemetry rows
Handle transactions and errors in Python database code so partial writes do not corrupt state
Explain when NoSQL or time-series storage beats a relational schema for IoT data
Your checkpoint
A Python script that creates the schema, inserts simulated readings, and prints a time-windowed aggregate report
Python programming fundamentals & IoT libraries available for Python
Write Python functions using lists, dicts, comprehensions, exceptions, and modules to transform raw sensor payloads
Use an MQTT client library in Python to connect, subscribe, publish, and handle reconnect and message callbacks
Parse JSON payloads from a device and validate required fields before processing
Structure a small Python project into modules with a clear entry point and configuration handling
Your checkpoint
A runnable Python subscriber that receives messages, validates payloads, and logs structured output
Systems development using APIs, programming, and libraries & IoT libraries available for Python
Consume a REST API from Python using requests, including headers, query parameters, pagination, and error handling
Design a small REST endpoint contract for device registration and describe methods, status codes, and payloads
Integrate an IoT Python library with the REST client so device data flows from broker to API to database
Handle timeouts, retries with backoff, and rate limits in API client code
Your checkpoint
An end-to-end Python pipeline that subscribes to telemetry, posts it to an API, and persists the response
Requirements engineering
Elicit and write functional and non-functional requirements for an IoT integration scenario using a structured template
Distinguish user stories from technical requirements and write acceptance criteria that are testable
Prioritize requirements with MoSCoW and trace each to a design decision and a test
Identify ambiguous or conflicting requirements and rewrite them into verifiable statements
Your checkpoint
A requirements specification with at least twelve numbered requirements, priorities, acceptance criteria, and a traceability table
Systems development using APIs, programming, and libraries & Implementation, monitoring, and maintenance best practices
Define monitoring signals for an IoT integration (device connectivity, message lag, error rates) and describe alert thresholds
Explain deployment practices such as configuration separation, versioned releases, and rollback plans
Describe logging and health-check patterns that make failures diagnosable in production
Run a timed mixed-topic practice set across all eight domains and review every missed item
Your checkpoint
A one-page operations runbook covering monitoring, alerting, deployment, and rollback, plus a scored practice-set review log
Milestones
Week 2: You can explain all four IoT protocols and map at least eight threats to countermeasures without notes
Week 4: Your Python database script runs cleanly and returns correct time-windowed aggregates from stored telemetry
Week 6: Your end-to-end pipeline moves a message from broker to API to database with retries and error handling
Week 8: Practice-set score is at or above 80% overall with no domain below 70%