Chipmunk2D, with a rig of connections that recreates a faux soft body dynamics for the surface and surface tension, with a limitation to "stretch" that's different for down vs up so waves created by surface tension release form crests when the fish goes up, but nothing as sharp when the fish dives in.
I imagine he's using fake fish objects to "break" the surface, both up and down. The moment these objects bounce because they've reached the extents of the surface "soft body" constraints movement range, he's probably deleting them and giving the fishSprite the anticipated breakthrough velocity. Or some other kind of "hacky" way to create the impression of breaking the surface.
The harmonics of movement throughout the chain of surface units via their connection as a fake soft body chain will need fine turning to get something you desire.
Plus buoyancy for any and all floating objects.
Probably not quick to do with anywhere near the visual conviction apparent in that game.
If you wanted to try for a more creative approach than exact replication, you could use an approach similar to this:
http://google.github.io/liquidfun/
Another way of doing this is also available via google:
https://www.youtube.com/watch?v=Ss89OpQ_u54
And here's another inspirational video on how to possibly do it the hard way:
https://www.youtube.com/watch?v=_rCowyFle6c