18-642/96-821 Introduction to Software Engineering
As a student in Introduction to Software Engineering, you have the opportunity to practice principled software development in the context of an authentic project using an agile method. You track your progress against a plan and manage risks along the way. You prioritize features, do pair programming and follow test-driven development. You measure code coverage and code quality. Through this course, you experience the ins and outs of software engineering. Topics covered in the course include software lifecycles, project planning, requirements tracking, software development, using a revision control system, testing, user personas, user scenarios, and agile development.
Credit units: 12
Prerequisites: Students should be comfortable programming in an object-oriented language.