Whenever an athlete competes in a BWF tournament, they get some amount of points. The world ranking is then calculated by the sum of the 10 highest tournament points in the last year. In the ranking details page of a player, these 10 are marked with yellow stars.
The number of points awarded to a player for participating in a tournament depends on two factors: The result and the level of the tournament.
For example, a player who loses in the round of 128 in a Future series (the lowest level) tournament will be awarded 60 points. On the other hand, the winner of the Olympics gets a massive 12000 points. Semifinalists (place 3 and 4) will get about 75%, and quarterfinalists (places 5-8) about 50% of the winner's points.
This ranking rewards consistency; it is perfectly possible that an athlete who regularly reaches the later rounds of tournaments is ranked above one who only manages to win two high-level tournaments per year but does not play any other ones, or an athlete who only competes in the lower-level Future/International Series. For instance, Marc Zwiebler has often reached the quarterfinals at Superseries tournaments (5040 points), and the semi-finals or finals at Grand Prix Gold tournaments (~4000-6000 points).
There are a lot more subtleties, in particular the points awarded at national team events and special rules for doubles and mixed. You can find all of this information, and more, in Appendix 6 of the BWF General Competition Regulations, in particular the table of points in §6.3.