Skip to content

TA Feedback Project Part 2

Alex Wilson edited this page Feb 22, 2015 · 2 revisions

Requirements Specification

Overall, what was done was mostly done well, but it looks like you rushed a bit and did not check to make sure that everything was completed. Missing Use cases and tests is what hurt you the most.

misc

  • Tests are supposed to be per Use Case, but they are labeled per user story. Unfortunately, I think this is my fault as I asked you to link the user stories from the tests (So no marks off). Some tests are per use case, so that's good..
  • Since the user stories are all in your issue tracker, it would be cool if you could link to them from the use cases wiki page.
  • Please use assertEquals("x and y", x, y) instead of assertTrue("x and y", x == y) In general, use the most specific assert you can, because this will give you the most useful error messages when your test fails. Plus it is a bit more self-documenting
  • User stories are all labeled "Testing" which is a bit weird, since I would expect the user stories tickets to be closed when the user story is implemented.

bad

  • There are two use cases named A4
  • Many use cases do not have information on what user stories they relate to
  • Some tests don't quite cover everything they should, eg. testClaimReturns does not check that the claim's approver name is set
  • The following user stories are not mentioned on the use case page: US01.03.01 US03.02.01 US03.03.01 US04.02.01 US04.08.01 US06.03.01 US07.02.01 US07.05.01 US08.01.01 US08.04.01 US08.02.01 US05.01.01 US04.03.01
  • A test with no code is not a test! testListTags() should use a TagsManager object or something like that. It doesn't need to compile, so you can just make up a class that would let you test this behaviour. This is one reason why TDD is nice, you will end up designing testable code.
  • Some steps in flow should be broken down a bit. Eg. in A5, there is just one step, but there should probably be two (eg. User does __, System saves data).

good

  • Use Cases are numbered
  • User stories are in the issue tracker
  • exceptions/alternate flow are present where they should be
  • use cases are well-written and easy to follow

User Interface Mockups and Storyboard

Again, what was done was mostly good, but there are things missing.

misc

  • mockups are a little cluttered and squished?

bad

  • storyboard does not have a title to explain what is being done. What is the scenario? From the assignment: "provide one storyboard sequence for a non-trivial but coherent scenario of using your application"
  • there is a point in the storyboard where the user selects the view item from a menu but then the comment says that they go to the claim editor
  • The Mockup is missing the following things:
    • additional UI dialong from use case A4
    • all tag stuff
    • incomplete fields prompt from D1
    • commenting things
    • approve/return buttons

good

  • UI mockups are well-documented
  • storyboard is readable and understandable, makes navigation mostly clear

Release Planning

Good, but you should tie planning closer to use cases and user stories.

misc

  • Your use cases have a spot for open issues, but none of the related issues are linked?

bad

  • Tickets that relate to completing a requirement should reference the appropriate user stories/cases. From the assignment: "Plan the major use cases and user stories"

good

  • overview in wiki, tickets + milestones in issue tracker
  • planning seems acheivable

Glossary

Very nice!

good

  • Glossary terms are well-defined, understandable
  • Glossary covers all important terms
  • Lots of good links