Tutoring Board

앱 스토어

App Store에서 제공하는 튜터링보드 - 과외일정 관리 (apple.com)

소개

학생 정보와 수업 일정 입력 시 기간 동안의 일정을 캘린더로 확인할 수 있습니다.

앱 기능

  1. 캘린더: Monthly / Weekly 원하는 타입으로 그날의 일정을 확인할 수 있습니다.
  2. 수업 등록: 수업 정보(수업명, 수업 장소, 과외 기간, 수업 요일 및 시간, 학생)을 저장할 수 있습니다.
  3. 수업 관리: 저장된 수업 리스트와, 수업 추가 및 수정, 삭제가 가능합니다
  4. 학생 등록: 학생 정보(이름, 학생 연락처, 학부모 연락처, 주소, 메모)를 저장할 수 있습니다
  5. 학생 관리: 저장된 학생 리스트와 학생 추가 및 수정, 삭제가 가능 합니다

개발

기간: 2023.09.27 ~ 2023.10.25 최소 지원 버전: iOS 15 다국어 대응 O

기술

Architecture : MVVM | DB : Realm UI : UIKit CodeBaseUI SnapKit UITableView UISwipeGestureRecognizer UITabGestureRecognizer Etc : FSCalendar TextFieldEffects Toast FireBase Crashlytics, FireBase Analytics

기능 구현

트러블 슈팅

1. 데이터베이스 구조 변경에 대응한 마이그레이션 관리

2. 중첩된 레이블 문제 해결

3. 데이터베이스 작업 시 에러 핸들링

회고

이번 프로젝트를 진행하면서 기획부터 출시까지의 모든 단계를 경험할 수 있었습니다. 중간에는 화면 흐름, 디자인, DB Schema 등이 자주 변경되는 상황을 마주쳤습니다. 그럼에도 불구하고 사용자의 편의성을 최우선으로 두어 완성된 기능을 개선하고 다양한 테스트를 반복하여 더 나은 사용자 경험을 제공하기 위해 노력했습니다.

꾸준히 개발 일지를 작성하며 현실적인 시간 계획을 세우는 법과 개발 공수 산정 능력이 향상된 것을 느낄 수 있었습니다. 예상보다 많은 시간이 소요되는 부분도 있었지만, 이러한 경험을 통해 왜 예상보다 더 많은 시간이 소요되었는지를 분석하고 부족한 부분을 보완하기 위해 노력했습니다.

가장 많은 시간을 할애한 만큼 코드 개선에 만족스러운 결과가 나왔다고 생각합니다. 멘토님의 코드 리뷰를 통해 가독성과 유지 보수성을 높이는 작업에 집중했고, 프로젝트의 확장성과 지속적인 유지 보수의 중요성을 다시 한번 깨닫게 되었습니다.

추후 RXSwift를 도입하여 데이터의 명확한 흐름과 비동기 작업을 추상화하는 작업을 계획하고 있습니다. 이를 통해 다음 업데이트에서는 더 나은 성과를 이룰 수 있을 것으로 기대합니다.

버전 정보

  1. 1.0.0 (2023/10/26) → 출시
  2. 1.0.1 (2023/10/29) → bug FIx 피드백 반영
    1. 직관적인 아이콘 변경
    2. 수업등록 - 요일 시간(24:00) 선택시 라벨이 변경되지 않는 문제 해결
    3. 수업등록 - 학생 스크롤뷰 이름 잘림 해결(button sizeToFit)
    4. 데이터 유효성 검사 로직 구현
    5. 앱 번들 네임 변경
    6. 캘린더 - 리스트 상단 디자인 변경
  3. 1.1.0 (2023/11/20) → 기능 추가
    1. 최신 버전 체크 - 업데이트 유도
    2. 캘린더 week / Month 기능 추가
    3. 캘린더 리스트 Cell 디자인 변경
    4. Analytics 코드 수정
    5. Localizable: AppVersionCheck 추가
    6. Localizable: English - button text 잘림 해결

작업일지