Introduction
CS 240: Adv Software Construction
Why are you here?
Why am I here?
Learn how to build real software
Margaret Hamilton
“Looking back, we were the luckiest people in the world. There was no choice but to be pioneers; no time to be beginners.”
Outcomes
Topics
Coursework
Canvas
⚠ Notifications
Submissions
Grades
Exams
Source: cs.byu.edu
Instruction
Content
Syllabus
Project info
Slides
Example code
Source: cs.byu.edu
Multiplayer Chess
Server
Source: cs.byu.edu
Chess
Phase 0: Chess moves Create board and pieces
Phase 1: Chess game Create a game
Phase 2: Server design Design server classes and data models
Phase 3: Web API Implement chess server
Phase 4: Database Persistent chess data
Phase 5: Pregame Create chess client
Phase 6: Gameplay Implement multiplayer gameplay
Gateway Exam
Source: stackoverflow.com
Source: oreilly.com
Getting Help
Let’s talk about AI
Doing your own work
Capable
Collaborative
Curious
Creative
Christlike
Software construction is hard
Enjoy the struggle
Let’s make mistakes
We need your energy
☑ Assignment