Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ERD, Flowcharts and Other Documentation

ERD, Flowcharts and Other Documentation

Documentation is much more than just commenting code. It can be a lot more fun too. Learn what types of documentation are useful, when it is appropriate to use and how to write it. Through real-world examples, this talk will teach you how to create meaningful and helpful documentation. Not just for posterity, but to guide you in your development efforts.

Anna Filina

August 25, 2012
Tweet

More Decks by Anna Filina

Other Decks in Programming

Transcript

  1. FooLab What It’s Not About • Not a full analysis

    and design course • Not a demo of modeling tools • Not a detailed explanation of symbology 2
  2. FooLab What It Is About • What diagrams serve what

    purpose • Tie diagrams together • Real world examples • More examples 3
  3. FooLab Anna Filina • PHP Quebec - user group •

    ConFoo - non for profit Web conference • FooLab Inc. • I write code. • I train and supervise programmers. 4
  4. FooLab Why No Docs? • Don't know where to begin

    • It's boring • There’s no point • Get out of date • Nobody reads them • Lean and mean 5
  5. FooLab The Real Problem • Don't understand diagrams • Diagrams

    serve no purpose, not helpful • Mistake diagrams for waterfall model • Inadequate tools 7
  6. FooLab Common Mistakes 16 • Data not stored. • Black

    hole. • Grey hole. • Spontaneous generation.
  7. FooLab Function Reference • Session • bool isSelected() • void

    mailConfirmation(), check logs • bool saveVote($user, $vote) • Automate tests of input/output. 20
  8. FooLab Source Comments • Inline comments // simple and short

    explanations • /** * Commonly used above functions. * Can use annotations with phpDocumentor or other. */ Descriptive blocks • Comment when it’s fresh. • Big functions with lots of comments = split function. 21
  9. FooLab Manual • Define chapters. Example: 1. Scope (Use Cases)

    2. Database (ERD) 3. Processes (DFD + Flowchart) 4. Mockups (later screenshots) 5. Classes + usage 23
  10. FooLab Manual • Write topics in bullet point • Add

    diagrams • Write paragraph under each bullet • Move topics and chapters around • Fill in with details 24
  11. FooLab Good Documentation • Makes your software easier to build

    and maintain • Makes your team more effective • Discover new features before implementation 31
  12. FooLab Next Steps • I will tweet the slides: @afilina

    • Please leave feedback: http://bit.ly/anna-docs 34