Technische Universiteit Eindhoven

Block Software Design  |  Course Index  |  Description of Orientations  |  Educational Program

Courses - Software Design

Detailed description of the course:
  • The course starts with an introduction to Java. During two mornings of lectures and two mornings of exercises the trainees learn the basics of modern programming techniques such as object-oriented programming and exception handling.
  • In the third week the focus is on data structures, import and export functionality and implementation of the algorithm in an object-oriented way. In this week the trainees will start building a piece of software that incorporates a self-chosen mathematical algorithm. This program will be developed during the rest of the course. Every week has one morning devoted to lectures and one morning during which the trainees develop their software program. Trainees can work on the project individually or together with another trainee.
  • The fourth week the topic on I/O is completed and the focus will be on designing and building a user interface. First, the trainees will learn the basic techniques of creating a simple user interface.
  • In the next two or three weeks they will actually build user interfaces in mathematical programs. First, a “wizard” to create or modify the input data will be developed. This is followed by the graphical visualization of results in charts and tables. These charts and tables can be saved to disk in common image formats, or they can be sent to a printer.
  • When the user interface is finished, the lectures are devoted to some advanced topics such as running and communicating with external programs and threads.
  • The last week an installation CD-ROM is created that contains the program, documentation and a set-up program.
  • When the lectures are finished, the trainees have two weeks to finish their software projects. After that, during one afternoon, each trainee gives a demonstration of the software, the general class structure and the implementation of the algorithm.
The lectures make use of lecture notes (Development of Mathematical Software in Java) and, during the practical part, of the book Just Java 2 by Peter van der Linden. The software that is used during the course is Java, because Java is free, platform-independent and well structured.