Project Reviewed:
MyISERN-1-REDAuthors that I am Reviewing: Sonwright M. Gomez, Phuoc Le, and Ivan Wu
1. Installation Review
I was able to download the system as a distribution .zip file. However, I was not able to use the system without using the web interface (there was no jar file or means to create one). It was not difficult to figure out how to run system, I simply had to change the tomcat manager password to match my password, then type the command "ant -f tomcat.build.xml" and then point my web browser to "http://localhost:8080/myisern-1-red/". The installation guide was clear, concise, and easy to follow as it mentioned the above steps to use the system (but did not mention anything about changing the password or user name for the tomcat manager).
Here are the results from invoking the following ant tasks:
JUnit ran successfully
Checkstyle ran successfully
PMD ran successfully
FindBugs ran successfully
ant -f verify.build.xml ran successfully.
2. Code format and conventions review
The code is very well organized into distinct modules. Other than some inconsistencies between the format of the javadoc tags (some have a space between the description and the other @return, @param, etc. and some don't), I see no real format or conventions errors.
| File | Lines | Violation | Comments |
| MyIsernModel.java | 45, 47, 315, * | Unused Content | Will probably be used as the system is fully implemented |
| TestMainMenuActionBean.java | 31, 33 | EJS-5 | Indent 2 spaces |
3. Test case review
Black Box Perspective
Black box testing is incomplete. Due to time constraints, the newly created classes for the web application have not been tested. Also, the myIsernXmlLoader class is not tested thoroughly even though it should have been tested in previous versions. Because it is not tested thoroughly some of the classes in the collaborations, organizations, and researchers packages are not tested either. Overall, black box testing does not establish all the equivalence classes and as a result, does not test a member of each of them. Once again, however, this is likely due to time constraints.
Thoroughly testing the myIsernXmlLoader will generate the necessary equivalence classes in the collaborations, organizations, and researchers packages. Additionally, testing on the server side should generate the necessary equivalence classes in the action package.
White Box Perspective
Because the black box testing does not generate all the equivalence classes, white box testing it not nearly complete. Here are the results from running Emma:
| Emma Coverage Summary | ||
| class: | 60% | 15/25 |
| method: | 25% | 54/215 |
| block: | 29% | 706/2434 |
| line: | 26% | 165.2/626 |
As is shown, the coverage is not good as the vast majority of methods are never tested. Once again because the myIsernXmlLoader is not tested thoroughly the coverage on the non-web app side suffers. Also, once the web application is tested, the web app side of the white box testing will be dramatically better.
Break da buggah
The red group did a good job of stating the known issues with their system up front. Because of this, I cannot really break their system without overlapping one of the known issues.
So instead, I'll just offer some ideas for printing/displaying researchers, organizations, and collaborations. Based on the way your current system is set up, you can display/print the type you want by creating variables in your DisplayActionBean class to let your jsp page know which one you want to display (collaborations, organizations, researchers). So before you forward the resolution (printCollaborations(), printOrganizations(), printResearchers()) you can set the appropriate variable and check for it in your jsp page by using the jstl tag
4. User Interface review
The interface is very easy to use because it is very intuitive. All the links are clearly labeled and the buttons are very descriptive. The only thing I would recommend is not abbreviating the researchers as R, the collaboartions as C, and the organizations as O for the edit feature.
As far as screen real estate is concerned the web application works very well with a large screen as well as a very small screen. I see no room for improvement in this area.
In general, the only improvements I see is to finish implementing all the actions and to allow for display by category (i.e. just collaborations, just organizations, and just researchers).
5. Summary and Lessons Learned
After looking at Team Red's code I realized that a simple interface can be very good especially when screen real estate is a design issue. A simple design is very compatible with a small screen in particular. Also, it was very interesting to see another group's version of the web application. To be able to see their interpretation and implementation of the requirements now provides me with a chance to go back and take a "new" look at my group's web application.





