In the first sense, "IT outsourcing" means hiring somebody outside your company to provide IT services. Outsourcing is most common for companies whose IT needs are well known in advance. IT outsourcing can also mean hiring someone to be your IT department. Such a partner must have people who can work closely with your staff to understand your unique business problems so that you can deliver, implement, and service unique solutions.
Offshore Outsourcing of software is simply software development at another location, a facility connected with the client's location using high-speed data communication links to allow engineers and managers to communicate on a real-time basis. Clients on the other side of the globe can monitor developments and project milestones on an up-to-the-minute basis, ensuring both quality and progress.