« Intro to Software Architecture | Main | Thinking in the Abstract »
Expand your IT vocabulary
As you now know, the world of Information Technology is full of terminology. While some of these terms may be confused by marketing "buzzwords" it is important that we understand them nonetheless. This post will collect terms that I will use quite frequently over the second half of the course. If you would like to clarify your understanding of these, or any other terms, please comment here.
Software - logical instructions written in human readable languages and converted into machine code to effect an electronic process.
Software Program or Software Component - a specific and discrete set of logical instructions written in human readable languages and converted into machine code to effect an electronic process. The spell check feature might be a program or component within MS-Word.
Application - a software component or collection of components that is organized around a specific task or set of tasks. MS-Word is a software application.
A distributed software application is one with two or more distinct components which can perform more or less autonomously (individually) and yet also interact together to perform an additional series of tasks together.
Web application - typically a software program or collection of software programs that take advantage of Web standards and protocols. Typcially they rely on browsers, web servers, and therefore http, URI, etc...
Database - a collection of information organized in such a way that a computer program can quickly select desired pieces of data. You can think of a database as an electronic filing system.
Database Management System (DBMS) or Relational Database Management System (RDBMS) - a software application that is designed to manage a database.
Server (software) - a software application that is dedicated to "serving" other software applications (typically referred to as clients).
Client - a software application that relies on a dedicated "server" to provide services.
User Interface (software)- software components whose purpose is to interact with human users. Also known as GUI (Graphical User Interface).
An Intranet is nothing more the a private network which behaves much like the Internet and the World Wide Web. Typically this internal network is protected from public use by security measures and for private memebers uses Internet protocols to route information and web applications to manage content.
A node is a generic name for a member of a network. A machine or a software applicaiton which belongs to a network might be called a node. A person might even be called a node though the more polite term is member.
Scalability basically means the ability to increase or decrease computing capacity. Often it is associated with growth in functions, data, or users. Systems like the Internet and the Web are incredibly scalable.
The front-end of an application typically refers to the user interface and its related parts.
The back-end of an application typically refers to all other components of a software system, particularly the database and its related parts.
In a 3-tier system, between the database and the user-interface or presentation layer as it's commonly called lies the application logic which performs independent functions (like computations, routing, etc..) and provides services to both front and back-end applications. The middle layer, aka the application server, is where most of the application logic lies. This is what drives the software and coordinates the database and the user interface.
Client and Server are two terms that refer to their role and purpose in an exchange of services. A Server provides specialized services to a Client upon request. A client/server architecture is an architecture in which processing and storage tasks are divided between two classes of network members: clients and servers.
Logical and Physical are terms are two terms that refer to the nature of the environment in which they exist. There is a difference between a physical line, say a straight highway, between two points, and the notion of the shortest distance between two points. One is a physical instance of a line. And one is a logical construct...which makes sense and bears relevance to our physical world even if it is just a thought. Hardware is tangible and exists in a physical world. Software is intangible and exists virtually in a logical world. Though we don't see it in action we know logically what software can do by using conceptual models and measuring its results and performance.
A Platform refers to a set of components which share or depend on the same infrastructure or operating environment and therefore are interoperable. Other words like environment, system, may be used to describe to say the same thing.
Posted by Mark Hemphill on October 23, 2007 in Module III - Software | Permalink
Comments
thank you for putting these terms up for us to see, in all honesty some of the things mentioned in class go right over my head, I have little understanding of computers and these defitions will give me a little more understanding of the upcoming discussions in class. Thanks!!
Posted by: Sarah MacKay | Oct 24, 2007 8:27:48 PM
ok, good. If something goes over your head....please ask questions.
If you'd like something clarified ask away...or post online!
Posted by: Mark | Oct 24, 2007 10:28:04 PM
So am I right to say that an application is made up of a bunch of software programs or components?
Posted by: kdeveaux | Oct 25, 2007 11:42:07 AM
Is there any reason that logical and physical is there twice? These are great definitions! I am confused by the definition 3-tier system? Why is it called three tier....I don't think I get it. Can you explain that one further?
Posted by: Krista Mackenzie | Oct 29, 2007 2:46:47 PM
Hi Krista, thanks for spotting that.....one definition was there twice for no good reason.
We will cover 3-tier really soon!
Posted by: Mark | Oct 29, 2007 5:29:15 PM
Just one quick question: When I think of a database storage comes to mind, Is a database a network of physical servers with oodles and oodles of information...all, of course, interacting and sharing information with eachother? Obviously the only thing we see is the GUI and this may contain several applications but when it comes down to it this information is hardcoded into a computer, right?
Posted by: Chad MacLean | Oct 30, 2007 12:33:48 PM
Hardcoded isn't the right word. But yes data "lives" in, is native to, and is stored in a database. Even though broadly speaking a database is just a collection of organized information, when I put it like that I'm really using "database" to refer to a relational database management system - a software application dedicated to managing a system's data.
Remember to think *software* not hardware even though we might need a physical machine, or several to host a database.
Posted by: Mark | Oct 30, 2007 12:56:51 PM
Is a database storage system the same as a server?
Posted by: Frieda MacLaren | Oct 31, 2007 1:21:44 PM
A server is class of software remember....but yes a database management system is often referred to as a database server as it provides dedicated services to other applications.
Posted by: Mark | Oct 31, 2007 3:40:51 PM
I'm not really sure what the term platform means? Are they on one computer or a network of computers?
Posted by: Johnny Kelly | Nov 5, 2007 5:20:15 PM
I know almost all of the vocabulary, but for the 3-tier system I don’t think I completely understand it. If there’s an example of it, I think I’ll understand it better
And to make sure that I got PLATFORM is it like a program that many other smaller programs rely on??
Posted by: Thamer | Nov 5, 2007 7:40:05 PM
Johnny and Thamer:
A platform can be as simple as a program, yes - an important program that creates an environment that other programs depend on.
And Johnny this can be on one computer or span many computers. The WWW is a platform if there ever was one. Other software vendors build their software to work with it.
Posted by: Mark | Nov 5, 2007 9:24:24 PM
Thank you for posting this list of vocabulary, it has really helped me learn and i feel i understand most of them pretty well now. The Intranet I am still a little confused with and I was just wondering if there was an easy example that might help me better understand.
Posted by: Carrie MacKay | Nov 6, 2007 9:57:39 AM
The definitions have really helped in putting my computer literacy into perspective. From outward look, they seem hard. But really when you read them, they are easy to understand.Their language seems to be simple but very well brought out. I have defintely learned a lot.
Very helpful.
Posted by: Wycliffe Ogucha- | Nov 6, 2007 12:39:12 PM
I agree with Carrie. This list of vocabulary terms are very helpful as most of these definitions are not common sense for me. I am confused on the term Intranet as well. Would an example of Intranet be a web page that you have access to while at work but that you can not access while you are on your own personal computer? I may be way off but that is what my understanding of Intranet is.
Posted by: Mary Beth Larter | Nov 6, 2007 12:43:36 PM
thank you for putting this list of vocabulary on here, it really helps to better understand what each means and expands my computer voabulary. as krista has mentioned i am also confused with 3-tier system, and i have seen that you said it will be covered soon. You have not covered it yet right??
Posted by: Jolene | Nov 6, 2007 10:27:02 PM
Thank you for posting these definitions as helped alot for me to understand the meaning of each.
Posted by: Alex Stevenson | Nov 29, 2007 11:19:51 AM
I along with the other girls am a little confused about intranet as well. Would the Robertson website you go to to click on articles or books be a form of intranet because you have to log into using your upei account information. Is that along the right lines? Or another example would be using moodle. Moodle itself is an open website but when you click on a certain course, in order to view the information you have to add your name and password? Is that what intranet is?!?
Posted by: Christina | Nov 30, 2007 2:15:26 PM
I too found these definitions very beneficial
Posted by: Nick Drake | Dec 1, 2007 7:19:11 PM
my interpertation of intranet is a web page that you can only access through a network. It cannot be accessed over the internet like a work schedule web page that you can only access at work.
Posted by: kyle macdonald | Dec 1, 2007 11:46:26 PM
I found these definitions very beneficial it has helped me to understand about the workings of a computer.
Posted by: Tiffany Richard | Dec 3, 2007 2:18:11 PM
I'm still confused about what an intranet is.
Posted by: Colin Butler | Dec 3, 2007 10:43:40 PM
Im just wondering is there really a difference between software and software programs like the only difference in the definitions are the words logical, discrete, and specific. Are these words key in the definition or would it be safe to say that Software and Software programs are the same thing.
Posted by: Alesia Gallant | Dec 4, 2007 5:48:18 PM
To alesia:
I looked up computer software on wikipedia and it said this:
Software is a general term used to describe a collection of computer programs, procedures and documentation that perform some task on a computer system...
So my guess is that software is a blanket term referring to the collection of software programs.
Software program refers to either an executable program or the collection of source code from which an executable program is created.
Thats my guess.. Hope it helps
Posted by: Erica Wagner | Dec 4, 2007 7:07:28 PM
I was wondering the same thing as Alesia about software and that really did help Erica. It shows that there is a difference, not a very big one, but one none the less. Thanks!
Posted by: Kate MacDonald | Dec 4, 2007 7:49:30 PM