1 / 80

Software

Software. John Sum Institute of Technology Management National Chung Hsing University. Lecture Outline. Types of Software System Software Application Software Programming Language Language Translation Computer System versus Firm C Programming. Software & Hardware.

parley
Télécharger la présentation

Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software John Sum Institute of Technology Management National Chung Hsing University

  2. Lecture Outline • Types of Software • System Software • Application Software • Programming Language • Language Translation • Computer System versus Firm • C Programming

  3. Software & Hardware • Software is a critical piece of making computers perform. • Computer Programs • Sequences of instructions for the computer • Classes of software • Systems Software • Application Software Software vs. Hardware Costs

  4. Types of Software • Systems Software • Set of programs that coordinates activities and functions of the hardware and various other programs • Window XP, Linux, Unix, SUN Solaris • Application Software • Programs that help users solve particular computing problems. • MS Office, Email, Web Server, FTP Server

  5. Software Issues and 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 and economic conditions.

  6. Systems Software

  7. Role of Systems Software (Figure 4.2) • Role of System Software • An interface or buffer between application software and hardware. • Operating Systems • Control the computer hardware and act as an interface with applications programs.

  8. Systems Software Concepts: Roles • Operating System: Controls a single machine, such as Pentium IV, Mac, Sun Workstation • Network Operating System: Controls the communications between computers. EG Unix, Novell, Window NT

  9. Systems Software Concepts: Operating System 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

  10. Systems Software Concepts: Process management by OS

  11. Systems Software Concepts: Functions of an OS • User Interface • A function of the operating system that allows individuals to access and command the computer. • Command-Based User Interface • A particular user interface that requires text commands be given to the computer to perform basic activities. • Graphical User Interface (GUI) • A user interface that uses pictures (icons) and menus displayed on the screen to send commands to the computer system.

  12. Systems Software Concepts: Functions of an OS

  13. Systems Software Concepts: Functions of an OS

  14. Application Application OS OS OS Hardware Hardware Systems Software Concepts: Functions of an OS • Hardware Independence • Operating systems (OSs) provide hardware independence for application software. The 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.

  15. Systems Software Concepts: Functions of an OS • Memory Management • Controls how memory is accessed and maximizes available memory and storage.

  16. Systems Software Concepts:Others • Multitasking • A processing activity that allows a user or multiple users to run more than one applications at the same time. • Multithreading • A processing activity that is basically multitasking within a single application, e.g. Yahoo Search. • Time-sharing • A method to control multiple processes running in a computer system • Each process shares, say 20%, of the CPU time

  17. Systems Software Concepts:Others • 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, and they are protected against unauthorized usage • Particularly important in handling multiple users

  18. Systems Software Concepts:Others • 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. Examples of Utility Programs

  19. Systems Software Concepts:Others • In computing, a utility program is a computer program that is in general support of the operations and processes of a computer. (Source: from Federal Standard 1037C) • Examples of utility programs include diagnostic programs, trace programs, input routines, and programs used to perform routine tasks, i.e., perform everyday tasks, such as copying data from one storage location to another.

  20. Systems Software Concepts:Remarks • Other Examples of Systems Software: Apache (Web Server), Mail Server, FTP Server, File Server (NFS). • Examples of utility programs: Virus scanner and cleaner, intrusion detection software, file compression software (e.g. RAR, WinZIP). • Note: Some people regard utility program is a system software. • Know how to build a system software  System Programming

  21. Application Software

  22. Sources of Application Software • Proprietary Software • Designed to solve a unique and specific problem. • In-House Developed • Development of application software using the company’s resources. • Contract Software • Developed for a particular company. • Commercial Off-The-Shelf (COTS) Software • An existing software program that can be used without considerable changes expected.

  23. Sources of Application Software • Customized Package • Blend of external and internal software development. • In-House Customized • Contract Customization

  24. Sources of Application Software 21

  25. Sources of Application Software:Latest approaches • Web Services • A software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format. Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards. (Source: W3C.ORG) • Croudsorucing

  26. Examples of Personal Application Software(Table 4.6) (Table 4.6) 23

  27. Turbo Tax (Figure 4.6) Turbo Tax Provides automated assistance for tax preparation and submission. (Figure 4.6) 24

  28. Word Processing Program (Figure 4.8) Word Processing Program Provides assistance in formulating, formatting, and printing documents such as letters, memos, and papers. (Figure 4.8) 26

  29. Spreadsheet Program (Figure 4.9) Spreadsheet Program Provides a wide range of built-in functions for statistical, financial, logical, database, graphics, and data and time calculations. (Figure 4.9) 27

  30. Database Program (Figure 4.10) Database Program Stores, manipulates, and retrieves data. (Figure 4.10) 28

  31. Graphics Program (Figure 4.11) Graphics Program Helps make a presentation; develops brochures, illustrations, etc.

  32. On-Line Services (Figure 4.12) On-Line Services Provide access to various information resources. (Figure 4.12) 30

  33. Software Suite (Figure 4.13) Software Suite Collection of personal productivity software such as word processor, spreadsheet, and database. 31

  34. Workgroup Application Software • GroupWare • Software that helps groups of people work together more efficiently and effectively • Collaborative Computing Software • Software that helps teams of people work together toward a common goal. (Table 4.7) Ernst & Young’s “Three Cs” Rule of GroupWare 35

  35. Enterprise Application Software • Enterprise Application Software • Software that benefits the entire organization. Table 4.8 36

  36. Use of Integrated Supply Chain Management Software (Figure 4.15) 37

  37. Vendors SAP Baan Oracle SSA PeopleSoft Marcam Dun & Bradstreet QAD JD Edwards Ross Systems Enterprise Resource Planning (ERP) • Enterprise Resource Planning (ERP) • A set of integrated programs that manage a company’s vital business operations for an entire multisite, global organization 38

  38. Programming Language

  39. Programming Languages • Programming Languages • Coding schemes used to write both systems and application software. (Table 4.10) 39

  40. Programming Languages

  41. Programming Languages

  42. Programming Languages

  43. Programming Languages

  44. Programming Languages • Machine Language • The first generation programming language. Considered a low-level language because it involves a basic coding scheme using the binary symbols 1 and 0. A Simplified Machine Language Instruction 40

  45. Programming Languages

  46. Programming Languages • Assembly Language • Replaced binary digits with symbols programmers could more easily understand. • High Level Languages • C, Pascal, Java • Third Generation Languages • Continued trend to more symbolic code (e.g. COBOL) 41

  47. Programming Languages • Query Languages • Used to ask the computer questions in English-like sentences. (Also known as database languages.) • Structured Query Language (SQL) • A standardized language often used to perform database queries and manipulations. 42

  48. Object Oriented Languages • Object-Oriented Languages • Languages that allow interaction of programming objects, including data elements and 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. 43

  49. Object Oriented Languages • 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. 44

  50. Object Oriented Languages • Object Oriented Languages • Small Talk • C++ • Java (Figure 4.17) 45

More Related