First, stop relying on specifications.
It's perfectly understandable that in many companies, specifications
must be written. Typically, they're required to get buy-in from
management and development teams
to build the application in the first place. Beyond this, however,
they have very little effect on reality. Applications almost never
adhere to them, and they're almost never updated to reflect changes
made to an application's design once development has started.
Furthermore, specs are usually about a million pages long, and no one
really has the time to read them. Designers want to know about the
activity so they can create a design that supports it. Developers want
to know how the application will function. And marketers want to know
how they can market the thing. Because specs are so long (and usually
extremely boring), they fail to meet any of these needs effectively.