Readings "Passive" learning opportunities

This page collects together all of the “readings” associated with individual modules.

In this site, readings represent “passive” learning opportunities, as opposed to experiences, which represent “active” learning opportunities. In many courses, readings and experiences together constitute the “assignments”.

Module: Introduction

Guided tour of the Introduction module

Introducing the introduction.

ICS 414 Syllabus

Basic information about the class

Project Teams

The randomly assigned teams

Previous Semester Projects

Brief overview of past projects

Module: Requirements Elicitation

Wikipedia: User Stories

User story examples and resources

Mountain Goat: User Stories

User story examples and resources

Module: IDPM Project Management

GitHub Issue Guidelines

Guidelines for GitHub Issue Specification

IDPM AntiPatterns

Don’t use forks, pull requests, or rebasing with IDPM

Module: Industrial Strength Meteor

SC: Differences between MATP and MATR

Brief overview of MATRP

Wrapping Mongo Collections

Gaining more control over the Mongo collections

Meteor Guide: Methods

How to use Methods, Meteor’s remote procedure call system, to write to the database.

Module: Unit Testing

Introduction to testing

Motivation, unit, integration, and acceptance testing, and continuous integration

Meteor Guide: Testing

How to test Meteor applications

Mocha: A Javascript Test Framework

Reference guide to Mocha

Chai: A Javascript Assertion Library

Reference guide to Chai

The testing pyramid should look more like a crab

It’s time to fully embrace end-to-end (acceptance) testing

Module: IDPM Review

Introduction to Software Review

Software Inspection, Technical Reviews, Walkthroughs

IDPM Review

How to do issue driven project management reviews

Review Checklists Overview

A quick overview of the review checklists for ICS 414

Module: Acceptance Testing

Test Cafe: A Javascript Acceptance Test Framework

Reference guide to TestCafe

Module: Deployment

How to deploy software

Deployment goals. Preparation, branching, controlling, and monitoring deployments.

Deploy a Meteor app to Digital Ocean

Deploy using Meteor Up to Digital Ocean

Monitor MongoDB at Digital Ocean

Inspect your MongoDB database on Digital Ocean using Robo3T

Meteor Application Performance Monitoring

Use Monti APM for development and production

Custom domain names for Digital Ocean

How set up a custom domain name for your Meteor application

Setup HTTPS

Use Meteor Up to set up HTTPS on Digital Ocean

Refreshing the data in development and deployment

How to clear and reinitialize the database.