Software Q. & Proj. Mgmt.College of Arts + Science
This course presents theory and practice for testing software and assuring its quality. Topics include introduction to software quality, software standards, software reviews and inspections, software verification & validation, software quality management, software quality assurance, software measurements & metrics, software security, and formal/informal proofs of program correctness. Topics related to testing include stages of testing, types of testing, testing techniques, designing test-cases, test coverage analysis, automated testing tools, and performance testing tools. This course will provide students with practical experience using a different testing techniques such as Unit Testing, User Interface Testing, Continuous Integration, and Test-Driven Development (TDD) for software projects. Students gain hands-on experience in planning and managing software development through real-world projects. By implementing a term project, students will learn how software projects are planned, developed, monitored, and controlled. This course will cover in-depth software project management topics such as project planning, estimation, scheduling, tracking, risk management, configuration and change management, and version management. This course will strongly emphasize collaboration, continuous integration, and continuous delivery using agile software development methodologies. Agile framework and tools such as SCRUM, XP, Kanban, and/or JIRA are covered and applied to the term project.