An electroporation device which may be used to effectively facilitate the introduction of a macromolecule into cells of a selected tissue in a body or plant. The electroporation device comprises an electro-kinetic device (&ldquoEKD&rdquo) whose operation is specified by software or firmware. The EKD produces a series of programmable constant-current pulse patterns between electrodes in an array based on user control and input of the pulse parameters and allows the storage and acquisition of current waveform data. The electroporation device also comprises a replaceable electrode disk having an array of needle electrodes, a central injection channel for an injection needle, and a removable guide disk.