Chapter 4 Software Systems and Applications Software ITEC

  • Slides: 65
Download presentation
Chapter 4 Software: Systems and Applications Software ITEC 1010 Information and Organizations

Chapter 4 Software: Systems and Applications Software ITEC 1010 Information and Organizations

The Importance of Software in Business High Software $ Hardware Low 1950 ITEC 1010

The Importance of Software in Business High Software $ Hardware Low 1950 ITEC 1010 time today Information and Organizations

An Overview of Software q What is ‘Software’? § See Chapter 1! ITEC 1010

An Overview of Software q What is ‘Software’? § See Chapter 1! ITEC 1010 Information and Organizations

Classes of Software q Systems software § Set of programs that coordinates activities and

Classes of Software q Systems software § Set of programs that coordinates activities and functions of the hardware and various other programs q Application software § Programs that help users solve particular computing problems ITEC 1010 Information and Organizations

Spheres of Influence q Personal § Information systems that serve the needs of an

Spheres of Influence q Personal § Information systems that serve the needs of an individual user q Workgroup § Two or more people who work together to achieve a common goal q Enterprise § Information systems that support the firm in its interaction with its environment. ITEC 1010 Information and Organizations

Issues and Trends q Software licensing § Protection by software vendors to prevent unauthorized

Issues and Trends q Software licensing § Protection by software vendors to prevent unauthorized use q Software upgrades § A revised version of software that usually includes fixes of known problems, plus enhancements to existing capabilities q Global software support § Software that is distributed around the globe may require unique support mechanisms due to local political and economic conditions ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Freeware Copyrighted software given away for free by the author. Although it is available

Freeware Copyrighted software given away for free by the author. Although it is available for free, the author retains the copyright, which means that you cannot do anything with it that is not expressly allowed by the author. Usually, the author allows people to use the software, but not sell it. ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Shareware (1) Software distributed on the basis of an honor system. Most shareware is

Shareware (1) Software distributed on the basis of an honor system. Most shareware is delivered free of charge, but the author usually requests that you pay a small fee if you like the program and use it regularly. By sending the small fee, you become registered with the producer so that you can receive service assistance and updates. You can copy shareware and pass it along to friends and colleagues, but they too are expected to pay a fee if they use the product. Shareware is inexpensive because it is usually produced by a single programmer and is offered directly to customers. Thus, there are ITEC 1010 Information and Organizations

Shareware (2) practically no packaging or advertising expenses. Note that shareware differs from public-domain

Shareware (2) practically no packaging or advertising expenses. Note that shareware differs from public-domain software in that shareware is copyrighted. This means that you cannot sell a shareware product as your own. ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Ownership q Freeware q Shareware q Public-domain software ITEC 1010 Information and Organizations

Public-domain Software Refers to any program that is not copyrighted. Public-domain software is free

Public-domain Software Refers to any program that is not copyrighted. Public-domain software is free and can be used without restrictions. The term public-domain software is often used incorrectly to include freeware, free software that is nevertheless copyrighted. ITEC 1010 Information and Organizations

Role of Systems Software q System software… § Is an interface or buffer between

Role of Systems Software q System software… § Is an interface or buffer between application software and hardware § Controls the computer hardware and acts as an interface with applications programs Schematic ITEC 1010 Information and Organizations

Application software Operating and systems software Users Hardware ITEC 1010 Information and Organizations

Application software Operating and systems software Users Hardware ITEC 1010 Information and Organizations

Operating System Functions § § § § ITEC 1010 Perform common computer hardware functions

Operating System Functions § § § § ITEC 1010 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 Information and Organizations

User Interface q User interface • A function of the operating system that allows

User Interface q User interface • A function of the operating system that allows individuals to access and command the computer q Command-based user interface • A particular user interface that requires text commands be • given to the computer to perform basic activities E. g. , unix, DOS q Graphical user interface (GUI) • A user interface that uses pictures (icons) and menus displayed • ITEC 1010 on the screen to send commands to the computer system E. g. Windows, MAC OS Information and Organizations

Systems Software Concepts q Hardware independence § Operating system (OS) provides hardware independence for

Systems Software Concepts q Hardware independence § Operating system (OS) provides hardware independence for application software § Application software interfaces with the operating system which interfaces with the hardware § When the hardware is changed, the operating system is changed so that the application software is not required to be changed ITEC 1010 Information and Organizations

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading q Timesharing ITEC 1010 Information and Organizations

Memory Management q Memory management… § Controls how memory is accessed and maximizes available

Memory Management q Memory management… § Controls how memory is accessed and maximizes available memory and storage Schematic ITEC 1010 Information and Organizations

Application Software OS What is the price of TIBA 35 (TIBA 35$) Fetch TIBA

Application Software OS What is the price of TIBA 35 (TIBA 35$) Fetch TIBA 35$ from hard disk, track 1, sector 7 TIBA 35$ ITEC 1010 Information and Organizations

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading q Timesharing ITEC 1010 Information and Organizations

Virtual Memory & Paging q Virtual memory § Memory that allocates space in secondary

Virtual Memory & Paging q Virtual memory § Memory that allocates space in secondary storage to supplement the immediate, functional memory capacity of RAM § Paging • A function of virtual memory allowing the computer to store currently needed pages in RAM while the rest of the pages wait in secondary storage Schematic ITEC 1010 Information and Organizations

Memory Disk Program 1 (a few pages) Program 2 (a few pages) Program 3

Memory Disk Program 1 (a few pages) Program 2 (a few pages) Program 3 (a few pages) Program 4 (a few pages) Operating system and system software Program 5 (a few pages) Program 6 (a few pages) Other memory requirements ITEC 1010 Information and Organizations Programs and other software

Virtual Memory ‘Discussion’ (1) An imaginary memory area supported by some operating systems (for

Virtual Memory ‘Discussion’ (1) An imaginary memory area supported by some operating systems (for example, Windows but not DOS) in conjunction with the hardware. You can think of virtual memory as an alternate set of memory addresses. Programs use these virtual addresses rather than real addresses to store instructions and data. When the program is actually executed, the virtual addresses are converted into real memory addresses. The purpose of virtual memory is to enlarge the address space, the set of addresses a program can utilize. For example, virtual memory ITEC 1010 Information and Organizations

Virtual Memory ‘Discussion’ (2) might contain twice as many addresses as main memory. A

Virtual Memory ‘Discussion’ (2) might contain twice as many addresses as main memory. A program using all of virtual memory, therefore, would not be able to fit in main memory all at once. Nevertheless, the computer could execute such a program by copying into main memory those portions of the program needed at any given point during execution. To facilitate copying virtual memory into real memory, the operating system divides virtual memory into pages, each of which contains a fixed number of addresses. Each page is stored on a disk until it is needed. When the page is needed, the operating system copies it ITEC 1010 Information and Organizations

Virtual Memory ‘Discussion’ (3) from disk to main memory, translating the virtual addresses into

Virtual Memory ‘Discussion’ (3) from disk to main memory, translating the virtual addresses into real addresses. The process of translating virtual addresses into real addresses is called mapping. The copying of virtual pages from disk to main memory is known as paging or swapping. ITEC 1010 Information and Organizations

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading

Software Concepts q Memory management q Virtual memory & paging q Multitasking q Multithreading q Time-sharing ITEC 1010 Information and Organizations

Multitasking, Multithreading, Time-sharing q Multitasking § A processing activity that allows a user to

Multitasking, Multithreading, Time-sharing q Multitasking § A processing activity that allows a user to run more than one application at the same time q Multithreading § A processing activity that is basically multitasking within a single application q Time-sharing § A processing activity that allows more than one person to use a computer system at the same time ITEC 1010 Information and Organizations

Software Concepts q Network capability § Aids in connecting the computer to a network

Software Concepts q Network capability § Aids in connecting the computer to a network q Access to system resources § Provides security for unauthorized access q File management § Ensures that files in secondary storage are available when needed, and they are protected against unauthorized usage ITEC 1010 Information and Organizations

Utility Programs q Utility programs… § Programs used to merge and sort sets of

Utility Programs q Utility programs… § Programs used to merge and sort sets of data, keep track of computer jobs being run, compress files of data before they are stored or transmitted over a network, and perform other important tasks ITEC 1010 Information and Organizations

Types of Application Software q Proprietary § Designed to solve a unique and specific

Types of Application Software q Proprietary § Designed to solve a unique and specific problem q In-house § Development of application software using the company’s resources q Contract § Developed for a particular company q Off-the-shelf § An existing software program that can be used without considerable changes expected ITEC 1010 Information and Organizations

Sources of Software q Customized package § Blend of external and internal software development

Sources of Software q Customized package § Blend of external and internal software development • In-house customized • Contract customization Schematic ITEC 1010 Information and Organizations

Application software Proprietary software In-house developed Off-the-shelf software In-house customized ITEC 1010 Standard package

Application software Proprietary software In-house developed Off-the-shelf software In-house customized ITEC 1010 Standard package Customized package Contract Information and Organizations Contract customization

Examples ITEC 1010 Information and Organizations

Examples ITEC 1010 Information and Organizations

Turbo Tax Provides automated assistance for tax preparation and submission. (Figure 4. 6) ITEC

Turbo Tax Provides automated assistance for tax preparation and submission. (Figure 4. 6) ITEC 1010 Information and Organizations 24

Quicken An off-the-shelf software package that provides assistance for standard check writing and personal

Quicken An off-the-shelf software package that provides assistance for standard check writing and personal accounting. ITEC 1010 (Figure 4. 7) Information and Organizations 25

Word Processing Provides assistance in formulating, formatting, and printing documents such as letters, memos,

Word Processing Provides assistance in formulating, formatting, and printing documents such as letters, memos, and papers. ITEC 1010 (Figure 4. 8) Information and Organizations 26

Spreadsheet Provides a wide range of built-in functions for statistical, financial, logical, database, graphics,

Spreadsheet Provides a wide range of built-in functions for statistical, financial, logical, database, graphics, and data and time calculations. ITEC 1010 (Figure 4. 9) Information and Organizations 27

Database Stores, manipulates, and retrieves data. (Figure 4. 10) ITEC 1010 Information and Organizations

Database Stores, manipulates, and retrieves data. (Figure 4. 10) ITEC 1010 Information and Organizations 28

Graphics Program Helps make a presentation; develops brochures, illustrations, etc. Usually called Presentation Graphics

Graphics Program Helps make a presentation; develops brochures, illustrations, etc. Usually called Presentation Graphics ITEC 1010 Information and Organizations

On-Line Services (Figure 4. 12) On-Line Services Provide access to various information resources. (Figure

On-Line Services (Figure 4. 12) On-Line Services Provide access to various information resources. (Figure 4. 12) ITEC 1010 Information and Organizations 30

Software Suite Collection of personal productivity software such as word processor, spreadsheet, and database.

Software Suite Collection of personal productivity software such as word processor, spreadsheet, and database. ITEC 1010 Information and Organizations 31

Software Concepts - OLE q OLE = Object Linking and Embedding § A software

Software Concepts - OLE q OLE = Object Linking and Embedding § A software feature that allows you to copy text from § § one document to another or embed graphics from one program into another program or document Server Application The application that supplies objects you place into other applications q Client application § The application that accepts objects from other applications ITEC 1010 Information and Organizations

OLE Concepts q Copy § Copy data from one application and place it in

OLE Concepts q Copy § Copy data from one application and place it in another q Link § Changes made to the server object to automatically appear in all linked client objects q Embed § An object to become part of the client document Schematic ITEC 1010 Information and Organizations

Graphics Program Server Application Client Application Word Processing Program Team photo Copy Spreadsheet Program

Graphics Program Server Application Client Application Word Processing Program Team photo Copy Spreadsheet Program Server Application Actual vs. Budget -------------------Team photo Link Actual vs. budget --- --- -- - - - --- --- --- -- Project Management Program Server Application Chart ==== == == ==== = ITEC 1010 Chart ---------- Embed Information and Organizations

OLE ‘Discussion’ Abbreviation for Object Linking and Embedding, pronounced as separate letters or as

OLE ‘Discussion’ Abbreviation for Object Linking and Embedding, pronounced as separate letters or as oh-leh. OLE is a compound document standard developed by Microsoft Corporation. It enables you to create objects with one application and then link or embed them in a second application. Embedded objects retain their original format and links to the application that created them. Support for OLE is built into the Windows and Macintosh operating systems. A competing compound document standard developed jointly by IBM, Apple Computer, and other computer firms is called Open. Doc. ITEC 1010 Information and Organizations

Workgroup Application Software q Groupware § Software that helps groups of people work together

Workgroup Application Software q Groupware § Software that helps groups of people work together more efficiently and effectively q Collaborative computing software § Software that helps teams of people work together toward a common goal ITEC 1010 Information and Organizations

Enterprise Application Software q Enterprise application software… § Software that benefits the entire organization

Enterprise Application Software q Enterprise application software… § Software that benefits the entire organization § Examples Accounts receivable Accounts payable Cash-flow analysis Manufacturing control General Ledger ITEC 1010 Sales ordering Order entry Check processing Receiving Retail Operations Information and Organizations

Example Integrated Supply Chain Management Software ITEC 1010 Information and Organizations

Example Integrated Supply Chain Management Software ITEC 1010 Information and Organizations

Enterprise Resource Planning (ERP) q Enterprise Resource Planning (ERP)… § A set of integrated

Enterprise Resource Planning (ERP) q Enterprise Resource Planning (ERP)… § A set of integrated programs that manage a company’s § vital business operations for an entire multi-site, global organization Vendor examples SAP Oracle People. Soft Dun & Bradstreet JD Edwards ITEC 1010 Baan SSA Marcam QAD Ross Systems Information and Organizations

ERP ‘Discussion’ Short for enterprise resource planning, a business management system that integrates all

ERP ‘Discussion’ Short for enterprise resource planning, a business management system that integrates all facets of the business, including planning, manufacturing, sales, and marketing. As the ERP methodology has become more popular, software applications have emerged to help business managers implement ERP. ITEC 1010 Information and Organizations

Programming Languages q Programming languages… § Coding schemes used to write both systems and

Programming Languages q Programming languages… § Coding schemes used to write both systems and application software ITEC 1010 Information and Organizations

Categories of Programming Languages (1) q Machine Language § 1 st generation programming language

Categories of Programming Languages (1) q Machine Language § 1 st generation programming language § Considered a low-level language because it involves basic coding using the binary symbols 1 and 0 q Assembly Language § 2 nd generation language § Replaced binary digits with mnemonics (e. g. , “ADD”) programmers could more easily understand ITEC 1010 Information and Organizations

Categories of Programming Languages (2) q Third Generation Languages § Continued trend to more

Categories of Programming Languages (2) q Third Generation Languages § Continued trend to more symbolic code (e. g. COBOL) q Fourth Generation Languages (4 GLs) § Languages that are less procedural and even more English-like than third-generation languages (e. g. FOCUS) ITEC 1010 Information and Organizations

Categories of Programming Languages (3) q Query languages § Used to ask the computer

Categories of Programming Languages (3) q Query languages § Used to ask the computer questions in Englishlike sentences § Also known as database languages q Structured query language (SQL) § A standardized language often used to perform database queries and manipulations ITEC 1010 Information and Organizations

Object Oriented Languages (1) q Object-oriented languages (OOL) • Languages that allow interaction of

Object Oriented Languages (1) q Object-oriented languages (OOL) • Languages that allow interaction of programming objects, • including data elements and the actions that will be performed on them Note: OOP = object-oriented programming q Encapsulation • The process of grouping items into an object q Polymorphism • A process allowing the programmer to develop one routine or set of activities that will operate on multiple objects ITEC 1010 Information and Organizations

Object Oriented Languages (2) q Inheritance • Property used to describe objects in a

Object Oriented Languages (2) q 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 q Reusable code • The instruction code within an object that can be reused in different programs for a variety of applications q Examples • Smalltalk, C++, Java ITEC 1010 Information and Organizations

Visual Programming Languages q Visual programming languages… § Languages that use a mouse, icons,

Visual Programming Languages q Visual programming languages… § Languages that use a mouse, icons, or symbols on the screen and pull-down menus to develop programs § Examples • Visual Basic • Visual C++ • PC COBOL ITEC 1010 Information and Organizations

Fifth-Generation Languages q 5 th generation languages… § Combines rule-based code generation, component management,

Fifth-Generation Languages q 5 th generation languages… § Combines rule-based code generation, component management, visual programming techniques, and reuse management § Knowledge-based management • An approach to the development of computer programs in which you do not tell a computer how to do a job, but what you want it to do ITEC 1010 Information and Organizations

Programming Languages: Terminology (1) q Language translator § Systems software that converts a programmer’s

Programming Languages: Terminology (1) q Language translator § Systems software that converts a programmer’s source code into its equivalent in machine language q Source code § High-level program code written by the programmer q Object code § Another name for machine language code ITEC 1010 Information and Organizations

Programming Languages: Terminology (2) q Interpreter § A language translator that translates one program

Programming Languages: Terminology (2) q Interpreter § A language translator that translates one program statement at a time into machine code Program statement Interpreter Machine language statement Statement execution ITEC 1010 Information and Organizations

Programming Languages: Terminology (3) q Compiler § A language translator that converts a complete

Programming Languages: Terminology (3) q Compiler § A language translator that converts a complete program into machine language to produce a program that the computer can process in its entirety Schematic ITEC 1010 Information and Organizations

Step 1: Translate program Computer program Machine language program Compiler Step 2: Execute program

Step 1: Translate program Computer program Machine language program Compiler Step 2: Execute program Machine language program Program execution ITEC 1010 Information and Organizations

End of Chapter 4 Chapter 5 ITEC 1010 Information and Organizations

End of Chapter 4 Chapter 5 ITEC 1010 Information and Organizations