Phase: Architecture and Design
If at all possible, use library calls rather than external processes to recreate the desired functionality.
Phase: Implementation
If possible, ensure that all external commands called from the program are statically created.