The Genome generator
Jónas Friðrik Steinsson, Andrëw G. Brööks · Skemman · 2004
The aim of the project is to create an extended Java based version of the Genome Generator software, originally created in the year 2000 by Robert W. McGrail, Rebecca Thomas and Michael Tibbets. The Genome Generator is used to simulate and display information on the development of junk DNA. In order to achieve that aim the Genome Generator displays various information on genomic build up derived from given user-input requirements. This document addresses the motivation for the work done, describes the work and addresses related work which has been reviewed during the process. This document describes the ideas behind the software, the underlying algorithms and the process of development. This document will describe the software developed, it's intended usage and capabilities. The implementation of the software is discussed and various design issues that had to be taken into account during the development process are discussed. Evaluation of the software is discussed and future testing and development ideas are described. The Java version of the Genome Generator has been in development since early October 2003. The first months of the project were spent analyzing and evaluating the existing software, which is written in Scheme, and the research surrounding the creation of that generator. The design of the algorithm and user interface started in October 2003 and in January 2004 the first version of the user interface was ready. The first version of a functioning generator was ready in late February 2004. Upon reviewing the algorithm used some glitches were discovered and a complete reconstruction of the software proved necessary. These issues will be further discussed in the chapters on design and implementation. Due to various factors the implementation of a graphical display of the statistical output was somewhat hindered. Several graphical packages available over the Internet were tested and evaluated, but none of them proved adequate. The idea was to use as much of freely available software as possible, to be able to keep all aspects of this software free and therefor keep the software itself freely available to those that might benefit from it. However some of the software originally considered, proved to be not as freely available as seemed at first. These issues will be further discussed under the section on implementation.