Iteration 1 overall was a good introduction to classes in C++ and figuring out how to use the cxxtest system. To begin the process of creating Iteration 1, my partner and I met and discussed a general idea of what our scanner was going to have to do and what functions were going to need to be created. This first initial step was really helpful while I created the initial foundation of the scanner. After this initial step of planning the layout it was simply a process of constructing a linked list, which we have done many times in previous classes.
The first major error the my partner and I ran into was the compiler not being about to link our scan() function in scanner.h with the scan() definition in scanner.cpp. This took both of us a decent amount of time to figure out and it turned out (as many errors do) to be a simple error. I, being unfamiliar with C++, had made the mistake of not putting "Scanner::" in front of the scan() function in my scanner.cpp file. This was the first major issue we had with the first iteration and it was just because my partner and I aren't familiar with C++.
My partner and I decided to start by creating a scanner that worked for the simplest test cases and working our way up to the complete scanner. I recommend this method to future students. Once we had a simple scanner working it was just a matter of adding more complicated regexs and testing the scanner with the progressively harder tests. This is a similar idea to Unit Testing in the fact that we started with basic tests to know that our scanner was working and then tested the complete scanner at the end. This process worked extremely well for me and my partner.
This iteration has helped me and my partner set the ground work for how we plan on working together. We both figured out how to use subversion to work together from different locations. This iteration also showed my partner and I how to begin by building something that works for the small tests and going up from there. This process worked really nicely for iteration and we will be using it going forward.