Demonstrate the ability to analyze, plan and produce a complete software application.

  • Articulate the software system development life cycle and its characteristics.
  • Apply best practices regarding project management.
  • Analyze needs and constraints of complex software system design.
  • Write a project proposal, a project report and an operating manual.
  • Collaborate with team members to implement a large software system.
  • Understand and apply modern software production practice and tools such as component-based programming, integrated development environment, version control and testing.

Required Course

  • CST 438: Software Engineering (4 units)