Course Description
This course delves into the principles and practices of object-oriented programming (OOP) and software architecture. Students will gain a solid understanding of OOP concepts, design patterns, and the fundamentals of building scalable and maintainable software architectures. The course will cover advanced topics such as architectural styles, design principles, Test-Driven Development and the modeling of software solutions. (3 credits)
Prerequisite
- ITE 211: Data Structures and Algorithms
Student Learning Outcomes (SLOs)
Students who successfully complete this course will be able to:
- Understand and apply core object-oriented programming concepts.
- Use design patterns to solve common software design problems.
- Design and evaluate software architectures for scalability and maintainability.
- Employ tools and design for securing software products.
- Implement architectural best practices in software development.
- Explore the use of AI in modern development.
- Build tests to validate and verify software code.
- Utilize Object Relationship Mapping (ORM) to store objects in database storage.
Course Activities and Grading
Assignments | Weight |
---|---|
Discussions (Weeks 1-8) | 10% |
Assignments (Weeks 1-5, 7-8) | 75% |
Labs (Week 6) | 10% |
Quizzes (Week 6) | 5% |
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 | 3,5 | Topics: Introduction to Software Architecture
|
|
2 | 1 | Topics: Introduction to Object-Oriented Analysis, Design, and Development
|
|
3 | 1 | Topics: Advanced Object-Oriented Development |
|
4 | 2 | Topic: Design Patterns |
|
5 | 4 | Topics: Software Security and Scanning Tools |
|
6 | 7 | Topics: Testing
|
|
7 | 8 | Topics: Object Relational Mapping |
|
8 | 6 | Topic: Machine Learning and AI
|
|
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.