One of the essential features of a professional is reflective practice. One of the ways in which we will encourage you to reflect on what you do and how you do it is through the use of a software studio approach to your intelligent systems project. Another way will be through the use of a course notebook.
The notebook provides an opportunity for you to develop the good habit of recording your ideas about a project and evaluating your work on a regular and frequent basis. It serves as a repository of your ideas on the project, which can be shared with teammates and mentors at later times. In this sense, the notebook acts as an extension of your memory, remembering the details of particular decisions. This frees your mind to move on to the next problem-solving steps.
The notebook also serves a second purpose. It provides a place for you to monitor your own professional progress and behavior. Oftentimes, the quality of your learning experience is hidden from your view by the rush of project deadlines, the near-panic of meeting them, and the actual thinking that you do on a project. The notebook will give you the chance to look back after the semester and review the process and your efforts -- what you did "right" and what you did "wrong", how you would act differently on a new project, and how much you learned over the course of the project. Personal decisions do affect the development of systems and the development of your professional skills, and the notebook allows you to consider these decisions and their effects outside of the cauldron of system development.
For this course, you will maintain such a project notebook. We might well call this a course notebook rather than a project notebook. While the notebook is primarily documentation of your ideas and work on the major project, I encourage you to record and evaluate your experience in the course as a whole.
What should you write in this notebook?
Here is a sampling of the topics that you should record in your notebook. It is not intended as an exhaustive list, but as a set of topics that must be addressed regularly in your journal.
Record your ideas and the decisions you make as you think about the problem, its data, and the design, implementation, and validation of your system. Be sure to record alternatives that you consider and the reasons for your decisions. This sort of information is invaluable as you work with your team, as you present and defend your system, and as you evaluate your own work.
Record even wacky ideas! "Wacky" is often a product of context, and when context changes, what once seemed wacky can sometimes seem brilliant. Remember that one of our goals is to help you to develop the creative side of your professional skills, and crazy ideas provide some insight into how you are thinking about the project.
Keep a log of all meetings, including a rough report of what happened at each. Your team may designate a secretary whose job is to record minutes (either on a permanent or rotating basis), but even if you are not the secretary you should record what happened.
Don't write "We met to discuss the foo component of our system. I think we have it figured out now!" That doesn't say enough of what happened. What was the problem you faced? What alternative solutions did you consider, and why? Which one did you choose, and why? Write as if a member of the team missed the meeting and you want her to be able to read your description and be no worse off for having missed. In a couple of weeks, you will feel like that person, for all you are likely to remember of the meeting.
Keep a record of major task assignments made by the team. Maintain a history of design and code walkthroughs.
The purpose of the weekly progress report is three-fold:
Without regularly assessing your work, you will occasionally find yourself devoting too much time to an activity, or too little. The reporting mechanism will help ensure that both you and I are aware of progress and impediments as early as possible.
Designate one time each week as a time to record your weekly progress on the project. I have always preferred Sunday evening for this task, but you may find another time more convenient. All that matters is that you make your report at weekly intervals. At the the designated time, record the following:
This is the least concrete part of your notebook but, in some ways, the most important. Record your take on team dynamics: How is the team working? How could it improve? Record your take on your individual work: Are you satified with your own work? Why (not)? Record your take on class meetings and assigned reading: Are they useful? How do they help, and how could they improve? Record your state of mind: Are you happy with the evolution of your project? Why (not)?
Recording personal reflection is difficult. Doing so requires a level of dedication and trust that are perhaps uncommon to your experience. But they are critical elements of your professional growth. Continually ask yourself "Why?" and "Did I consider enough alternatives?" Your comments can even refer to your teammates and to me. Only I will see them, so you need not worry about reaction (positive or negative) from your teammates. And I will interpret any comments about the course as constructive criticism (yes, even instructors need it!) and as intended in a professional manner (barring evidence to the contrary).
At the end of the semester, I will ask you to reflect back on the project and course as a whole, from the perspective of having gone through the mill. These reflections will comprise the final entry in the notebook, acting as a capstone to both the notebook and the course.
What sort of notebook should you use?
In past offerings of the course, through 2002, I required students to use a bound paper notebook. Technology and styles change. In 2011, I am willing to consider a blog as a suitable mechanism for recording your project work.
Paper
I suggest a spiral-bound or hard-bound notebook of sturdy stock. The pages may be blank, lined, or gridded, which ever you like best. I myself prefer hard-bound notebooks that have blank pages or faint ruling; they tend to survive in better shape after the heavy use of a big project, and the pages give me plenty of freedom to do as I like.
Do not use loose-leaf binders in place of a bound book. Part of the discipline of recording in a journal lies in its permanence: you do not want to find yourself tempted to go back to "change history". Adding comments later is okay, but make it clear that the notation happened later. If an idea changes in a big way, record your new idea but leave the old one intact. This provides a more accurate picture of your work as it unfolds and also gives you an automatic "back-up" since no idea is ever expunged.
Using a notebook instead of your computer also means that you can record anywhere and anytime the mood strikes -- between classes, in the middle of the night, while eating dinner, or at home for the weekend. Even with laptop computers now being a commodity item, the ubiquity of pen and paper make notebooks more flexible to this task of recording design thoughts.
Finally, I suggest that you use ink, not pencil. Lead smears and can make your notebook unreadable within days, if not hours.
Blog
Since 2002, blogging technology has exploded and made it possible for anyone to keep a log of thoughts, ideas, and activity. While pen-on-paper is still better suited for many of us when it comes to adding diagrams and marking up text, the benefits of blogs are undeniable. (As many of you know, I blog.)
If you would like to blog your work on the project, you may. I prefer that you use a tool that is easy to learn or use, or a tool you already know well. We don't want you spending your time fighting with the technology. Indeed, if you find yourself fighting with the technology, you are more likely to stop writing altogether.
UNI provides a blogging engine for students. Several providers offer free blogging services using industry-standard tools. I suggest that you take advantage of one of these avenues.
If you choose to blog, send me the URL. I will subscribe to its RSS feed. That way, I can read it as you go and can evaluate it periodically.
You will be evaluated on your course notebook. It is worth 20% of your course grade.
Roughly every third week or so, usually on a Tuesday, I will ask you to submit your notebook to me for a couple of hours. You will be able to bring it by during a time period when you won't need it, so that my review does not interfere with your use of it.
I will read it, provide some feedback, and return it to you. You will not receive any "points" as a part of this periodic review; it is intended only as a mechanism for me to remain on top of your project and to ensure that you are keeping up the habit. My feedback will, however, indicate strong and weak points of the notebook so that you can gauge your own performance.
On Friday of finals week, you will submit the notebook for a final review. At that time, you will also provide me with your mailing address so that I can return the notebook to you when I am done with it. I will review the notebook for one last time and assign a grade.
Finally, I will return the notebook to you with any final comments that I have. The actual grade you receive for the notebook should not be much of a surprise. You will know the answers to the above questions as well as I, and my periodic reviews will give us plenty of opportunities to discuss your discipline in the use of the notebook.
You will not be evaluated on the contents of individual entries in the notebook. The notebook is intended as a personal record of the project and as a way for you to develop the habit of writing such things down. I will assign grades at the end of the semester based on answers to these questions:
The grade will reflect your use of the notebook over the course of the semester. A good faith effort to incorporate the notebook into your practice will be the hallmark of good work.