Mission Statement:

advertisement
Wayland Baptist University
HAWAII CAMPUS SCHOOL
OF BUSINESS
SYLLABUS
Mission Statement:
Wayland Baptist University exists to educate students in an academically
challenging, learning-focused and distinctively Christian environment for professional success, and
service to God and humankind.
Course: CSCI 1305-SA01 Introduction to Computer Science
Term: Summer –May 27 –August 5, 2015
Instructor: Gary Teed
Office Phone and Wayland Email Address: 352-3231 – gary.teed@wayland.wbu.edu or
garyteed@aol.com
Office Hours: I am available before and after class or by appointment if you need help or have a
problem. Building and Location: Mililani Campus, Computer Lab
Class Meeting Time and Location: Wednesday, 5:30-10:00PM, Mililani Computer Lab Classroom #8
Catalog Description: Overview of the field of computer science, including concepts of computer
programming with an emphasis on problem solving, critical thinking, logical reasoning, design and
implementation techniques, and testing; background material if needed such as GUI operating system
use and file and directory manipulation; and ethics issues facing computer science
professionals. Programming will be done with a modern language such as Python. Suitable for nonmajors with significant computer experience and for majors with no prior programming
experience. Other students should take COSC 2311.
Prerequisites: none
Required Textbook:
BOOK
Computer Science: An
Overview
AUTHOR
ED YEAR PUBLISHER
ISBN#
UPDATED
Glenn Brookshear
12
2014
Pearson
9780133760064
Dennis Brylow
Optional Materials: Lecture, case study and practical exercises will be used as appropriate. Information
other than in the text will be made available as necessary in class. Current events will be discussed
during class period.
Course Outcome Competencies: Upon completion of this course the student should be able to:
 Demonstrate grasp of basics of computer use and operation
 Demonstrate comprehension of programming and basic skill
 Understand and describe core areas of the computer science field
 Demonstrate ability to perform problem solving, critical thinking, and logical reasoning
 Understand ethics of computer use for ordinary users and professionals
 Explain the organization and use of networks, including the Internet and the World Wide Web.
Attendance Requirements: Attendance and oral participation are mandatory. All absences must be explained
to the instructor, who will determine whether to omitted work may be made up.
All Wayland students are expected to attend every class meeting; the minimum percentage of class
participation required to avoid receiving a grade of “F” in the class is 75%. Students who miss the first two
class meetings without providing a written explanation to the instructor will be automatically dropped from
the roster as a “no-show.” Students who know in advance that they will be absent the first two class
meetings and who wish to remain in the class must inform the instructor in order to discuss possible
arrangements for making up absences.
Statement on Plagiarism and Academic Dishonesty: Wayland Baptist University observes a zero tolerance
policy regarding academic dishonesty. Per university policy as described in the academic catalog, all cases of
academic dishonesty will be reported and second offenses will result in suspension from the university.
Disability Statement: “In compliance with the Americans with Disabilities Act of 1990 (ADA), it is the
policy of Wayland Baptist University that no otherwise qualified person with a disability be excluded
from participation in, be denied the benefits of, or be subject to discrimination under any educational
program or activity in the university. The Coordinator of Counseling Services serves as the coordinator of
students with a disability and should be contacted concerning accommodation requests at (806) 2913765. Documentation of a disability must accompany any request for accommodations.”
Course Requirements: When a student reaches that number of absences considered by the instructor to be
excessive, the instructor will so advise the student and file an unsatisfactory progress report with the
campus dean. Any student who misses 25 percent or more of the regularly scheduled class meetings will
receive a grade of F in the course. You will be expected to keep up, or ahead, of the class schedule and
assignments. Come prepared for quizzes, exams and discussion of assignments for every class. It is
YOUR RESPONSIBILITY to inform me in advance of any problems, so that an alternative might be
worked out. You will only be allowed to make up work early if it is pre-approved with the instructor. If
you have special learning needs please let me know ahead of time. It is the University’s policy that no
otherwise qualified person experiencing disabilities be excluded from participation in, be denied the
benefits of, or be subject to discrimination under and educational program or activity in this University.
If a student has an impairment that would require additional accommodations by the instructor and/or the
University, then please inform the instructor, or Center Director, beginning of the first class session.
GRADING
FINAL
200 PTS
A=600-540
Quiz’s
120 PTS
B=539-480
LABS
110 PTS
C=479-420
PROJECT
100 PTS
D= 419-360
Homework
70 PTS
F= Below360
Tentative Schedule:
CLASS DATE
Week
27
May
15
3 June
15
READING
Chapter
1
2
TOPIC
Topics
1. What is computer science?
2. What is an algorithm, program,
software,
hardware…
3. Introducing algorithms
4. History of computing from gears to
PDAs
5. Founding of the Internet; Google
6. Seven Big Ideas of Computer
Science
(algorithms, abstraction, creativity,
data,
programming, internet, and impact.)
7. Some social issues about the Internet
8. Bits and bytes – main memory
9. Boolean Logic
10. Gates and flip-flops
11. Hexadecimal notation
12. Measuring memory
13. Mass storage (history and design)
14. Optical storage systems and CD
storage
formatting
15. Flash Memory
16. Representing TEXT
17. Storing and manipulating IMAGES
18. Representing SOUND
19. Binary Notation
20. Analog or digital (which is best?)
21. Storing and manipulating numbers
(two’s complement)
22. Fractions and Floating Point
Notation
1. Programming languages –
programming
with Python.
2. Currency conversion
3. Programming errors – syntax errors
4. Data compression
5. Compressing IMAGES
6. Compressing AUDIO and VIDEO
7. Communications errors – PARITY
and
ASSIGNMENT
Handout provided in Class
Practical Application
Quiz 1 Chapter 1
Handout provided in Class
Practical Application
10
June
15
3-4
HAMMING
8. TRANSITION TO MODULE 3
9. Architecture overview and the basics
of
a CPU
10. Program storage
11. Cache memory
12. Machine language
13. Arithmetic and Logic
14. Addressing memory
15. The machine cycle – fetch, decode,
execute.
16. Program versus data
17. Logic Operations
18. Peripheral Devices and Controllers
19. Direct Memory Access, USB,
Firewire
20. Communications
21. Input and Output coding with
Python
22. Pipelining and multiprocessors
1. A short history
2. Smartphones
3. Software classification
4. Components of an OS
5. Firmware
6. Processing Information and
Interrupts
7. Handling Competition and
Semaphores
8. Deadlock – death of a process
9. OS Security – Internal and external
threats.
10. TRANSITION TO MODULE 5.
11. Network classifications and
topologies
12. Protocols and the “Hidden
Terminal”
13. Bridges, switches, and routers
14. Cloud Computing
15. The Internet
16. Internet Applications
17. Multimedia Streaming and Wireless
Telephones
18. World Wide Web and Hypertext
(HTML)
19. Servers and Clients
20. Internet Protocols and Software
21. TCP/IP, UDP and OSI Layers
22. Computer Security, Hacking,
Viruses,
Quiz chapter 2
Handout provided in Class
Practical Application
17
June
24
1 July
15
5
6-7
8
Encryption and CERT
23. Legal Approaches to Network
Security
1. Algorithm Definition
2. Primitives and Programming
Language
3. Pseudocode
4. More practice with Python
5. Discovery and Representation of
Algorithms
6. Problem Solving and Program
Development
7. Iterative Structures (searches, loops,
sorts, recursion)
8. Efficiency
1. Early years – a history of
programming
languages
2. Beyond the machine and the
evolution of
programming languages
3. Variables and data types
4. Data structures and arrays
5. Control statements (GOTO)
6. Functions
7. Converting language from one to
another
8. Development Packages
9. Object-Oriented Programming
(OOP)
10. Logic-based Programming
11. TRANSITION TO MODULE 8
12. What is Software Engineering?
13. The Software Lifecycle – Design,
Implementation – Testing –
Maintenance
14. Development
15. Modularity and its Particulars
(coupling,
binding, etc.)
16. Design Patterns
17. Quality Assurance
18. Documentation
19. A Good Interface
20. Ownership and Liability
1. Data Structures – What are they?
2. Arrays, Lists, Queues
3. Trees, Branches, and Nodes
4. Static versus Dynamic Structures
5. Pointers
6. Storing Arrays, Aggregates, and
Quiz chapter 3 and 4
Handout provided in Class
Practical Application
Quiz Chapter 5
Handout provided in Class
Practical Application
Quiz chapter 6 and 7
Handout provided in Class
Practical Application
8 July
15
9
15 July
15
10
22 July
15
11
29 July
15
12
5 Aug
15
Lists
7. Storing Stacks and Queues
8. Storing Binary Trees
9. Manipulating Data Structures
10. Customized Data Types
11. Classes and Objects
12. Pointers in Machine Language
MIDTERM EXAM
Quiz chapter 8
1. The Significance of Database
Handout provided in Class
Systems
Practical Application
2. Schemas
3. Database Management Systems
4. Models
5. Relational Models and SQL
6. Object-Oriented Databases
7. Database Integrity
8. Sequential, Indexed, and Hash Files
9. Data Mining
10. Social Impact of Database
Technology
1. Scope of Computer Graphics
Quiz Chapter 9
2. Modeling Objects and Scenes
Handout provided in Class
3. Rendering, Clipping, Shading
Practical Application
4. Global Lighting
5. Animation
6. Dynamics and Kinematics
1. Intelligence and Machines
Quiz on Chapter 10
2. Turing Test
Handout provided in Class
3. Understanding Images
Practical Application
4. Language Processing
5. Reasoning
6. Representing and Manipulating
Knowledge
7. Learning
8. Genetic Algorithms
9. Artificial Neural Networks
10. Robotics
11. The Consequences of Artificial
Intelligence
1. Functions and their Computations
Quiz on Chapter 11
2. Turing Machines
Handout provided in Class
3. Universal Programming Languages
Practical Application
4. Noncomputable Functions
5. A problem’s “Complexity”
6. Polynomial versus Nonpolynomial
Problems
7. Cryptography and PKI
Extended Computer Science
Applications;
Discussion of Social Media and Review
for
Final Examination.
During this period, students will present
their
PROJECT on social media systems.
Download