Service-based approaches are widely used to integrate heterogenous systems. Web services allow for the definition of highly dynamic systems where components (services) can be discovered and QoS parameters negotiated at run-time. This justifies the need for monitoring service compositions at run-time. Research on this issue, however, is still in its infancy. We investigate how to monitor dynamic service compositions with respect to contracts expressed via assertions on services. Dynamic compositions are represented as BPEL processes which can be monitored at run-time to check whether individual services comply with their contracts. Monitors can be automatically defined as additional services and linked to the service composition. We present two alternative implementations of our monitoring approach: one based on late-binding and reflection and the other based on a standard assertion system. The two implementations are exemplified on a case study. Categories and Subject Descriptors...