6.031 — Software Construction
Spring 2020

Problem Set 0: Reflection

Please think back to all the work you did on Problem Set 0, across both the alpha and beta submissions, and answer the following questions.

reflection

PS0’s Design

drawApproximateCircle() has a weak specification, because its postcondition is effectively judged by a human eye looking at the screen. But this method still turns out to be hard to implement, because of design choices made by Turtle.forward().

Which of these variations in the drawn circle would be visible to a human eye?

(missing explanation)

Can drawApproximateCircle handle a request for a small radius? (e.g. radius=1, numSides=100)

(missing explanation)

Can drawApproximateCircle handle a request for a very coarsely-drawn circle? (e.g. radius=100, numSides=4)

(missing explanation)

Can drawApproximateCircle handle a request for a very smoothly-drawn circle? (e.g. radius=100, numSides=1,000,000)

(missing explanation)

Time Spent

How much time in hours did you spend working on the alpha? Please enter a number (which may be a decimal fraction).

How much time in hours did you spend working on code review? Please enter a number (which may be a decimal fraction).

How much time in hours did you spend working on the beta? Please enter a number (which may be a decimal fraction).

Collaboration

I helped somebody, or was helped, while both of our solutions were visible on our screens.

(missing explanation)

For every piece of code that I found on the web and used in my solution, I included a comment citing the source of the code.

(missing explanation)

I worked on my solution while somebody else’s solution was visible to me (e.g. on Caesar, or in some other window on my screen, or on somebody else’s screen, or on paper).

(missing explanation)

I worked closely with somebody on part of the problem set, making sure each of us had the code right before moving on to the next part.

(missing explanation)

I obtained part or all of somebody else’s solution electronically, or provided part or all of my own solution to somebody else.

(missing explanation)

I publicly posted part of my solution online as part of a portfolio of code to show to recruiters.

(missing explanation)