AmbientHackystat Code Review
description
Transcript of AmbientHackystat Code Review
March 03, 2008
Download the latest release (zip file) from AmbientHackystat’s Googlecode page.
Extract the zip file to a directory with no spaces“c:\ics\svn-google” is good.“c:\My Documents” is bad.
Also, change the data in the configuration.example.xml file to meet your own data. The file can be found under
ambientHackystat-0.1.402\xml\examples
Navigate to the installation folder with your console and invoke the included jar file by running
“java –jar ambienthackystat.jar xml/example/configuration.example.xml”
This should start the application.
Please use Eclipse IDE.Please set up environment variables, as
stated in the DevelopersGuide Wiki page.
You will need to define some class path variables in order to run and test the system on Eclipse.
Quality Assurance Tools
JUnitCheckStylesEMMAPMDFindBugsSCLC
To use this test please run “ant –f ‘QAT’.build.xml”
To run them all at one run “ant –f verify.buil.xml”The javaDoc should be included in the folder:
ambientHackystat-0.1.402\javadoc
System Overview
Very Similar to the MyIsern Package.
Each device has their own packageDevice package contains the device class +
action classesSome packages contain the JAXB-generated
classesServer package contains classes that retrieve
data from Hackystat and change state of device(s).
Trigger Packages that contain trigger classes that correspond to different build events (Coverage Tests, Junit Testing).
Future Developments
Current Ambient Orb should be functionalAmbient Bunny is being worked on.Have a few Triggers (Junit, coverage testing)
Future Add more Triggers
Allow developer to choose which trigger will be used with ambient devices.
Have a UI for the controller.Improve XML schema.
General:Find any possible system vulnerabilitiesSuggestions for better system
implementationWhite Box/Black Box TestingBreak the buggah!
Specifics:
We would like you to focus on the Trigger/Action Pairs. There are multiple Triggers but few Actions.
Only the Orb works with the server. Find trigger and actions pairs that don’t work well together. Find triggers or actions that don’t work
The triggers might have errors with javamail, and derby but these are problems with javamail installation and running derby 10.2.2.0
Test the Ambient Server Test both Factories. (Trigger Factory/Action Factory)
Extra Credit! Test the XML Configuration code. Test for errors in reading and schema.
All files have JUnit test that you can configure to work with your system. (ie. Username/Password and Project)
Specific Files to work onOrg.hackystat.ambientdevice.device
ActionFactory.javaOrg.hackystat.ambientdevice.server
AmbientServer.javaOrg.hackystat.ambientdevice.trigger
TriggerFactory.javaAll the triggers