[Class Report] System Development (Year 3), Week 52
~ Feature Implementation Phase: Connecting API, AI, and UI into a “Usable Form” ~
In Week 52, we pushed the final project implementation forward all at once and entered the phase of
connecting API integration, generative AI, and UI into functions that can actually be used.
Building on the foundation prepared the previous week,
this was an important session in which the app advanced to the stage where it actually started to feel like a real application.
■ Teacher’s Introduction: “Today Is the Day to Connect Things”
Mr. Tanaka:
“The parts are all ready.
Today, we will assemble them into a form that users can actually use.
But do not rush and break the structure.”
The teacher especially emphasized the following points:
- Do not call APIs or AI directly from the UI
- Concentrate logic in the Service layer
- Build error behavior at the same time as the main functionality
■ Today’s Goals
- Process API data in the Service layer and pass it to the UI
- Integrate generative AI into actual use cases
- Make the UI ready for user interaction
- Confirm the basic behavior of both normal and error cases
■ Exercise 1: Processing API Data in the Service Layer
First, we transformed the data obtained from the API
into an easy-to-use format rather than using it as-is.
Example (Event App)
def get_events(self):
data = self.api_client.fetch_events()
return [
{
"title": item["name"],
"date": item["date"],
"summary": item["description"][:100]
}
for item in data
]
Key points:
- Pass only the minimum necessary data to the UI
- Do not expose API specifications directly to the UI
- Make the system more resilient to future API changes
Student A: “When the Service layer prepares the data, the UI becomes really simple.”
■ Exercise 2: Integrating Generative AI into Use Cases
Next, we incorporated the AI function into the actual application flow.
Examples
- Retrieve news → AI summary → Display in UI
- Enter English text → AI-assisted explanation → Display in UI
def summarize_event(self, text):
prompt = self.build_prompt(text)
result = self.ai_client.generate(prompt)
return self.validate(result)
Student B: “It feels like it changed from ‘just calling AI’ into ‘a useful feature.’”
■ Exercise 3: Connecting with the UI
Using CLI or a simple web interface,
we connected user actions with the implemented functions.
Example (CLI)
print("Event List")
events = service.get_events()
for e in events:
print(e["title"])
choice = input("Enter the number to view details: ")
Points we improved:
- Input error handling
- Easy-to-understand display
- Adding notes to AI-generated output
■ Exercise 4: Integration Testing
At this stage, we performed end-to-end functionality checks.
Check Items
- The API can retrieve data correctly
- The AI works properly
- The UI can be operated
- The system does not crash when errors occur
Problems That Occurred
- The screen froze due to API delays
- AI output was too long
- Input errors caused crashes
→ We fixed them on the spot and kept improving
Student C: “Each part worked on its own, but once we connected them, problems appeared!”
■ Exercise 5: Confirming Fallback Behavior
We intentionally caused failures to verify fallback handling.
- Stop the API
- Disable the AI
What We Checked
- Does the system keep running?
- Is an alternative display shown?
Example:
*AI summarization is currently unavailable.
Student D: “I really felt that ‘not breaking’ is the most important thing.”
■ What the Whole Class Learned
- Many problems only become visible after integration
- The quality of Service design makes a big difference
- UI usability is very important
- AI is more stable when treated as a supporting feature
■ Teacher’s Final Comment
“Today, your systems changed from
a collection of parts
into usable applications.
From here on, it is the phase of improving quality.
- Is it easy to understand?
- Is it stable?
- Is it safe?
Keep these three points in mind as you finish your projects.”
■ Homework (For Next Week)
- Complete one main use case
- Strengthen error handling (at least three patterns)
- Identify three points for UI improvement
■ Preview of Next Week: Final Adjustments & Presentation Preparation
Next week, we will work on:
- Bug fixes
- UI improvements
- Documentation preparation
and move into the phase of
final polishing for the presentation.
Week 52 was
a major turning point when the project finally took a form that could actually be used.
The students brought design, implementation, and integration together,
and began to experience the satisfaction of real system development.

