First we made a scaffolding to create and control the array of objects. The objects are called boids (a corruption of birds). The scaffolding is a a basic Java object oriented pattern of having a stub to call a Boid-Controller which in turn calls the Boid class.
The three main facets of flocking algorithms are Separation, Cohesion and Alignment.
We implemented each of these facets separately. Here is the affect of each of the three flocking forces.