Copyright © by Mark J. Sebern Software Engineering Process I SE Technical Practices
Copyright © by Mark J. Sebern Definition of Done (revisited) “Done” components Repository usage Design Reviews/inspections Testing techniques & strategies Integration/build Textbook, Table 4.1
Copyright © by Mark J. Sebern Repository Usage Repository functions Team collaboration Backup, change mgt Feature/release mgt Repository options SVN, Git, …
Copyright © by Mark J. Sebern Design Documentation Are your designs documented well enough to have real defects? If not, do they actually contain any useful information? How do YOU document designs?
Copyright © by Mark J. Sebern Consider: (click for full image)
Copyright © by Mark J. Sebern Design Documentation ExternalInternal Static Class diagram with embedded descriptions Pre- & post-conditions, invariants, behavior descriptions Dynamic Use cases and UC/sequence/acti vity diagrams State charts/diagrams
Copyright © by Mark J. Sebern Reviews & Inspections Reviews Personal Peer Inspections Larger group or entire team
Copyright © by Mark J. Sebern Testing Testing techniques Testing strategies Testing after development Test-driven development
Copyright © by Mark J. Sebern Continuous Integration Repository-centric development Frequent updates merged into “master” or “development” branch Often linked to automated build/testing “Don’t break the build!”
Copyright © by Mark J. Sebern Definition of Done (revisited) “Done” components Repository usage Design Reviews/inspections Testing techniques & strategies Integration/build Textbook, Table 4.1
Copyright © by Mark J. Sebern Design Exercise
Copyright © by Mark J. Sebern User Stories Choose a text document Store documents Search for "near/adjacent" keyword combinations Perform textual analysis Report analysis data Character frequency Word frequency Common n-grams ??