The formal analysis of Web service compatibility is an important task that is not supported by current composition languages, due to their lack of well-defined formal semantics. This paper addresses the raised issues by providing a survey of service composition with focus on formal compatibility analysis and proposing an e-commerce application that integrates formal methods in Web service choreographies. These methods, including Colored Petri Nets (CPNs) and Timed CPNs, are used at design-time for analyzing service compatibility that will be monitored at run-time. This paper forms an important step towards reliable choreographies since by analyzing at design-time problems could be detected early in the development cycle before starting the implementation. It discusses the monitoring of the compatibility evolution at run-time. The effectiveness of our work is validated using CPN Tools.