CS / SWE 421 - Midterm Review Topics
The following things are what I expect you to know for the CS / SWE 421 Midterm
- UML
- How to draw and understand use-case diagrams
- How to draw and interpret class diagrams
- How to draw and interpret sequence diagrams
- How
to validate a class diagram contains all needed pieces to implement a
given scneario. Example: I give you a class diagram and the we-grow
description. Does it satisfy all needs?
- How to draw and understand an activity diagram (with or without swimlanes)
- How to draw and understand Dataflow Diagrams
- How to draw and understand Entity Relationship Diagrams
- How to draw and understand State Diagrams
- Software Engineering
- Be able to explain the generic process framework and APPLY it!
- communication, planning, modeling, construction, deployment
- Be able to explain a few general reasons many project fail and identify the reason a project failed given a scenario
- Be able to explain the umbrella activities (how, why, when, etc...) and how to apply them
- Software project tracking and control
- Risk management
- Software quality assurance
- Technical reviews
- Measurement
- Software configuration management
- Reusability management
- Work product preparation and production
- Be
able to explain what the CMM is (you do not need to memorize the 5
levels, but you should generally know what a level is if I give you the
name (e.g. "Managed") from the book (page 27-28)
- Be able to explain what process assessment is
- Be able to explain what the following models are (steps, etc...) and in what situations each is appropriate
- waterfall
- spiral
- RAD
- incremental
- Explain when to use prototyping (and why)
- Know
a general (1-2 sentence) description of formal methods model,
component based development, aspect oriented developement, the Unified
process
- Agile Methods
- Explain what agile methods are (similarities and differences between them and "heavyweight" methods)
- If I give you one of the 12 areas in eXtreme Programming, be able to explain it
- Know what factors may drive a project NOT to use XP
- Know what a software practice is and how it differs from a process model
- Requirements
- Know the general steps in the requirements process
- Inception, elicitation, elaboration, negotiation, specification, validation
- Know tasks you perform at each step
- Be able to describe problems in requirements. Answer the question "What is wrong with this functional requirement?"
- Know the difference between functional and non-functional requirements. Be able to give examples of both
Check back for updates! Last updated: 2/27/2008