views:

197

answers:

6
  1. What tools are used in the Sofware industry when creating reports and documentation?

  2. I have heard that some companies use NetBeans or Eclipse to create reports, what plug-ins are being used in these cases?

  3. Is there an extension to Visual Studio available?

I know there's Javadoc in Java, but that's not the kind of documentation I'm asking for.

Examples:

  • Software design documents
  • Software requirements specification
  • Functional- and non-functional requriements
  • Manuals
A: 

Microsoft Word has worked very well for me so far :)

Visual Studio can generate class diagrams from code (not UML, but usable for many cases) and you can include these in your documents.

Marek
+1  A: 

We use latex with a bunch of script to extract things from here and there. For all illustrations we use pgf.

Any examples of how the final result would look like? An url to the vendors of Latex would also be nice, thanks. Googling latex just won't work this time :P
Mickel
You will find out that LaTeX is a great PITA for anyone not used to writing. It is a professional typesetting system, but the will not suit anyone. You declare markup directly and then compile that and let the engine do all the layouting and typesetting. Having a visual editor kind of defies the principle of LaTeX. Project link: http://www.latex-project.org/intro.html
Marek
An example of the most visual WYSIWIG experience you can get in LaTeX: http://www.latexeditor.org/screens/main_large.png
Marek
Great! This is the kind of tools I am looking for. Will keep the question open for a while to hopefully get some more suggestions.
Mickel
There is also http://www.lyx.org/ .
+2  A: 

For requirements, we use Microsoft Word with a template modeled after the work from "Software Requirements" by Karl Wiegers, published by Microsoft Press. For design, we use Microsoft Word along with other tools to create diagrams and screen mock-ups. I always liked Gadwin Diagram Stuidio for mock-ups and UML diagrams.

We are currently looking into using Trac as a way to write and organize documentation. Trac provides a Wiki platform for collaborative document editing (in addition to general project management support). There are Trac add-ons that make it possible to enter LaTex formulas for rendering within Trac. Our hope is that something like this will allow us to create requirements and design documentation that is collaboratively editable by our team, accessible to the client in real-time, and integrated with LaTex diagrams.

Michael Venable
A: 

I strongly recommend DoxyGen - http://www.stack.nl/~dimitri/doxygen/

While I insist on proper design documentation (usually Open Office) before coding begins and prefer it to be kept up to date, I accept that it is often difficult to find the time to do so.

We have a better chance (but no guarantee) of keeping source code and documentation in synch if the documentation is generated from the code.

If you ever take over someone else's code, run it through DoxyGen, you will learn a lot.

However, DoxyGen really shows its worth when you add specially formatted comments to the code. Nothing too fancy, just

/** Description of function
  * @param [in] inoutParam - description
  * @param [out] outputParam - description
  * @return returnValue - description
  */
That sort of thing. It is easy enough to keep up to date. But DoxyGen also generates things like call trees to show where a function is called from, class trees, to show inheritance in C++ and lots of hyperlinks (if a parameter is of an enum, you can jump to the declaration of that enum, etc).

Take a look at the web site and I think you will like it.

Of course, no single solution is enough, I would suggest using DoxyGen together with other methods.

Mawg
A: 

You can create UML class, sequence, component, use case, and activity diagrams in Visual Studio 2010 Ultimate. You can link these diagrams to Team Foundation work items so you can plan and track development and test work. You can also create sequence, dependency graphs, and layer diagrams from code and use Architecture Explorer to browse and explore your solution.

I've posted more links on my profile for more info.

Esther Fan - MSFT
A: 

We used to use latex for everything, but more and more we're moving to publican. The idea with publican is that you write your documents in docbook (an XML schema with LOTS of third party tool support), and then run the xml through a series of XSL transforms that produce PDF's, HTML pages, etc. Red Hat uses publican for all their docs, as does the Fedora Project. It comes with some default styles, but you can make your own (we modified the default to include our branding, colors, etc).

The nice thing about XML is that you can keep it in source control, there are lots of good xml editors out there, and it scares people WAY less than latex (which is why we're switching)

Alex