Things to consider while writing TDDs

A TDD not only helps the developer to develop the solution but is also a key document for the quality team to validate the final solution. The TDD must cover various aspects of software development, such as the following:

  • Brainstorming: There are multiple ways to solve a problem—discussions and brainstorming led to the identification of the best possible one.
  • Process flow: Depict the overall process flow for the functional area so that it is clear to the developer what the final outcome is and how to reach it.
  • UI and usability: Keep in mind the users and processes that will be using the new forms. Is it the workers on the floor or a person in the accounting department? Is it a repetitive function, such as shipping sales orders or invoicing POs, or is it a batch process, such as invoicing sales orders? Use familiar UI patterns, considering the users of the functionality.
  • Scalability of the solution: Think about how the solution can be scalable, that is, more controlled by parameters and data instead of code. Having it controlled by parameters will help you in global environments. For example, you can turn off the functionality for companies that don't want to use it. Also, should you have an issue in production with a recently released functionality, you can have the option of turning it off by using parameters.
  • Apply generic design patterns: Utilize solution ideas and frameworks offered within the product. The goal is not to rewrite the product; you are just extending its capability for business use. Follow the design patterns of the standard pages for custom pages.
  • Performance: Identify the volume of transactions in the current production and the anticipated growth in the next few years. The solution should consider the performance requirement early on. Design a prototype and generate sample data to test the performance.
  • Exception handling: Identify exceptional scenarios and document them. Build enough controls to avoid mistakes by users (you don't want to leave flaws that would let users hurt themselves). On the other hand, you don't want to spend too much time on building an extremely idiot-proof system.
  • Security: Consider the security aspects as part of the technical design.

In the end, the TDD must be reviewed with solution architect and functional leads to ensure that any errors, misunderstandings, or ambiguities are detected and corrected.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.21.43.192