Computer Software - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

Computer Software

Description:

COMPUTER-AIDED SOFTWARE ENGINEERING (CASE) ... SOFTWARE DEVELOPMENT: Used by computer professionals to help automate software development ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 54
Provided by: edward95
Category:

less

Transcript and Presenter's Notes

Title: Computer Software


1
CHAPTER 3
  • Computer Software

2
THE STORED PROGRAM CONCEPT
  • COMPUTER IS A BINARY SYSTEM
  • PROGRAM A set of instructions telling the
    computer what to do
  • INSTRUCTION Individual step or operation in a
    program
  • MACHINE LANGUAGE Translated instruction
    understood by particular model of computer

3
EVOLUTION OF COMPUTER SOFTWARE
  • FIRST GENERATION Machine language - binary
    language designed for particular computer
  • SECOND GENERATION Assembly language -
    substituted mnemonic operation codes and
    addresses, translated to machine language by
    assembler

4
EVOLUTION OF COMPUTER SOFTWARE
  • THIRD GENERATION Procedural language - FORTRAN,
    COBOL, C - translated to machine language by
    compiler or interpreter. Example COBOL
  • FOURTH GENERATION Nonprocedural language. Tell
    what to do, not how to do it, order not
    important. Translate to machine language by
    compiler or interpreter. Example FOCUS

5
KEY TYPES OF SOFTWARE
  • APPLICATION SOFTWARE Programs written to
    accomplish particular tasks for computer users
  • SUPPORT SOFTWARE Programs that support
    application software in producing needed output.
    Does not directly produce output needed by users

6
APPLICATION SOFTWARE
  • WORD PROCESSING
  • SPREADSHEETS
  • DATABASE MANAGEMENT SYSTEMS
  • PRESENTATION GRAPHICS

7
APPLICATION SOFTWARE
  • WORLD WIDE WEB BROWSERS
  • ELECTRONIC MAIL, GROUPWARE
  • DESKTOP PUBLISHING
  • APPLICATION SUITES

8
SUPPORT SOFTWARE
  • OPERATING SYSTEMS Helps maximize work done,
    eases workload of users
  • JOB CONTROL LANGUAGE Allows users to communicate
    with operating systems
  • MULTIPROGRAMMING Large computers can run
    multiple programs simultaneously. Time-driven
    approach is time-sharing

9
SUPPORT SOFTWARE
  • MULTITASKING Allows small computers to work on
    several programs interactively
  • VIRTUAL MEMORY Allows computer to run portions
    of a large program as required, saving use of
    main memory
  • MULTIPROCESSING Multiple CPUs divide workload,
    increases efficiency

10
SOURCES OF OPERATING SYSTEMS
  • PROPRIETARY Written for particular computer
    class or system. Examples Windows 98, Windows
    2000
  • OPEN SYSTEM Not tied to specific platform.
    Examples UNIX, Linux
  • NETWORK OPERATING SYSTEM (NOS) Manages network
    resources, local area networks

11
GRAPHICAL USER INTERFACE (GUI)
  • MOUSE A standard pointing device
  • ICON Graphic or label on screen associated with
    task or operation
  • 32-BIT OPERATING SYSTEM Operating system handles
    32 bits at a time
  • CLICKING MOUSE ON ICON INITIATES TASK

12
OBJECT-ORIENTED PROGRAMMING (OOP)
  • COMPUTER PROGRAMMING BASED ON CREATING, USING SET
    OF OBJECTS Object combines data and methods (or
    chunks of programs)
  • EXAMPLES C, Smalltalk, Java

13
OTHER LANGUAGES
  • NATURAL LANGUAGES User types in or speaks
    English, computer evolves program
  • HYPERTEXT MARKUP LANGUAGE (HTML) Code used to
    develop World Wide Web (WWW) pages and sites
  • eXtensible Markup Language (XML) Used for data
    exchange on WWW

14
DATABASE MANAGEMENT SYSTEM (DBMS)
  • SUPPORT SOFTWARE USED TO CREATE, MANAGE, AND
    PROTECT ORGANIZATIONAL DATA
  • DBMS Software that manages a database, works
    with operating system to store and modify data
    and to make data accessible in authorized ways

15
TYPES OF DBMSs
  • HIERARCHICAL Data arranged in a top-down,
    organization chart fashion
  • NETWORK Data arranged like cities on a highway
    systems, often with multiple paths between pieces
    of data
  • RELATIONAL Data arranged into simple tables, and
    records are related by storing common data in
    each of the associated tables

16
FILING METHODS
  • INDEXED SEQUENTIAL ACCESS METHOD (ISAM)
  • EACH RECORD IDENTIFIED BY KEY
  • GROUPED IN BLOCKS AND CYLINDERS
  • KEYS IN INDEX
  • VIRTUAL STORAGE ACCESS METHOD (VSAM)
  • MEMORY DIVIDED INTO AREAS INTERVALS
  • DYNAMIC FILE SPACE
  • VSAM WIDELY USED FOR RELATIONAL DATABASES
  • DIRECT FILE ACCESS METHOD

17
COMPONENTS OF DBMS
  • DATA DEFINITION LANGUAGE Defines data elements
    in database
  • DATA MANIPULATION LANGUAGE Manipulates data for
    applications
  • DATA DICTIONARY/DIRECTORY Formal definitions of
    all variables in database, controls variety of
    database contents

18
STRUCTURED QUERY LANGUAGE (SQL)
  • EMERGING STANDARD
  • DATA MANIPULATION LANGUAGE
  • FOR RELATIONAL DATABASES

19
ADVANTAGES OF RELATIONAL DBMS
  • NEW DATA ELEMENTS CAN EASILY BE ADDED AS NEW
    NEEDS ARISE
  • NEW RELATIONSHIPS CAN BE CREATED AS NEW
    QUERY/REPORTING NEEDS CHANGE
  • FEWER DATA CONSISTENCY PROBLEMS DUE TO LESS
    REDUNDANT DATA STORAGE
  • MORE USER FRIENDLY TOOLS

20
COMPUTER-AIDED SOFTWARE ENGINEERING (CASE)
  • HELPS AUTOMATE SOFTWARE DEVELOPMENT Used by
    computer professionals to help automate software
    development
  • MAY INCLUDE
  • upper-CASE (requirements definition and design)
  • lower-CASE (code generation)
  • I-CASE or integrated-CASE

21
CHANGING NATURE OF SOFTWARE
  • MORE HARDWIRING OF SOFTWARE AND MORE MICROCODE
  • MORE COMPLEXITY OF HARDWARE/SOFTWARE ARRANGEMENTS
  • LESS CONCERN WITH MACHINE EFFICIENCY

22
CHANGING NATURE OF SOFTWARE
  • MORE PURCHASED APPLICATIONS AND MORE PORTABILITY
    OF THESE APPLICATIONS FROM ONE COMPUTER PLATFORM
    TO ANOTHER
  • MORE PROGRAMMING USING OBJECT-ORIENTED AND VISUAL
    LANGUAGES, IN LARGE PART BECAUSE OF EMPHASIS ON
    GUIs

23
CHANGING NATURE OF SOFTWARE
  • MORE EMPHASIS ON APPLICATIONS THAT RUN ON
    INTRANETS AND THE INTERNET
  • MORE USER DEVELOPMENT
  • MORE USE OF PERSONAL PRODUCTIVITY SOFTWARE ON
    MICROCOMPUTERS, ESPECIALLY PACKAGES WITH A GUI

24
Some Detailed Software Concepts
25
Binary Digits
  • Computers represent data using binary digits,
    called bits.
  • A bit is either a zero or a one.
  • Bits are used for computer data because they are
    easy to represent physically.
  • A switch can either be closed or open.

26
Binary Digits (Continued)
  • A computer can be designed so an open switch
    represents zero and a closed switch represents a
    one.
  • Or, the orientation of a magnetic field can
    represent a bit
  • Magnetism in one direction represents a zero
  • Magnetism in the opposite direction represents a
    one
  • Or, for optical media, small pits are burned onto
    the surface of the disk so that they will reflect
    light
  • In a given spot, a reflection means a one
  • No reflection means a zero

27
Bits Are Easy to Represent Physically
28
Computer Instructions
  • Computers use bits for two purposes instructions
    and data.
  • A given instruction, say to add two numbers
    together, is represented by a string of digits
    (0111100010001110).
  • When the CPU reads such an instruction from main
    memory, it adds the numbers or takes whatever
    action the instruction specifies.
  • The collection of instructions that a computer
    can process is called the computers instruction
    set.

29
Computer Instructions (Continued)
  • All of the personal computers that run Microsoft
    Windows are based on an instruction set developed
    by Intel Corporation that is called Intel
    instruction set.
  • Until 2006, all Macintosh computers used a
    different instruction set, the PowerPC
    instruction set, designed for Powerful PC
    processors.
  • In 2006, Apple began offering Macintosh
    computers with a choice of either Intel or
    PowerPC processors.

30
Computer Instructions (Continued)
  • Currently, you cannot run a program designed for
    one instruction set on a computer having a
    different instruction set.
  • In the future, you may be able to run Windows on
    a Macintosh that uses the Intel instruction set,
    although the particulars of that are uncertain.
  • When you pick a family of computers, such as
    Windows or the Macintosh, you pick not only the
    hardware, but also the sets of programs that can
    run on one family of computers.

31
Computer Data
  • All computer data are represented by bits.
  • The data can be numbers, characters, currency
    amounts, photos, recordings, or whatever.
  • Bits are grouped into 8-bit chunks called bytes.
  • For character data, such as letters in a persons
    name, one character will fit into one byte.
  • Thus, when you read a specification that a
    computing device has 100 million bytes of memory,
    you know that the device can hold 100 million
    characters.

32
Important Storage-Capacity Terminology
33
Ambiguity of Binary Data
  • It is not possible to determine the type of
    computer data just by looking at the data.
  • The bit string 01000001 can be interpreted as the
    decimal number 65, as the character A, or as part
    of a picture or a sound file.
  • Further, it could be part of a computer
    instruction.
  • The CPU determines how to interpret a bit string
    from the context in which it encounters it.
  • If the string occurs in the context of reading
    instructions, it will be interpreted as a
    computer instruction.

34
Ambiguity of Binary Data (Continued)
  • If it occurs in the context of reading
    instructions, it will be interpreted as the
    character A.
  • If it occurs during arithmetic operations, it
    will be interpreted as the number 65.
  • This ambiguity is more than curiosity virus
    authors and other cyber-criminal use it to their
    advantage.

35
Bits Are Easy to Represent Physically
36
Computer Instructions
  • Computers use bits for two purposes instructions
    and data.
  • A given instruction, say to add two numbers
    together, is represented by a string of digits
    (0111100010001110).
  • When the CPU reads such an instruction from main
    memory, it adds the numbers or takes whatever
    action the instruction specifies.
  • The collection of instructions that a computer
    can process is called the computers instruction
    set.

37
Computer Instructions (Continued)
  • All of the personal computers that run Microsoft
    Windows are based on an instruction set developed
    by Intel Corporation that is called Intel
    instruction set.
  • Until 2006, all Macintosh computers used a
    different instruction set, the PowerPC
    instruction set, designed for Powerful PC
    processors.
  • In 2006, Apple began offering Macintosh
    computers with a choice of either Intel or
    PowerPC processors.

38
Computer Instructions (Continued)
  • Currently, you cannot run a program designed for
    one instruction set on a computer having a
    different instruction set.
  • In the future, you may be able to run Windows on
    a Macintosh that uses the Intel instruction set,
    although the particulars of that are uncertain.
  • When you pick a family of computers, such as
    Windows or the Macintosh, you pick not only the
    hardware, but also the sets of programs that can
    run on one family of computers.

39
Computer Data
  • All computer data are represented by bits.
  • The data can be numbers, characters, currency
    amounts, photos, recordings, or whatever.
  • Bits are grouped into 8-bit chunks called bytes.
  • For character data, such as letters in a persons
    name, one character will fit into one byte.
  • Thus, when you read a specification that a
    computing device has 100 million bytes of memory,
    you know that the device can hold 100 million
    characters.

40
Important Storage-Capacity Terminology
41
Ambiguity of Binary Data
  • It is not possible to determine the type of
    computer data just by looking at the data.
  • The bit string 01000001 can be interpreted as the
    decimal number 65, as the character A, or as part
    of a picture or a sound file.
  • Further, it could be part of a computer
    instruction.
  • The CPU determines how to interpret a bit string
    from the context in which it encounters it.
  • If the string occurs in the context of reading
    instructions, it will be interpreted as a
    computer instruction.

42
Ambiguity of Binary Data (Continued)
  • If it occurs in the context of reading
    instructions, it will be interpreted as the
    character A.
  • If it occurs during arithmetic operations, it
    will be interpreted as the number 65.
  • This ambiguity is more than curiosity virus
    authors and other cyber-criminal use it to their
    advantage.

43
Knowledge for the Informed Professional
  • Suppose that your IS department states that you
    can buy three different computer configurations
    for three different prices.
  • The computers are described by expressions like
    the following
  • Intel Pentium 4 Processor at 2.8 GHz with 533MHz
    Data Bus and 512K cache, 256MB RAM
  • Intel Pentium 4 Processor at 2.8 GHz with 533MHz
    Data Bus and 512K cache, 512 MB RAM
  • Intel Pentium 4 Processor at 3.6 GHz with 533MHz
    Data Bus and 1MB cache, 256 MB RAM

44
Knowledge for the Informed Professional
(Continued)
  • Now, you, have two choices
  • You can tell the people in the IS department to
    specify what they think is best
  • Or, with a little bit of knowledge on your part,
    you can work with the IS department to ask
    intelligent questions about the relationship of
    these computers to the kind of work your
    department does

45
Computer with Applications Loaded
46
Contemporary Operating Systems
47
Mac OS
  • Apple Computer, Inc. developed its own operating
    system for the Macintosh, Mac OS.
  • Macintosh computers are used primarily by graphic
    artists and workers in the arts community.
  • As of 2006, Macintosh computers will be available
    for both PowerPC and Intel CPUs.
  • A Macintosh with an Intel processor is able to
    run both Windows and the MAC OS.

48
Unix OS
  • Unix is an operating system that was developed at
    Bell Labs in the 1970s.
  • It has been the workhorse of the scientific and
    engineering communities since then.
  • Unix is generally regarded as being more
    difficult to use than either Windows or the
    Macintosh.
  • Many Unix users know and employ an arcane
    language for manipulating files and data.
  • In general, Unix is not for the business user.

49
Linux OS
  • Linux is a version of Unix that was developed by
    the open-source community.
  • This community is a loosely coupled group of
    programmers who mostly volunteer their time to
    contribute code to develop and maintain Linux.
  • The open source community owns Linux, and there
    is no fee to use it.
  • Linux is a popular operating system for Web
    servers.

50
Application Software
  • Application software consists of programs that
    perform a business function.
  • Some application programs are general purpose,
    such as Excel or Word.
  • Other application programs are specific
  • QuickBooks, for example, is an application
    program that provides general ledger, and other
    accounting functions.

51
Application Software (Continued)
  • Sources
  • You can buy computer software several ways
  • Off-the-shelf
  • Off-the-shelf with alterations
  • Tailor made
  • Horizontal-Market Applications Software
  • Horizontal-market application software provides
    capabilities common across all organizations and
    industries.
  • Word processor, graphics programs, spreadsheets,
    and all presentation programs are all
    horizontal-market application software.

52
Application Software (Continued)
  • Custom-Developed Software
  • Sometimes organizations develop custom
    application software.
  • They develop such programs themselves or hire a
    development vendor.
  • Custom development is difficult and risky.
  • Every application program needs to be adapted to
    changing needs and changing technologies .

53
Software Sources and Types
Write a Comment
User Comments (0)
About PowerShow.com