150 likes | 426 Views
CS361 Winter 2013 Final Exam Review. Software Engineering I Oregon State University. Comprehensive Exam. The exam will cover the entire set of course material Contents will not be limited to this set of slides: please look at all of the slides. Materials.
E N D
CS361 Winter 2013 Final Exam Review Software Engineering I Oregon State University
Comprehensive Exam • The exam will cover the entire set of course material • Contents will not be limited to this set of slides: please look at all of the slides
Materials • You are allowed one side of one letter-sized piece of paper for notes during the exam • Hand-written crib sheets only
Software Processes • Waterfall vs. Spiral vs. Agile processes • Incremental vs. Iterative • When to use them
Requirements • Functional requirements • Non-functional requirements • Eliciting requirements • Use cases and attributes of use cases • How do you write a good use case? • Main success scenario • Pay attention to good style and practices
Diagram Notations • Know your diagrams • ER Diagrams • Dataflow diagrams • Message sequence charts • UML • Class diagrams • Real-time UML • StateCharts • Structured class diagrams
Evaluating Requirements and Prototyping • Attributes of good requirements • Approaches for evaluating requirements • Paper prototyping • Risk management • Types of prototypes and associated advantages/disadvantages
Architecture • Different types of decomposition • Patterns and their usefulness • Coupling and cohesion • Assignment of responsibilities • Usefulness of diagramming
Design Patterns • What design patterns are • What is useful about design patterns • How to apply the various design patterns
Evaluating Architecture • Methods to evaluate an architecture • Looking at an existing architecture and identifying potential problems
Scheduling and Estimation • How to estimate • How to schedule • What activity diagrams and Gantt charts are
Elements of Agile Development • Principles of agile software development • How interactions with the customer are done • Key aspects of XP • Key aspects of SCRUM
Testing and Quality • Definition of unit testing • Refactoring
Agile Collaboration • How to collaborate and communicate with your client • How to collaborate and communicate with your fellow developers
Professionalism • How to behave ethically, morally, and legally • What engineering professionalism is