Tools
PHP 5
PHP was our first choice for a web based system. Not only is PHP the number one choice for designing dynamic websites, but it also allows for interaction between all major operating systems and web servers. PHP 5.1 is the most recent release and gave us the opportunity to use an object oriented approach to programming which was not available in previous releases.
MySQL 5
MySQL 5 was chosen because of its increased reliability, sustainability and the fact that it can be used on a wide variety of platforms including Windows and Linux. Another important consideration was it's transaction safe engine. This recent addition makes it much easier to recover from crashes and also shows increased performance when dealing with large amounts of data or a multi-user environment.
Apache 2
Apache 2 is used by our team because it is on the forefront of technology and offers increased stability when dealing with Windows than in previous versions. Apache also offers support for multithreading and other technologies relating to dynamic websites.
GD (via PHP wrapper)
We also made use of GD which is an optional graphics library that can be compiled with PHP. This enables us to directly manipulate any graphics we use on the system within PHP without the use of separate proprietary software.
PHPMyAdmin
PHPMyAdmin is a graphical interface used to manage our MySQL Database. We used this tool over the web to create and alter tables. It was also usefull during testing to quickly insert and clear data ensuring proper interaction between DSMS and our database.
SciTE
In order to write the actual code for our project we chose to use Scite which is a free and powerful text editor. It’s advantages over other programming tools are that it is a free, small program built for speed and it is customisable for a wide range of programming languages. We were able to use this to edit all PHP, HTML, SQL and JavaScript files.
Eclipse 3.1
Eclipse is another more robust programming editor that was used when programming on a Mac.
Dreamweaver MX 2004
Dreamweaver was provided by the University and used to a great extent to quickly develop any online material used by our team. This provided us with a good foundation which could then be edited on Scite at a later time.
Photoshop CS2
Photoshop CS2 was provided by the University and used for all graphic desgin relating to our project. Photoshop is the professional standard when dealing with web based graphic design.
Star UML
StarUML is another freely available, open source program we used to make all of our flow charts, object oriented diagrams and class diagrams.
Subversion
With the amount of individual work done we needed a way to efficiently keep track of changes to all documents and also provide each team member with access to the most current version of any document at any given time. Subversion was installed on the University’s system and allowed us access to a repository of documents either on campus or from our home through a web client called Tortoise SVN.
Tortoise SVN
Tortoise SVN provided a point and click interface that kept thorough logs of all work done and tracked copies of all documents in case we decided to revert to an earlier version.
PHP Documentor
PHPDocumentor was used to generate a reference manual from specifically styled and marked up comments in our source code. It also automatically linked in our external documentation and allowed for easy modification and navigation of the produced reference manual.