There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult. C. A. R. Hoare (1980 Turing Award Lecture) |
Code Complete, Second Edition![]() Microsoft Press; 2nd edition (June 19, 2004) |
![]() |
Date | Topic | Reading / Info | Quiz | Slides | Assignment Due |
---|---|---|---|---|---|
01-15 | Software Construction Project 0: Programming in the Linux environment |
Chapter 1 Census Name Information Demo Linux Introduction PuTTY ![]() Project 0 |
1._Software_Construction.ppt Introduction-to-Linux.pptx |
||
01-17 | Software Metaphors Name Data Demo |
Chapter 2 |
Link![]() |
2._Metaphors.ppt Linux Slides![]() |
Questioneer![]() |
01-19 | Preparation for coding, Inverted Index Project 1, Part 1: Shakespeare Index |
Chapter 3, Map STL c++![]() Web Names Lookup ![]() ![]() |
Link![]() |
Chapter 3 | Project 0 |
01-22 | Key Construction Decisions HTML, CSS |
Chapter 4 Project 1 Review |
Link![]() |
Chapter 4 | |
01-24 | Design in Construction Make Files, Bootstrap |
Chapter 5 Make Files, The Make Command ![]() ![]() ![]() ![]() |
Link![]() |
Chapter 5 Make Files | HTTP & CSS |
01-26 | Project 1, Part 2: Simple Web Shakespeare Web Programming with Ajax |
Make Files , |
Link![]() |
CGI and AJAX![]() ![]() |
Meet with Professor for code review |
01-29 | Design in Construction Javascript |
Chapter 5 Make Files CGI and AJAX |
Chapter 5 | Bootstrap | |
01-31 | Javascript and JQuery | Javascript Tutorial![]() ![]() ![]() |
|||
02-3 | Project 1, Part 3: Client/Server Web Shakespeare | Protocol Oveview ![]() |
Code Review |
||
02-6 | Working Classes | Chapter 6 | Link![]() |
Chapter 6 | |
02-8 | High-Quality Routines Introduction to XML |
Chapter 7 XML Introduction ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Link![]() |
7._High-QualityRoutines.ppt XML Overview ![]() |
|
02-10 | Project 2: XML Lookup | Project 2: XML Project, Tutorial: Parsing XML with JQuery | Bible Example![]() ![]() |
||
02-13 | User Interface design | User Interface Design Basics![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
User Interface Design | Project 1, Part 3 | |
02-15 | Defensive Programming | Chapter 8 ![]() |
Link![]() |
DefensiveProgramming.ppt | Project 2, Proposal |
02-17 | Introduction to GITHub | GIT Video![]() ![]() GIT HW |
Link![]() |
GIT Slides | Project 2, Interface Design |
02-20 | Collaborative Programming Group Formation |
Chapter 21![]() |
Link![]() |
Chapter 21 | GIT HW |
02-22 | Project 3: Data Visualization, metaphor, and visual communication. | Project 3 Visualization Introduction ![]() |
Project 2, Complete | ||
02-24 | Visit to Gund Art Gallery | visap2015_Cruz_WrongfullyRight.pdf - Please read before class | Link3 | ||
02-27 | Project 3 - Project discussion and brainstorming. Group Formation |
link![]() |
10.Variables.ppt |
||
03-1 | General Issues in Using Variables, the Power of Variable Names | Chapter 10, Chapter 11 | link![]() |
11.Variables.ppt | Project 3 Proposal |
03-3 | Team Presentations on Visualization Plan | Include Power points with mockups | Project 3 Presentation | ||
03-4 - 03-19 | Spring Break | ||||
03-20 | Midterm Exam - Study Guide | Chapters 1-11,21, User Interface Design, GIT | Link![]() |
||
03-22 | Introduction to SQL, phpmyadmin | SQLTutorial![]() ![]() ![]() |
|||
03-24 | MySQL and the World Database | SQL World Database | Project 3 Version 1 | ||
03-27 | Project 3 Code Reviews | Be prepared to show and describe code in class for 10 minutes. | Code Review | ||
03-29 | Project 4 : Phone App, MySql with C++ | C++/MySQL tutorials![]() |
SQL HW 1 | ||
03-31 | More on Bootstrap, CSS | SQL HW 2- phpmyadmin | |||
04-03 | Project 4 - Part 1, 2 & 3 | ||||
04-05 | In Class work and instructor demos | Link | |||
04-07 | A visit to Gund Gallary. | Chapter 33 | Project 4 - Part 4 | ||
04-10 | Project 5: Interactive two-user system with with Database | Project 5 | |||
04-12 | Automatic updating webpages Project 5 Group formation |
Live Monitoring Processes![]() ![]() |
Project 4 - Complete | ||
04-14 | Personal Character | Chapter 33 | |||
04-17 | Project 5 Concept presentations | Be prepared to demonstrate and talk about your idea | Project 5 Part 1: Project concept,and team formation | ||
04-19 | Project 5: meetings with professor | ||||
04-21 | Using Conditionals | Chapter 15 | Chapter 15 | Project 5 Part 2: Complete Project Design using Metiphoric concepts | |
04-24 | Controlling loops | Chapter 16 | |||
04-26 | Project 5 presentations | Present Architecture in class | Project 5 part 3: Architectural Design | ||
04-28 | Unusual Control Structures, Table-Driven Methods | Chapter 17, 18 | Chapter 17 Chapter 18 ![]() |
||
05-1 | Project 5 Working prototype demos | Project 5 Part 4 | |||
05-3 | The Software-Quality Landscape | Chapter 20 | Chapter 20![]() |
||
05-5 | Developer Testing | Chapter 22 | Chapter 22 | Project 5 - Part 5 - complete system | |
05-9 | 6:30-9:30pm | Final Presentation Project 5 | Evaluation Form![]() |
Moodle Link for Final Presentation![]() Moodle Link Complete Project ![]() |
Criteria![]() |
Excellent | Acceptable | Unacceptable |
---|---|---|---|
Adaptable & Reusable (The program is modular, using abstraction well and any limitations are clearly specified.) |
|
|
|
Documented & Maintainable (The program is well-documented with appropriate names and comments making it easy to understand.) |
|
|
|
Efficient & Elegant (The program uses both time and space on the computer effectively, without losing source code clarity.) |
|
|
|
25-20% | 19-11% | 10-0% | |
Robust & Correct (The program provides the correct output for all possible input.) |
|
|
|
Jessie Alperin <alperinj@kenyon.edu>, Ghada Bakbouk <bakboukg@kenyon.edu>, Preston Basting <bastingp@kenyon.edu>, Miku Fukuyama <fukuyamam@kenyon.edu>, gavinhannerc@kenyon.edu, grigullb@kenyon.edu, Elizabeth Iduma <iduma1@kenyon.edu>, khanm@kenyon.edu, murphy1@kenyon.edu, Tess Neau <neaut@kenyon.edu>, ogilviethompsonh@kenyon.edu, Daniel Olivieri <olivierid@kenyon.edu>, riveraj@kenyon.edu, Joseph Schutz <schutzj@kenyon.edu>, seavera@kenyon.edu, solorioc@kenyon.edu, twitchelln@kenyon.edu, vances@kenyon.edu, John Wilhelm <wilhelmj@kenyon.edu>, Yanqi Xu <xuy@kenyon.edu>
I | Attachment | History | Action | Size | Date | Who | Comment |
---|---|---|---|---|---|---|---|
![]() |
CodeComplete.jpg | r1 | manage | 41.2 K | 2017-08-24 - 13:27 | JimSkon | |
![]() |
visap2015_Cruz_WrongfullyRight.pdf | r1 | manage | 6266.7 K | 2017-10-31 - 02:20 | JimSkon |