You can use NOF for any of the following purposes:
Two-way communication with an online external system or program.
Interfacing to non-standard terminals or hardware.
Loading data into an application without manual intervention.
Providing a transaction-driven facility to test or benchmark your application.