Monday, December 30, 2019

D365FO new vertical/ product architecture

Hi,

It's common for ISVs to launch their products based on Dynamics 365 for Finance and Operations. Internally they call those products 'Verticals'. There are different stack holders indulged in this process from brainstorming of features till the testing and launching the product. In this blog, I will describe the process of designing the new product in technical perspective. We assume that brainstorming of the product has already been completed. The following steps are most important in this phase as I faced:

  1. Identify elements
    The first step after brainstorming is identifying as much elements as you. By elements I mean anything you can count as user, screen, process or even condition.
  2. UML diagram (Unit)
    Draw UML diagram of each user separately. Try to think as much deep as you can to cater corner cases. I believe that though brainstorming is done while deciding the features, it is a never ending process which shall keep going on till the final steps or even the product is launched to bring improvements in the product. Likewise, drawing drawing UML diagram for each user separately will make your mind think centrally in that perspective and identify processes in its perspective. The diagram below is an example.
  3. Complete UML diagram (Module diagram)
    Now connect those unit diagrams, it is a good idea to draw them on paper with pencil so you can rectify them easily. Module diagram will represent your product in business perspective. It will show the flow and dependency of objects on each other. The diagram below is an example.
  4. Model diagram
    Model is the technical classification of elements. Once every element is identified in Module diagram, you need to look how you can divide them with respect to development. In D365FO it is not good idea to put all your element in one cumbersome model. It is Microsoft best practice to make relevant models. The diagram below is an example.

Thank you!

1 comment: