Information / Student Resources (don't tell us you didn't know... ;-)

The content on this page was translated automatically.

Please read this page carefully. It contains some important notes regarding the execution of theses and projects and the writing of the elaboration and code. Please also refer to the links to the hints page and the checklist.

Template and software to plan/write the elaboration:

We would be happy if you would use LaTeX to create your paper. To support you, we have prepared a template for you to use as a template to insert your text (see link below).

Link to the TeX template for your written work.

Links to the Uni-Kassel-Logo images:  https://www.uni-kassel.de/go/gestaltung there as .eps file and as .pdf file (for the title page; the EPS file is already included in the template).

For illustrations, diagrams and other images, a vector format should always be used if possible. The most suitable software is:

dia from www.gnome.org/projects/dia/

Inkscape from www.inkscape.org/

gimp from www.gimp.org

graphviz from www.graphviz.org

gnuplot from www.gnuplot.info can now do histograms (version 4.2)

Scribus from www.scribus.net for more fancy things

GanttProject from www.ganttproject.biz for scheduling the work

For improving code (Java, VHDL, ...) there is this software among others:

FindBugs from findbugs.sourceforge.net/ for finding bugs or other problems in Java code

jGRASP from www.eng.auburn.edu/grasp/ for analyzing Java and other languages, including VHDL

These programs are available under almost all operating systems and can save eps. For more primitive drawings you can also use xfig, but it is only available under Unix/Linux. With graphviz images of graphs can be generated automatically, e.g. also of internal data structures.

jabref jabref.sourceforge.net (managing the bibliography)

Do not use unlicensed software under any circumstances!

Important hints for writing the paper: (including the topic: plagiarism)

Citation Style: Citations from the reference literature (primary and secondary):

  • if shorter than 3 lines: in continuous text with quotation marks;
  • if longer than 3 lines: indented as a separate paragraph.

References: when?
After each quotation from the reference literature: (author/page number)
Example: "This text is copied from Reference One, page 14," ([1], p.14).
After each adoption of facts, thoughts, suggestions from works of the reference literature (paraphrase).
Example: This statement appears very similarly in Text One [1].

Plagiarism:
It is not allowed to use foreign sources without reference! (this includes illustrations).
Please also be sure to read this text:
de.wikipedia.org/wiki/Plagiarismus (please also see the English link!).

Wikipedia: Wikipedia in general is not a verified encyclopedia! So be careful with the content (please improve contributions if necessary - as a contribution for all!) and do not quote extensively! (In general: encyclopedias should not be used as source for citations)

Additional notes on elaboration:

The LaTeX source code must be compilable on our computers!

Unix/Linux file names are case sensitive, a common mistake are wrong file names coming from PC file systems!

(e.g. picture.eps is not equal to picture.EPS or Picture.eps)

We can print a limited number of colored pictures in your elaboration on our color laser printer.

Please pay attention to the following hints for the written elabor ation! (List is incomplete and preliminary)

Last but not least: Make backups of your data if you work at home!

You can (should) always have a current copy of your data/files on our computers, not older than 2 days; just copy everything via sftp or USB stick to your digi account! Disk crashes are not a reason for renewal!!!

Checklist for the submission

Writing and documenting code:

Please always keep in mind that comments and documentation make up more than 50% of good code! Uncommented and undocumented code is later almost unusable and thus almost worthless!

Writing code:

  • please write clearly and readable!
  • please comment the code extensively(in english, without umlauts)!
  • please document all algorithms by pseudocode, if possible already for planning(!)
  • for Java please use JavaDoc and for VHDL VHDLDoc.
  • please check the code with FindBugs!
  • the code should clearly reflect the architecture diagram (from the documentation!)

For the documentation of Java code:

  • First, please provide an overview of the program and class structure, as well as the concept of data structures used and program flow.
  • A subchapter for each (important) class
  • Description of functionality, variables, methods, functions, function parameters etc. within the classes; please use tables and pictures!
  • Description of all algorithms
  • Examples of program functions (test cases and data)
  • An appendix (or part of the general description) listing all files belonging to the code!

For the documentation of VHDL/Verilog code:

  • Top-level diagram of the design and associated description, including file structure.
  • A subchapter for each (important) module
    (please specify file where the module can be found)
  • Description of sub-modules, structure (e.g. register transfer idea), interfaces (I/Os), specific timing, other constraints/special features
  • Description of all algorithms
  • Examples of hardware functions (test cases and data)
  • Implementation and description of testbenches!!!
  • In general: draw pictures yourself, use automatically generated block diagrams (from design tools) only in exceptional cases!

Notes on presentation slides:

The presentation should not exceed 20 minutes.

We normally calculate with 1.5 minutes per slide.

Please do not use animations if possible!