There are two requirements for interation1. The first one is to build a scanner that takes a sample programs in our programming language and recognises the tokens in the program. Secondly, we will write several test cases to demonstrate that my code works properly. And also, according to the requirements, we don't need to write the main function to create an execution translator for iteration1.
The way we worked on our iteration1 was pretty smoothly; because we followed the software develop process very much. In the past, we used to start coding first, and totally ignore the process of getting requirements. As a result, we didn't code what we expect sometime. So, since we learn the software development skill in our lecture, we have used it in our iteration1 in order to work effective and efficiency. Basically, there are five stages that are requirements, design, implementation, verification and maintenance. In the requirements getting stage, it worked absolutely straight forward since the requirements were set perfectly. As we learn in the lecture, getting requirements is a tough part in the software development process. In the design part, we went over the code that was provided and the previous labs like WordCount file as a reference. We considered carefully about the token in order to make it easier for further implementation. In the testing part, there went something wrong because the count didn't match very well. In order to figure that out, we debug for a short time. Excepting more work on software development process, we did used some skill about testing since Eric provided some extremely well commend files which helped us a lot during our testing.
Personally speaking, I enjoyed our work on iteration one. But we still need further improvement, such as teamwork. To be honest, we did not operate teamwork very well. Because we built up our team in the last minute, both my partner and I seem pretty shy to talk to each other. About myself, I am a kind of anti-social person sometimes, and also, I prefer work by myself for most of my project. Consequently, we didn't communicate well with each other and both of us finished the majority of our project by ourselves independently. I do think that the most significant part which we should improve in the future. I think we can work perfectly in the future as a good team.
In conclusion, there are three take-away things I want to share after the iteration one was finished. Firstly, following software development process can make life much easier that you think. Secondly, please do read code and commends which our sweet professor