You are responsible for the following for CS1 Final Exam
Here are the key concepts that YOU need from this course:
- Mental model of class/object
- Mental model of the contents of a class
- Organization of Java code
- Java syntax
- Understand Java's use of class, instance, values, references
- Parameter passing and scope
- Logistics of an algorithm
- Encoding algorithms as methods
- Understanding the encapsulation that classes provide
- Integrity of state
- Hiding implementation details
- Encapsulating complex tasks
Here is the specific material you are responsible for:
- Material on Quiz
1 Study Guide
- Material on Quiz
2 Study Guide
- Material on Quiz
3 Study Guide
- Material on Quiz
4 Study Guide
- Software Life Cycle (SLC)
- Be able to list the steps of the SLC in order
- Know why each step and what is produced in each
- Know which step the most time is usually spent in
- Know why the waterfall model is sometimes used to
represent the SLC
- Design
- Given a specification, what would you look at to start defining
objects in a system and their behaviors/methods?
- Given a specification, what type of word would likely be
become either objects or instance variables?
- Given a specification, what type of word would likely be become
a method/behavior?
- Once you've identified objects of the system, how do you move
on to identifying classes?
- Testing and Debugging
- What is testing? What is debugging?
- Know the difference between testing and debugging
- Know the difference between Black Box and White Box Testing
- Know the difference between Empirical Testing and Formal
Verification
- What role do equivalence classes play in testing?
- Be able to set up the test cases to thoroughly test a system
- Professionalism and Ethics
- ACM Code of Ethics and Professional Conduct
- Know and understand the 8 Moral Imperatives
- Ownership of Software
- Copyrights
- Patents
Phil White
Feb. 14, 2005
http://www.cs.rit.edu/~paw/cs1/final.html