Teknologi Software

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-8
  • 8/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

    E-mail

    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