Peter Mosbacher pmosbach CS190 Essay In chapter 4 of the Mythical Man Month, Brooks observes that the constraints generated as part of an architecture enhances, rather than impedes the creative style of implementers. He further observes that when implementers are unconstrained, most of their discussion goes into architectural decisions and implementation proper gets short shrift. I found this to be the case in my CS32 final project. My group chose an idea (an rpg similar to an existing ps/2 game) that lent itself much more to discussion of our desires for the end product, rather than its architecture. We spent a great deal of time talking around architecture, rather than confronting it directly and comprehensively. As a result, most of our early implementation efforts were fractured and mostly unproductive. Realizing this, we finally firmed up our architecture. We discovered that much of the code written prior to this point was useless. After defining the architecture, our implementation moved along at a much faster pace and we were coming up with better, more creative solutions to our immplementation problems. As a result of maintaining conceptual integrity and consistent, uncomplicated communication between components, we were easily able to add extra features towards the end of development and confront problems with unified thinking and solutions that were divisible and manageable. For example, through extensive testing it became clear to us that we needed to streamline a particularly clunky part of one interface. This change involved three major components: the UI component, the graphics engine component, and the calculation portion of the AI component. Thanks to the soundness of our architecture, no changes were necessary between components and changes within components were fairly straightforward. This part of the reading reminds me not of another specific reading, but of a historical example: man's journey to the moon. When the space was beginning in earnest and even before, designers or architects were almost completely unconstrained. As a result, even the designs of brilliant scientists such as Werhner Von Braun differed radically from later Apollo equipment. One can think of President Kennedy's challenge to land a man on the moon before the end of the decade as the first real constraint on thinking. This challenge led to the development of an architecture to meet cost and time constraints. By 1967, the CSM had been implemented and realized. The constraints can be directly linked to the disastrous Apollo 1 fire, but because of the architecture, engineers were able to completely redesign their implementation of the CSM and realize it within one year for Apollo 7.