Upload
heru-damanik
View
221
Download
0
Embed Size (px)
Citation preview
8/2/2019 Teknologi Software
1/56
Computer Software
Te k n ik In fo r m a t ik a P e r t a n ia n
Mainly based on:James A. O'Brien, and George Marakas. Management Information Systems with MISource2007, 8th ed. Boston, MA: McGraw-Hill, Inc., 2007. ISBN: 13 9780073323091
8/2/2019 Teknologi Software
2/56
Softwareis aproduct consists ofcomputer programsand data files that
work together toprovide a computerwith the instructions
and data necessaryfor carrying out aspecific type of task
What is software?
8/2/2019 Teknologi Software
3/56
Software includes
A computer programis a set of detailed,instructions that tells a computer how to solve a
problem or carry out a task
Executable fileshave an .exe file extension, andcan be double-clicked to start the program (run
by users)Support modulesare extra programs that are
not run by users, but help the main program torun (file extension such as .dll and .ocx)
Data filescontain data that is necessary for theprogram to run, but not supplied by the user For example, text of Help file or license agreement,
word lists for a dictionary, graphics File extensions .txt, .bmp, and .hlp
Components in a Typical Software Product
8/2/2019 Teknologi Software
4/56
Computer programmerswrite the
instructions for the computer programs
Software publishersdistribute the software,
they specialize in packaging, marketing, andselling commercial software
Userswho write macros and customizesoftware
Who Creates Computer Software?
8/2/2019 Teknologi Software
5/56
Categories of Software
8/2/2019 Teknologi Software
6/56
Categories of Application Software
Custom
Commercial
Off-the-Shelf(COTS)
GeneralPurpose
Open-Source
Application Software
8/2/2019 Teknologi Software
7/56
Categories of Application Software
General Purpose
Programs that perform common information
processing jobs for end users; e.g., wordprocessing, spreadsheet
Also call productivity packages
Custom Software
Software applications developed within anorganization for use by that organization
8/2/2019 Teknologi Software
8/56
Categories of Application Software
Commercial Off-the-Shelf (COTS)
Many copies sold
Minimal changes beyond scheduled upgrades
Purchasers have no control over specifications, schedule, orevolution, and no access to source code or internaldocumentation
Product vendor retains the intellectual property rights of thesoftware
Open-source Software
Developers collaborate on the development of an application
using programming standards which allow anyone to contribute tothe software
As each developer completes a project, the application codebecomes available and free to anyone who wants it
8/2/2019 Teknologi Software
9/56
Custom : Business Application Software
Thousands of these packages supportspecific end-user applications
Customer Relationship Management
Enterprise Resource Planning
Supply Chain Management
Function-Specific Application Software
Web-enabled electronic commerce
8/2/2019 Teknologi Software
10/56
8/2/2019 Teknologi Software
11/56
Components of Top Software Suites
GP W d P i /D k P bli hi
8/2/2019 Teknologi Software
12/56
GP : Word Processing/Desktop Publishing
Word Processing
Create, edit, revise, and print documents
E.g., Microsoft Word, Lotus WordPro, CorelWordPerfect
Desktop PublishingProduce printed materials that look
professionally published
E.g., Adobe PageMaker, Microsoft Publisher,QuarkXPress
GP El i S d h
8/2/2019 Teknologi Software
13/56
GP : Electronic Spreadsheets
Used by virtually every business foranalysis, planning, modeling
Worksheet of rows and columns
Can be stored on local computers or a network
Requires designing format and developingthe relationships (formulas)
Most help you develop charts and graphdisplays of spreadsheet results
Supports what-if questions
GP P t ti G hi
8/2/2019 Teknologi Software
14/56
GP : Presentation Graphics
Microsoft PowerPoint,Lotus Freelance,Corel Presentations
Are used to createmultimedia
presentations ofgraphics, photos,animation, video
Top packages can
tailor files fortransfer in HTML
format to websites
Convert numericdata into graphics
Common
presentationgraphicspackages
GP G hi S fGP G hi S f
8/2/2019 Teknologi Software
15/56
GP : Graphics SoftwareGP : Graphics Software
Software used to createSoftware used to create
graphicsgraphics
Examples:Examples:
Adobe PhotoshopAdobe Photoshop
Adobe IllustratorAdobe Illustrator
QuarkQuark XPressXPress
Adobe PageMakerAdobe PageMaker
CorelDrawCorelDraw
GP P l I f ti M
http://www.siggraph.org/publications/newsletter/v33n4/columns/images/rouse5.jpghttp://images.google.ca/imgres?imgurl=http://www.osxfaq.com/radio/11-2003/adobe.jpg&imgrefurl=http://www.osxfaq.com/radio/11-2003/11-08.ws&h=192&w=158&sz=6&tbnid=b0Z3Yt96tM8J:&tbnh=97&tbnw=80&start=1&prev=/images?q=adobe&hl=en&lr=&ie=UTF-88/2/2019 Teknologi Software
16/56
GP : Personal Information Managers
Manages schedules, appointments, tasks
Most have ability to access the Web and e-mail
Stores information about clients
Some support team collaboration by sharinginformation with other PIM users
e.g., Lotus Organizer, Microsoft Outlook
Software for end user productivity and collaboration
GP : Web Browsers
8/2/2019 Teknologi Software
17/56
GP : Web Browsers
Software that supports navigation throughpoint-and-click, hyper-linked Web resources
Becoming the universal platformfrom which end users launch
Information searches
Multimedia file transfer
Discussion groups
Other Internet-based applications
GP : Search Engines
8/2/2019 Teknologi Software
18/56
GP : Search Engines
Google, Ask Jeeves, Look Smart, Lycos,
Overture, Yahoo!
Browsers are used to gain accessto Internet search engines
Using search engines to find information hasbecome an indispensable part of Internet,
intranet, and extranet applications
GP : E mail Instant Messaging Weblogs
8/2/2019 Teknologi Software
19/56
GP : E-mail, Instant Messaging, Weblogs
E-mailSending and receiving messages and
attachments via the Internet, intranet, orextranet
Instant messaging (IM)
Receive electronic messages instantly
Weblog or blog
A personal website in dated log formatUpdated with new information about a subject
or range of subjects
GP : Groupware
8/2/2019 Teknologi Software
20/56
GP : Groupware
Software that helps workgroups collaborateon group assignments
E-mail, discussion groups, databases, audio,and video conferencing
E.g., Lotus Notes, Novell GroupWise,
Microsoft Exchange
Windows SharePoint Services and
WebSphere both allow teams to createwebsites for information sharing anddocument collaboration
GP : Integrated Packages
8/2/2019 Teknologi Software
21/56
GP : Integrated Packages
Integrated packages combine the functionsof several programs into one package
E.g., Microsoft Works, AppleWork
Advantages
1. Many functions forlower price
2. Uses less disk space
3. Frequently pre-installed on PCs
Disadvantages
1. Limited functionality
Software Alternatives
8/2/2019 Teknologi Software
22/56
Software Alternatives
Outsource software development andmaintenance
Application service providers (ASPs)Companies that own, operate, and maintain
application software and computer systemresources
Use the application for a fee over the Internet
Pay-as-you-goUse expected to accelerate
Software Licensing
8/2/2019 Teknologi Software
23/56
Software Licensing
Trade secrets
COTS and ASP software is licensed, which involves
You buy a license to use the software
Licensed to protect vendors property rights
You dont buy software
Traditional contract law, includingUniform Commercial Code (UCC)
Copyright and trademarkIntellectual property rights
Categories of System Software
8/2/2019 Teknologi Software
24/56
Categories of System Software
System
ManagementPrograms
SystemDevelopmentPrograms
Manages hardware, software, network,and data resources of computer systems
Operating systems, networkmanagement programs, database
management systems, system utilities
Helps users develop IS programs andprocedures, and then prepare them
for processing
Includes language translators andeditors, CASE, and programming tools
Operating Systems
8/2/2019 Teknologi Software
25/56
Operating Systems
Integrated system of programs that
Providessupport
services as thecomputer
executesapplicationprograms
Manages theoperations of
the CPU
Controls theinput/out,storage
resources, and
activities of thecomputersystem
The operating system must be loaded and activated
before other tasks can be accomplished
Interface between user and the computer
Operating System Basic Functions
8/2/2019 Teknologi Software
26/56
Operating System Basic Functions
Command-drivenMenu-drivenGraphical User
Interfaces (GUI)
Resource Management
8/2/2019 Teknologi Software
27/56
Resource Management
Part of the operating system that managesthe hardware and networking resources of acomputer system
Includes CPU, memory, secondary storagedevices, telecommunications, and
input/output peripherals Common functions
Keeping track of where data and programsare stored
Subdividing memory; providing virtualmemory capability
File Management
8/2/2019 Teknologi Software
28/56
File Management
Part of the operating system that controls thecreation, deletion, and access of files and
programsKeeps track of physical location on storage
devices
Maintains directories of information about thelocation and characteristics of stored files
Task Management
8/2/2019 Teknologi Software
29/56
g
Part of the operating system that managesthe accomplishment of end user computing
tasks
Controls which task gets access to the CPU,and for how long
Can interrupt the CPU at any time tosubstitute a higher priority task
Supports preemptive and cooperative multi-tasking and multi-processing
Popular Operating Systems
8/2/2019 Teknologi Software
30/56
p p g y
WindowsGUI, multitasking, networking, multimedia
Microsofts operating system
NT, XP, 2003
Different versions manage servers
Standard, enterprise, data center, Web
Unix
Multitasking, multi-user, network-managing
Portable - can run on mainframes,midrange,and PCs
Popular Operating Systems
8/2/2019 Teknologi Software
31/56
p p g y
Linux
Low-cost, powerful, reliable, Unix-like
operating systemOpen-source
MAC OS XApple operating system for the iMac
GUIMultitasking
Multimedia
Interface Between End Users & Computer
8/2/2019 Teknologi Software
32/56
p
User Interface
8/2/2019 Teknologi Software
33/56
The part of the operating system that allowsyou to communicate with it
Determines how user friendly the computer is
Three main types
Command-driven
Menu-driven
Graphical user interfaces (GUI)
Command Line
8/2/2019 Teknologi Software
34/56
Early computers used only this
Have to memorize codes
Not very user friendly
Not colorful usually written in black and
white
No pictures
Graphical User interfaces
8/2/2019 Teknologi Software
35/56
Came about with menus
Graphical user interface (GUI)
Came about with Apples development ofMacintosh Finder
Pictures (icons) represent software
Colorful
Contributed to the explosion of computer use.
Application Servers
8/2/2019 Teknologi Software
36/56
Provide an interface between an operatingsystem and the application programs of users
Middleware
Helps diverse software applications exchange
data and work together more efficiently
Other System Software
8/2/2019 Teknologi Software
37/56
UtilitiesMiscellaneous housekeeping functions
Example: Norton utilities includes data backup,virus protection, data compression, etc.
Performance Monitors
Programs that monitor and adjust computersystem to keep them running efficiently
Security MonitorsMonitor and control use of computer systems
to prevent unauthorized use of resources
Programming Languages
8/2/2019 Teknologi Software
38/56
Machine Languages
8/2/2019 Teknologi Software
39/56
First Generation Languages
The most basic of programming languages
Strings of binary codes unique to each computer
Requires specific knowledge of theinternal operations of the CPU being used
Must specify the storage location for everyinstruction and item of data used
Difficult to work with, and error prone
Assembler Languages
8/2/2019 Teknologi Software
40/56
Second Generation Languages
Developed to reduce difficultiesin writing machine language programs
Uses assemblers to convert the programsinto machine instructions
Symbols used to represent operation codesand storage locations
Alphabetic abbreviations, call mnemonics, andother symbols represent operation codes,
storage locations, and data elements
High-Level Languages
8/2/2019 Teknologi Software
41/56
Third Generation Languages
Uses brief statements or arithmetic expressions
Statements translated into machine language
by compilers or interpreters
Less efficient than assembler language andrequires greater translation time
Machine dependent
Examples: BASIC, COBOL, FORTRAN
Fourth-Generation Languages
8/2/2019 Teknologi Software
42/56
Fourth-Generation Languages
Variety of programming languages that arenonprocedural and conversational
Programmers specify the result wanted;
the computer determines the sequence ofinstructions that accomplish the result
Simplifies the programming process
Natural language; very close to English
Sometimes called fifth-generation (5GLs)
Object-Oriented Languages
8/2/2019 Teknologi Software
43/56
Easier to use and more efficient for graphics-oriented user interfaces
Easier to use and more efficient for graphics-oriented user interfaces
Most widely used software
development languages
Reusable: can use an object from oneapplication in another application
Reusable: can use an object from oneapplication in another application
Examples: Visual Basic, C++, JavaExamples: Visual Basic, C++, Java
Most object-oriented languages provide a GUIthat supports visual programming
Most object-oriented languages provide a GUIthat supports visual programming
Object-Oriented Languages
8/2/2019 Teknologi Software
44/56
Combines data elements
and the procedures that
will be performed uponthem into objects
Example: data about abank account and the
procedures performed
on it, such as interestcalculations
Web Languages
8/2/2019 Teknologi Software
45/56
HTML A page description language that createshypertext documents for the Web
XML Describes Web page content byapplying identifying tags or contextual
labels to the data
Java Object-oriented programming language thatis simple, secure, and platform independent
Java applets can be executedon any computer
J2EE versus .Net
8/2/2019 Teknologi Software
46/56
Programming Tools
8/2/2019 Teknologi Software
47/56
Help programmers identify and minimizeerrors while they are programming
Graphical programming interfaces
Programming editors
Debuggers
CASE Tools
A combination of many programming tools into
a single application with a common interfaceUsed in different stages of the systems
development process
Language Translators
8/2/2019 Teknologi Software
48/56
Converts code written in programminglanguage to a language the computer canunderstand
Translator helps computer process data
I dontunderstand! I
need atranslator.
Language Translator Programs
8/2/2019 Teknologi Software
49/56
Translate instructions written in programminglanguages into machine language
AssemblerAssembler
Translatesassemblerlanguagestatement
CompilerCompiler
Translates high-level language
statements
InterpreterInterpreter
A compiler thattranslates andexecutes eachstatement ina program,
one at a time
Web Services
8/2/2019 Teknologi Software
50/56
Web services aresoftware components
that are
Based onframework of Weband object-orientedstandards andtechnology
Used to link theapplications ofdifferent users andcomputing platforms
via the Web
How Web Services Work
Open Source Software
8/2/2019 Teknologi Software
51/56
The basic ideaWhen programmers can read, redistribute, and
modify source code, the software evolvesThis can happen at astonishing speed
Produces better software than the traditional
commercial (closed) model
The proprietary approach to software
development has hidden costs that oftenoutweigh its benefits
Open Source Software
8/2/2019 Teknologi Software
52/56
Open source software is notShareware
Public domain softwareFreeware
A viewer or reader made freely available
without source code
OSS
Is copyrighted & distributed with license termsSometimes carries a fee for packaging,
distribution, or support
Open-Source Licensing Characteristics
8/2/2019 Teknologi Software
53/56
The License
The program must include the source code and allow
distribution in source code as well as compiled formShall not restrict any party from selling or giving away
the software as a component of an aggregate software
distribution containing programs from several sourcesMust allow modifications and derived works, and must
allow them to be distributed under the same terms as
the license of the original software
Open-Source Licensing Characteristics
8/2/2019 Teknologi Software
54/56
The License (continued)May restrict source code from being distributed in
modified form only if the license allows the distribution
of patch files with the source code for the purpose ofmodifying the program at build time
Must not discriminate against any person or anygroup of persons
Must not restrict anyone from making use of the
program in a specific field of endeavor
Open-Source Licensing Characteristics
8/2/2019 Teknologi Software
55/56
The License (continued)The rights attached to the program must
apply to all to whom the program isredistributed, without the need for executionof an additional license
Must not be specific to a product
Must not contaminate other software by
placing restrictions on any softwaredistributed along with the licensed software
Examples of Open Source Software
8/2/2019 Teknologi Software
56/56
Open OfficeCan be used for any purpose: domestic, commercial,
educational, or public administration
Mac OS X
Based on a form of UNIX
Advanced GUISupports multi-tasking and multimedia
Integrated Web browser, e-mail, instant messaging,
search engine, digital media player, and more
Includes software development tools