ICS 414: Software Engineering II
Description: Continuation of 314. Project management, quality, and productivity control, testing and validation, team management. Team-oriented software-implementation project.
Objectives
- Develop ability to design, manage, and implement a medium-scale software system.
Program Learning Outcomes
- a. Students can apply knowledge of computing and mathematics appropriate to the discipline
- b. Students can analyze a problem, and identify and define the computing requirements appropriate to its solution
- c. Students can design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs
- d. Students can function effectively on teams to accomplish a common goal
- e. Students have an understanding of professional, ethical, legal, security and social issues and responsibilities
- f. Students can communicate effectively with a range of audiences
- g. Students can analyze the local and global impact of computing on individuals, organizations, and society
- h. Students can recognize the need for and an ability to engage in continuing professional development
- i. Students can use current techniques, skills, and tools necessary for computing practice
- j. An ability to use and apply current technical concepts and practices in the core information technologies. [BA IT only]
- k. An ability to identify and analyze user needs and take them into account in the selection, creation, evaluation and administration of computer-based systems. [BA IT only]
- l. An ability to effectively integrate IT-based solutions into the user environment. [BA IT only]
- m. An understanding of best practices and standards and their application. [BA IT only]
- n. An ability to assist in the creation of an effective project plan. [BA IT only]
Textbook(s): Course notes
Grading: Project (Intermediate deliverables) 80%
Final project 20%
Schedule: This is a project-based course. Students split into teams to design, implement, test, and evaluate a moderate-scale software system. Classroom sessions are a mix of weekly team meetings, monthly milestone deliverables, and monthly formal reviews. Individual evaluation of each team member occurs twice a month through meetings with the instructor to assess progress and group participation. Evaluations of the progress of the entire group occur 4 times during the semester (once per month). The evaluations assess whether adequate progress on the project is being made, the quality of the artifacts being produced by the team, the efficiency of the group process, and the types of group communication in use and their effectiveness.