As you read this chapter, focus on how software differs from hardware. There are several ways to categorize software; the most significant difference is between systems software and application software. This chapter will introduce you to the concept of open-source software and cloud computing, two important concepts in business right now.
Upon successful completion of this chapter, you will be able to:
The second component of an information system is software, the set of instructions that tells the hardware what to do. Software is created by developers through the process of programming (covered in more detail in Chapter 10). Without software, the hardware would not be functional.
Software can be broadly divided into two categories: operating systems and application software. Operating systems manage the hardware and create the interface between the hardware and the user. Application software performs specific tasks such as word
processing, accounting, database management, video games, or browsing the web.
An operating system is first loaded into the computer by the boot program, then it manages all of the programs in the computer, including both programs native to the operating system such as file and memory management and application software. Operating
systems provide you with these key functions:
All computing devices require an operating system. The most popular operating systems for personal computers are: Microsoft Windows, Apple's Mac OS, and various versions of Linux. Smartphones and tablets run operating systems as well, such as iOS
(Apple), Android (Google), Windows Mobile (Microsoft), and Blackberry.
Microsoft provided the first operating system for the IBM-PC, released in 1981. Their initial venture into a Graphical User Interface (GUI) operating system, known as
Windows, occurred in 1985. Today's Windows 10 supports the 64-bit Intel CPU. Recall that "64-bit" indicates the size of data that can be moved within the computer.
Apple introduced the Macintosh computer 1984 with the first commercially successful GUI. Apple's operating system for the Macintosh is known as "Mac OS " and also uses an Intel CPU supporting 64-bit processing. Mac OS versions have been
named after mountains such as El Capitan, Sierra, and High Sierra. Multitasking, virtual memory, and voice input have become standard features of both operating systems.
The Linux operating system is open source, meaning individual developers are allowed to make modifications to the programming code. Linux is a version of the Unix operating. Unix runs on large and expensive minicomputers. Linux developer Linus
Torvalds, a professor in Finland and the creator of Linux, wanted to find a way to make Unix run on less expensive personal computers. Linux has many variations and now powers a large percentage of web servers in the world.
If you've worked in business, you may have noticed that almost all computers in business run a version of Microsoft Windows. However, in classrooms from elementary to college, there is almost a balance between Macs and PCs. Why has this not extended
into the business world?
As discussed in Chapter 1, many businesses used IBM mainframe computers back in the 1960s and 1970s. When businesses migrated to the microcomputer (personal computer) market, they elected to stay with IBM and chose
the PC. Companies took the safe route, invested in the Microsoft operating system and in Microsoft software/applications.
Microsoft soon found itself with the dominant personal computer operating system for businesses. As the networked
PC began to replace the mainframe computer, Microsoft developed a network operating system along with a complete suite of programs focused on business users. Today Microsoft Office in its various forms controls 85% of the market.
The second major category of software is application software. Application software is utilized directly today to accomplish a specific goal such as word processing, calculations on a spreadsheet, or surfing the Internet using your favorite browser.
When a new type of digital device is invented, there are generally a small group of technology enthusiasts who will purchase it just for the joy of figuring out how it works. A "killer" application is one that becomes so essential that large
numbers of people will buy a device just to run that application. For the personal computer, the killer application was the spreadsheet.
The first spreadsheet was created by an MBA student at Harvard University who tired of making repeated
calculations to determine the optimal result on a problem and decided to create a tool that allowed the user to easily change values and recalculate formulas. The result was the spreadsheet. Today's dominant spreadsheet is Microsoft Excel
which still retains the basic functionality of the first spreadsheet.
Along with the spreadsheet, several other software applications have become standard tools for the workplace. Known as productivity software, these programs allow office employees to complete their daily work efficiently. Many times these applications
come packaged together, such as in Microsoft's Office suite. Here is a list of some of these applications and their basic functions:
Microsoft popularized the idea of the office-software productivity bundle with their release of the Microsoft Office Suite. This package continues to dominate the market and most businesses expect employees to know how to use this software. However,
many competitors to Microsoft Office do exist and are compatible with the file formats used by Microsoft (see table below). Microsoft also offers a cloud-based version of their office suite named Microsoft Office 365. Similar to Google Drive,
this suite allows users to edit and share documents online utilizing cloud-computing technology.
Category Suite |
Word Processing |
Spreadsheet | Presentation | Other |
---|---|---|---|---|
Microsoft Office |
Word | Excel | Powerpoint | Outlool (email), Access (database), OneNote (Information gathering) |
Apple iWork |
Pages | Numbers | Keynote | Integrates with iTunes, iCloud, and other Apple software |
OpenOffice | Writer |
Calc | Impress |
Base (database), Draw (drawing), Math (equations) |
Google Drive |
Document | Spreadsheet | Presentation | Gmail (email), Forms (online form data collection), Draw (drawing) |
Utility software includes programs that allow you to fix or modify your computer in some way. Examples include anti-malware software and programs that totally remove software you no longer want installed. These types of software packages were
created to fill shortcomings in operating systems. Many times a subsequent release of an operating system will include these utility functions as part of the operating system itself.
Programming software's purpose is to produce software.
Most of these programs provide developers with an environment in which they can write the code, test it, and convert/compile it into the format that can then be run on a computer. This software is typically identified as the Integrated Development
Environment (IDE) and is provided free from the corporation that developed the programming language that will be used to write the code.
As presentation software has gained acceptance as the primary method to formally present information to a group or class, the art of giving an engaging presentation is becoming rare. Many presenters now just read the bullet points in the presentation
and immediately bore those in attendance, who can already read it for themselves. The real problem is not with PowerPoint as much as it is with the person creating and presenting. Author and chief evangelist Guy Kawasaki has developed the
10/20/30 rule for Powerpoint users. Just remember: 10 slides, 20 minutes, 30 point font". If you are determined to improve your PowerPoint skills, read Presentation Zen by Garr Reynolds.
New digital presentation technologies are being
developed that go beyond Powerpoint. For example, Prezi uses a single canvas for the presentation, allowing presenters to place text, images, and other media on the canvas, and then navigate between these objects as they present. Tools such
as Tableau allow users to analyze data in depth and create engaging interactive visualizations.
When you purchase software and install it on your computer, are you the owner of that software? Technically, you are not! When you install software, you are actually just being given a license to use it. When you first install a package, you are
asked to agree to the terms of service or the license agreement. In that agreement, you will find that your rights to use the software are limited. For example, in the terms of the Microsoft Office software license, you will find the following
statement: "This software is licensed, not sold. This agreement only gives you some rights to use the features included in the software edition you licensed".
For the most part, these restrictions are what you would expect. You cannot
make illegal copies of the software and you may not use it to do anything illegal. However, there are other, more unexpected terms in these software agreements. For example, many software agreements ask you to agree to a limit on liability.
Again, from Microsoft: "Limitation on and exclusion of damages. You can recover from Microsoft and its suppliers only direct damages up to the amount you paid for the software. You cannot recover any other damages, including consequential,
lost profits, special, indirect or incidental damages". This means if a problem with the software causes harm to your business, you cannot hold Microsoft or the supplier responsible for damages.
As the personal computer proliferated inside organizations, control over the information generated by the organization began splintering. For instance, the customer service department creates a customer database to keep track of calls and problem reports, and the sales department also creates a database to keep track of customer information. Which one should be used as the master list of customers? Or perhaps someone in sales might create a spreadsheet to calculate sales revenue, while someone in finance creates a different revenue document that meets the needs of their department, but calculates revenue differently. The two spreadsheets will report different revenue totals. Which one is correct? And who is managing all of this information?
In the 1990s the need to bring an organization's information back under centralized control became more apparent. The Enterprise Resource Planning (ERP) system (sometimes just called enterprise software) was developed to bring together an entire
organization within one program. ERP software utilizes a central database that is implemented throughout the entire organization. Here are some key points about ERP.
ERP systems were originally marketed to large corporations. However, as more and more large companies began installing them, ERP vendors began targeting mid-sized and even smaller businesses. Some of the more well-known ERP systems include those
from SAP, Oracle, and Microsoft.
In order to effectively implement an ERP system in an organization, the organization must be ready to make a full commitment. All aspects of the organization are affected as old systems are replaced
by the ERP system. In general, implementing an ERP system can take two to three years and cost several million dollars.
So why implement an ERP system? If done properly, an ERP system can bring an organization a good return on their
investment. By consolidating information systems across the enterprise and using the software to enforce best practices, most organizations see an overall improvement after implementing an ERP. Business processes as a form of competitive advantage
will be covered in Chapter 9.
A Customer Relationship Management (CRM) system manages an organization's customers. In today's environment, it is important to develop relationships with your customers, and the use of a well-designed CRM can allow a business to personalize its
relationship with each of its customers. Some ERP software systems include CRM modules. An example of a well-known CRM package is Salesforce.
Many organizations must deal with the complex task of managing their supply chains. At its simplest, a supply chain is the linkage between an organization's suppliers, its manufacturing facilities, and the distributors of its products. Each link
in the chain has a multiplying effect on the complexity of the process. For example, if there are two suppliers, one manufacturing facility, and two distributors, then the number of links to manage = 4 ( 2 x 1 x 2 ). However, if two more suppliers
are added, plus another manufacturing facility, and two more distributors, then the number of links to manage = 32 ( 4 x 2 x 4 ). Also, notice in the above illustration that all arrows have two heads, indicating that information flows in both
directions. Suppliers are part of a business's supply chain. They provide information such as price, size, quantity, etc. to the business. In turn, the business provides information such as quantity on hand at every store to the supplier.
The key to successful supply chain management is the information system.
A Supply Chain Management (SCM) system handles the interconnection between these links as well as the inventory of the products in their various stages of development. As discussed previously much of Walmart's success has come from its ability
to identify and control the supply chain for its products. Walmart invested heavily in their information system so they could communicate with their suppliers and manage the thousands of products they sell.
Walmart realized in the 1980s
that the key to their success was information systems. Specifically, they needed to manage their complex supply chain with its thousands of suppliers, thousands of retail outlets, and millions of customers. Their success came from being able
to integrate information systems to every entity (suppliers, warehouses, retail stores) through the sharing of sales and inventory data. Take a moment to study the diagram above…look for the double-headed arrow. Notice that data flows down
the supply chain from suppliers to retail stores. But it also flows up the supply chain, back to the suppliers so they can be up to date regarding production and shipping.
Just as with the personal computer, mobile devices such as smartphones and electronic tablets also have operating systems and application software. These mobile devices are in many ways just smaller versions of personal computers. A mobile app
is a software application designed to run specifically on a mobile device.
As shown in Chapter 2, smartphones are becoming a dominant form of computing, with more smartphones being sold than personal computers. A greater discussion
of PC and smartphone sales appears in Chapter 13, along with statistics regarding the decline in tablet sales. Businesses have adjusted to this trend by increasing their investment in the development of apps for mobile devices. The number
of mobile apps in the Apple App Store has increased from zero in 2008 to over 2 million in 2017.
Building a mobile app will will be covered in Chapter 10.
Historically, for software to run on a computer an individual copy of the software had to be installed on the computer. The concept of "cloud" computing changes this.
The "cloud" refers to applications, services, and data storage located on the Internet. Cloud service providers rely on giant server farms and massive storage devices that are connected via the Internet. Cloud computing allows users to access
software and data storage services on the Internet.
You probably already use cloud computing in some form. For example, if you access your e-mail via your web browser, you are using a form of cloud computing if you are using Google
Drive's applications. While these are free versions of cloud computing, there is big business in providing applications and data storage over the web. Cloud computing is not limited to web applications. It can also be used for services such
as audio or video streaming.
Cloud computing has the ability to really impact how organizations manage technology. For example, why is an IT department needed to purchase, configure, and manage personal computers and software when all that is really needed is an Internet connection?
Many organizations are understandably nervous about giving up control of their data and some of their applications by using cloud computing. But they also see the value in reducing the need for installing software and adding disk storage to local computers. A solution to this problem lies in the concept of a private cloud. While there are various models of a private cloud, the basic idea is for the cloud service provider to section off web server space for a specific organization. The organization has full control over that server space while still gaining some of the benefits of cloud computing.
Virtualization is the process of using software to simulate a computer or some other device. For example, using virtualization a single physical computer can perform the functions of several virtual computers, usually referred to as Virtual Machines
(VMs). Organizations implement virtual machines in an effort to reduce the number of physical servers needed to provide the necessary services to users. This reduction in the number of physical servers also reduces the demand for electricity
to run and cool the physical servers.
Modern software applications are written using a programming language such as Java, Visual C, C++, Python, etc. A programming language consists of a set of commands and syntax that can be organized logically to execute specific functions.
Using this language a programmer writes a program (known as source code) that can then be compiled into machine-readable form, the ones and zeroes necessary to be executed by the CPU. Languages such as HTML and Javascript are used to develop
web pages.
When the personal computer was first released, computer enthusiasts banded together to build applications and solve problems. These computer enthusiasts were motivated to share any programs they built and solutions to problems they found.
This collaboration enabled them to more quickly innovate and fix problems.
As software began to become a business, however, this idea of sharing everything fell out of favor with many developers. When a program takes hundreds of
hours to develop, it is understandable that the programmers do not want to just give it away. This led to a new business model of restrictive software licensing which required payment for software, a model that is still dominant today.
This model is sometimes referred to as closed source, as the source code is not made available to others.
There are many, however, who feel that software should not be restricted. Just as with those early hobbyists in the 1970s,
they feel that innovation and progress can be made much more rapidly if they share what has been learned. In the 1990s, with Internet access connecting more people together, the open-source movement gained steam.
Open-source software makes the source code available for anyone to copy and use. For most people having access to the source code of a program does little good since it is challenging to modify existing programming code. However, open-source
software is also available in a compiled format that can be downloaded and installed. The open-source movement has led to the development of some of the most used software in the world such as the Firefox browser, the Linux operating system,
and the Apache web server.
Many businesses are wary of open-source software precisely because the code is available for anyone to see. They feel that this increases the risk of an attack. Others counter that this openness actually
decreases the risk because the code is exposed to thousands of programmers who can incorporate code changes to quickly patch vulnerabilities.
There are thousands of open-source applications available for download. For example,
you can get the productivity suite from Open Office. One good place to search for open-source software is sourceforge.net, where thousands of programs are available for free download.
Software gives the instructions that tell the hardware what to do. There are two basic categories of software: operating systems and applications. Operating systems interface with the computer hardware and make system resources available.
Application software allows users to accomplish specific tasks such as word processing, presentations, or databases. This group is also referred to as productivity software. An ERP system stores all data in a centralized database that
is made accessible to all programs and departments across the organization. Cloud computing provides access to software and databases from the Internet via a web browser. Developers use various programming languages to develop software.
Source: David Bourgeois, https://opentextbook.site/informationsystems2019/chapter/chapter-3-software-information-systems-introduction/
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 License.