Documentação

Galera para alguns isso pode ser uma pergunta bem simples , mais eu sempre vejo em tutoriais falar sobre documentação.
O que seria documentação?

Documentação java (javadoc) é uma maneira de você registrar informações em seu código java através de comentários de documentação e depois gerar uma documentação
HTML a partir dos comentários feitos.

exemplo: http://download-llnw.oracle.com/javase/6/docs/api/

toda a documentação da API Java pode ser encontrada neste link, todas essas páginas foram geradas por comentários nos códigos fontes, utilizando a ferramenta javadoc, que vem
junto com o jdk.

veja um exemplo simples de como documentar seu código:

/**
 * Tem por funcionalidade exemplificar o uso do javadoc
 * @author Seu nome
 * @since seuprojeto_0.1
 * @version 1.0
 */
public class Foo {

  /**
   * Método que ajuda a exemplificar o uso do javadoc
   */
  public void Bar() {
    System.exit( 0 );
  }

  /**
   * Método que ajuda a exemplificar o uso do javadoc
   * @param boolValue Valor booleano passado
   */
  public void Bar( boolean boolValue ) {
    System.exit( 0 );
  }

  /**
   * Método que ajuda a exemplificar o uso do javadoc
   * @param boolValue Valor booleano passado
   * @return Um valor inteiro
   */
  public int FooBar( boolean boolValue ) {
    return 0;
  }
}

espero ter ajudado

E não é só isso. O Javadoc é apenas uma forma de documentação, que foca nas APIs. Você o usa quando quer saber, por exemplo, como e quais métodos de quais classes utilizar para atingir um objetivo, ou “como funciona” uma determinada classe ou API.

Mas documentação é qualquer registro escrito sobre o software e tudo que o envolve, desde sua arquitetura até o processo com o qual ele é criado. Por exemplo, pode-se usar a UML para documentar as classes de um software e como elas interagem entre si, e os “casos de uso” que, grosso modo, listam os requisitos de um software e como eles devem ser atendidos pelo sistema.

Também existem os documentos de requisitos, que são mais gerenciais que técnicos, que listam as características que um determinado software deve ter para atender determinadas expectativas, entre outras formas de documentação.