| |
| META TOPICPARENT |
name="SyllabiFall2021" |
CSC 340: Software Engineering: 3 hours
Description
Students learn about the details of leading software engineering methodologies and how to implement the associated techniques. Prerequisite: (CSC 121 or ITSC 121) and CSC 150.
Goals for CSC 340 are:
- Learn the fundamentals of software engineering
- Learn the fundamentals of Agile
- Practice the aspects of Agile and SE on a real campus project
- Work on a team
Course outcomes for CSC 340 are:
- Upon completion of CSC 340, students will understand:
- the techniques associated with current software engineering techniques (specifically Agile)
- how to practice such techniques
- the issues associated with communicating with a customer
- how to write quality artifacts for a project and present them
- how to refine their work
Program outcomes for CSC 340 are:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions. (Computing student learning outcome 1)
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline. (Computing student learning outcome 2)
- Communicate effectively in a variety of professional contexts. (Computing student learning outcome 3)
- Recognize professional responsibilities and make informed judgments in computing practice based on legal, ethical, and moral principles. (Computing student learning outcome 4)
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline. (Computing student learning outcome 5)
- Learn new areas of technology. (Computing student learning outcome 6)
- Apply computer science theory and software development fundamentals to produce computing-based solutions. (Computer Science student learning outcome 1)
- Support the delivery, use, and management of information systems within an information systems environment. (Computing and Information Systems student learning outcome 1)
- Apply security principles and practices to maintain operations in the presence of risks and threats. (Cyber Security student learning outcome 1)
Integration
- Self learning at the introductory level by requiring students to learn at least one aspect of Agile programming on their own and use it during the semester.
- Note taking at the application level by requiring students to take quality notes from meetings and grading those notes
- Technical writing at the application level by quality artifacts and documentation to be in a final form
- Team work at the application level by
- requiring most (if not all) project work to be done in teams. Switching team members during the semester should be considered
- having the roles in the team chance throughout the semester
- Professional at the application level by requiring students to treat all team meetings in a professional context and preparing their work to be at the professional level instead of homework level.
- Security at the application level by requiring all work on software to include a section on the security issues
- Ethics at the application level by
- requiring all work on software to include a section on ethical issues
- covering cases of software failure and the ethics associated with that
- Verbal communication at the application level by requiring each team to make at least two presentations to the class.
|
| |
| 10/26: |
10/28: |
10/28: |
| 11/2: |
11/4: tasks assigned Database items |
11/4: |
11/9: Backlogs current Testing Overview |
11/11: Software metrics Creating interface designs |
11/11: |
|
|
< < |
11/16: Testing 1 & 2 Testing 3 & 4 |
11/18: Risks |
11/18: |
|
> > |
11/16: Testing 1 & 2 Testing 3 & 4 |
11/18: Risks Dealing with Users |
11/18: |
|
| |
11/23: PHP Trelio |
11/25: Thanksgiving Break |
11/25: Thanksgiving Break |
11/30: HTML guidelines Accessibility |
12/2: Rolling out software |
12/2: Project presentations |
| 12/7: Final Exam week |
12/9: Final Exam: 8:00-10:00 |
12/9:Final Exam week |
|