CSCI 370 - Lecture 10 - Agile Practices, Testing Strategies, and Software Development Principles

Agile Development Principles and Practices

Collective Code Ownership

Code Silos


DevOps and Pipelines

DevOps

Pipeline

Benefits:


Testing in Software Development

Unit Testing

Automated Testing

Test-Driven Development (TDD)

Regression Testing

Smoke Testing


Code Quality and Maintenance

Refactoring

Simplicity in Code

Avoid Premature Coding


Agile Methodology Terms

Sprint

Scrum

Scrum Master

Velocity

Product Owner

Product Backlog

Potentially Shippable Product Increment


User Stories

User Story Components

  1. Who: The user or role requesting the feature.
  2. What: The specific feature or functionality.
  3. Why: The reason or goal behind the request.
  4. Acceptance Criteria: Conditions that must be met for the story to be considered complete.

Purpose of Asking “Why”


Other Concepts

Pair Programming

Sustainable Pace


Next class will cover:

Midterm rescheduled for March 27. Sample midterm will be provided in the next lecture.