1 / 49

Managing Information Technology

Managing Information Technology. CHAPTER 3 COMPUTER SOFTWARE. EVOLUTION OF COMPUTER PROGRAMMING. First and Second Generation Languages. Machine language (1GL) Each instruction must be expressed in unique form for a particular computer Complete program consists of thousands of instructions

erna
Download Presentation

Managing Information Technology

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. Managing Information Technology CHAPTER 3COMPUTER SOFTWARE

  2. EVOLUTION OF COMPUTER PROGRAMMING First and Second Generation Languages • Machine language (1GL) • Each instruction must be expressed in unique form for a particular computer • Complete program consists of thousands of instructions • Programming is a tedious, time-consuming process • Assembly languages (2GL) • Easily remembered mnemonic operation codes substituted for machine language operation codes • Assembler used to convert mnemonic codes to machine language

  3. EVOLUTION OF COMPUTER PROGRAMMING First and Second Generation Languages

  4. EVOLUTION OF COMPUTER PROGRAMMING Third and Fourth Generation Languages • Procedural languages (3GL) • Typically machine independent • Express a step-by-step procedure devised by the programmer • Must be compiled or interpreted (translated into machine language) • Include FORTRAN, COBOL, BASIC, PL/1, PASCAL, ADA, and C

  5. EVOLUTION OF COMPUTER PROGRAMMING Third and Fourth Generation Languages

  6. EVOLUTION OF COMPUTER PROGRAMMING Third and Fourth Generation Languages • Nonprocedural languages (4GL) • Also referred to as productivity languages • Use more English-like statements for program instructions • Easier to use, write, and less error-prone • Use a built-in interpreter to convert to machine language • Take much longer to execute than 3GLs • Include FOCUS, CA-Ramis, IFPS, and SAS

  7. EVOLUTION OF COMPUTER PROGRAMMING Third and Fourth Generation Languages

  8. EVOLUTION OF COMPUTER PROGRAMMING Third and Fourth Generation Languages • Object-oriented languages • 3GLs with some 4GL features • Built on idea of embedding procedures (methods) in objects, and putting objects together to create an application • Include Smalltalk, C++, Java, and Visual Basic

  9. KEY TYPES OF SOFTWARE • Applications software • Support software

  10. APPLICATIONS SOFTWARE • Programs written to accomplish particular tasks • Many different types of applications software • Standard applications products generally purchased from an outside source • Applications unique to the organization generally developed internally • Personal productivity software most important to managers

  11. APPLICATIONS SOFTWARE Examples of Application Software • Peachtree accounting software • Commercial accounting package for smaller businesses • Includes general ledger, accounts receivable, accounts payable, inventory, payroll, time and billing, job costing, fixed asset accounting, and analysis and reporting tools • $500 for single-user version

  12. APPLICATIONS SOFTWARE Examples of Application Software • Sage Accpac 200 ERP • Modular financial management systems for midsized businesses • Web-based, so only a Web browser is needed to access the application • System Manager module manages security, ensures data integrity, handles bank reconciliation and tax processing, and allows for customized reports • Several other modules available as well

  13. APPLICATIONS SOFTWARE Personal Productivity Software • Word processing • Used to create documents for printing • Most popular is Microsoft Word • Others include Corel WordPerfect, Lotus WordPro, and Sun’s StarOffice Writer • All employ WYSIWYG

  14. APPLICATIONS SOFTWARE Personal Productivity Software • Spreadsheets • Used to create applications that fit a row-column format • Most popular is Microsoft Excel • Others include Lotus 1-2-3 and Corel Quattro Pro • All employ rows, columns, cells, formulas, and “what-if” analysis

  15. APPLICATIONS SOFTWARE Personal Productivity Software • Database management systems • Used to create databases similar to those on larger machines • Most popular is Microsoft Access • Others include FileMaker Pro, Corel Paradox, and Lotus Approach • All employ a relational data model

  16. APPLICATIONS SOFTWARE Personal Productivity Software • Presentation graphics • Used to create largely textual business presentations • Most popular is Microsoft PowerPoint • Others include Corel Presentations and Lotus Freelance Graphics • All allow embedding of clip art, photos, graphs, and other media

  17. APPLICATIONS SOFTWARE Personal Productivity Software • Web browsers • Used to access information on the Web • Requires ISP service to link PC to Internet • Create documents for printing • Most popular are Internet Explorer and Firefox… both free! • Both employ standard hypertext-based approach (way to link text and media objects to each other) • Pull technology: browser requests a Web page before it is sent to desktop • Push technology: data sent to client without requesting it (such as e-mail)

  18. APPLICATIONS SOFTWARE Personal Productivity Software • Electronic mail • Preferred way of communicating in business today • Easy to use and precise • Groupware • Incorporates e-mail and other productivity features, such as calendaring, scheduling, and document sharing

  19. SUPPORT SOFTWARE • Provides computing environment that is easy and efficient for humans to use • Enables applications programs to be carried out • Ensures that computer hardware and software are used efficiently • Almost always purchased from a hardware vendor or software house

  20. SUPPORT SOFTWARE Operating System • Most important type of support software • Complex program that controls operation of computer hardware and coordinates other software • User communicates with operating system software to control hardware and software resources • Communication made easier with a graphical user interface (GUI) feature

  21. SUPPORT SOFTWARE Operating System

  22. SUPPORT SOFTWARE Operating System • Job control language (JCL): keyed instructions from the computer user to communicate with the operating system • Multiprogramming: employed on larger machines to overlap input and output operations with processing time, keeping the CPU busy and speeding up execution • Multitasking: similar to multiprogramming, but employed on microcomputers • Multithreading: similar to multitasking, but multiple threads within the same program are overlapped

  23. SUPPORT SOFTWARE Operating System • Virtual Memory: • Concerned with management of main memory • Makes it appear that an unlimited amount of memory is available • Permits multiprogramming to operate more efficiently • Multiprocessing: work that takes place when two or more CPUs are installed on same computer system

  24. SUPPORT SOFTWARE Operating System • Sources of operating systems • Proprietary systems: most popular type of operating systems, written for a particular computer hardware configuration • Microcomputers: MS-DOS, PC-DOS, Windows XP • Midrange systems: OS/400 • Large systems: VM and MVS • Open systems: not tied to any particular computer system or hardware manufacturer – will run on virtually any computer system • Examples: UNIX and Linux

  25. SUPPORT SOFTWARE Operating System • Network operating systems (NOS) • Software running on a server that manages network resources and controls the operation of a network • Enhanced operating system that allows for: • Sharing disk drives and printers • Handling server side of client/server applications • Major players include: • UNIX and Linux • Microsoft Windows NT, 2000 Server, 2003 Server • Novell NetWare

  26. SUPPORT SOFTWARE Third Generation Languages • Procedural languages (3GL) • Require logical thinking • Entail development of a detailed step-by-step procedure • Can be developed using structured programming

  27. SUPPORT SOFTWARE Third Generation Languages

  28. SUPPORT SOFTWARE Third Generation Languages • Structured programs • Divided into modules, where each has one entry and one exit point • Advantages • Program logic easier to follow • Maintenance and correction easier and faster • Do not use GO TO logic

  29. SUPPORT SOFTWARE Third Generation Languages • Most popular procedural languages • BASIC • C • COBOL • Other procedural languages • FORTRAN • PL/1 • PASCAL • ADA

  30. SUPPORT SOFTWARE Third Generation Languages - BASIC

  31. SUPPORT SOFTWARE Third Generation Languages - COBOL

  32. SUPPORT SOFTWARE Fourth Generation Languages • Nonprocedural languages • Use very high-level instructions • Require fewer instructions • Easier to write, modify, and understand • Example: FOCUS

  33. SUPPORT SOFTWARE Fourth Generation Languages - FOCUS

  34. SUPPORT SOFTWARE Markup Languages • Employ tags to “mark up” documents • HTML • Used to create Web pages • Consists of special tags that tell the Web browser how to display various elements on a Web page (e.g., bold-faced or italic text, image location, links to other Web pages) • XML • Used to facilitate data interchange among Web applications • Metalanguage consisting of tags that identify particular data elements

  35. SUPPORT SOFTWARE Object-Oriented Programming • Requires more computing power • Has built-in GUI • Neither 3GL nor 4GL … new paradigm • Creates objects only once and stores for reuse • Object examples: • Text box, check box, entity in an organization • Languages: • Smalltalk, C++, Java, Visual Basic.NET

  36. SUPPORT SOFTWARE Object-Oriented Programming - Java

  37. SUPPORT SOFTWARE Languages for Developing Web Applications • HTML form is the most common user interface encountered by users • Server-side programming languages include: • Perl • Java Servlets and Java Server Pages • Microsoft Active Server Pages (ASP, ASP.NET) • ColdFusion

  38. SUPPORT SOFTWARE Languages for Developing Web Applications

  39. SUPPORT SOFTWARE Database Management Systems • Support software used to create, manage, and protect organizational data • Database: shared collection of logically related data organized to meet organizational needs • Five basic architectures: • Hierarchical • Data are arranged in a top-down organization chart fashion • Example: IBM Information Management System (IMS)

  40. SUPPORT SOFTWARE Database Management Systems • Five basic architectures: • Network • Data are arranged like cities on a highway system, often with several paths from one piece of data to another • Example: Computer Associates Advantage CA-IDMS • Relational • Most common type • Data arranged in simple tables • Records related by storing common data in each associated table • Examples: Microsoft Access and SQL Server, Paradox, DB2, and Ingres

  41. SUPPORT SOFTWARE Database Management Systems • Five basic architectures: • Object-oriented • Data can be graphics, video, and sound as well as simpler data types • Attributes and methods are encapsulated in object classes, and relationships between classes can be shown by nesting one class within another • Examples: Versant Object Database, Progress ObjectStore, and Objectivity/DB • Object-relational • Hybrid approach that can handle complex data types with the simplicity of the relational model • Examples: Oracle, IBM’s DB2 and Cloudscape, and FFE Software’s FirstSQL/J

  42. SUPPORT SOFTWARE File Organizations • Sequential: arranges records physically adjacent and in order by some (usually unique) sort key • Direct: uses key for records placed so that they are rapidly accessed from DASDs

  43. SUPPORT SOFTWARE File Organizations • Indexed • Compromise between sequential and direct • Record keys only arranged in sequence in a separate table, along with location of rest of data associated with that key • Popular types include ISAM and VSAM

  44. SUPPORT SOFTWARE CASE Tools • Computer-aided software engineering (CASE) • Collection of software tools to help automate all phases of the software development life cycle • Growth slower than anticipated • Radically changed nature of systems analyst and programmer jobs

  45. SUPPORT SOFTWARE CASE Tools • Recent surge in CASE tools for Unified Modeling Language (UML) • UML is a general-purpose notational language for specifying and visualizing complex software, especially large, object-oriented projects • Examples of UML-base CASE tools • IBM’s Rational Rose • Borland’s Together • Sybase’s PowerDesigner

  46. SUPPORT SOFTWARE Communications Interface Software • Large computers • Need to control workstations and terminals • Example software: IBM’s CICS, TSO, and CMS • Increasingly important with growth of LANs and WANs • Web browsers: enable users to look around, or “browse,” the Internet • Telnet: permits user to log into remote computer • File Transfer Protocol (FTP): used to transfer files from one computer system to another

  47. THE CHANGING NATURE OF SOFTWARE • Less concern with machine efficiency • More purchased applications, and, conversely, more use of open source support software, such as Linux • More programming using object-oriented languages • More emphasis on applications that run on intranets and the Internet • More user development • More use of personal productivity software on microcomputers

  48. THE SOFTWARE COMPONENT OF THE INFORMATION SYSTEMS INDUSTRY Major Groups • Hardware manufacturers • IBM, Hewlett-Packard, Sun Microsystems, Hitachi, and Fujitsu • Software houses • Microsoft, Oracle, SAP, Computer Associates, and Symantec • Consulting firms • PricewaterhouseCoopers Consulting (bought by IBM)

More Related