You are on page 1of 29

COMPUTER SCIENCE OVERVIEW

• Why Study CS

1
Why Study Computer Science?
• Variety of job titles
■ Software Engineer (Applications or System), System
Programmer, System Engineer, System Analyst/Programmer,
Database Administrator, Network Systems and Data
Communication Analyst, Network Programmer/Administrator,
Web Developer/Administrator, Computer Scientist, and
Information Technology Specialist.

• A Bachelor's degree in computing is required for high-pay IT


positions.
■ According to U.S Department of Labor Statistics and Predication, very
good opportunities are expected for college graduates with at least a
bachelor’s degree in computer science and with practical work experience.

2
Why Study Computer Science?
• Fast–growing IT jobs
■ According to the U.S Government Labor Department job statistics and
predications, the professional IT workforce is projected to add over a million new
jobs between 2004 and 2014, an increase of about 30 percent.

■ According to the U.S Government Labor Department job statistics and


predications, software engineers are projected to be one of the fastest growing
occupations over the period 2004-2014.

■ Money Magazine May 2006 : Software Engineer is the #1 best job and the
forecasted 10-year job growth is 46.07%.

■ CNNMoney.COM quotes an ACM study as saying that “Despite all the publicity in
the United States about jobs being lost to India and China, the size of the IT
employment market in the United States today is higher than it was at the height of
the dotcom boom.”
3
Projected Science & Engineering Job Openings
(new jobs plus net replacements, 2004-2014)

Engineers

81% 22%

Social Scientists
9%
Computer specialists
59%
Life scientists
4%
Physical scientists
4%
Mathematical scientists
US Bureau of Labor Statistics, November 2005 2%
http://w w w .bls.gov/opub/mlr/2005/11/art5full.pdf
4
Why Study Computer Science?

• Creativity
• Intellectual Challenge
• Programming is extremely challenging
• CS applied to other fields is a different intellectual challenge.
• Helping Others
• Produce artifacts which make people’s lives easier
• Flexibility
• Telecommuting, working at home, …
• Lifelong Learning
• Computer scientists must master a moving target.

5
Why computer science & engineering?

• Impact
• Advances in computing drive advances in all other fields
• Advances in computing power the economy
• Not just through the growth of the computing industry – through Multi
Factor Productivity Growth throughout the economy

• Advances in computing change the way we live, the way we


work, the way we learn, the way we communicate

• Unbelievably cool academic opportunities

6
Exponential progress

7
Exponential Growth makes many predictions look
foolish

• “I think there is a world market for maybe five computers” -- Thomas


J. Watson, founder and Chairman of IBM, 1943

8
Makes many predictions look foolish
• “Computers in the future may weigh no more than 1.5 tons” --
Popular Science, 1949

9
Makes many predictions look foolish

• “There is no reason anyone would want a computer in their home” --


Ken Olsen, founder and President of (DEC) Digital Equipment
Corporation, 1977

10
Makes many predictions look foolish

• “640K ought to be enough for anybody” -- Bill Gates, founder,


Chairman, and CEO of Microsoft, 1981

11
CS and Intellectual opportunity
• “… the software industry is going to make more
breakthroughs in these next 10 years than it's made in
the last 30 … software is really going to transform not
just what we think about as the computer industry, but
the way that everything is done …”

• B. Gates
CEO Microsoft

12
Intellectual opportunity

Harnessing
parallelism Transforming other fields
of science and engineering
Computer-enhanced A teacher
driving for every learner

Flattening Re-architecting
the world the Internet Transforming Entertainment
and art

13
Computer Science:
What can I do with this major?
• Arts
• Film reproduction
• Animation
• Computer Enhanced Graphics
• Art-based Games

• Business
• Model Forecasting
• Process Improvements
• Information Technology (IT)
• Business Infrastructure (Network/Communications)
• Help Desk/Application Support

14
Computer Science:
What can I do with this major?

• Commercial
• Custom PC Engineer (gaming/media station/graphics
workstations)
• Equity Theory (stock trader)
• SOHO IT (small office/home office)
• Software Developer
• Web Developer

15
Computer Science:
What can I do with this major?
• Health Research
• Improved web-based support for trauma recovery
• Software for assessing and coping with Mental Impairment
• Clinically relevant Compression for Improved tele radiology
• Vascular Modeling for blood flow
• 4D Heart modeling with MRI etc

16
Computer Science:
What can I do with this major?
• Security
• Network Intrusion/Denial of Service/Malacious Attacks
• Biometrics (face recognition/iris scans/fingerprint)
• Forensics (identification/cause of death/age-progression)

• Telecommunications
• Call Center
• Mobile Devices/Instant Messaging
• VoIP (Voice Over IP)
• File sharing (Lime Wire/Napster…)
• POD Casting/Video Streaming

17
• CS Overview

18
Computing Systems

• Computer: A machine that is designed to perform


operations that are specified with a set of
instructions called a program.

• Hardware: the computer equipment, such as the


keyboard, the mouse, the terminal, the hard disk,
and the printer.

• Software: the programs that describe the steps


that we want the program to perform.

19
Computer Hardware

• CPU
• Central Processing Unit
• Processor + ALU(Arithmetic logic unit)
• Internal Memory
• Read-only Memory(ROM)
• Random-access Memory(RAM)
• External Memory
• Hard-disk
• Removable Media (Floppy/DVD/Flash Stick)

20
Internal organization of a
computer

21
Types of computer
• Personal Computer(PCs)
• small inexpensive computers
• commonly used in offices, homes, and laboratories
• Microcomputer

• Workstation
• minicomputer or mainframe computer
• small enough to fit on a desktop

• Super computer
• the fastest computer

22
COMPUTER SOFTWARE

23
Operating System

• provides an interface between the user and the


hardware
• in which the user can select and execute the application
software
• Contains drivers/interface for devices
• contains many utilities to perform functions such as
printing files, copying files and listing files.

24
Software tools
• word processor (Microsoft word,…)

• spread sheet (Lotus 1-2-3, Excel…)

• database management system (MySQL, Oracle, dBase IV, Paradox,


…)

• CAD package (AutoCAD, AutoSketch, CADKEY,…)

• mathematical computation tools and graphic tools (MATLAB,


Mathmatica, MATHCAD, Maple)

• Graphics/Image Tools (Paint, Photoshop, Gimp)

25
Executing a Computer Program

1. Compiling
• source program
• object program
2. Linking and Loading
3. Executing
4. Debugging
26
• Compiling:
• Translate high-level language into machine language
• source program: the original program written in high-level
language such as C++
• object program: the machine language version of source
program

• Linking and loading


• Linking: link the other necessary machine language
statements to the object program
• Loading: load the program into memory

27
• Debugging
• a process to correct errors(often called bugs) in a
program
• compile-time error: syntactic errors
• run-time error: logic errors

28
Software Life-Cycle Phases
(assuming problem is already identified)

Life Cycle Percent of Effort

Definition 3
Specification 15
Coding and modular testing 14
Integration and testing 8
Maintenance 60

29

You might also like