14 Computer Software
14 Learning Objectives Describe several important trends occurring in computer software. Give examples of several major types of application and system software. Explain the purpose of several popular software packages for end user productivity and collaborative computing.
Outline the functions of an operating system. 14 Learning Objectives (continued) Outline the functions of an operating system. Describe the main uses of software programming languages and tools.
Application Software: End User Applications 14 Section I Application Software: End User Applications
14 Software Types of software Application software for end users System software Application software for end users Application-specific General-purpose Perform common information processing jobs Sometimes known as productivity packages
Suites are a number of productivity packages bundled together 14 Software Suites and Integrated Packages Suites are a number of productivity packages bundled together Microsoft Office Lotus SmartSuite Corel WordPerfect Office Sun StarOffice
14 Advantages of suites Disadvantages of suites Cost Software Suites and Integrated Packages (continued) 14 Advantages of suites Cost Similar graphical user interface Share common tools Programs are designed to work together Disadvantages of suites Large size Many features never used by many end users
Software Suites and Integrated Packages (continued) 14 Integrated Packages Combine SOME of the features of several programs Cannot do as much as individual packages or suites
14 Web Browsers Key software interface to the hyperlinked resources of the World Wide Web and the rest of the Internet Internet Explorer Netscape Communicator
14 E-Mail Instant Messaging Electronic Mail and Instant Messaging E-Mail Has changed the way people work and communicate Instant Messaging An e-mail/computer conferencing hybrid technology Allows real time communication/collaboration
14 Word Processing Desktop Publishing Word Processing and Desktop Publishing Word Processing Has computerized the creation, editing, revision, and printing of documents. Advanced features Desktop Publishing Design and print newsletters, brochures, manuals, and books Page design process Page makeup or page composition WYSIWYG (what you see is what you get)
Used for business analysis, planning, and modeling 14 Electronic Spreadsheets Used for business analysis, planning, and modeling Involves designing its format and developing the relationships (formulas)
Allows end users to perform: 14 Electronic Spreadsheets (continued) Allows end users to perform: What-if Goal-seeking Sensitivity analysis Strength Computation and calculation
Performs four primary tasks 14 Database Management Performs four primary tasks Database development Define/organize content, relationships, and structure of the data Database Interrogation Selectively retrieve and display information Produce forms, reports, & other documents
Four primary tasks (continued) 14 Database Management (continued) Four primary tasks (continued) Database maintenance Add, delete, update, and correct the data Application development Develop prototypes of web pages, queries, forms, reports, and labels
14 Strength Weakness Storage of large amounts of data Database Management (continued) Strength Storage of large amounts of data Weakness Computation and calculation
Helps convert numeric data into graphic displays 14 Presentation Graphics Helps convert numeric data into graphic displays Helps prepare multimedia presentations Easy to use
For end user productivity and collaboration 14 Personal Information Managers For end user productivity and collaboration Store, organize, and retrieve information Information about customers Appointments Contact lists Task lists Schedules
14 Groupware Collaboration software Helps workgroups and teams work together to accomplish group assignments Combines a variety of software features and functions E-mail Discussion groups and databases Scheduling Task management Audio and videoconferencing Data sharing
14 Other Business Software
System Software: Computer System Management 14 Section II System Software: Computer System Management
14 System Software Overview Programs that manage and support a computer system and its information processing activities Serves as the software interface between computer networks and hardware and the application programs of end users
14 Two major categories System management programs System Software Overview (continued) Two major categories System management programs Operating systems Network management programs Database management systems System utilities System development programs Programming language translators & editors CASE (computer-aided software engineering)
Integrated system of programs that 14 Operating Systems Integrated system of programs that Manages the operations of the CPU Controls the input/output and storage resources and activities of the computer system Provides various support services as the computer executes application programs
Performs five basic functions 14 Operating Systems (continued) Performs five basic functions Provides a user interface Allows humans to communicate with the computer Command-driven Menu-driven Graphical user interface
Five basic functions (continued) 14 Operating Systems (continued) Five basic functions (continued) Resource management Manages the hardware and networking resources of the system Virtual memory capability
Five basic functions (continued) 14 Operating Systems (continued) Five basic functions (continued) File management Controls the creation, deletion, and access of files of data and programs Keeps track of the physical location of files
Five basic functions (continued) 14 Operating Systems (continued) Five basic functions (continued) Task management Manages the accomplishment of the computing tasks of end users Multitasking Multiprogramming Timesharing
14 Operating Systems (continued) Popular Operating Systems Windows 95, 98, ME NT 2000 XP Popular operating systems (continued) UNIX Linux Mac OS X
14 Network Management Programs Perform functions such as Automatically checking client PCs and video terminals for input/output activity Assigning priorities to data communication requests from clients and terminals Detecting and correcting transmission errors and other network problems Sometimes functions as middleware that allows diverse networks to communicate with each other
14 Database Management Systems Controls the development, use, and maintenance of databases. Helps organizations use their integrated collections of data records and files Allows different user application programs to easily access the same database Simplifies the process of retrieving information from databases
14 Other System Management Programs Utility Programs Perform miscellaneous housekeeping and file conversion functions Data backup Data recovery Virus protection Data compression Data defragmentation Performance monitors and security monitors
14 Programming Languages Allows a programmer to develop the sets of instructions that constitute a computer program Machine Language First generation language Written using binary codes unique to each computer
14 Assembler Language Programming Languages (continued) Second generation Requires language translator programs called assemblers Allows a computer to convert the instructions into machine instructions Frequently called symbolic language
14 High-level Languages Programming Languages (continued) Third generation Uses instructions, called statements, that use brief statements or arithmetic expressions Uses translator programs called compilers or interpreters Syntax and semantics
Fourth-generation Languages (4GLs) 14 Programming Languages (continued) Fourth-generation Languages (4GLs) More nonprocedural and conversational than prior languages Natural languages Ease of use gained at the expense of some loss in flexibility
Object-Oriented Languages (OOP) 14 Programming Languages (continued) Object-Oriented Languages (OOP) Ties data elements to the procedures or actions that will be performed on them into “objects” Easier to use and more efficient for programming GUIs
14 Programming Languages (continued) HTML, XML, and Java Important for building multimedia Web pages, websites, and Web-based applications HTML (Hypertext Markup Language) A page description language that creates hypertext or hypermedia documents
14 XML (extensible Markup Language) Java Programming Languages (continued) XML (extensible Markup Language) Describes the contents of web pages by applying identifying tags or contextual labels to the data Makes the web site more searchable, sort able, and easier to analyze Java Designed for real-time, interactive, Web-based network applications Applets
Helps programmers develop computer programs Two basic categories 14 Programming Software Helps programmers develop computer programs Two basic categories Programming language translators Programming tools
Language Translator Programs 14 Programming Software (continued) Language Translator Programs Assembler Translates symbolic instruction codes into machine language instructions Compiler Translates high-level language statements Interpreter Translates and executes each statement in a program one at a time
14 Programming Tools Programming Software (continued) Programming editors and debuggers Provides a computer-aided programming environment or workbench Diagramming packages Code generators Libraries of reusable objects & code Prototyping tools CASE
14 Discussion Questions What major trends are occurring in software? What capabilities do you expect to see in future software packages? How do the different roles of system software and application software affect you as a business end user? How do you see this changing in the future?
Should a Web browser be integrated into an operating system? 14 Discussion Questions (continued) Why is an operating system necessary? Why can’t an end user just load an application program in a computer and start computing? Should a Web browser be integrated into an operating system?
14 Discussion Questions (continued) Are software suites, Web browsers, and groupware merging together? What are the implications for a business and its end users? How are HTML, XML, and Java affecting business applications on the Web?
14 Discussion Questions (continued) Do you think Windows 2000 and Linux will surpass Unix and Netware as operating systems for network and Web servers? Which application software packages are the most important for a business end user to know how to use?
14 References James A. O'Brien; George M. Marakas. Management Information Systems: Managing Information Technology in the Business Enterprise 6th Ed., Boston: McGraw-Hill/ Irwin,2004