Recently (last 5 years) I use and promote, something I call: UMDD. Or “User Manual Driven Development”.
The methodology where software product manual is written first. With screen images, and the lot. With the tight involvement of customers. When it is finished, then we start software development cycling. But not before.
Manual has to be detailed and with no gaps. Well written and with lots of (nice) images of course.
Customers absolutely love this approach. To the point, they sometimes “take over” and passionately (between themselves) discuss minute details in the preparation meetings. This approach (also) more often than not, reveals to the customer, point for improvements, in their organisations or processes. These revelations are sometimes significant and always beneficial for everyone.
Of course, we have the luxury of starting from already finished products and their user manuals.
Please, not that this has nothing to do with software development methodology which happens after. This is more about customer management and that grey area of (dreaded) requirements specifications (RS) . RS very rarely works. RS never works when not written by customers. And I have never seen a customer who can understand easily “use cases”, UML, etc … which are all used by consultants (paid by them) to produce RS that no one can use or follow.
In short: User Manual of an imaginary product is the best Requirement Specification for that product.