Chapter 4 Software: Systems & Application Software Software basics Software is a critical piece of making computers perform Businesses typically spend more on software than hardware Computer programs are sequences of instructions for the computer Chapter 4 2 IS for Management Two broad classes of Software Systems Software Set of programs that coordinate activities & functions of the hardware & various other programs Application Software Programs that help users solve particular computing problems Chapter 4 3 IS for Management Software classified by “sphere of influence” Personal Information Software: Systems that serve the needs of an individual user (e.g., wordprocessors, databases, spreadsheets) Workgroup Software: Systems that support two or more people who work together to achieve a common goal (e.g., group scheduling, conferencing) Enterprise Software: Systems that support the firm in its interaction with its environment (e.g., order entry, billing) Chapter 4 4 IS for Management Software Issues & Trends Software Licensing Protection by software vendors to prevent unauthorized use Software Upgrades A revised version of software that usually includes fixes of known problems, plus enhancements to existing capabilities Global Software Support Software that is distributed around the globe may require unique support mechanisms due to local political & economic conditions Chapter 4 5 IS for Management Role of Systems Software Role of Systems Software An interface or buffer between application software & hardware Operating System Controls the hardware & acts as an interface with application programs Chapter 4 6 IS for Management Operating System Functions Perform common computer hardware functions Provide a user interface Provide a degree of hardware independence Manage system memory Manage processing tasks Provide networking capability Control access to system resources Manage files Chapter 4 7 IS for Management User Interfaces User Interface A function of the operating system that allows individuals to access & command the computer Command-Based User Interface Requires text commands to perform basic activities Menu-Based User Interface Requires pointing to menus & clicking on command Graphical User Interface (GUI) Uses pictures (icons) & menus displayed on the screen to send commands to the computer system Chapter 4 8 IS for Management Software Concepts (1) Hardware Independence Operating systems provide hardware independence for application software The application software interfaces with the operating system which Application interfaces with the hardware OS Hardware Chapter 4 9 IS for Management Software Concepts (2) Memory Management Controls how memory is accessed & maximizes available memory & storage Virtual Memory Memory that allocates space in secondary storage to supplement the immediate, functional memory capacity of RAM Paging A function of virtual memory that allows the computer to store currently needed pages in RAM while the rest of these programs wait in secondary storage Chapter 4 10 IS for Management Software Concepts (3) Multitasking A processing activity that allows a user to run more than one application at the same time Multithreading A processing activity that is basically multitasking within a single application Time-sharing A processing activity that allows more than one person to use a computer system at the same time Chapter 4 11 IS for Management Software Concepts (4) Network capability Aids in connecting the computer to a network Access to system resources Provides security for unauthorized access File management Ensures that files in secondary storage are available when needed & are protected against unauthorized usage Utility Programs Merge & sort sets of data, keep track of computer jobs being run, compress files of data before they are stored or transmitted over a network, & perform other important tasks Chapter 4 12 IS for Management Types of Application Software Proprietary Software Designed to solve a unique & specific problem Can be developed in-house or developed under contract by an outside software provider Customized Software Blend of in-house & external development Off-The-Shelf Software An existing software program that can be used without considerable changes expected Chapter 4 13 IS for Management Personal Application Software Word Processing Program Assistance in formulating, formatting, & printing documents such as letters, memos, & papers Spreadsheet Program Built-in functions for statistical, financial, logical, database, graphics, & data & time calculations Database Program Stores, manipulates, & retrieves data Software Suite Collection of personal productivity software such as word processor, spreadsheet, & database Graphics Program Assistance in making presentations, developing brochures, illustrations, etc. On-Line Services Provide access to various information resources Chapter 4 14 IS for Management Object Linking & Embedding Object Linking & Embedding (OLE) allows user to copy text/graphics from one document to another or to embed text/graphics from one program into another program/document Server Application supplies objects user places in other applications Client application accepts objects from other applications Copy copies data from one application & places it in another Link is used when user wants changes made to the server object to appear automatically in all linked client objects Embed is used when user wants an object to become part of the client document Chapter 4 15 IS for Management Workgroup Application Software GroupWare Helps groups of people work together more efficiently & effectively Collaborative Computing Software Helps teams of people work together toward a common goal Chapter 4 16 IS for Management Enterprise Software Enterprise Application Software Benefits the entire organization (e.g., accounts receivable, accounts payable, general ledger, order entry, etc.) Enterprise Resource Planning (ERP) A set of integrated programs that manage a company’s vital business operations for an entire multi-site, global organization (e..g., SAP, PeopleSoft, J.D. Edwards, Oracle, etc.) Chapter 4 17 IS for Management Programming Languages (1) Machine Language The first generation programming language A low-level language because it involves a basic coding scheme using the binary symbols 1 & 0 Assembly Language Second generation language Replaced binary digits with symbols programmers could more easily understand Third Generation Languages Continued trend to more symbolic code (e.g., COBOL, FORTRAN) Chapter 4 18 IS for Management More Programming Languages Fourth Generation Languages (4GLs) Less procedural & even more English-like than third-generation languages (e.g., FOCUS) Query Languages Ask the computer questions in English-like sentences (aka database query languages) Structured Query Language (SQL) Standardized query language used to perform database queries & manipulations Most modern database management system applications use or support SQL Fifth-Generation Languages Combines rule-based code generation, component management, visual programming techniques, & reuse management Chapter 4 19 IS for Management Object Oriented Languages (Figure 4.17) Object Oriented Languages: Small Talk, C++, Java Chapter 4 20 IS for Management Object Oriented Languages Object-Oriented Languages allow interaction of programming objects, including data elements & the actions that will be performed on them Encapsulation: The process of grouping items into an object Polymorphism: A process allowing the programmer to develop one routine or set of activities that will operate on multiple objects Inheritance: Property used to describe objects in a group of objects taking on characteristics of other objects in the same group or class of objects Reusable Code: The instruction code within an object that can be reused in different programs for a variety of applications Chapter 4 21 IS for Management Visual Programming Languages Visual Programming Languages Use a mouse, icons, or symbols on the screen & pulldown menus to develop programs Examples: Visual Basic, Visual C++, PC COBOL Knowledge-based Management Approach User tells the computer what he/she wants the computer to do rather than how to do the job Chapter 4 22 IS for Management Language Translation Language translator: Systems software that converts a programmer’s source code into its equivalent in machine language Interpreter: A language translator that translates one program statement at a time into machine code Compiler: A language translator that converts a complete program into machine language to produce a program that the computer can process in its entirety Chapter 4 23 IS for Management Case Gap uses object-oriented programming pp. 184-185 Next Class Chapter 5 - Organizing data & information Case: US West - Data warehousing Chapter 4 24 IS for Management