Software: is the general term for various kinds of programs Software

advertisement
Software: is the general term for various kinds of programs
Software types: (1. Application software, 2. System software)
 Application software: Performs information processing tasks for end
users
 System software: Manages and supports operations of computer
systems and networks
Application software types:
 General purpose software: performs common information processing jobs for
end users
 E.g., word processing, spreadsheet, Web browsers, electronic mail,
etc.
 Application-specific software : supports specific applications of end users
 E.g., electronic commerce, customer relationship management, etc.


Custom software: that is developed within an organization for use by that
organization
Commercial Off-the-shelf (COTS) software : that is developed with the
intention of selling the software in multiple copies .
General purpose software:
 Software suites: combines several programs into one package
 E.g. Microsoft Office
 Advantages:
o Cost less than buying individual packages
o All have a similar GUI which gives them the same look and
makes them easier to learn and use.
o All share common tools such as spell checkers and help
wizards to increase their efficiency
o Work together well and import each other’s files easily.
 Disadvantages
o Features not used by all users
o Take a lot of disk space

Integrated packages: combines the functions of several programs into one
application
 E.g. Microsoft Works
 Advantages:
 Enough functions and features for lower price and smaller disk
space
 Disadvantage
 Limited functionality (leave out many features and functions
that are in software suites)

Word processing: Creates, edits, revises and prints documents
 E.g., Microsoft Word





Desktop Publishing: Produces printed materials that look professionally
published
 E.g., Adobe PageMaker
Electronic Spreadsheets: Worksheet of rows and columns Used for
calculations and charts
 E.g. Microsoft Excel,
Presentation Graphics : Prepare multimedia presentations
 E.g. Microsoft PowerPoint
Personal Information Manager (PIM): Store information about clients,
schedules, manage appointments, manage tasks
 E.g. Microsoft Outlook
Groupware: helps workgroups collaborate to accomplish group assignments.
 Includes E-mail, discussion groups, databases, videoconferencing
 E.g. Microsoft Exchange
Software alternatives
 Application Service Providers(ASPs): Companies that own, operate and
maintain application software and computer system resources (servers,
system software, networks)
 Advantages:
 the low cost of initial investment
 the short time needed to get the Web-based application
set up and running.
 ASP eliminates or drastically reduces the need for much of
the IT infrastructure (servers, system software, networks)

Software Licensing: to protect the vendor’s property rights
 All software (COTS, ASP) are licensed

Open-Source license: grants the right (1) to run the program, (2) own a
copy of the program’s source code, (3) modify the program’s source code,
and (4) distribute copies of the programs you build using the open-source
code.
 The only thing you usually can’t do: is fold an open-source
program into a program you’re licensing.
 e.g. Linux
System software types: (1. System management, 2. Systems development)
 System management programs: manage hardware, software, network, and
data resources
 E.g., operating systems, network management programs, database
management systems (DBMS), systems utilities
 Systems development programs: help users develop and prepare different
programs
 E.g., programming language translators and programming tools
Operating System basic functions: (1.User Interface 2.Resource management 3.File
management 4. Task Management)
 User Interface: Part of the operating system that allows you to communicate
with it
 Three main types:
 Command-driven
 Menu-driven
 Graphical user interfaces (GUI)

Resource management: Part of operating system that manages the hardware
and networking resources
 File management: Part of the operating system that controls the creation,
deletion, and access of files and involves keeping track of the physical
location of files on magnetic disks and other secondary storage devices.
 Task Management: Part of the operating system that control which task gets
access to the CPU and for how much time.
 Multitasking or time-sharing: Task management approach Assigns
only one task to CPU but switches between tasks so quickly looks like
executing all programs at once
Popular Operating Systems: (1.windows 2. Unix 3.Linux 4. MAC OS X)
 Unix
 can run on mainframes, midrange and PCs
 a popular choice for Web and other network servers.
 E.g. Solaris
 Linux
 Low-cost, powerful reliable Unix-like operating system
 E.g Red Hat, Caldera
 MAC OS X
 Apple operating system
Programming Languages
Four levels of Programming Languages (1. Machine Languages 2. Assembler
Languages 3. High-level Languages 4. Fourth generation Languages)
Machine Languages: program instructions had to be written using binary codes
unique to each computer
Assembler Languages: program instructions had to be written using abbreviations
and symbols represent operation codes, storage locations, and data
elements.
 Advantage: to reduce the difficulties in writing machine language programs
High-Level Languages: program instructions had to be written using statements
where each statement generates several machine instructions
 Advantages:
o Easier to learn than assembler languages.
High-Level Languages code concepts
 The syntax: (vocabulary, punctuation, and grammatical rules)
 the semantics: (meanings) of statements
High-Level Languages types: (1. Imperative 2. Object-Oriented )
 imperative language: is characterized by the use of variables, commands, and
procedures
 e.g. C
 Object-Oriented Languages: Combine data elements and the procedures that
will be performed upon them into Objects
 Most widely used software development languages today
 Advantages:
 Easier to use and more efficient for graphics-oriented user
interfaces
 Reusable: can use an object from an application in another
 e.g. C++, Java, Visual Basic
Fourth-Generation Languages: nonprocedural and conversational (Natural Language)
Web Languages: (HTML, XML)
 HTML : Web Languages describes a Web page format
 XML: Web Languages describes the contents of Web pages
 XML is used to store data that can easily be accessed or used by other
applications, like PHP, JavaScript
Translator Programs
 Translator Programs: Translate instructions written in programming
languages into machine language
 Assembler Language Translator  Assembler
 High-level Language Translator Programs  Compiler and Interpreter
 Compiler : translates all of the instructions in a program as a single
batch into machine language
 useful for larger programs
 Interpreter : translates each statement in a program one at a time
into machine language to be executed immediately
 useful to debug programs or for small programs
Programming Tools : (1. Graphical Programming Interfaces 2. Editors 3. Debuggers 4.
Linkers )
 Graphical Programming Interfaces
 Editors: Programming Tools allows you to create source files


Debuggers: a programing Tools to identify and minimize programming errors
or bugs
Linkers: a programing Tools combines your program's object file created by
the translator with other object files and link libraries, and produces a single
executable program
Download