Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 2 Computer Software

Similar presentations


Presentation on theme: "Chapter 2 Computer Software"— Presentation transcript:

1 Chapter 2 Computer Software
MIS 311 Jakob Iversen

2 Software History and Significance
1950’s: Hardware was expensive. Software was less important and less expensive. Today: software comprises a much larger percentage of the cost of modern computer systems The Software Crisis: Many software projects are delivered late, over budget with inferior quality, and does not meet requirements/expectations software applications can’t keep up with rapidly changing business conditions and rapidly evolving technologies new applications must be developed quickly, and existing software must also be maintained (est. 80% effort on maintenance) more complexity, leads to more “bugs” testing and “debugging” software is expensive and takes time

3 Software Model: A Layered View

4 Software Classifications

5 System Software Programs that control and support the computer system
Supports application software by directing the basic functions of the computer Facilitates programming, testing, and debugging of computer programs Usually independent of any specific type of application

6 Operating Systems Functionality
Common Hardware Functions User Interface Hardware Independence Memory Management File Management Processing Tasks Multitasking and time-sharing Networking Capability Access to System Resources Security

7 Major Desktop OS MS-DOS Windows 3.xx Windows 98 Windows 95 Windows NT
Windows XP IBM’s OS/2 Macintosh Operating System Linux UNIX Java Operating System (JavaOS)

8

9 Windows 3.11

10 Windows 95

11 Windows XP

12 Linux (KDE 3)

13 Other Systems Control Program
(Helps you use the computer) Backup software Antivirus software Uninstaller software File handling Drivers (for various peripherals) Performance monitors Security monitors

14 Direct a computer system to perform specific information processing activities and provide functionality for users (lets you do real work) Application Software

15

16 Personal Application Software
An off-the-shelf application program not linked to any specific business function, but instead supports general types of processing Data management Spreadsheet Desktop publishing Publishing Word processing Communications Graphics Multimedia Speech recognition software GroupWare

17 Software Suites Collections of application software packages that integrate the functions of the packages Examples: Microsoft Office, Star Office, Corel Word Perfect Office, and Lotus SmartSuite Generally include: spreadsheet, word processor, database, and graphics package Ability to move data and diagrams among individual application

18 Enterprise Application Software

19 Supply Chain Management

20 Enterprise Resource Planning Vendors
25.1% SAP 7.0% Oracle (trying to buy PeopleSoft) 6.5% PeopleSoft ??% JD Edwards (bought by PeopleSoft) 5.4% Sage 4.9% Microsoft 51.1% Other Total revenue in 2002: $5 billion, down from $5.5 billion Source: Gartner Dataquest (June 2003)

21 Problems with ERP Very complex systems
Require changes to all/most parts of the organization Very long implementation process 12-24 months Systems require customization Customizations may make it difficult to upgrade Difficult to move to different vendor Customization experts in short supply More info:

22 Programming Languages
… .. …… Different languages for different purposes Tradeoff between easy to program (programmer-friendly) vs. Efficiency in execution (computer-friendly)

23 Example: Assembly Language (2GL)
SUB AX, CX LP: ADD AX, [BX] ADD BX, 2 CMP DX, BX JNS LP Mnemonics Need to know how the CPU works Typically no OS Still in use where speed is very important – often embedded systems

24 Procedural Language (Pascal), 3GL
Program MyAddition; Var a, b, c: int; Begin Writeln (This is fun’); a:=2; b:=5; While a<b do begin a := a + 1; end; c := a + b; Writeln (a,’+’,b,’=’,c); End. Sequence Conditions Loops Procedures/functions Other 3GL Languages C, COBOL, Fortran, ...

25 4GL: Non-procedural (SQL)
Stating an outcome: SELECT (Customer_Name and Customer_Address) FROM Customer_Table WHERE Credit_Limit > 5000 Other languages state facts and rules Fact 1: Jane is Alan’s Mother Fact 2: Mary is Jane’s sister Rule 1: An aunt is the sister of one’s mother or the sister of one’s father Inference engine: Is Mary Alan’s aunt? Languages PL/1, Lisp, SQL

26 Programming Languages (continued …)
Visual Programming Languages used within a graphical environment example : Visual Basic and Visual C++ popular with non technical users Hypertext Markup Language (HTML) standard language used in World Wide Web Plain text file describes page layout, references other files to be displayed (images, audio, video, and executable computer programs) Example!

27 Programming Languages (continued …)
Object-Oriented Programming Languages (OOP) Objects model real-world phenomena by combining data and instructions Java, C++, Eiffel, Smalltalk

28 Object Oriented Programs
Inheritance Instantiation Class -> Object Communication

29 Message Passing in Objects

30 Reusable Code in Object- Oriented Programming

31 How an Interpreter Works

32 How a Compiler Works

33 Coming up... Need more detail? Thursday Tuesday
Go to and check out the Computer section. Thursday Due: Lab 3 Tuesday Networks (Internet, Intranet, Extranet, …) Stair, Chapter 4


Download ppt "Chapter 2 Computer Software"

Similar presentations


Ads by Google