diff --git a/docs/Readme.md b/docs/Readme.md
new file mode 100644
index 00000000..68371269
--- /dev/null
+++ b/docs/Readme.md
@@ -0,0 +1,36 @@
+## 기능 목록
+- inputView
+ - 원하는 기능을 선택한다.
+ 1. 주문 등록
+ 2. 결제하기
+ 3. 프로그램 종료
+ - 주문등록 시 테이블을 선택한다.
+ - 테이블 선택 후 등록할 메뉴를 선택한다.
+ - 메뉴의 수량을 선택한다.
+ - 결제하기
+ 1. 신용카드
+ 2. 현금
+
+- OutputView
+ - 테이블 목록 출력
+ - 주문이 등록된 테이블은 **결제가 이루어지기 전까지 테이블 목록에 별도로 표시**한다.
+ - 메뉴 목록 출력
+ - 최종 결제할 금액 출력
+
+- Menu
+ - 메뉴 번호
+ - 종류
+ - 이름
+ - 가격
+
+- Table
+ - 테이블 번호
+ - 테이블에 주문할 수 있는 한 메뉴의 최대 수량은 99개이다.
+
+## 에러 처리
+
+- 메뉴 숫자의 범위는 1부터 3이다.
+- 한 테이블에서 주문할 수 있는 한 메뉴의 최대 수량은 99개이다.
+- 테이블 번호는 1,2,3,5,6,8
+- 메뉴 번호는 1,2,3,4,5,6,21,22
+- 카드는 1,2 중 선택
\ No newline at end of file
diff --git a/src/main/java/Application.java b/src/main/java/Application.java
index ea0d34fd..5cdeaf34 100644
--- a/src/main/java/Application.java
+++ b/src/main/java/Application.java
@@ -1,21 +1,8 @@
-import domain.Menu;
-import domain.MenuRepository;
-import domain.Table;
-import domain.TableRepository;
-import view.InputView;
-import view.OutputView;
-
-import java.util.List;
+import controller.PosController;
public class Application {
- // TODO 구현 진행
public static void main(String[] args) {
- final List
tables = TableRepository.tables();
- OutputView.printTables(tables);
-
- final int tableNumber = InputView.inputTableNumber();
-
- final List