For some reason this use of "derelict" feels off to me. I would prefer to use "abandoned", but I'm not certain why. It may be due to what Luke Sawczak points out in his comment, that a "derelict" building is, by definition, falling apart, making the rest of the sentence redundant. "Abandoned" simply means no one lives there, and so it's a natural consequence that the roof has fallen in.
But I think it's more the use of "has been" in the example, which suggests you meant to use the present perfect progressive. You can't "derelict" something, but you can "abandon" it, so "has been abandoned" sounds somewhat more natural to my ears.
Also, an abandoned building can be quickly reoccupied, but a derelict building needs to be repaired before it can go back to not being derelict. To some extent, the present perfect suggests a condition that could have easily changed any time, and a building can't easily go back and forth between "derelict" and "not derelict".
Perhaps this is just my personal (or American) style, and others have no problem with this use of "derelict". Given no other options, it's fine, and better than "forsaken" (which I've never heard applied to a building).