Top Banner

of 27

Computer Science – CE -2013 - Section C

Apr 14, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 7/29/2019 Computer Science CE -2013 - Section C

    1/27

    Databases Management Web Programming

    Computer Graphics

  • 7/29/2019 Computer Science CE -2013 - Section C

    2/27

    A database is a structured collection of data The term database is correctly applied to the

    data and their supporting data structures,and not to the database management system(DBMS).

    The database data collection with DBMS iscalled a database system.

  • 7/29/2019 Computer Science CE -2013 - Section C

    3/27

    Well known DBMSs include Oracle

    FoxPro IBM DB2

    Linter

    Microsoft Access

    Microsoft SQL Server MySQL

    PostgreSQL and SQLite.

  • 7/29/2019 Computer Science CE -2013 - Section C

    4/27

    Database concept The database concept has evolved since the 1960s

    to ease increasing difficulties in designing,building, and maintaining complex informationsystems (typically with many concurrent end-users, and with a large amount of diverse data).

    Though the terms database and DBMS definedifferent entities, they are inseparable: adatabase's properties are determined by itssupporting DBMS.

  • 7/29/2019 Computer Science CE -2013 - Section C

    5/27

    Evolution of database and DBMS technology The introduction of the term database coincided with the

    availability of direct-access storage (disks and drums) fromthe mid-1960s onwards

    The term represented a contrast with the tape-basedsystems of the past, allowing shared interactive use ratherthan daily batch processing.

    In the period since the 1970s database technology haskept pace with the increasing resources becomingavailable from the computing platform: notably the rapidincrease in affordable capacity and speed of disk storage,and of main memory.

    This has enabled ever larger databases and higherthroughput to be achieved.

  • 7/29/2019 Computer Science CE -2013 - Section C

    6/27

    Active database Cloud database

    Data warehouse Distributed database Document-oriented database Embedded database

  • 7/29/2019 Computer Science CE -2013 - Section C

    7/27

    Early data models

    Hierarchical model

    Network model

    Inverted file model

    Relational model

    Object model

  • 7/29/2019 Computer Science CE -2013 - Section C

    8/27

    Database languages are dedicatedprogramming languages, tailored and utilizedto define a database (i.e., its specific data types and

    the relationships among them),

    manipulate its content (e.g., insert new data

    occurrences, and update or delete existing ones),and

    query it (i.e., request information: compute andretrieve any information based on its data).

  • 7/29/2019 Computer Science CE -2013 - Section C

    9/27

    The external level defines how each end-user type understands the organization of its

    respective relevant data in the database, i.e., the different needed end-user views. A single

    database can have any number of views at the external level.

    The conceptual level unifies the various external views into a coherent whole, global view.

    It provides the common-denominator of all the external views. It comprises all the end-user

    needed generic data, i.e., all the data from which any view may be derived/computed. It isprovided in the simplest possible way of such generic data, and comprises the back-bone of

    the database. It is out of the scope of the various database end-users, and serves database

    application developers and defined by database administrators that build the database.

    The internal level (or physical level) is as a matter of fact part of the database

    implementation inside a DBMS (see Implementation section below). It is concerned with

    cost, performance, scalability and other operational matters. It deals with storage layout of

    the conceptual level, provides supporting storage-structures like indexes, to enhance

    performance, and occasionally stores data of individual views (materialized views),

    computed from generic data, if performance justification exists for such redundancy. It

    balances all the external views' performance requirements, possibly conflicting, in attempt

    to optimize the overall database usage by all its end-uses according to the database goals

    and priorities.

  • 7/29/2019 Computer Science CE -2013 - Section C

    10/27

    Access control Data security

    Database audit

  • 7/29/2019 Computer Science CE -2013 - Section C

    11/27

    Every database transaction obeys thefollowing rules:

    Atomicity Consistency

    Isolation

    Durability

    http://en.wikipedia.org/wiki/Atomicity_(database_systems)http://en.wikipedia.org/wiki/Database_Consistency_(computer_science)http://en.wikipedia.org/wiki/Isolation_(database_systems)http://en.wikipedia.org/wiki/Durability_(computer_science)http://en.wikipedia.org/wiki/Durability_(computer_science)http://en.wikipedia.org/wiki/Isolation_(database_systems)http://en.wikipedia.org/wiki/Database_Consistency_(computer_science)http://en.wikipedia.org/wiki/Atomicity_(database_systems)
  • 7/29/2019 Computer Science CE -2013 - Section C

    12/27

    Programming is the intricate art of telling acomputer what to do.

    Programming allows you to make newsoftware and have the computer do newthings.

    Web site programming is the same exceptyou write applications or web pages that areused by a web browser.

  • 7/29/2019 Computer Science CE -2013 - Section C

    13/27

    HTML is written in the form of HTMLelements consisting of tags enclosed in angle

    brackets (like ), within the web pagecontent. HTML tags most commonly come in pairs like

    and

    Unpaired Tags e.g. , ,
    ,

  • 7/29/2019 Computer Science CE -2013 - Section C

    14/27

    It is simply a method or protocol (a very oldone) for interfacing external applications withservers

    The NCSA describes CGI as follows: A plain HTML document that the Web daemon

    retrieves is static, which means it exists in a

    constant state: a text file that doesn't change. ACGI program, on the other hand, is executed inreal-time, so that it can output dynamicinformation.

  • 7/29/2019 Computer Science CE -2013 - Section C

    15/27

    A CGI application can be written in almost anyprogramming language but most commonly Perl is used. Once the program is written it needs to be put in a special folder

    where external programs, like your web browser, can access it.

    It will carry out its action, like getting information from adatabase, and then return information back to your browser.

    CGI is supported on almost any platform, Windows orLinux variants

    CGI can be used for managing email, connecting to otherweb sites or servers, processing form information, storinginformation in a database, creating cookies in a webbrowser, and just about anything else.

  • 7/29/2019 Computer Science CE -2013 - Section C

    16/27

    The following CGI program shows all theenvironment variables passed by the web

    server:

  • 7/29/2019 Computer Science CE -2013 - Section C

    17/27

    Perl borrows features from other programming languagesincluding C, shell scripting (sh), AWK, and sed. The language provides powerful text processing facilities

    without the arbitrary data-length limits of many contemporary

    Unix tools, facilitating easy manipulation of text files. Perl gained widespread popularity in the late 1990s as a CGI

    scripting language, in part due to its parsing abilities. In addition to CGI, Perl is used for

    graphics programming

    system administration network programming

    Finance

    bioinformatics and other applications.

  • 7/29/2019 Computer Science CE -2013 - Section C

    18/27

    In older versions of Perl, one would write the Hello World program as:

    print "Hello World!\n";

    use5.010; say "Hello World!";

    In later versions, which support the say statement, one can also write it as:use 5.010;

    say "Hello World!";

    Good Perl practices require more complex programs to add the use strict; and usewarnings; pragmas, leading into something like:

    use strict;

    use warnings;

    print "Hello World!\n";

    $ perl -i.bak -lp -e 's/Bob/Robert/g' *.txt

  • 7/29/2019 Computer Science CE -2013 - Section C

    19/27

    Here is a more complex Perl program, that counts down the seconds up to a giventhreshold:

    #!/usr/bin/perl

    use strict;use warnings;my ( $remaining, $total );$remaining = $total = shift(@ARGV);STDOUT->autoflush(1);while ( $remaining ) {

    printf ( "Remaining %s/%s \r", $remaining--, $total );sleep 1;}print "\n";

  • 7/29/2019 Computer Science CE -2013 - Section C

    20/27

    The user interface, in the industrial design field ofhumanmachine interaction, is the space whereinteraction between humans and machines occurs.

    The goal of interaction between a human and amachine at the user interface is effective operationand control of the machine, and feedback from themachine which aids the operator in makingoperational decisions.

    Examples of this broad concept of user interfaces includethe interactive aspects of computer operating systems,hand tools, heavy machinery operator controls, andprocess controls. The design considerations applicablewhen creating user interfaces are related to or involvesuch disciplines as ergonomics and psychology.

  • 7/29/2019 Computer Science CE -2013 - Section C

    21/27

    A user interface is the system by which people (users)interact with a machine. The user interface includeshardware (physical) and software (logical) components. User

    interfaces exist for various systems, and provide a means of: Input, allowing the users to manipulate a system

    Output, allowing the system to indicate the

    effects of the users' manipulation

  • 7/29/2019 Computer Science CE -2013 - Section C

    22/27

    Direct manipulation interface is the name of a general class of user interfaces that allowusers to manipulate objects presented to them, using actions that correspond at leastloosely to the physical world.

    Currently (as of 2009) the following types of user interface are the most common: Graphical user interfaces (GUI) accept input via devices such as computer

    keyboard and mouse and provide articulated graphical output on the

    computer monitor. There are at least two different principles widely used in GUI design: Object-oriented

    user interfaces (OOUIs) and application oriented interfaces.

    Web-based user interfaces or web user interfaces (WUI) that accept inputand provide output by generating web pages which are transmitted via theInternet and viewed by the user using a web browser program. Newerimplementations utilize Java, AJAX, Adobe Flex, Microsoft .NET, or similar

    technologies to provide real-time control in a separate program, eliminatingthe need to refresh a traditional HTML based web browser. Administrative web interfaces for web-servers, servers and networked computers

    are often called control panels.

    Touchscreens are displays that accept input by touch of fingers or a stylus.Used in a growing amount of mobile devices and many types of point of sale,industrial processes and machines, self-service machines etc.

  • 7/29/2019 Computer Science CE -2013 - Section C

    23/27

  • 7/29/2019 Computer Science CE -2013 - Section C

    24/27

    a web site as the Front Office or Showroom software and the webapplication as the Back Office software.

    Other people may use Front End and Back End. The front office is where visitors come in to browse and sometimes

    make a purchase. The back office is there to provide support services for the front office,

    such as processing customer orders and maintaining, issuing andreplenishing inventory.

    While the front office is open to anyone, access to the back office isrestricted to authorised personnel only.

    While the front office software is web only, the back office softwarecan be either desktop or web, or a mixture of the two.

    It is possible for a web site (front end) to have a companion webapplication (back end), as shown in the following diagram:

  • 7/29/2019 Computer Science CE -2013 - Section C

    25/27

  • 7/29/2019 Computer Science CE -2013 - Section C

    26/27

  • 7/29/2019 Computer Science CE -2013 - Section C

    27/27