Week |
Lecture |
Lab/Tutorial |
Assignments |
#0: 1/20 ---------- Readings: Syllabus Pair Programming Rules Visual Git Guide Watch: Growth Mindset: Carol Dweck Why Software Engineering? Resources: git - the simple guide Hello World for Github TwistedEquations on Branching & Merging Pro Git's Branching & Merging Pro Git's Basic Undoing Things Intro to Git for Web Designers Git Magic, chapters 1 and 2 |
Class Introduction Team Project: Requirements Teamwork Peer evaluation Version Control and Collaborative Software Development |
None |
Get a GitHub Student Pack with unlimited private repos
Important: Always launch Perusall from the Canvas assignment. Prepare for quiz over: this week's reading assignments, syllabus and code of conduct Install git on your machine |
#1: 1/27 -------- Readings: Google App Engine Google: Good or Bad? by Don Norman Usability 101 by Jakob Nielsen An Investigation of the Therac-25 Accidents Watch: Github Projects Exercises: CSS Syntax Exercises 1-4 CSS Border Exercises 1-4 CSS Margin Exercises 1-3 CSS Box Model Exercises 1-4 |
Basic Web Programming 1/30: In-class voter registration Examples: Span Add Class Name Create/Append Element Mouse Over Event getElementsBy Class/Tag Name alert box confirm box prompt box Style Display More Style Display Form/Button Set href |
Git |
Blog Post 2 due Friday at 11:59 pm Paper 2 due Sunday at 10 pm |
#2: 2/3 --------- Readings: Uber's Self-Driving Crash Maven Tutorial Boeing Software: 737 Max Resources: GNU make Manual Mrbook's make tutorial Jenkov Ant tutorial Ant Manual Example Makefile Exercises: JS Function Exercises 1-4 JS Events Exercises 1-3 JS Conditions 1-2 HTML DOM Exercises 1-6 |
Build Management Engineering EXPO Thursday 2/6 10 am - 4 pm |
DHTML & Google
App Engine |
Paper 3 due Sunday at 11:59 pm Blog App Project assigned |
#3: 2/10 ---------- Readings: User Interface Design for Programmers by Joel Spolsky Hawaii's false ballistic missile alert was a failure in UX design Do the list exercises: https://www.w3schools.com/python/exercise.asp?filename=exercise_lists1 |
Python CNS Career Fair Thursday 2/13 1-5 pm |
Build Management |
|
#4: 2/17 ---------- Readings: The Joel Test by Joel Spolsky The Java Tutorials: OO Concepts Resource: An Investigation of the Therac-25 Accidents |
SDLC, Agile, and
UML |
Python & MongoDB |
Blog App Project due Monday |
#5: 2/24 ---------- Resources: JUnit on Mac JUnit tutorial |
Testing Customer-Developer Meetings |
UML |
|
#6: 3/2 ---------- Readings: Parnas' paper on modularization criteria Read The Single Responsibility Principle paper (link included in first table) |
Information Hiding Exam Review Customer-Developer Meetings Assessment review materials: Midterm review Review Solutions |
Testing Exam Review: Q&A |
Phase I due Friday at 11:59 pm |
#7: 3/9 ----------- Readings: The Liskov Substitution Principle Why Extends is Evil |
Information Hiding Midterm Exam |
Project Work |
|
3/16 |
SPRING BREAK |
||
#8: 3/23 ------------ Read: The Open/Closed Principle paper Design Patterns - Coming Full Circle |
Design Patterns 3/26: Di Hunyh, Blackbaud |
Project Work |
Phase II due Friday at 11:59 pm |
#9: 3/30 ----------- Read: The Dependency Inversion Principle Pattern Exercise (in class) Resources: Factory code Singleton code Command code |
Design Patterns 2 Customer-Developer Meetings Apr 2: Ethics in SWE Cockrell Cares: March 30-April 10 |
Observer Design Pattern |
|
#10: 4/6 ------------ Read: Code Smells: Bloaters (Read the page for each smell - you don't have to read about the refactorings yet.) |
Design Patterns 3: Factories, Singleton and
Command |
Observer, continued |
|
#11: 4/13 ------------- Read: Code Smells: Divergent Change and Shotgun Surgery Guerilla Interviewing Resources: Enumeration interface Iterator interface |
Design Patterns 3: Adapter and Facade Invited speaker: Kurtis White, Indeed |
Command and Singleton Patterns |
Phase III due Friday at 11:59 pm |
#12: 4/20 ------------- Read: Refactoring Example Resume Read Resources: Catalog of Refactorings |
Refactoring Refac1.java |
Refactoring |
|
#13: 4/27 ------------- Read: The Coming Software Apocalypse Resources: Patterns - regex |
Refactoring Project Presentations |
Finish Refactoring |
Phase IV due Monday at 11:59 pm |
#14: 5/4 |
Project Presentations Exam 2 review Exam 2 will be on Thursday, 5/7, 5-7 pm |
|