ICS 314: Software Engineering I
Description: System specification, modeling and analysis, prototyping, hierarchal design, program design methods, cost estimation, project management, computer-aided software design. Team-oriented software-design project. Pre: 211 or consent.
Objectives: ICS 314 is a fast-paced immersion into significant software engineering concepts and technologies. Students will gain competancy with:
* Software engineering concepts
* Software engineering technologies
* Design
* Quality assurance
* Professional development and portfolios
* Technical writing
* Open source software engineering
Course Learning Outcomes: (See course objectives.)
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
- 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]
Prerequisites: 211 or consent.
Textbook(s): Course notes.
Grading: Technical writing (30%)
Code and other artifacts (30%)
Midterm and final (10%)
In class activities (30%)
Schedule: ICS 314 consists of the following modules. The number of weeks devoted to each is indicated in parentheses:
* Introduction to the course (1)
* Professional persona (1)
* Open Source Software (1)
* Coding (1)
* Configuration Management (1)
* Development Environments (1)
* Quality Assurance (2)
* User Interface Design (2)
* Application Design (3)
* Data Design (2)
* Requirements Design (1)