Filing an application for copyright registration for software is inepensive and relatively easy to do yourself. There are strong advantages to registration including the possibility of obtaining attorney fees and statutory damages in a winning lawsuit, if the application is filed early enough. The application must be filed prior to an infringement taking place or within three months from the publication date of the work to obtain these benefits.
A copyright application can easily be filed online at www.copyright.gov by following the instructions online for form CO.
The most important thing to do is prepare a deposit. This can be in any of various document formats listed on copyright.gov and can be prepared using a word processing program.
With new computer programs, you have various options for the deposit. These are:
Whichever option exposes the lowest amount of trade secret code should be used. The deposit will be accessible to competitors. At the same time, you will want to be able to prove copying.
A separate application should be filed for each new version of the software.
After preparation of the deposit, the rest of the application is relatively easy to fill in online. You will be asked if the software was a work made for hire and you will want to consider that question before starting the application. If you paid someone to create the software for you, that does not necessarily mean that it is a work made for hire. You may still own the software due to an assignment or contract without it being a "work made for hire." Generally speaking, if you are an employer and an employee wrote the code, it is probably a work made for hire. If you used an independent contractor, it probably is not a work made for hire. Review and consider Circular 9 from copyright.gov to answer the question of whether the software is a work made for hire.
Under copyright law, ownership of the copyright originally vests with the author. If you hire independent contractors to write software code for you, it is important to have a contract in place transferring title to you. If you don't have such a contract, you may find out that you only own one copy of the software.
Please also review my article on whether to rely on copyright law or patent law to protect software. Patent law provides much stronger protection. On the other hand, copyright registrations are inexpensive and should always be used regardless of budget.