Common Terminology in Software Development

Cache Server
Cache Servers are used to create a local copy of data that is commonly retrieved enabling a speed up for users asking for the same information. Cache Servers are most often used in conjunction with the Worldwide Web, but can be used with other protocols where information is updated infrequently and needs to be accessed repetitively.
 
CMS (Content Management System)
A Web Based CMS enables you to manage your site without knowing HTML, Javascript, and other web related technologies. All you need to know is the content, what it should be, what it should look like, and where it should go.
 
CRM (Customer Relationship Management)
CRM defines a class of software applications which integrates the management of: customer service, marketing, and sales into a unified system. CRM systems provide an enhanced ability to share information, better tracking of customers, automation of routine services, and enabling the customer to manage parts of their own data.
 
Data Mining
The primary goal of Data Mining is to extract useful information from databases where that tracking that extracted information was not the original goal of the database. Its practical application is to make better use of existing information in projecting sales and marketing efforts, and can also be very useful when trying to enter new, but related markets.
 
ERP (Enterprise Resource Planning)
ERP systems are designed to consolidate all back-end systems across the enterprise into a series of interrelated software applications. Depending on the company it is used to track and manage operations involving the manufacturing of goods, inventory control, accounting, human resources, marketing, and long term planning.
 
Firewall
A firewall is point on the network topography, generally between two disparate networks, that enforces rules on what types of packets can pass thorough that point. In businesses firewalls are generally used to prevent unwanted traffic from coming into your private network, and to prevent information from leaving your network.
 
Project Management
Project Management software is used to track and document the objectives, people, time-lines, key events, costs, and final deliverables associated with a project. The key to good project management software is to enforce guidelines and best practice techniques while retaining the flexibility required to accomplish a project in the real world.
 
Proxy Servers
Proxy servers enable two networks to stay disparate for all functions except those that have a specific proxy to move information between the two networks. Proxy Server are generally used when the majority of traffic on a network is local to that network, and there are only a few well defined times that traffic should move between networks.
 
Router
Routers are placed at network edges to perform translation and destination services on packets that are being sent between networks. For a router to route anything their must be a minimum of two participating networks.
 
VOIP (Voice over Internet Protocol)
Routers are placed at network edges to perform translation and destination services on packets that are being sent between networks. For a router to route anything their must be a minimum of two participating networks.
 
VPN (Virtula Private Network)
VPNs are used to connect multiple private networks that are not directly connected using a common public network as the connector. Most often VPNs are implemented using the Internet as the connector and encrypting the information before it is passed through the connector. VPNs are often used to connect remote offices.