← Back to Home

Sprint Challenge

Sprint Challenge Overview

In this sprint challenge, you'll demonstrate your understanding of design patterns, UML diagrams, Gradle, and file I/O by building a real-world application.

Challenge Requirements

Detailed Challenge Tasks

In this sprint challenge, you'll apply all the concepts you learned throughout the sprint:

  1. Builder Pattern Implementation:
    • Create a WelcomeLetter class with multiple properties
    • Implement a Builder class inside the WelcomeLetter class
    • Add validation for required fields in the build() method
    • Create fluent interface methods that return the builder
  2. UML Diagrams:
    • Create a class diagram showing your WelcomeLetter class structure
    • Include properties, methods, and access levels
    • Create a sequence diagram showing how objects interact
    • Show method calls, return types, and alternative cases
  3. Gradle Setup:
    • Configure build.gradle with proper dependencies
    • Set up project structure correctly
    • Ensure tests can be run with Gradle
  4. File I/O Implementation:
    • Read template data from files
    • Process data and generate output
    • Write results to output files
    • Handle exceptions properly
    • Close file resources correctly

Testing Your Implementation

Your solution will be tested against a series of unit tests that verify:

Resources

Submission

Submit your completed project through the Portal. Make sure to: