Computer Science Department

cs.salemstate.edu

 

                                                                                                      SYLLABUS                                                                                     Fall 2009

 

CSC 215 Survey of Computer Science II                                                                                                                                       4 credits

Prerequisite(s): CSC 201J, and a grade of C+ or better in either CSC 200 or CSC 200A.

 

Instructor:       Beifang Yi                                             Office: MH 208D                              Phone: (978) 542-7426

email:              byi@salemstate.edu                            Hours: TWRF 12:30-3:00pm         Web Site: http://cs.salemstate.edu/~b_yi/

 

 

 

Section

 

Time

 

Room

 

                   Final Exam

 

 [Witete:

01

TR 9:30 – 11:15

MH 301

Dec 15th, Thursday, 2:00pm—4:00pm, MH 301

 

 

Catalog description: 

This course builds on CSC200A and provides an overview of selected Computer Science topics that are more technical and advanced than those discussed in the earlier course. Topics include a detailed discussion of the binary, octal, and hexadecimal numeration systems, the machine representation of data and instructions, the design of a typical computer chip, programming in a simplified machine language, and such application areas as robots and embedded systems (programming and construction), artificial intelligence, computability theory and Turing machines, and an introduction to networks, including the Internet model. Four lecture hours per week plus laboratory work outside of class.

 

Course Goals:

The aims of this course are to help the student to gain an appreciation for the breadth and variety within the computer science field and to be better prepared for the technical treatments presented in later courses. Upon completion of the course, a student should be able to do the following:

 

·    CG1: to build an in-depth understanding for machine representation of data and instructions;

·    CG2: to build detailed understanding of several major application areas of computer science;

·    CG3: to provide a capability to solve problems in each topic area.

 

Course Objectives:

Upon successful completion of the course, a student will have:

 

·    CO1: carry out the conversion of text and numeric data between a human readable form and binary form such as ASCII characters, decimal negative numbers to 2's complement binary numerals, and exponential numbers to binary floating point;

·    CO2: write simple machine language programs for a simple computer chip and memory;

·    CO3: construct simple sequential logic circuits;

·    CO4: solve problems from selected areas in artificial intelligence;

·    CO5: solve problems from selected areas of computational theory;

·    CO6: solve problems involving embedded computer systems;

·    CO7: solve problems involving networks of all types including the Internet;

·    CO8: solve problems in distributed algorithms, graphics, and human/computer interface design;

·    CO9: understand syntax diagrams for the specification of language elements;

·    CO10: design simple web pages.

 

 

Course Topics:

      The department-standard list of topics and a general course bibliography can be found on the Computer Science Department website (at http://cs.salemstate.edu/dept/index.php?page=184). The topics include:

 

  review of computer system components                                                                                                                                             

  computer hardware and data representation                                                            

°        logic gates and circuits

°        binary, octal, decimal, and hexadecimal numeration systems and conversions

°        machine representation of numbers and conversions to and from decimal

°        integers and 2's complement

°        floating point numbers (including the IEEE 754 standard)

°        computer arithmetic

°        CPU structure

°        main memory structure and details of construction and operation

°        details of magnetic and optical media

  computer software

°        machine languages                                                                                                                  

­  memory addresses

­  program counter, instruction register

­  the instruction cycle

­  instruction set, op codes, operands

°        assembly languages                                                                                                                                                                          

°        high-level programming languages                                                                                                               

­  language specification: syntax diagrams, EBNF

­  lexical analysis, parsing, code generation

°        system tools: editors, linkers, loaders, other utilities                                                                                                                 

  artificial intelligence

°        goals and issues                                                                                                                                                                                  

°        intelligent agents                                                                                                                                              

°        solving problems by searching                                                                                                                                                        

­  breadth-first search

­  depth-first search

­  heuristic functions

°        logical induction                                                                                                                                                                              

°        logical deduction                                                                                                                                                                               

°        formal logic                                                                                                                                                                                        

°        fuzzy logic                                                                                                                                                                                        

°        machine learning                                                                                                                                              

°        expert systems                                                                                                                                                                                   

°        neural networks                                                                                                                                             

°        Turing test                                                                                                                                                                                         

  computation theory

°        big-O algorithm analysis                                                                                                                                                                  

°        finite automata, Turing machines, the Church-Turing thesis                                                                                                 

°        computability, the P and NP classes                                                                                                            

  embedded systems                                                                                                                              

°        microcontrollers

°        real-time systems

  networks

°        network models and protocols                                                                                 

­  TCP/IP

­  UDP

­  CSMA/CD

­  CSMA/CA

°        HTML, JavaScript                                                                                                                                                                          

°        circuit switching, packet switching                                                                                                                                               

°        wireless networks                                                                                                                             

°        network security                                                                                                                                                                                

  parallel processing                                                                                                                                                                                   

  distributed systems                                                                                                                                               

  computer graphics                             

°        modeling

°        rendering

°        scene graph

°        visualization

  human/computer interfaces                                                                                                                                                    

 

Text(s): (required) Computer Science: An Overview, 10th Edition, by J. Glenn Brookshear. Addison-Wesley.,2008. (ISBN: 0-321-52403-9)

 

Additional references:

·         Concepts in Computing, by Kenneth Hoganson. Jones and Bartlett Publishers. 2008

·         Invitation to Computer Science (4th edition, 2007), by Schneider and Gersting. Thomson Course Technology.

·         Computer Science Illuminated (3rd edition, 2006), by Dale and Lewis. Jones and Bartlett Publishers.

·         The Essence of Artificial Intelligence, by Alison Cawsey. Prentice Hall. 1998

·         Computer Systems, by J. Stanley Warford. Jones and Bartlett Publishers. 2006.

·         The Architecture of Computer Hardware and Systems Software: An Information Technology Approach, 3rd Edition, by Irv Englander (2003), Wiley.

·         (Handouts will be given in class).

 

Cell phones:

      Turn the ringer off, or, better yet, turn the phone off.

 

Class Attendance:

      Class attendance is highly recommended.  You are responsible for all materials presented in class, quizzes, examinations, and other announcements. No excuses of any nature will be construed as relieving you from the responsibility for completion of the work assigned. Each student is responsible for completing all course requirements and for keeping up with all that goes on in the course (whether or not the student is present).

 

Scheduled Lab Attendance:

      There will be one or two lab classes to be held in the Lab. Lab attendance is mandatory for every student. The other laboratory work is done on the student’s own time, outside of scheduled lectures. The lab class activities and lab homework are part of the homework assignments.

 

Final Grade:  

      Final grade will be determined using the following grading weights:

 

homework assignments

55%

writing and presentation assignment

10%

midterm examination

15%

final examination

20%

 

     Attendance is not used to calculate the final grade: however, note that you are at all times responsible for assignments and materials presented in class.

 

Submission Deadlines/Late Penalties:

      There are specific due dates/times for any assignments and these assignments should be completed by the deadlines. A penalty of 6% will be applied for late submission for each day (including weekends and holidays).        All the assignments will be announced/given in class and through course website.

 

Exams/Quizzes:

      There will be one midterm (15% total), and one final (comprehensive) exam (20% total). The midterm will be held in week 8 depending on class progress. The final exam will be on Dec 15th, Thursday, 2:00pm—4:00pm, in MH 301. Note: Make-ups are given for missed quizzes or examinations only under exceptional and documented circumstances.

 

Missed Tests:

      Missed tests will be made up only under extreme conditions/emergency with the proper documentation. Students who know in advance that they must be absent on an exam day for an excusable reason should notify the instructor prior to the exam day. Students who are absent on the day of the exam for an excusable reason should contact the instructor immediately following their absence. Makeup work will be permitted only when the instructor is presented with acceptable documentation for acceptable absences. It is your responsibility to notify your instructor of any excused absence as far in advance as possible.

 

Writing and Presentation Assignments:

      There will be a writing and presentation assignment. Students select a topic and write a short essay about it. The presentation will be based on the writing essay and other topics and will be delivered in the class. Specifications on this assignment will be given in class. Note: the writing and presentation assignment constitutes 10% of the final grade. There are no make-ups for missed presentation unless under extreme circumstances with advanced notification of the instructor and certain supporting documentation. The writing essay may be submitted anytime after the midterm examination but must be turned in before the final examination.

 

Homework Assignments:

      There will be a series of assignments from the textbooks and other sources.  Reading assignments will be a part of the homework assignments. All assignments are due at the beginning of class on the dates to be set by the instructor. A 6% penalty will be imposed for each day (including weekends and holidays) an assignment submission is late.

      One assignment with the lowest grade will be dropped from the final grading.

      Please note that these assignments constitute 55% of the final grade and that in addition to these homework assignments there will be Writing and Presentations assignments which make up 10% of the final grade.

 

Study Groups:

      While I strongly encourage study groups, I require that each student hand in his/her answers in her/his own words ‑ if two answers are exactly same or highly similar to each other, neither will receive credit. 

 

Academic Integrity:

      Academic Integrity Policy and Regulations can be found in the College Catalog and on the College's website (http://www.salemstate.edu/content_images/academic_integrity_regulations_2007(1).pdf). The formal regulations are extensive and detailed - familiarize yourself with them if you have not previously done so. A concise summary of and direct quote from the regulations: "Materials (written or otherwise) submitted to fulfill academic requirements must represent a student's own efforts". Submission of other's work as one's own without proper attribution is in direct violation of the College's Policy and will be dealt with according to the College's formal Procedures.

 

"Salem State College is committed to providing equal access to the educational experience for all students in compliance with Section 504 of The Rehabilitation Act and The Americans with Disabilities Act and to providing all reasonable academic accommodations, aids and adjustments. Any student who has a documented disability requiring an accommodation, aid or adjustment should speak with the instructor immediately. Students with Disabilities who have not previously done so should provide documentation to and schedule an appointment with the Office for Students with Disabilities and obtain appropriate services."

 

 

Please remember that if, for any reason, you decide to drop this course, you MUST do so officially through the Registrar's office. The last day to withdraw from a course this semester is November 20th.

 

 

Note: This syllabus represents the intended structure of the course for the semester. If changes are necessary, students will be notified in writing and via all regular class communication mechanisms (class discussion, emails, and/or the instructor’s website at http://cs.salemstate.edu/~b_yi/.).