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 on code. It can be a lot more fun, too. Learn what types of diagrams are useful, when and how to use them, and how it all ties into the development process. Through real-world examples, I will teach you how to create meaningful, helpful documentation not only for posterity but also to guide you in your development efforts.

Anna Filina

June 30, 2017
Tweet

More Decks by Anna Filina

Other Decks in Programming

Transcript

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

    design course. • Not a demo of modelling tools. • Not a detailed explanation of symbology.
  2. What It Is About • Which diagrams serve what purpose.

    • Tie diagrams together. • Real world examples.
  3. Why No Diagrams? • Don't know where to begin. •

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

    no purpose, not helpful. • Mistake diagrams for waterfall model. • Inadequate tools.
  5. Common Mistakes • Data not stored. • Black hole. •

    Grey hole. • Spontaneous generation.
  6. Behat Scenario: POST to /login endpoint with empty body When

    I send a POST request to "/login" with body: """ """ Then the response code should be 400
  7. Source Comments • // Simple and short explanations. • /**


    * Document the "why" more than the "what".
 */ • Comment when it’s fresh. • Big functions with lots of comments = split function. • Better naming > comments.
  8. Manual • Define chapters. Example: 1.Scope (Use Cases) 2.Database (ERD)

    3.Processes (DFD + Flowchart) 4.Mockups (later screenshots) 5.Scenarios
  9. Manual • Write topics in bullet point. • Add diagrams.

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

    maintain. • Makes your team more effective. • Discover new scenarios or omissions before implementation.
  11. Takeaways • Systems Analysis and Design and/or UML book. •

    Get professional software, like Astah. • Diagrams are part of the process, not extra work. • Good diagrams increase dev speed and software quality.