Final Review
·
Software engineering concepts: process, methods, and
tools
·
Software process models: steps, artifacts produced,
activities
o Waterfall model
o Iterative model (e.g., RUP)
o Incremental model
o Prototype model
o Agile model
·
Software architecture design
o Architecture design
principles and issues
o Architecture styles: pipe
and filter, object-oriented, implicit invocation, client server, layered,
repository, interpreter, process control
o Architecture style
evaluation: invariants and constraints, specializations, advantages vs.
disadvantages
·
Software design methods: characteristics of good
design, design concepts, interface design, etc.
·
Software management
o Software planning
and scheduling: software plan, CPM, Gantt charts,
o Software
estimation: Function points, COCOMO model
·
Software verification and validation
o Software
inspection and static analysis techniques
o Software testing process:
steps, activities, artifacts produced
o Software test
case design techniques: functional testing, structural testing