저는 소규모 학원들의 학생 등원 관리를 위한 앱을 만들기로 했습니다. 학원에서 학생들의 출석 정보를 효과적으로 관리하고, 부모님에게 실시간 알림을 제공할 수 있는 시스템이 필요하다는 점을 고려해, AppSheet를 사용해 간단하지만 효율적인 앱을 개발해보려고 합니다. 구축 단계별로 작성해 올리도록 하겠습니다.
AppSheet는 프로그래밍 없이 쉽게 앱을 만들 수 있는 훌륭한 도구입니다. 하지만 노코딩 툴이라고 해서 데이터 구조를 대충 설계해도 되는 것은 아닙니다. 오히려 데이터를 잘못 구조화하면 나중에 유지보수나 성능 문제가 발생할 수 있습니다. 따라서 앱을 만들기 전에 기본적인 데이터베이스(DB) 개념을 이해하고, 데이터를 어떻게 나눌지 미리 설계하는 것이 매우 중요합니다.
1. 데이터 구조 설계의 중요성
AppSheet는 구글 스프레드시트와 같은 데이터 소스를 활용합니다. 그렇기 때문에 데이터를 어떻게 나누고 연결할지를 미리 계획하지 않으면, 데이터를 중복으로 입력하거나 불필요한 수정 작업을 반복하게 될 수 있습니다. 데이터를 체계적으로 관리하려면 기준 정보(마스터 데이터)와 실적 정보(트랜잭션 데이터)로 구분하여 관리하는 것이 필수입니다.
2. 기준 정보와 실적 정보 구분하기
기준 정보는 자주 변경되지 않는 고정적인 데이터를 의미합니다. 학생의 이름, 성별, 연락처 등과 같은 정보가 여기에 해당합니다. 이와 달리 실적 정보는 자주 업데이트되며, 새로운 기록이 추가되는 데이터를 말합니다. 예를 들어, 학생의 출석 기록이나 공부 시간 등이 실적 정보에 해당합니다.
예시:
- 기준 정보: 학생 ID, 이름, 성별, 전화번호 등
- 실적 정보: 출석 날짜, 출석 시간, 공부 시간 등
이렇게 데이터를 나누어 관리하면, 기준 정보를 여러 실적 정보에서 참조할 수 있고, 데이터를 효율적으로 관리할 수 있습니다. 저는 구글 스프레드시트에서 아래와 같이 정의하였습니다.


시트 2개를 위와 같이 만들고 나서, 앱시트로 연결해 줍니다.


다음편에 데이터 서식 적용에 대해서 쓰겠습니다.