ITE 215: Software Development Process Overview

Course Description

This comprehensive course covers a spectrum of software development methodologies, programming languages, and secure coding practices. Students will gain practical experience with Waterfall and Agile methodologies, explore the daily workflows of professional developers, and develop proficiency in key programming languages such as C/C++, Java, C#, Go, and Rust. Emphasis will also be placed on secure coding techniques to protect applications from vulnerabilities and threats. (3 credits)

Prerequisite

  • ITE 211: Data Structures and Algorithms

Student Learning Outcomes (SLOs)

Students who successfully complete this course will be able to:

  1. Understand and differentiate between Waterfall and Agile development methodologies.
  2. Develop practical skills in multiple programming languages: C/C++, Java, C#, Go, and Rust.
  3. Implement secure coding practices to identify and mitigate common security vulnerabilities.
  4. Design configuration management system for handling code repositories.

Course Activities and Grading

AssignmentsWeight

Discussions (Weeks 1-8)

5%

Assignments (Weeks 1, 2, 4-8)

70%

Labs (Weeks 1 & 3)

15%

Quizzes (Week 3)

10%

Total

100%

Required Textbooks

  • This course uses Open Educational Resources (OER). OER are openly licensed, educational resources that can be used for teaching, learning and research. OER may consist of a variety of resources such as textbooks, videos and software that are no cost for students.

Course Schedule

Week

SLOs

Readings and Exercises

Assignments

1

1

Topic: Software Project Creation and Common Developer Trends

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 1 Assignment - Best Practices for Writing Code
  • Submit Week 1 Lab - Thonny Python IDE

2

1

Topic: Waterfall Software Development Methodology

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 2 Assignment - Working with Requirements

3

1

Topic: Introduction to Agile Development and Scrum

  • Readings:
    • Agile Project Management - Modules 1-4

 

  • Read assigned material
  • Review "Accessing Coursera Modules"
  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 3 labs and assignments

4

2,3

Topic: C/C++ Fundamentals

 

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 4 Assignment - Basic C Programming: Calculator Application

5

2,3

Topic: Java Fundamentals

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 5 Assignment - Library Management System

6

2,3

Topic: C# Fundamentals

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 6 Assignment - E-Commerce System

7

2,3

Topic: Go and Rust Fundamentals

 

  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 7 Assignment - Go and Rust Programs

8

4

Topic: Software Configuration Management and Git/Github
  • Review the lecture material
  • Participate in the Discussions
  • Submit Week 8 Assignment - GitHub Practice
  • Complete Course Evaluation

COSC Accessibility Statement

Charter Oak State College encourages students with disabilities, including non-visible disabilities such as chronic diseases, learning disabilities, head injury, attention deficit/hyperactive disorder, or psychiatric disabilities, to discuss appropriate accommodations with the Office of Accessibility Services at OAS@charteroak.edu.

COSC Policies, Course Policies, Academic Support Services and Resources

Students are responsible for knowing all Charter Oak State College (COSC) institutional policies, course-specific policies, procedures, and available academic support services and resources. Please see COSC Policies for COSC institutional policies, and see also specific policies related to this course. See COSC Resources for information regarding available academic support services and resources.