Feedback for Software Dev I definitely struggled in the beginning of this course. It took me awhile to learn about DemeterF, class dictionaries, and the domain of derivative trading. About mid-way through the semester, everything finally clicked, but I'm wondering if the competitiveness and creativity of the game could be improved if everyone were able to grasp a better understanding of the domain right in the beginning of the semester. I provided some suggestions which may help students. In the beginning of the semester, I think it would be good to continue teaching about Aspect Oriented Programming, DemeterF, the Law of Demeter, and class dictionaries. I think it would be beneficial if you assigned short, individual homework assignments pertaining to these subjects. For example, a short homework assignment to be done individually in 2-3 days on the following: 1. Writing a small class dictionary (like a Tree structure) and running it through DemeterF (this is sort of like the first assignment we did, but the class dictionary is smaller and easier to grasp) 2. Answering a question similar to question 1 on the midterm (an easier version of course). I think this will be beneficial in grasping the concept of DemeterF and the Law of Demeter. I think the labs and quiz really help so I would definitely keep those in place. I believe that by discussing DemeterF upfront and allowing students to gain a grasp on it before introducing SDG is a good idea. From here on, I think everything was fine. The only thing I would add is to again assign short, individual homework assignments on calculating break-even points and max biases (inferred and non-inferred). These are the items that I struggled with on the midterm and I think that assigning direct homework on the material itself would help me learn the domain even better. When we were going over the material in class, it all looked straightforward, but if we are forced to do it ourselves outside of class, our understanding will be solidified (well at least mine would be). And I think what Duc said about learning from the Administrator code is quite profound as it definitely helps players learn more about the game. I know that there was a homework in which we were required to compare the specification to our code (assignment 4), but maybe it would be a good idea to take a short in-class quiz pertaining to the administrator code. For example, where is requirement 4 enforced in the Administrator code? I think we discussed this quickly in class on Mar 27. The only other suggestion that I have is the planting of a bug in the Administrator code to facilitate a security discussion in class. This is the same suggested that I voiced over email. I hope that some of these suggestions will help you improve this game. I feel it is a great method to teach software development as it is a "learning by doing" process.