I spent a good deal of the early nineties knee-deep in SDSF, JCL, ISPF, and all thing IBMically acronymical. (five years of working on batch COBOL systems, basically. A wee bit of SAS, too)
JCL does indeed give a great deal of info and control, but also its fair share of pain. Nowadays, telling a program which feels it's going to need, before you run it, strikes me as being a bit silly. But I can understand why it did things the way it did.
Heck, I still think the ISPF editor was a pretty neat idea... (but I don't miss it enough to want and find a Windows or LInux implementation thereof)