Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 4 - Software – Part 2 Dr. V.T. Raja Oregon State University.

Similar presentations


Presentation on theme: "Chapter 4 - Software – Part 2 Dr. V.T. Raja Oregon State University."— Presentation transcript:

1 Chapter 4 - Software – Part 2 Dr. V.T. Raja Oregon State University

2 Outline Importance of Software Evolution of Software System Software and Application Software Advantages/Disadvantages of Open Source Software Programming Languages and Language Translators Java Other Trends – (see Software – Part 3)

3 Introduction Why study about software? To make use of hardware effectively To improve productivity of individual employees To facilitate, sustain or improve competitive advantage of organization; To help meet strategic goals of organization To be aware of and to understand business implications of: Current software developments/trends Software crisis situations (e.g., Y2K, Eurodollar) Relatively higher investments in software (compared to investments in hardware) by businesses in the United States 1960-70: Hardware costs: 75%; Software costs: 25% 1990-00: Hardware costs: 25%; Software costs: 75% Why this change?

4 Why higher investments in software? Advances in hardware technology have drastically reduced hardware costs Software has become increasingly complex and error prone (hence the need for Open Source Software (OSS) Community) Testing software is difficult and costly. High demand for skilled IS/CS professionals (hence the need for outsourcing IS/CS professionals from other countries) Employees from every functional area often are involved in testing software products for bugs because they are experts in the area and can spot functional area specific bugs even more quickly than IT programmers can.

5 System Software and Application Software Examples of System Software: Operating Systems (e.g., Windows, Linux, Unix, Mac OS X), and Utility Programs Examples of Application Software: Word Processors, Spreadsheet Programs, Database Programs, PowerPoint etc.

6 Operating Systems (OS) Guest Lecture on Software: Dr. Reitsma http://classes.bus.oregonstate.edu/spring- 07/ba471/reitsma/software.html http://classes.bus.oregonstate.edu/spring- 07/ba471/reitsma/software.html Example functions of an OS? Examples of OS? Programming Languages (Compiled vs. Interpreted) Proprietary vs. Open Source Software

7 Advantages of Open Source Software Less Expensive E-Trade switched from Sun 4500 Servers running Solaris (a version of Unix) to Linux on IBM servers with Intel processors $250K for one Sun 4500 server that can handle up to 400 simultaneous users vs. $12000 for 3 IBM servers, each of which can handle up to 180 simultaneous users. Saved $13 million annually

8 Advantages of Open Source Software Access to Source Code Easier to customize and integrate with existing business applications (especially with CRM apps. run by MySAP, Web server run by Apache, and database run by MySQL) Reliable Works on different hardware platforms (desktops, servers, mainframes, supercomputers) Penetration in desktop market? Sun’s Star Office; Google’s Web based Office Software Suite

9 Disadvantages of Open Source Software Customers modify code – Linux support technicians fix problems without being aware of why customers modified code and which parts of the code were modified. More expenditure on support/maintenance Microsoft sends an army of technicians to support its Fortune 1000 customers for no fee No control over the Open Source Community (Decentralized/Unregulated)

10 Disadvantages of Open Source Software Exposes customers to legal costs Not all OSS are GPL Lack of knowledge in OSS (Microsoft shop) Easier to migrate from Unix to Linux as opposed to migrating from Windows Disappearance of mission critical features in future upgrades Developers determined these features lacked value

11 Evolution of software Generations of software First Generation: Machine language Second Generation: Assembly language Third Generation: High-level languages Fourth Generation: Outcome-oriented languages Fifth Generation: Natural languages Visual, Markup, and Object Oriented languages

12 Evolution of software Machine languages: Used only bits (0;1) Assembly language: Symbols used (e.g.,Add/Subtract) High-level language : Used English-like sentences; Instructed the computer the desired outcome, and on how to achieve the desired outcome. Outcome-oriented language : Used English-like sentences: Instructed the computer - what was the desired outcome; Does not necessarily specify the detailed procedures needed for achieving the result. Natural language : AI-based applications.

13 Language Translators Translate high-level language programs into machine language so that they can be executed by the computer. Program statements in the high-level language are called source code, and the machine language version is called object code. Compiler: Translates entire high-level language program into machine language. (Translation saved and executed). Interpreter: Translates each source code statement one at a time into machine code; Passes to CPU for execution. (Need to be translated during each execution). See Dr. Reitsma’s Guest Lecture Notes for examples of compiled and interpreted languages.

14 Java Both Compiled and Interpreted (Java Virtual Machines – JVM) Benefits of Java: Platform independent; Microprocessor independent Suitable for creating applications that can run on both internal and external networks Can run on cell phones, automobiles, music players, game machines, cable TV etc. Interactive capabilities for Web pages (Java applets) Robust (can handle text, data, graphics, sound, video – all within one program if needed) Disadvantages Runs slower than native programs written for a particular OS Needs to be standardized further. Microsoft JVM versus Sun JVM.


Download ppt "Chapter 4 - Software – Part 2 Dr. V.T. Raja Oregon State University."

Similar presentations


Ads by Google