Software Engineering Syllabus
Download
Report
Transcript Software Engineering Syllabus
Chapter 0
Introduction
Yonsei University
1st Semester, 2012 Sanghyun Park
Outline
What is computer science?
What is an algorithm?
History of computing
What is Computer Science?
Computer science is the discipline that seeks to build a
________ ________ for such topics as computer design,
computer programming, information processing, and
algorithmic solutions of problems
A computer is the machine that performs _________
(provides computing capabilities to its users)
Computing is the execution of an “_________”
What is an Algorithm? (1/3)
A set of steps that defines how a task is performed
Formal definition: an _______ set of ___________,
executable steps that define a __________ activity
Examples of algorithms
Operating a washing machine
Multiplication of 2 integers
Finding the greatest common divisor of two positive integers
(Figure 0.2)
What is an Algorithm? (2/3)
A machine-compatible representation of an algorithm is
called a _______
Representation of an algorithm so that it can be communicated
to a ________
The process of developing a program is called ____________
Programming languages (C, C++, Java)
Programs, and algorithms they represent, are
collectively referred to as ________, and the machine
itself is _________
What is an Algorithm? (3/3)
If no algorithm exists for performing a task,
then the task cannot be performed by a machine
Gödel’s _____________ theorem:
some problems cannot be solved by algorithms
Central Role of Algorithms in
Computer Science
History of Computing (1/9)
Abacus (almost 5,000 years ago)
First computing device.
Position of ______ represents and stores data
History of Computing (2/9)
Represent data through mechanical _____ positioning
Pascal, Leibniz:
Output achieved by observing the final gear positions
Babbage: Print values on paper
1645: Pascal (1623-1662) makes “Pascaline”.
Follow addition algorithm
1674: Leibniz (1646-1716) designs “Stepped Reckoner”.
A variety of arithmetic operations from which the user can select
History of Computing (3/9)
1832: Babbage (1792-1871).
Prototype of a difference engine
(6 digit calculator using gear technology)
Sequence of steps could be communicated to the
machine in form of holes in paper cards (programmable).
His assistant “Augusta Ada Byron” is often identified as
world’s first __________
Herman Hollerith (1860-1929) applied punch cards idea
to speed up _________ in 1890 US Census.
(Work led to the creation of ____)
History of Computing (4/9)
__________ supplement mechanical devices
(electronically controlled mechanical relays)
1940: Electromechanical machine of George Stibitz
at Bell Laboratories (Model I relay calculator)
1944: Mark I, Harvard University with a group of IBM engineers
(first widely known programmable calculator)
Vacuum Tubes
1939: John V. Atanasoff and Clifford Berry complete a prototype
16-bit adder. This is the first machine to calculate using vacuum
tubes
History of Computing (5/9)
1945: John von Neumann (1903-1957) drafts a report
describing the future computer eventually built as EDVAC
(Electronic Discrete Variable Automatic Computer)
This is the first description of the design of
a _____________ computer, and gives rise to the term
“von Neumann computer”
1946: ENIAC (Electronic Numerical Integrator And
Calculator). University of Pennsylvania
History of Computing (6/9)
Transistors, integrated circuits (IC)
Texas Instruments announces the start of commercial
production on silicon transistors
1958: At Texas Instruments, Jack Kilby completes building the
first integrated circuit (IC), containing five components on a
piece of germanium half an inch long and thinner than a
toothpick
1972: Dennis Ritchie develops __ at Bell labs
1976: Steve Jobs and Stephen Wozniak
built a commercially viable home computer
(established _____ company)
History of Computing (7/9)
1977: Bill Gates and Paul Allen found Microsoft
1981: IBM introduces first desktop computer called
Personal Computer “PC”, with operating system
developed by Microsoft
1982: Japan launches fifth generation computer focused
on AI
1984: CD-Rom introduced by Sony and Philips
1985: C++ (object-oriented extension to C) issued from
Bell labs
1989: Tim Berners-Lee proposes a World Wide Web
project to CERN (European Council for Nuclear
Research)
History of Computing (8/9)
1989: Intel’s 80486 microprocessor is introduced
1990: Microsoft introduces Windows 3.0
1993: Intel’s Pentium processor is introduced
1994: Netscape’s first browser becomes available
1995: Java is released from Sun Microsystems
1996: Intel’s Pentium Pro processor is announced
1998: Microsoft releases Windows 98
2002: Intel’s Pentium 4 processor offers speed up to
2.53 GHz
History of Computing (9/9)
New trends
DNA computing
Pervasive computing
Wearable computing
Quantum computing
Some references
Timeline of computing history (IEEE Computer)
(http://www.computer.org/computer/timeline/)
The history of computing (Virginia Tech)
(http://ei.cs.vt.edu/~history/)