A method of programming a medical infusion pump with a protocol is disclosed. The method includes providing a protocol including one or more patient specific pump parameters. The method further includes providing a user interface configured to allow user adjustment of at least one of the one or more patient specific pump parameters. The method also includes uploading the protocol into the medical infusion pump.