Puzzle of the week #151

Level: 
3-Bishop
Chess Diagram: 

------k-
-----pb-
------pp
p-pr-b--
-p-pNB--
-------P
PPP-RPP-
------K-

I like to watch games played by my students. It gives me a good indication if there's progress, as well as it inspires subjects for future lessons. In the above position one of my former students - Joanne - was playing White and continued with:
"27.Bc7 a4 28.Bb6 c4 29.Ng3 d3 30.cxd3 cxd3 31.Rd2 Bc3!"
losing the game after a number of less important moves. Your tasks:
a) Analyse the position;
b) Why did White lose the game?
c) Come up with a better plan and line for White

Total available points for this puzzle is 25. The answers will be published next week together with puzzle #152.

Puzzle #150 solution:
J. A. Darragh of Perth, Australia has saved this club game position from disappearing in the bottomless pit that we call past. It comes from an era without computers and the solution is flawed, but its beauty remains atractive and winning idea worth remembering. The overwhelming majority of you have tried to save the game by sacrificing the Knight and we discussed why this should not be the first option. In the end I chose a couple of answers I liked the most:
Alex
"1. As in the book they make a last run for it, that's what I'll try!
1.f6+! ... there so many things Black can do, this ones my favourite:
1... exf6 2.gxf6+ Kf7 3.Qxh7+ Kf8 4.Qe7+ Kg8 5.Qg7#"

Ziyao:
"I thought this one through for a long time but I still did not figure it out. It is a very tricky puzzle. I got very close though, but there was always a move Black would do that make me think of a different plan; the closest I got to finding the solution was:
1.f6+ Kf8 2.Qh6+ ...
[If2.fxe7++ Kxe7 3. Qxh7+ Kd6]
2... Ke8 in both situations I am not sure what to do, but if Black did any other move such as:
a) 1... Kh8 2.Ne2 Qxe2 3.Rf2 Qxf2 4.Qxf2 Rxf2 5.fxe7 ... Black can't stop White from promoting or
b) 1... exf6 2.gxf6+ Kf7 3.Qxh7+ Kf8 4.Qe7+ Kg8 5.Qg7# or
c) 1... Kg8 2.f7+ Kf8 [If 2... Kh8 3.f8=Q#] 3.Qh6#"

Correct solutions:
Ziyao - 20 points
Alex, Derrick - 10 points
Harmony, James, Leroy, Philip - 5 points

STANDINGS:

Ziyao - 97 points
Harmony - 75 points
James, Alex - 64 points
Philip - 54 points
Leo - 34 points
Frank - 33 points
Jeffrey - 32 points
Leroy - 28 points
Derrick - 23 points
Danny - 19 points
Karl - 13 points
Kevin - 11 point

Comment: 

Any position is interesting