CS190 Assignments

David Laidlaw
Brown University
Spring 2006


Assignments for each class. Handins are due, unless otherwise specified, by 2am the day of class to allow for review before class. Handins due on M-DD go in the directory /pro/web/web/courses/cs190/2006/asgns/M-DD/LOGIN.txt -- replace LOGIN with your CS login id. For classes with multiple handins, add a digit after your login (e.g., dhl1.txt, dhl2.txt, ...). Handins do not need to be text (.txt) files. You are welcome to hand in pdf files (.pdf) or word files (.doc) if that would be easier (including images for instance).

January and February

March

April and May

Monday Wednesday Friday
    1/27
1/30 2/1 2/3
2/6 2/8 2/10
2/13 2/15 2/17
2/20 2/22 2/24
2/27    
Monday Wednesday Friday
  3/1 3/3
3/6 3/8 3/10
3/13 3/15 3/17
3/20 3/22 3/24
3/27 3/29 3/31
     
Monday Wednesday Friday
4/3 4/5 4/7
4/10 4/12 4/14
4/17 4/19 4/21
4/24 4/26 4/28
5/1 5/3 5/5
5/8   5/19

Fri 1/27

In Class:

Requirements and Library Interviews

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 1/30

In Class:

Requirements and Software Engineering

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 2/1

In Class:

Discussion of readings and requirements, presentation information

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 2/3

In Class:

Requirements student presentations

Prepare to present: Group 1

Presentatations will be posters, 3' wide, as tall as you think will work. Their main points should be about the evaluation of your project with respect to cs190 project criteria, with any information you want to support the evaluation. Supporting info should include information about what the project is. Secondarily, they should make it sound compelling to to the rest of the class. You'll have 2 minutes to describe your project using the poster as a prop. Practice with friends -- it will really make a difference!

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 2/6

In Class:

Requirements student presentations

Prepare to present: Group 2

See guidelines from Friday

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 2/8

In Class:

Actual requirements experiences and reading discussion

Fri 2/10

In Class:

Object-oriented design (reading discussion)

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 2/13

In Class:

Specifications student presentations

Prepare to present: Group A

Spec presentations should cover the following information. Begin with a very brief (15 second) reminder of the project. Then spend 15-30 seconds -- very briefly -- going over the block diagram of the system describing the different parts and how they fit together. Practice this part to see how much you can say in 15-30 seconds! Finally, in about 1-2 minutes, talk about a software engineering lesson that you learned from making the spec. Try to think of something not too obvious, since you'll have lots of company coming up with these ideas. The lesson might be a non-obvious way that the components of your spec handle some part of the requirements. It might be a surprise you had about how an obvious organization wouldn't work. It might be a surprising way that some of the reading applies to your design. Give us all a take-home lesson to think about. We'll try to have a few minutes to discuss each presentation. Bring visuals to put on the wall illustrating your block diagram and your take-home lesson. Include your project title (and short description if not self-describing) and your name or login.

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 2/15

In Class:

Specifications student presentations

Prepare to present: Group B

See guidelines from Monday

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 2/17

In Class:

Pick project(s)

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 2/20

In Class:

No Class!

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 2/22

In Class:

Talk about tools, MMM essay discussion

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 2/24

In Class:

Top-level design student presentations

Prepare to present:

Presentations should be about a significant and unobvious part of your design. Pick something that you struggled with and that illustrates a lesson you learned this semester. For example, explain how you applied ideas from Lakos to remove a cycle, to increase breadth, or to reduce depth of the component graph. Or describe a significant difference in the design component graph from the specifications component graph and why it makes the design better. Or explain how you struggled with the schedule but were able to put something together that keeps everyone busy for the entire development time. Re-read carefully the examples from Lakos chapter 5 for ideas. Look for a design change that that is as significant as possible. Don't lump several changes together. Stay focused on one change. The presentation should clearly show the part of the design that changed both before and after the change. For example, show the component diagram before and after shifting it around or show the design and schedule before and after a schedule-improving design change. The presentation must start with a one-sentence description of the change and its significance. An example: "I factored out functionality from a level-2 module to reduce the total height of my levelized component diagram."

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 2/27

In Class:

Top-level design student presentations

Prepare to present:

See guidelines for the presentation from Friday.

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 3/1

In Class:

Design iteration

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 3/3

In Class:

Initial group meetings and roster decision

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 3/6

In Class:

Group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 3/8

In Class:

Group dynamics I

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 3/10

In Class:

Schedule review, midterm evaluations and group meeting

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 3/13

In Class:

Programming style and interfaces

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 3/15

In Class:

Testing

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 3/17

In Class:

Group meetings and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 3/20

In Class:

Group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 3/22

In Class:

Group dynamics II

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 3/24

In Class:

Group meetings and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 3/27

In Class:

Spring Break! No Class!

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 3/29

In Class:

Spring Break! No Class!

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 3/31

In Class:

Spring Break! No Class!

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 4/3

In Class:

Group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 4/5

In Class:

DDP-style post mortem, former 190 students talk about group experiences (Group dynamics III)

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 4/7

In Class:

Group meetings and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 4/10

In Class:

Component design presentation(s)

Prepare to present:

Geoevents Each person in the group should present the most interesting part of the detailed design they were involved with. The group needs to manage the class time effectively. Use printed transparencies for .h files and posters or transparencies for diagrams to save presentation time! The goals here are to share with the other groups what you learned that you think has lasting value.

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 4/12

In Class:

Analysis of testing assignment

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 4/14

In Class:

Group meetings and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 4/17

In Class:

Group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 4/19

In Class:

Performance analysis tools

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 4/21

In Class:

Group meetings and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 4/24

In Class:

Talk about the plan for the rest of the semester and group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 4/26

In Class:

Group meetings

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 4/28

In Class:

In-class demo(s) and schedule review

Bring To Class:

Hand In:

Read:

Heads Up:

Mon 5/1 (reading period)

In Class:

No Class

Bring To Class:

Hand In:

Read:

Heads Up:

Wed 5/3 (reading period)

In Class:

No Class

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 5/5 (reading period)

In Class:

Schedule review, talk about MMM reading from 4/21, go over profiling assignment

Bring To Class:

Hand In:

Read:

Heads Up:

Group Status:

each group should be prepared to go over project status and present a detailed plan for the remaining work that needs to be done before the final demo and how it will get done.

Mon 5/8 LAST CLASS!

In Class:

Post-mortems, course wrapup, course evaluations

Public Demo:

4 PM in the Sunlab

Bring To Class:

Hand In:

Read:

Heads Up:

Fri 5/19 9am (exam time)

In Class:

Final Demos IN SUNLAB

Bring To Class:

Hand In:

Read:

Heads Up:

Copyright 1999-2006 David Laidlaw