Escolar Documentos
Profissional Documentos
Cultura Documentos
Software
3.1 Introduction
The first component of a computerised information system has been discussed in chapter 2, namely hardware. However, the hardware is unable to perform any operations on its own. Software, the second component of a computerised information system, is needed to instruct and manage the usage of the hardware. Software consists of programs and instructions that (a) control the use of the hardware, and (b) provide tools for users to develop applications that perform actions to satisfy their specific needs. All software consists of a series of instructions (called a program) used to instruct the hardware of a computer system. The process of writing these programs is called programming and is done by software programmers. Software can be categorised into two groups, namely system software and application software. System software consists of programs that manage the use of the hardware. Application software consists of programs that are used by users to satisfy their individual data processing needs.
33
Hardware
Figure 3.1 The relation of the two levels of software to the hardware
As seen in Figure 3.1, the two levels of software are interrelated, with the system software interacting directly with the hardware. Application software is closest to the user and communicates through the system software to the hardware.
Operating Network Utility software Database System development system management management software
34
Software
Information systems in a business environment Another main function of the operating system is that of task management where the operating system ensures that the tasks (or commands) of end-users are performed effectively.
DEVICE 1:
CPU:
DEVICE 2:
Software they are needed for execution. In this way, very large programs can be executed by computers with relatively small primary memory capacity. Virtual memory makes the system appear to have virtually an unlimited amount of primary memory. In some information systems, many users are sharing the same CPU and other peripheral devices simultaneously. To prevent one user, running a large program, from using the CPU for an unlimited amount of time an operating system called time-sharing was developed. Time-sharing allows the sharing of computer resources by many users simultaneously by having the CPU spend a fixed amount of time on each users program before proceeding to the next. The scheduling of computer users is called round robin scheduling. A user enters his program or instruction into the computer. This program is put at the end of the queue of programs waiting to be executed. On reaching the head of the queue, the program is read from secondary storage into primary memory, a time-share is allotted to the program and it is processed by the CPU. If the program is completed within its timeshare, it is removed from primary memory and the output activated. However, if the program is incomplete, the processed program is added to the end of the queue where it waits its turn for another time-share.
Information systems in a business environment Microsoft in the early 1980s and was called MS DOS (Microsoft disk operating system). However, MS DOS does not allow multitasking (the running of more than one program at the same time). To make MS DOS more user-friendly, menus were developed that contain a list of commands. The user can, by highlighting a specific command with the arrow keys, select a command without typing it. Although this is a more user-friendly way of interacting with the operating system, it is also a lot slower to get the computer to perform a specific command. Other popular microcomputer operating systems include OS/2, UNIX and System 7.
Software may only be eight characters long. The extension may only be three characters long and may also only consist of alphanumerical characters. The operating system provides capabilities to organise and store files on physical media such as hard disks and optical drives. In order to make it easier for humans to access files, the files are maintained in a file system which is independent of the actual physical media that is used. The file system formats the physical media and maintains files in a standardised way for the user. File systems are organised in a hierarchical tree structure called a directory within which files and subdirectories can be located. A directory is also called a folder. The folders can contain as many subfolders and files as the disk space will allow. A file system always has a root directory indicated by a single forward or backward slash character (/ or \). From the root directory, subdirectories or subfolders are given unique names within a specific folder. Within subdirectories other subdirectories can be created. The root directory is called the parent directory of the subdirectories. A subdirectory is the parent directory of its own subdirectories. The address of a file in the file system is the path to a file. The path is a concatenation of all the subdirectory names from the root directory. The subdirectory names are separated by a forward or backward slash. The file system will maintain the physical address of the file on the physical media. It stores the physical address along with the file system path in a file allocation table (FAT) or similar mechanism. If a user specifies the path, the operating system looks up the physical address of the file in the FAT and will be able to retrieve the file from the physical media. To the user, all media and drives operate the same way but, internally, the operating system controls and operates all types of drives and media according to the specification of that specific device by using device drivers, and organises the files using a file system. Drives can be: l Local mounted in the computer; l Virtual a part of memory is temporarily reserved to serve as disk drive because it is extremely fast; or l Network drives disks in other computers distributed over a network. With Microsoft operating systems, in order to simplify the use of drives, the drives were originally given letters as names. Unix operating systems operate differently and mount file systems from the root file system by providing a name similar to a subdirectory. The files on the drive are accessed by supplying the drive name as if it were a subdirectory under the root directory. On the Microsoft operating systems, drives are usually split into: A: to E: Local drives with: A: first floppy drive, B: second floppy drive, C: first hard disk drive, and F: to Z: virtual or network drives. 39
Information systems in a business environment The newer Microsoft operating systems allow the user to assign and reassign any available drive letter to any drive. To execute a program in a directory or use a file in a directory, the user must specify the full path (the drive and all directories and subdirectories) to the program or file.
Software
3.2.3.1 Assemblers
The first level of programming that language programmers can use is called lower-level programs. Although it is easier to program in a lower-level program than machine language, it is still very difficult and requires a high degree of knowledge about the hardware and the lower-level language. Assemblers are used to translate these lower-level language programs into a machine readable format. The machine code created by the assembler can be saved on a disk and executed without the original lower-level language program (or source code). The translation of the source code into executable code needs only to be done once. If, however, the program needs an amendment, the source code needs to be amended and translated again. This form of programming is no longer common.
3.2.3.2 Compilers
Programming in a high-level language is much easier than programming in low-level languages. These programs also need to be translated into machine code. A compiler is used to translate high-level language programs into machine code instructions. A compiler translates a high-level language program into machine code by creating an object code file. The object code file is then used by a program called a linker to resolve all relative memory references into an executable program file. The executable program file can be executed numerously without the high-level language program, the compiler or linker. The operating system is able to run the program on its own. 41
3.2.3.3 Interpreters
Some high-level languages (like BASIC) do not use a compiler but an interpreter instead. An interpreter translates each source code instruction one at a time into machine code and executes it. Therefore, no object code file is created. Every time the program is run, the high-level language program needs to be translated instruction per instruction by the interpreter. An interpreter is normally used when the programmer wants to create a program interactively and tests his code on a regular basis without creating an object code file each time. The disadvantages are that the high-level language program must always be run with the interpreter and executes slower than a compiler. An interpreted language program cannot run without the interpreter itself. The operating system is not able to run the program on its own.
Software
43
Software
Software away from gaining access to a network (including anti-virus software) are classified as security monitoring and prevention software. l Spyware protection software Spyware is software that covertly gathers information about a user without his knowledge via the users Internet connection. Because spyware exists as independent programs, it has the ability to monitor keystrokes, scan files on the hard disks, install other spyware programs and consistently relay this information back to the spyware author who will use it either for advertising or marketing purposes or sell the information to another party. To counteract the threat of spyware, a number of techniques have been developed. These include programs designed to remove or to block spyware (anti-spyware programs), as well as the advocating of various user practices that reduce the chance of spyware being introduced onto a system. l Anti-spam software Spamming is the abuse of electronic messaging systems (e-mail systems) to send unsolicited and undesired bulk messages to recipients. Because advertisers have low operating costs in sending these messages, it is viable for numerous advertisers to target huge numbers of recipients with this unsolicited mail. Some popular methods for managing spamming is through e-mail filtering, the setting up of blacklists (lists of IP addresses of known spammers) and spamtraps to catch and blacklist spammers.
Information systems in a business environment a software suite use a similar graphical-user interface of icons, tools and status bars, and menus which give them the same look and feel, making it easier for end-users to learn and use. These capabilities make software suites more efficient and easier to use than a variety of individual programs.
3.3.1.1 Spreadsheets
Spreadsheets have numerous applications in a business environment and are ideally suited for building financial models. Spreadsheets are mainly used for the creation of models where numerical data has to be processed into meaningful reports. The processing of the data normally entails repetitive and time-consuming calculations performed with ease and without any mistakes after the user has created the logical processing structure to perform these calculations. A spreadsheet can be compared to a blank piece of paper that is divided into a grid (consisting of rows and columns).
A 1 2 3 4 B C D
Software l tax planning; l salary and wages analysis; l market-share analysis and planning; and l profit projections. Because of the simplicity and ease of use of spreadsheets, it has become a vital business tool. Popular spreadsheet packages used widely are, Lotus 123, Microsoft Excel, Microsoft Works and Quattro. Most spreadsheet packages also include other general purpose application software such as word processing facilities, graphical presentations and database management systems. Spreadsheets that include these other facilities are called integrated packages. Earlier versions of spreadsheet programs handled only one spreadsheet in a file at any one time. Current versions can contain many spreadsheets in a single file. Figure 3.8 is a typical example of a spreadsheet frame that is displayed when the program is loaded. The spreadsheet contains rows (1, 2, 3 . . . the row markers) and columns (A, B, C . . . the column markers) that display empty cells without data. These individual cells are depicted by the empty square blocks below the row and to the right of the column markers. The active cell will be highlighted (C3). The active cell will receive input when typed on the keyboard. The cursor keys are used to move the active cell.
A 1 2 3 4 5 6 7 8 9 10 11 12 B C
Information systems in a business environment The physical size of a computer screen limits the number of visible columns and rows. The screen can be enlarged or reduced to display more or less rows. Although all cells are not visible, they can be reached by using the direction keys or the scrollbars. When the last row or column on screen is reached, the spreadsheet starts scrolling through rows and columns automatically. The scrolling stops when the user lets go of the direction key or the end of the sheet is reached. It is possible to split the screen and display more than one part of the spreadsheet. The split screens can be synchronised to allow cells on the two screens to move simultaneously if a direction key is pressed. With spreadsheet modelling, the user can set up a model in columns and rows by: l the input of data into logically arranged rows and columns (data can be either the descriptive row and/or column headings or numerical data that can be processed); and l the input of formulas and cell references used by the spreadsheet program to process data in the spreadsheet model. Data can be only: l alphanumerical data (text or words, typically headings or descriptions. It is nothing more than descriptive data and can usually not be used in calculations); l numerical data (values or numbers); and l formulas and functions (starting with operators like ( ) + * @ = ). Spreadsheet programs conveniently define dates and time as separate data types. Dates and time are nothing but a formatted display of numerical data called date values in spreadsheets. These values are calculated from 1 January 1900 in IBM-compatible systems and from 1 January 1904 in Macintosh systems. Only numerical data can be used in calculations. Alphanumerical data can be used in functions and formulas, but cannot be used in calculations unless it can be changed into a numerical value before the calculation takes place. Any data processing task consists of three procedures, namely: the input of data; processing to useful data; and the output of the result. In a spreadsheet it is not necessary and sometimes not even possible to separate the procedures. The user usually wants to see all or as much as possible of the information. Sometimes the model is small enough to display all the sections simultaneously. The three procedures are explained separately below. As with all computerised solutions, it is important to plan the layout, input and output beforehand. Because of the convenience and ease of the use of spreadsheets, model design became the most neglected part of spreadsheet-use. Well designed models save time and money. Unlike in programming, the user does not have to create the processing procedure. Processing procedures are embedded in the spreadsheet software and executed automatically once a formula is entered. Once the model is complete, the calculated values will be part of the output. The cells in which the calculation takes place remain active and recalculate every time new data is entered or a recalculation event, like pressing the ENTER key, takes place. 50
Software
3.3.1.3 Graphics
An alternative to presenting information as text documents (created with a word processor) or tables of numerical data (created with a spreadsheet) is to present the information in a visually attractive manner in order to convey the information. However, the quality of computer graphics influences whether the information presented attracts and convinces an audience. High quality computer graphics are an increasingly important competitive factor in conveying information in a business environment. The production of graphics on a computer requires: l suitable software (some software packages include a facility to produce graphics whilst others have been developed solely to produce high quality computer graphics); and l suitable hardware. The two types of graphics mainly used by users are analytical graphics and presentation graphics. Analytical graphics present numerical data in a visual format in order to determine trends. Typical analytical graphics include line, bar, scatter and pie graphs. Most spreadsheet packages include a facility to produce analytical graphical images from the numerical data with ease. 51
Software l network diagrams; l floor plan layouts, etc. All the graphics packages allow the user to interact with the software using the keyboard, but for free format graphs and drawings, the mouse or stylus is used mostly by the artist.
Information systems in a business environment l salaries and wages where all data about personnel and salaries paid to them is recorded; l stock control where data about the movement of stock in and out of the company is recorded; l sales orders where all orders received from clients are recorded and processed. Accounting packages usually contain interface files through which data can be exchanged with other applications (such as spreadsheets and database management systems). It is now predicted by many observers that accounting packages would no longer be developed by the companies programming staff themselves (sometimes referred to as legacy systems), but will now be made available to buy as pre-written packages. Only when a business has unique requirements can new software development be justified. Popular accounting packages available in the trade include Pastel, Brilliant, SAP and AccPac. Examples of other business software used by organisations to process and organise the flow of data in their organisation include: l customer relationship management software (CRM software aids organisations in the storage and analyses of its customer records in order to generate personalised marketing based on this analyses); l enterprise resource planning systems (ERP systems integrate all data and processes of an organisation into one single and unified system containing one database to store all the data generated by the various modules of the ERP system); l human resource management systems (HRM systems assist an organisation in automating its personnel function including the maintenance of personnel records and the payroll function); and l project management software (project management software assists project managers with the planning and management of projects. Functions include assistance with the scheduling of activities in a project (differentiate between critical and non-critical activities, and what if-type analyses).
Software a problem in their field of expertise. The developer then analyses these methods and techniques in order to determine a set of rules that can be followed to come to the same conclusion as the experts. This information is used by the developed system to design computer programs that are able to think like the experts. An expert system typically contains: l the knowledge base (all the data, knowledge, rules of thumb and decision rules used by the experts to solve the problem); l the knowledge base management system; l the inference engine (the program containing the logic and reasoning that will simulate the logic process of the expert); and l the user interface (the program that allows the user to communicate with the expert system. A typical interface could be the use of a menu selection technique where the user selects an item from the menu systematically until his problem is solved). Examples of expert systems in use include: l auditing; l tax and financial planning; l education; and l monitor controls present in an information system. Reasons why expert systems will become more popular are: l the preservation and distribution of the knowledge of expert(s) to other users; l using an expert system for obtaining a second opinion; l increasing productivity (the more common problems can be resolved by an expert system giving more time to the human expert to solve complex problems); and l enabling users to produce more consistent and better quality decisions. The uses are, however, limited regarding what can be achieved by an expert system because: l it can be costly and time consuming to develop; l it is difficult and costly to obtain the knowledge from the experts to develop a system; l it is difficult to convert certain facets of knowledge into computer programs (for example, common sense); and l its ability to solve problems is limited to the number of solutions it contains (not all problems can be solved by the expert system). As technology advances, some of these problems will be overcome and expert systems will play an increasingly important role in the business environment.
3.3.2.2 Groupware
Groupware (or collaboration software) is software that helps workgroups and teams work together to accomplish group assignments no matter where they physically happen to be. Groupware products (like Lotus Notes and Microsoft Exchange) support collaboration though electronic mail, discussion groups and databases, scheduling, task management, etc, using the Internet in connecting the various members of a group. Groupware is sometimes divided into communication tools (including e-mail, FAX and voice mail), conferencing tools (data, voice and video conferencing, message boards and chat rooms) and collaborative management tools (electronic calendars, project management systems and workflow systems). When employees are using an application at the same time this is referred to as synchronous groupware and when employees are using the same application at different times this is referred to as asynchronous groupware. Businesses use groupware for a variety of reasons. One primary reason is to bypass the traditional problem of having employees in different places that need to work on the same application. By logging in to a network employees in different places can access the same application and benefit from the various perspectives and opinions of others. Another use for groupware is group problem-solving, allowing employees realtime cooperation without being physically in the same room. 56
Software
58