I have been programming for a while now but up to now I have only made programs which were small and could be planned out in my head with no problems.
Anyway I have started a course at my school which requires me to be able to create fair sized programs and provide documentation on the processes which I went through in order to create the end product.
So my question is...
Does anyone know any any good Structure methodologies for designing software, which are well documented and if possible freely available example projects available to be downloaded.
I have searched Google to try and find something but as I would like to be able to look at an example of a complete project I haven't been able to find any answers.

Thank you for any help in advance

UML diagrams I guess?

Well Im not certain, my school teacher has mentioned something called SSADM (Structured Systems Analysis and Design Methodology) and well I was wondering if anyone knew of anywhere that I would be able to get hold of an example SSADM project or something similar.