Software Development

Ever wondered what it takes to turn a great idea into a fully functional software product? This course covers everything from concept to implementation. Learn to use Git for efficient code management, ensure quality with comprehensive testing, and streamline delivery with CI/CD pipelines. Discover design patterns and apply SDLC methods. By the end, you'll be equipped to tackle any software project with confidence and expertise.

Student smiling while sitting outside, using a laptop.
Syllabus

Course Topics

Introduction to SDLC

Understand the Software Development Life Cycle (SDLC) and its significance in software engineering. Learn about various SDLC models and how to choose the right model for a project.

Requirements Gathering and Analysis

Explore techniques for effective requirements gathering, including interviews, surveys, and use case analysis. Learn to document and analyze requirements to ensure they meet user needs and project goals.

System Design

Learn the principles of system design, including architectural design and detailed design. Understand how to create design documents, system architecture diagrams, and design specifications to guide the development process.

Development and Implementation

Gain hands-on experience in the coding and implementation phase of the SDLC. Learn best practices for writing clean, efficient, and maintainable code, and understand the role of version control in managing code changes.

Testing and Quality Assurance

Explore various testing methodologies, such as unit testing, integration testing, system testing, and acceptance testing. Learn about the importance of quality assurance and how to implement testing strategies to ensure software reliability and performance.

Deployment and Maintenance

Understand the deployment phase of the SDLC, including preparing for release, deploying software to production environments, and managing post-deployment activities. Learn about maintenance practices, including bug fixing, updates, and performance monitoring.

Agile Methodology and DevOps

Dive deep into Agile methodology and DevOps practices. Learn about Agile principles, iterative development, Scrum and Kanban frameworks, and how to manage Agile projects. Explore continuous integration, continuous delivery, and continuous deployment (CI/CD) to automate and streamline the build, test, and deployment processes.

Course Level

300

Skills Covered

  • Software Development Life Cycle
  • Git (Version Control System)
  • CI/CD
  • Software Design Patterns
  • Agile Methodology
  • DevOps
  • Software Testing
  • Project Management
  • Scrum (Software Development)
  • JIRA
  • Github
  • Business Requirements

Common Prerequisites

All courses listed may not be required. Discuss with your advisor to learn more.

  • Web Development
  • Application Development I
  • Career Navigation and Exploration in Computer Science
  • Programming for Everyone I or
  • Introduction to Computer Science

Disclosure

This course is delivered online through an institution of the Lower Cost Models Consortium (LCMC) that is different than your degree-granting institution that awards the academic credit for the course.