GanttProject - is a free, open source project management software. It is mature and probably one of the most complex project management tools which offer an impressive list of features considering it's a free program distributed under the GNU General Public License.
• create Gantt charts
• create and organize tasks in a "Work Breakdown Structure."
• develop tasks and milestones.
• you can draw dependency constraints
• create baselines
• generate PERT chart from Gantt charts
• create and assign human resources
• monitor task assignments
• use collaboration (WebDAV and cloud storage)
• create reports (in PDF, as a PNG/JPEG image)
• export to CSV and Microsoft Project
• import from Microsoft Project and iCalendar format