|A glossary of Web terminology |
- Application servers: The software that serves up an application in a three-tier distributed system. Essentially the runtime platform for distributed apps, the app server lives on the "application tier" (the other two tiers being the database and the client-side presentation). First and foremost, the app server executes source code and provides traditional middleware services such as TP monitoring; pooling of connections, objects, and data. They may also provide or otherwise support fault tolerance through clustering, failover, etc.
- Decoupled frameworks: An application architecture built with reusable, fully encapsulated components. These components can be snapped in or out at will, making upgrades and maintenance far easier compared to traditional monolithic applications, where much of the code is tightly integrated and interdependent.
- Distributed architectures: Application systems that run across multiple computers, also known as "tiers." Tier 1 is the presentation tier, most often a Web browser or a desktop PC. Tier 2 is the application tier, sometimes referred to as the middle, business logic, business rules, or business components tier. Tier 3 is the database. While the architecture consists of three virtual tiers, in reality, the actual implementation of a distributed "three-tier" architecture might comprise hundreds of application servers, dozens of database servers, and millions of clients.
- Electronic Data Interchange (EDI): An industry-standard means of formatting a data file so that it can be shared among multiple computer systems.
- Enterprise application integration: The process of tying multiple enterprise software programs, systems, or databases together, so they can seamlessly share data or objects.
- Enterprise information portals: A Web site that provides enterprise knowledge workers with an information "dashboard" as a home page. For example, the page might include the company's latest stock price; human resources links; a menu of the company's master applications for sales, accounting, customer service, etc.; a company address and telephone book; a company directory; maps to various office locations; the latest company news, and so on. It's an employee's one-stop-shop for company news, information, communication, and software applications.
- eXtensible Markup Language (XML): A "markup" language that allows programmers to define ways to share information between applications. XML is to data what HTML (HyperText Markup Language) is to documents. Just as HTML defined a standard way for documents to be exchanged through Web browsers, XML allows IT shops to define how enterprise data is shared among applications and across platforms.
- Fat servers: Servers that house all or most of the database and app logic, leaving only or mostly the user interface logic on the thin client.
- Global supply chain optimization: Improving the efficiency of an organization's end-to-end supply chain through application of software algorithms.
- HyperText Markup Language (HTML): The tag-based programming language of the World Wide Web. HTML defines how documents are formatted and displayed. It is interpreted by a Web browser at run time, which converts the text-based HTML document into the lovely display you're looking at now.
- Independent Software Vendor (ISV): A company that designs, develops, markets, and supports software products. Microsoft is an ISV.
- Integration tester: A member of an application development team who validates that two or more software components are communicating properly and without error.
- Object messaging: Using software objects or components to communicate inside of or among programs, systems, or processes.
- Pervasive clients: What some believe is the next great era of computing, where computer clients will be everywhere, in many shapes, sizes, colors, and form factors. This includes wearable computers (such as Star Trek style communicators), Internet appliances, palm-sized devices, smart cellular telephones, and interactive TVs, in addition to traditional desktop, laptop, and server PCs.
- Server-side components: Software objects that reside exclusively on a server.
- Software algorithms: A series of software commands that, when executed in sequence, solve a problem and produce a result. Algorithms may contain other algorithms. In fact, a complete program is a collection of algorithms, and itself can be considered a large algorithm.
- Unit tester: A member of an application development team who validates that software components are performing according to spec, behaving properly, and executing without error.