The computer industry is advancing at a fast pace and many new
technologies are being developed. The following is just a brief
and simple description of some of the technologies that are important
to software development teams.
.Net
|
The .Net technology is a recent offering from
Microsoft that provides extraordinary capability for developing
applications to run in the Internet / Web environment. It provides
access to advanced technologies such as ASP, Web Services and
.Net Remoting as well as a platform for producing conventional
applications.
|
.Net ASP
|
This is an enhanced implementation of ASP in
the .Net framework. It is especially useful for integrating
web pages with databases and producing standard HTML for the
client browsers.
|
.Net Remoting
|
This is a method for programs to exchange data
and objects that replaces the older DCOM and COM models.
Using .Net Remoting, an application may be distributed among
two or more computers and exchange information over a network
or the internet.
|
ActiveX Control
|
An ActiveX control is a component program object
that can be re-used by many application programs within a computer
or among computers in a network. The technology for creating
ActiveX controls is part of Microsoft's overall ActiveX set
of technologies, chief of which is the Component Object Model
(COM). ActiveX controls can be downloaded as small programs
or animations for Web pages, but they can also be used for any
commonly-needed task by an application program in the latest
Windows and Macintosh environments. In general, ActiveX controls
replace the earlier OCX (Object Linking and Embedding custom
controls). An ActiveX control is roughly equivalent in concept
and implementation to the Java applet. An ActiveX control can
be created in any programming language that recognizes Microsoft's
Component Object Model. The distributed support for COM is called
the Distributed Component Object Model (DCOM). In implementation,
an ActiveX control is a dynamic link library (DLL) module. An
ActiveX control runs in what is known as a container, an application
program that uses the Component Object Model program interfaces.
This reuseable component approach to application development
reduces development time and improves program capability and
quality. Windows application development programs such as PowerBuilder
and Microsoft Access take advantage of ActiveX controls.
|
ASM
|
Assembly Language (ASM) is the lowest level
language for interacting with a computer, other than the actual
binary machine language. It is seldom used today since C and
C++ provide such efficient code and are much easier to use.
However, there are times where very fast speed is required and
when nothing else will do..
|
ASP
|
Active Server Pages (ASP) provide a way to integrate
Web pages with databases and other processing on the server
side. The client web browser just sees HTML and the heavy processing
is done on the Web Server side.
|
C
|
The C programming language is the forerunner
of C++ and C#. It did not deal with classes and objects,
but provided a very fast, efficient and powerful language.
Its flexibility allowed it do accomplish nearly any task a programmer
desired. The speed of the compiled code often replaced
the need for assembly language. Much commercial code during
the 80's was written in C.
|
C#
|
C Sharp is a relatively new computer language
introduced by Microsoft with the .Net environment. It would
be considered one of the "native" languages for that
environment. It has similarities to the C++ language, but does
some things automatically for the programmer that must be done
manually in C++. It is generally a "safer" language
in that many bugs that arise using C++ are not as likely with
C#.
|
C++
|
The C++ computer language is an object-oriented
enhanced version of the venerable C language. It has a long
history and has a reputation for producing very high performance
and efficient code. It is a very powerful language and requires
a very knowledgeable and experienced programmer to use it safely
and to get the most out of it.
|
Client
|
A client is the requesting program or user in
a client/server relationship. For example, the user of a Web
browser is effectively making client requests for pages from
servers all over the Web. The browser itself is a client in
its relationship with the computer that is getting and returning
the requested HTML file. The computer handling the request and
sending back the HTML file is a server.
|
Client - Server
|
A Client - Server application is just a 2 tier
application where part of the application resides on a client
computer and the rest on a server computer. Generally
many clients can connect to and access the server component.
|
Client/Server
|
Client/server describes the relationship between
two computer programs in which one program, the client, makes
a service request from another program, the server, which fulfills
the request. Although the client/server idea can be used by
programs within a single computer, it is a more important idea
in a network. In a network, the client/server model provides
a convenient way to interconnect programs that are distributed
efficiently across different locations. Computer transactions
using the client/server model are very common. For example,
to check your bank account from your computer, a client program
in your computer forwards your request to a server program at
the bank. That program may in turn forward the request to its
own client program that sends a request to a database server
at another bank computer to retrieve your account balance. The
balance is returned back to the bank data client, which in turn
serves it back to the client in your personal computer, which
displays the information for you.
|
COM
|
The Component Object Model (COM) is a standard
by which programs can interact with binary code and data contained
in a separate executable. For example, this is how a program
can call a routine inside another program that may have been
written by someone else, even in a different language.
|
Delphi
|
Delphi (pronounced DEHL-FAI) from Borland competes
with Visual Basic as an offering for an object-oriented, visual
programming approach to application development. Based on object
Pascal programming language, the latest version of Delphi includes
facilities for rapidly building or converting an application
into a Web service. It provides interfaces for the programmer
to build an application using the Extensible Markup Language
(XML), Extensible Stylesheet Language (XSL), Simple Object Access
Protocol (SOAP), and Web Services Description Language (WSDL).
|
Distributed Applications
|
Rather than have an application reside entirely
on one computer, an application may have its components distributed
among several computers. This may be done for reasons
of performance, security or commercial reasons.
|
Dynamic Link Library (DLL)
|
In computers, a dynamic link library (DLL) is
a collection of small programs, any of which can be called when
needed by a larger program that is running in the computer.
The small program that lets the larger program communicate with
a specific device such as a printer or scanner is often packaged
as a DLL program (usually referred to as a DLL file). DLL files
that support specific device operation are known as device drivers.
|
E-Government
|
On the Internet, B2G is business-to-government
(a variation of the term B2B or business-to-business), the concept
that businesses and government agencies can use central Web
sites to exchange information and do business with each other
more efficiently than they usually can off the Web. For example,
a Web site offering B2G services could provide businesses with
a single place to locate applications and tax forms for one
or more levels of governent (city, state or province, country,
and so forth); provide the ability to send in filled-out forms
and payments; update corporate information; request answers
to specific questions; and so forth. B2G may also include e-procurement
services, in which businesses learn about the purchasing needs
of agencies and agencies request proposal responses. B2G may
also support the idea of a virtual workplace in which a business
and an agency could coordinate the work on a contracted project
by sharing a common site to coordinate online meetings, review
plans, and manage progres. B2G may also include the rental of
online applications and databases designed especially for use
by government agencies. According to the Gartner Group, B2G
revenue is expected to grow from $1.5 billion in 2000 to $6.2
billion in 2005. B2G is sometimes called e-government.
|
Enterprise Application Integration (EAI)
|
EAI (enterprise application integration) is
a business computing term for the plans, methods, and tools
aimed at modernizing, consolidating, and coordinating the computer
applications in an enterprise. Typically, an enterprise has
existing legacy applications and databases and wants to continue
to use them while adding or migrating to a new set of applications
that exploit the Internet, e-commerce, extranet, and other new
technologies. EAI may involve developing a new total view of
an enterprise's business and its applications, seeing how existing
applications fit into the new view, and then devising ways to
efficiently reuse what already exists while adding new applications
and data.
|
GUI
|
Pronounced "gooey," and stands for
Graphical User Interface. Its original context was limited to
the graphic friendliness and usefulness of software for the
end user. Considerations: Today GUI also refers to the graphic
friendliness and usefulness of a Web page or website.
|
HIPAA
|
HIPAA is the United States Health Insurance
Portability and Accountability Act of 1996. There are two sections
to the Act. HIPAA Title I deals with protecting health insurance
coverage for people who lose or change jobs. HIPAA Title II
includes an administrative simplification section which deals
with the standardization of healthcare-related information systems.
In the information technology industries, this section is what
most people mean when they refer to HIPAA. HIPAA establishes
mandatory regulations that require extensive changes to the
way that health providers conduct business. HIPAA seeks to establish
standardized mechanisms for electronic data interchange (EDI),
security, and confidentiality of all healthcare-related data.
The Act mandates: standardized formats for all patient health,
administrative, and financial data; unique identifiers (ID numbers)
for each healthcare entity, including individuals, employers,
health plans and health care providers; and security mechanisms
to ensure confidentiality and data integrity for any information
that identifies an individual. Because of the current lack of
standardization within the healthcare field and the comprehensive
nature of HIPAA's regulations, many organizations have a great
deal of work ahead of them in order to comply with the Act's
components. In general, the deadline for compliance is 24 months
after the effective date of any given rule. The transaction
rule, which mandates standards for transactions and code sets,
was published on August 17, 2000; its compliance deadline was
October 16, 2002. The compliance deadline for the privacy rule
is April 14, 2003. Compliance for the third segment, which deals
with security, is likely to be set for late 2004.
|
Host Access
|
Accessing in IBM and perhaps other mainframe
computer environments, a host is a mainframe computer (which
is now usually referred to as a "large server"). In
this context, the mainframe has intelligent or "dumb"
workstations attached to it that use it as a host provider of
services. (This does not mean that the host only has "servers"
and the workstations only have "clients." The server/client
relationship is a programming model independent of this contextual
usage of "host.")
|
HTML
|
Hypertext Markup Language is an implementation
of SGML (Standard Generalized Markup Language) that is the language
used by web browsers and web pages. HTML provides a way
to tag components of a document to differentiate titles, headers,
bodies, illustrations, etc. as well as formatting of text and
images.
|
Legacy Applications
|
Legacy systems and applications represent substantial
investments to the corporate world. Investments in coding, support
and infrastructure represent significant portions of the IT
budget of most companies. Realizing the true potential of the
investment in these legacy systems has always been a pipe dream
to most Information System Managers. The only realities of the
legacy systems have been that they cannot be replaced, with
IT personnel in short supply (or in the case of CICS Cobol programmers,
non-existent) the cost to maintain these systems is skyrocketing
and the End-Users are getting tired of character based applications
that look like a throwback to the ‘70’s because
that is when they were first written!!!
|
Middleware
|
In the computer industry, middleware is a general
term for any programming that serves to "glue together"
or mediate between two separate and often already existing programs.
A common application of middleware is to allow programs written
for access to a particular database to access other databases.
Typically, middleware programs provide messaging services so
that different applications can communicate. The systematic
tying together of disparate applications, often through the
use of middleware, is known as enterprise application integration
(EAI).
|
N-Tier Applications
|
Often an application will be partitioned into
two or more layers by function. For example, one layer
or tier might be responsible for the user interface. Another
tier might take the user input and perform business computations.
Another tier might be responsible for interactions with a database.
Such stratification generally makes an application easier to
develop, easier to maintain and easier to modify.
|
Screen Scraping
|
Screen scraping is programming that translates
between legacy application programs (written to communicate
with now generally obsolete input/output devices and user interfaces)
and new user interfaces so that the logic and data associated
with the legacy programs can continue to be used. Screen scraping
is sometimes called advanced terminal emulation. A program that
does screen scraping must take the data coming from the legacy
program that is formatted for the screen of an older type of
terminal such as an IBM 3270 display or a Digital Equipment
Corporation VT100 and reformat it for a Windows 98 user or someone
using a Web browser. The program must also reformat user input
from the newer user interfaces (such as a Windows graphical
user interface or a Web browser) so that the request can be
handled by the legacy application as if it came from the user
of the older device and user interface.
|
Secure Shell (SSH)
|
Secure Shell (SSH), sometimes known as Secure
Socket Shell, is a Unix-based command interface and protocol
for securely getting access to a remote computer. It is widely
used by network administrators to control Web and other kinds
of servers remotely. SSH is actually a suite of three utilities
- slogin, ssh, and scp - that are secure versions of the earlier
UNIX utilities, rlogin, rsh, and rcp. SSH commands are encrypted
and secure in several ways. Both ends of the client/server connection
are authenticated using a digital certificate, and passwords
are protected by being encrypted.
|
SOAP
|
SOAP stands for Simple Object Access Protocol
and defines a standard using XML for exchanging information
between remote objects. This protocol allows an application
on one machine to call a routine on another machine and return
results to the calling application. This standard permits
the calling and called objects to be on different types of hardware
and written in different languages.
|
SQL
|
SQL stands for Structured Query Language and
is the language used by most of today's databases. It
provides a means for making simple or complex queries from a
relational database to extract just the data that is desired.
|
Telnet
|
Telnet is the way you can access someone else's
computer, assuming they have given you permission. (Such a computer
is frequently called a host computer.) More technically, Telnet
is a user command and an underlying TCP/IP protocol for accessing
remote computers. On the Web, HTTP and FTP protocols allow you
to request specific files from remote computers, but not to
actually be logged on as a user of that computer. With Telnet,
you log on as a regular user with whatever privileges you may
have been granted to the specific application and data on that
computer.
|
Terminal Emulator
|
The definition of a terminal emulator is related
to old style computing, where the big computer was in a room
somewhere and everyone used "dumb terminals" to access
it. A dumb terminal was basically a screen and a keyboard, but
over time people added features to their terminal models. So
now we have VT102 terminals, IBM 3270 terminals, and so on.
A terminal emulator is just that. It's a program that runs on
your computer that emulates the behavior of a dumb terminal,
or perhaps several varieties of terminals.
|
Thin Client
|
The term "thin client" seems to be
used as a synonym for both the NetPC and the network computer
(NC), which are somewhat different concepts. The Net PC is based
on Intel microprocessors and Windows software (Intel was a leader
in defining the Net PC specification). The network computer
(NC) is a concept backed by Oracle and Sun Microsystems that
may or may not use Intel microprocessors and uses a Java-based
operating system. According to ThinPlanet.com, a Web site dedicated
to thin client technology, the term "server-based computing"
is being used as a synonym for "thin client" because
most thin clients today are powered by back-end centralized
servers that are capable of serving either fat or thin clients.
|
Visual Basic (VB)
|
Visual Basic is a computer language that has
been around for a long time and is now also one of the "native"
languages of .Net. It started as an easy to use language, but
has grown in power and capability over the years so that it
is on par with C# today in capabilities.
|
Web Services
|
Web Services provide a way for computers to
communicate with each other in a platform independent manner
such that one computer can provide processing and data to the
other. Web Services use XML to encapsulate the information being
exchanged.
|
XML
|
XML is a text based mark-up language for representing
data and processes. It provides a standard protocol for interchanging
information between processes on the same computer or different
computers, even if the computers are running different operating
systems.
|