Suppose your step is doing an FTP. The FTP program reads the input statements and finds the file name you wish to send/receive. The program does dynamic allocation to associate the file with a DDname. Now the program can do an OPEN of the DDname and read/write records. It appears to the system just like you had added the DDname to your step, like STEPLIB or SYSPRINT.
Many programs under TSO do dynamic allocation. ISPF EDIT, library utilities and others all dynamically allocate the files you specify on the panels. If you do a TSO command LISTALC STATUS in option 6 you'll see files allocated that are not in your LOGON PROC.
Disclaimer: My comments on this forum are my own and do not represent the opinions or suggestions of any other person or business entity.