That would be where I would start. You can always modify it if you find that something's missing or needs, ahem, "adjustment" . Your JS will be for form behavior, i.e. when a user changes from vanilla to chocolate the price per cone as well as the total are adjusted accordingly and, hopefully, in real time.
Basically you're creating an online icecream store. For the moment let's not consider the problem of the icecream melting in the back of a UPS truck during delivery . Think about the e-commerce sites you've bought from. You pick a product, choose color etc., then put in your "cart". You are asked if you want to order something else. If "yes" you make that order. When "no" you are taken to your cart where you are given a last chance to modify your order -- delete an item, go back and change a shirt size or whatever. When done you "check out", pay, etc. That's what you are building in this project. And that's the flowchart you will be using.