SlideShare ist ein Scribd-Unternehmen logo
1 von 40
개요 
개발 
환경 
개발 
일정 
업무 
분담 
업무 
분담 
Project 
개 요 
Project 
시 연 
Usecase 
Diagram 
Usecase 
정 의 서 
Project 
설 계 
설계 
단계 
분석 
단계 
요구사항 
정 의 서 
Sequence 
Diagram 
화면 
설계 
데이터 
설 계
개요 
뭐먹지? 
재료구매? 레시피?
개발환경 
개발환경 개발도구
개발일정표 
날짜 
내용 
4월 
2주차 3주차 4주차 
날짜 
정보수집 
유즈 케이스 
모델링 
분석 클래스 
모델링 
설계클래스 
모델링 
프로그램구현 
5월 
9 12 13 14 15 
TABLE설계 
DAO / DTO 
설계 
Controller 
설계 
프로그램 
구현 
문서작업
개발 업무 분담표 
이름 : 장 성봉 
업무 : 
프로젝트 업무 총괄 
이름 : 김 대곤 
업무 : 
클래스 다이어그램 관리 
이름 : 박 홍근 
업무 : 
코드 통합 
이름 : 양 진영 
업무 : 
코드 버전관리 
문서관리 
이름 : 김 영한 
업무 : 
클래스 다이어그램 관리
벤치마킹 
Survey Web Site & Application
벤치마킹 Survey 
요리할 때, 어려움을 겪는 사람의 비율 
92% 
8% 
있다 
없다
벤치마킹 Survey 
28 
18 
4 
18 
1 0 
30 
25 
20 
15 
10 
5 
0 
요리를 할 때 겪는 어려움 
메뉴선정 
식재료구입 
재정상태 
요리법을 잘 
몰라서 
기타 
없음
벤치마킹 Survey 
요리도우미에게 제공받고 싶은 서비스 
49% 
17% 
10% 
20% 
4% 
요리법제공 
대신장보기 
음식메뉴선정 
영양소/열량계산 
기타
벤치마킹 Web Site & Application 
벤치마킹 대상 벤치마킹 기능 
다나와 가격대 검색,배송지 변경, 배송예약, 기본배송지 
지마켓 회원로그인, 아이디 저장, 기본 배송지 수정 
롯데마트 비회원로그인,주문 배송 조회, 배송지 관리 
이마트 가까운 배송 지 찾기, 배송정보 조회 
미즈쿡 요리 카테고리, 음식정보, 요리법제공,댓 글,레시피 추가 
메뉴판 닷컴 음식정보 목록, 재료정보, , 구매/소유 재료 체크, 체크리스트, 
계량정보, 별 점, 
만개의 레시피 회원가입,요리법 제공, 별 점, 요리카테고리 
오마이 쉐프 아이디/비밀번호 찾기,재료정보
회원 
로그인 
요구사항 정의서 
기본 
서비스 
특화기능 
회원가입 
요리 
추천 
요리정보 
제공 
사용자 
레시피 
추가 
레시피 
정보 
Stop watch 기능
정보수집단계 키추출 
명사 동사 
명사 명사 
사용자 수령인 
시스템 주부 
비회원 제공자 
작성자 주문자 
회원 이용자 
세프 대상 
주사용자 여성 
고수 비사용자 
네티즌 
요리도우 
미 
관리자 
요리블로 
거 
받으실분 배송자 
사람 올린이 
초보 에디터 
동사 
(가격대를)검색하다 
(가격대를)선택하다 
(가격대를)입력하다 
(가까운매장을)찾는다 
(개인노트카테고리를)선택하다 
(계량선택을)선택하다 
(계량수치를)제공하다 
(계정을)복구하다 
(계정을)설정하다 
(공감수가)증가한다 
(구매장소를)설정하다 
(구매장소를)파악하다 
(국가별레시피를)선택하다 
(글자수를)제한하다 
(금액을)구분하다 
(금액을)선택하다 
(기본배송지를)설정하다 
(날짜를)선택하다 
(날짜와예약가능시간을)선택하다 
(낮은가격순으로)선택하다 
(높은가격순으로)선택하다 
(다음페이지로)이동한다 
(단위를)표시하다 
(댓글을)작성하다 
(덧글을)선택하다 
동사 
(덧글을)수정하다 
(덧글을)입력하다 
(덧글을)정렬하다 
(레시피를)검색하다 
(레시피를)선택하다 
(레시피를)스크랩하다 
(레시피를)입력하다 
(레시피를)작성하다 
(레시피를)제공하다 
(레시피를)조회하다 
(레시피를)조회한다 
(레시피를)찜하다 
(레시피를)추천하다 
(레시피를)확인한다 
(레시피목록을)제공하다 
(레시피의내용을)입력하다 
(로그인을)취소하다 
(메일주소를)입력한다 
(배달가능시간을)선택하다 
(배송시간을)수정하다 
(배송시간을)예약하다 
(배송시간을)조회하다 
(배송정보를)조회하다 
(배송지를)등록하다 
(배송지를)삭제하다 
동사 
(요리를)선택하다 
(요리리스트를)제공하다 
(요리명을)보여주다 
(요리명을)입력하다 
(요리목록을)선택하다 
(요리목적에따라)선택한다 
(요리목적을)선택하다 
(요리목적을)제공한다 
(요리사진을)보여준다 
(요리사진을)분류하다 
(요리사진을)선택하다 
(요리사진을)제공하다 
(요리의목적을)선택하다 
(요리이름을)선택한다 
(요리이름을)조회하다 
(요리재료를)입력하다 
(요리재료를)제공하다 
(요리정보를)공유하다 
(요리정보를)보여준다 
(요리정보를)선택하다 
(우편번호를)검색하다 
(우편번호를)선택하다 
(우편번호를)입력하다 
(음식사진을)선택하다 
(음식사진을)제공한다 
동사 
(음식사진을)첨부하다 
(음식재료를)확인하다 
(의견을)입력하다 
(이름을)입력하다 
(이미지를)선택하다 
(인기상품순을)선택한다 
(인기순으로)검색하다 
(인기순으로)정렬하다 
(인기순으로)출력하다 
(입력정보를)초기화하다 
(장보기목록을)선택하다 
(재료계량정보를)제공하다 
(재료를)구매하다 
(재료를)확인하다 
(재료별레시피를)선택하다 
(재료수량을)확인하다 
(재료의양을)제공하다 
(재료의양을)확인하다 
(재료정보를)제공하다 
(정보를)조회하다 
(조리과정을)확인한다 
(조리시간을)확인한다 
(조회수를)보여준다 
(주문을)조회하다 
(주문자정보항목을)입력하다 
동사 
(주문하기를)선택하다 
(주소를)입력하다 
(주재료를)제공한다 
(주재료를)확인한다 
(집에있는재료를)구분하다 
(체크리스트를)수정하다 
(체크리스트를)입력하다 
(체크리스트를)조회하다 
(총결제금액을)출력한다 
(총판매가를)출력한다 
(총포장비를)출력한다 
(총할인금액을)보여준다 
(최근알림메시지를)확인한다 
(최신순으로)보다 
(추천수를)보여준다 
(카테고리를)선택하다 
(카테고리를)추천하다 
(카테고리에)등록하다 
(테마를)추천하다 
(평점을기준으로)조회하다 
(항목의내용을)초기화하다 
(회원만족도를)확인하다 
(회원프로필을)설정하다 
로그인하다 
회원가입하다 
동사 
(배송지를)선택하다 
(배송지를)설정하다 
(배송지를)수정하다 
(배송지를)입력하다 
(배송지를)추가하다 
(배송지정보를)수정하다 
(배송지정보를)저장하다 
(별점을)추가하다 
(보안문자를)선택하다 
(보안문자를)입력하다 
(보안문자를)제공하다 
(본인인증을)하다 
(비밀번호를)입력하다 
(비밀번호를)찾다 
(비밀번호를)확인하다 
(사진을)제공하다 
(상품을)검색하다 
(상품을)선택하다 
(새배송지를)추가하다 
(셰프를)등록하다 
(예약가능시간을)확인하다 
(요리건수를)제공한다 
(요리단계를)제공한다 
(요리대상을)확인하다 
(요리레시피를)조회하다 
엑터후보 유즈케이스 후보
UseCase 다이어그램 
사용자 
회원가입 
음식 명으로 
검색 
음식추천받기 
재료를 입력하여 
검색 
가격대 검색 
음식정보 
등록 
조리과정조회 
재료등록 
조리과정등록 
로그인 
<<extends>> 
<<include>>
UseCase 정의서 
유즈케이스 정의서(4. UC001) 
Note 
시스템명 요조숙녀 작성일자 2014.04.30 페이지 1/1 
N-1. 키워드 : 기분, 상태 등 
UseCase 명 음식추천받기 작성자 김대곤 
3.2 Alternative 3.3 Exception Flows 
Flows 
A-1. 검색결과가 존재하지 않은 경우 
1. “검색결과가 E-1. 사용자가 존재하지 키워드 않습니다. 입력을 다시 입력해주세요.” 하지 않고 창을 라는 메시지를 닫은 경우 
보여준다. 
-> Main ->Flow의 Use Case를 2번으로 
종료한다. 
3.1 Main Flows 
1. 사용자는 음식 추천 받기를 요청한다. 
2. 시스템은 사용자에게 키워드(N-1) 입력을 요청한다. 
3. 사용자는 키워드를 입력하고 음식 추천 받기를 요청한다(A-1)(E-1). 
4. 시스템은 음식 검색 결과를 사용자에게 보여주고 Use Case를 종료한다.
UseCase 정의서 
4. Note 
N-1. 3.3 음식정보 Exception : 음식이름, 음식칼로리, Flows 
음식사진(경로), 음식소개 
N-2. E-조리정보 1. 사용자가돌아가기를선택한경우 
: 조리시간, 분량, 난이도, 총 재료개수, 조리팁 
N-3. 조리과정 등록정보 : 단계시간(초), 사진경로, 설명 
N-4. ->재료정보 Use Case를종료한다 
: 재료명, 수량 
유즈케이스 정의서(UC002) 
3.2 Alternative Flows 
시스템명 요조숙녀 A-1. 사용자가 작성일자 등록을 2014.04.30 선택한 경우 
페이지 1/1 
UseCase 명 음식정보등록 -> Main Flow의 5번으로 
작성자 장성봉 
3.1 Main Flows 
1. 사용자는 음식정보 등록을 요청한다. 
2. 시스템은 사용자에게 음식정보(N-1), 조리정보(N-2) 입력을 요청한다. 
3. 사용자는 음식정보, 조리정보를 입력한다. (E-1) 
4. 사용자는 조리과정 등록하기를 요청한다. 
5. 시스템은 사용자에게 조리과정 등록정보(N-3) 입력을 요청한다. 
6. 사용자는 조리과정 등록정보를 입력하고 완료를 선택한다(A-1). 
7. 사용자는 재료 등록하기를 요청한다. 
8. 시스템은 사용자에게 재료정보(N-4) 입력을 요청한다. 
9. 사용자는 재료정보를 입력하고 재료 등록하기를 선택한다. 
10. 시스템은 성공적으로 재료를 등록하였고 Use Case를 종료한다.
UseCase정의서 키추출 
명사키추출 동사키추출
분석단계 클래스다이어그램(한글)
분석단계 클래스다이어그램(영문) 
IngredientInfoList 
-ingredientInfoList: Collection<IngredientInfo> 
-foodName: String 
+IngredientInfoList() 
+IngredientInfoList(list: Collection<IngredientInfo>, foodName: String) 
+getIngredientInfoList(): Collection<IngredientInfo> 
+getFoodName(): String 
+setIngredientInfoList(list: Collection<IngredientInfo>) 
+setFoodName(foodName: String) 
+addIngredienInfoList(ingredientInfo: IngredientInfo): IngredientInfo 
+reviseIngredientInfoList(ingredientCode: String, ingredientInfo: IngredientInfo): IngredientInfo 
+removeIngredientInfoList(ingredientCode: String): IngredientInfo 
+searchIngredientInfo(ingredientCode: String): IngredientInfo 
+searchIngredientInfoList(ingredientName: String): Collection<IngredientInfo> 
IngredientInfo 
-ingrdientName: String 
-ingredientCode: String 
-unit: String 
-soldItemName: String 
-soldItemNum: int 
-soldItemCode: String 
-placeOfOrisin: String 
-price: double 
+IngredientInfo() 
+IngredientInfo(ingredientName: String, ingredientCode: String, unit: String) 
+IngredientInfo(ingredientName: String, ingredientCode: String) 
+IngredientInfo(ingredientCode: String) 
+getIngredientName(): String 
+getIngredientCode(): String 
+getUnit(): String 
+setIngredientName(ingredientName: String) 
+setIngredientCode(ingredientCode: String) 
+setUnit(unit: String) 
RecipeIngreInfo 
-ingredientName: String 
-ingredientCode: String 
-ingredientNum: int 
SoldItemInfo 
+RecipeIngreInfo() 
+RecipeIngreInfo(ingredientName: String, ingredientCode: String, ingredientNum: int) 
+getIngredientName(): String 
+getIngredientCode(): String 
+getIngredientNum(): int 
+setIngredientName(ingredientName: String) 
+setIngredientCode(ingredientCode: String) 
+setIngredientNum(ingredientNum: int) 
RecipeIngreInfoList 
-foodName: String 
-foodCode: String 
-recipeIngreInfoList: Collection<RecipeIngreInfo> 
+RecipeIngreInfoList() 
+RecipeIngreInfoList(foodName: String, foodCode: String, recipeIngreInfoList: Collection<RecipeIngreInfo>) 
+getFoodName(): String 
+getFoodCode(): String 
+getRecipeIngreInfoList(): Collection<RecipeIngreInfo> 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) 
+addRecipeIngreInfoList(recipeIngreInfo: RecipeIngreInfo): RecipeIngreInfo 
+reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo: RecipeIngreInfo): RecipeIngreInfo 
+removeRecipeIngreInfoList(ingredientCode: String): RecipeIngreInfo 
+searchRecipeIngreInfo(ingredientCode: String): RecipeIngreInfo 
+searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> 
+searchRecipeIngreInfo(ingredientName: String): RecipeIngreInfo 
CookingCourse 
-cookingPhoto: String 
-cookingTime: int 
-cookingInst: String 
+CookingCourse() 
+CookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) 
+CookingCourse(cookingTime: int, cookingInst: String) 
+getCookingPhoto(): String 
+getCookingTime(): int 
+getCookingInst(): String 
+setCookingPhoto(cookingPhoto: String) 
+setCookingTime(cookingTime: int) 
+setCookingInst(cookingInst: String) 
-cookingCourseList:CookingCourseList 
:한음식의 전체조리과정 
-recipeIngreInfoList:LoginInfo 
-id: String 
RecipeIngreInfoList 
-password: String 
-loginState: boolean 
:한음식의 전체재료 
-name : String 
-id : String 
-password : String 
-address : String 
-phone : String 
-zipCode : String 
+LoginInfo() 
+LoginInfo(id: String, password: String) 
+getId(): String 
+getPassword(): String 
+getLoginState(): boolean 
+setId(id: String) 
+setPassword(password: String) 
+setLoginState(loginState: boolean) 
FoodInfo 
-foodCode: String 
-foodName: String 
-foodIntro: String 
-foodPhoto: String 
-foodCalorie: int 
+SoldItemInfo() 
+SoldItemInfo(name: String, num: int, code: String, placeOfOrisin: String, price: double) 
+getSoldItemName(): String 
+getSoldItemNum(): int 
+getSoldItemCode(): String 
+getPlaceOfOrisin(): String 
+getPrice(): double 
+setSoldItemName(name: String) 
+setSoldItemNum(num: int) 
+setSoldItemCode(code: String) 
+setPlaceOfOrisin(placeOfOrisin: String) 
+setPrice(price: double) 
+FoodInfo() 
+FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String) 
+FoodInfo(foodCode: String, foodName: String) 
+getFoodCode(): String 
+getFoodName(): String 
+getFoodIntro(): String 
+getFoodPhoto(): String 
+getFoodCalorie(): int 
+setFoodCode(foodCode: String) 
+setFoodName(foodName: String) 
+setFoodIntro(foodIntro: String) 
+setFoodPhoto(foodPhoto: String) 
+setFoodCalorie(foodCalorie: int) 
SoldItemInfo 
-soldItemName: String 
-soldItemNum: int 
-soldItemCode: String 
-placeOfOrisin: String 
-price: double 
+SoldItemInfo() 
+SoldItemInfo(name: String, num: int, code: String, placeOfOrisin: String, price: double) 
+getSoldItemName(): String 
+getSoldItemNum(): int 
+getSoldItemCode(): String 
+getPlaceOfOrisin(): String 
+getPrice(): double 
+setSoldItemName(name: String) 
+setSoldItemNum(num: int) 
+setSoldItemCode(code: String) 
+setPlaceOfOrisin(placeOfOrisin: String) 
+setPrice(price: double) 
RecipeInfo 
-foodName: String 
-cookingTotalTime: int 
-tip: String 
-portion: int 
-level: Level <<enum>> 
-foodCode: String 
-cookingCourseList: CookingCourseList 
-recipeIngreInfoList: RecipeIngreInfoList 
+RecipeInfo() 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, foodCode: String, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) 
+getFoodeName(): String 
+getCookingTotalTime(): int 
+getTip(): String 
+getPortion(): int 
+getLevel(): Level 
+getFoodCode(): String 
+getCookingCourseList(): CookingCourseList 
+getRecipeIngreInfoList(): RecipeIngreInfoList 
+setFoodName(foodName: String) 
+setCookingTotalTime(cookingTotalTime: int) 
+setTip(tip: String) 
+setPortion(portion: int) 
+setLevel(level: Level) 
+setFoodCode(foodCode: String) 
+setCookingCourseList(cookingCourseList: CookingCourseList) 
+setIngredientInfoList(recipeIngreInfoList: RecipeIngreInfoList) 
+check(ingred1: String, ingred2: String, ingred3: String): boolean 
CookingCourseList 
-cookingCourseList: Collection<CookingCourse> 
-foodName: String 
-foodCode: String 
+CookingCourseList() 
+CookingCourseList(foodName: String, foodCode: String) 
+CookingCourseList(cookingCourseList: Collection<CookingCourse>, foodName: String, foodCode: String) 
+getCookingCourseList(): Collection<CookingCourse> 
+getFoodName(): String 
+getFoodCode(): String 
+setCookingCourseList(list: Collection<CookingCourse>) 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+searchCookingCourse(step: int): CookingCourse 
+addCookingCourse(cookingCourse: CookingCourse): CookingCourse 
+addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) 
+searchCookingCourse(step: int): CookingCourse 
+searchCookingCourse(cookingCourse: CookingCourse): CookingCourse 
+removeCookingCourse(cookingCourse: CookingCourse): CookingCourse 
+removeCookingCourse(step: int): CookingCourse 
+reviseCookingCourse(searchData: CookingCourse, reviseData: CookingCourse): CookingCourse 
+reviseCookingCourseList(step: int, reviseData: CookingCourse): CookingCourse 
MemberInfo 
-name: String 
-id: String 
-password: String 
-address: String 
-phone: String 
-zipCode: String 
+MemberInfo() 
+MemberInfo(name: String, id: String) 
+MemberInfo(name: String, id: String, password: Stirng, address: String, phone: String, zipCode: String) 
+getName(): String 
+getId(): String 
+getPassword(): String 
+getAddress(): String 
+getPhone(): String 
+getZipCode(): String 
+setName(name: String) 
+setId(id: String) 
+setPassword(password: String) 
+setAddress(address: String) 
+setPhone(phone: String) 
+setZipCode(zipCode: String) 
FoodInfoList 
-foodInfoList: Collection<FoodInfo> 
+FoodInfoList() 
+FoodInfoList(list: Collection<FoodInfo>) 
+getFoodInfoList(): Collection<FoodInfo> 
+setFoodInfoList(list: Collection<FoodInfo>) 
+addFoodInfoList(foodInfo: FoodInfo): FoodInfo 
+reviseFoodInfoList(foodCode: String, reviseData: FoodInfo): FoodInfo 
+removeFoodInfoList(foodCode: String): FoodInfo 
+searchFoodInfo(foodCode: String): FoodInfo 
+searchFoodInfoList(foodName: String): Collection<FoodInfo> 
SoldItemInfoList 
-soldItemInfoList: Collection<SoldItemInfo> 
+SoldItemInfoList() 
+SoldItemInfoList(soldItemInfoList: Collection<SoldItemInfo>) 
+getSoldItemInfoList(): Collection<SoldItemInfo> 
+setSoldItemInfoList(soldItemInfoList: Collection<SoldItemInfo>) 
+addSoldItemInfoList(soldItemInfo: SoldItemInfo): SoldItemInfo 
+reviseSoldItemInfoList(soldItemCode: String, soldItemInfo: SoldItemInfo): SoldItemInfo 
+removeSoldItemInfoList(soldItemCode: String): SoldItemInfo 
+searchSoldItemInfoList(soldItemCode: String): SoldItemInfo 
StoreInfo 
-storeName: String 
-storeCode: String 
-storeAddress: String 
-storePhone: String 
+StoreInfo() 
+StoreInfo(storeName: String, storeCode: String, storeAddress: String, storePhone: String) 
+getStoreName(): String 
+getStoreCode(): String 
+getStoreAddress(): String 
+getStorePhone(): String 
+setStoreName(storeName: String) 
+setStoreCode(storeCode: String) 
+setStoreAddress(storeAddress: String) 
+setStorePhone(storePhone: String) 
StoreInfoList 
-list: Collection<StoreInfo> 
+StoreInfoList() 
+StoreInfoList(list: Collection<StoreInfo>) 
+getList(): Collection<StoreInfo> 
+setList(list: Collection<StoreInfo>) 
+addStoreInfoList(storeInfo: StoreInfo): StoreInfo 
+reviseStoreInfoList(code: String, storeInfo: StoreInfo): StoreInfo 
+removeStoreInfoList(code: String): StoreInfo 
+searchStoreInfo(code: String): StoreInfo 
MemberInfo 
-name: String 
-id: String 
-password: String 
-address: String 
-phone: String 
-zipCode: String 
+MemberInfo() 
++MemberInfo(getName() 
name: String, id: String) 
+MemberInfo(name: String, id: String, password: Stirng, address: String, phone: String, zipCode: String) 
+-> getName(): +getId(): 이름을 String 
String 
찾다 
StoreInfo 
+getPassword(): String 
++getAddress(): setZipCode() 
String 
+getPhone(): String 
+->getZipCode(): 주소를 String 
입력하다 
+setName(name: String) 
+setId(id: String) 
+setPassword(password: String) 
+setAddress(address: String) 
+setPhone(phone: String) 
+setZipCode(zipCode: String) 
-storeName: String 
-storeCode: String 
-storeAddress: String 
-storePhone: String 
+StoreInfo() 
+StoreInfo(storeName: String, storeCode: String, storeAddress: String, storePhone: String) 
+getStoreName(): String 
+getStoreCode(): String 
+getStoreAddress(): String 
+getStorePhone(): String 
+setStoreName(storeName: String) 
+setStoreCode(storeCode: String) 
+setStoreAddress(storeAddress: String) 
+setStorePhone(storePhone: String) 
FoodInfo 
-foodCode: String 
-foodName: String 
-foodIntro: String 
-foodPhoto: String 
-foodCalorie: int 
+FoodInfo() 
+FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String) 
+FoodInfo(foodCode: String, foodName: String) 
+getFoodCode(): String 
+getFoodName(): String 
+getFoodIntro(): String 
+getFoodPhoto(): String 
+getFoodCalorie(): int 
+setFoodCode(foodCode: String) 
+setFoodName(foodName: String) 
+setFoodIntro(foodIntro: String) 
+setFoodPhoto(foodPhoto: String) 
+setFoodCalorie(foodCalorie: int) 
StoreInfo 
판매처 
SoldItemInfo 
판매물품 
FoodInfo 
음식 
RecipeIngreInfo 
-ingredientName: String 
-ingredientCode: String 
-ingredientNum: int 
+RecipeIngreInfo() 
+RecipeIngreInfo(ingredientName: String, ingredientCode: String, ingredientNum: int) 
+getIngredientName(): String 
+getIngredientCode(): String 
+getIngredientNum(): int 
+setIngredientName(ingredientName: String) 
+setIngredientCode(ingredientCode: String) 
+setIngredientNum(ingredientNum: int) 
CookingCourse 
-cookingPhoto: String 
-cookingTime: int 
-cookingInst: String 
+CookingCourse() 
+CookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) 
+CookingCourse(cookingTime: int, cookingInst: String) 
+getCookingPhoto(): String 
+getCookingTime(): int 
+getCookingInst(): String 
+setCookingPhoto(cookingPhoto: String) 
+setCookingTime(cookingTime: int) 
+setCookingInst(cookingInst: String) 
RecipeIngreInfo 
재료 1개 
CookingCourse 
조리과정 1단계 
RecipeInfo 
-foodName: String 
-cookingTotalTime: int 
-tip: String 
-portion: int 
-level: Level <<enum>> 
-foodCode: String 
-cookingCourseList: CookingCourseList 
-recipeIngreInfoList: RecipeIngreInfoList 
+RecipeInfo() 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, foodCode: String, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) 
+getFoodeName(): String 
+getCookingTotalTime(): int 
+getTip(): String 
+getPortion(): int 
+getLevel(): Level 
+getFoodCode(): String 
+getCookingCourseList(): CookingCourseList 
+getRecipeIngreInfoList(): RecipeIngreInfoList 
+setFoodName(foodName: String) 
+setCookingTotalTime(cookingTotalTime: int) 
+setTip(tip: String) 
+setPortion(portion: int) 
+setLevel(level: Level) 
+setFoodCode(foodCode: String) 
+setCookingCourseList(cookingCourseList: CookingCourseList) 
+setIngredientInfoList(recipeIngreInfoList: RecipeIngreInfoList) 
+check(ingred1: String, ingred2: String, ingred3: String): boolean 
+check(ingred1:String,ingred2:String,ingred3:String) 
:boolean 
->재료가 있나없나???
로그인 
요조숙녀~ 
음식검색 뭐먹지? 레시피등록 주문내역확인 
메인화면
검색 
요조숙녀~ 
음식검색 
요리명 
음식목록
요조숙녀~ 
음식설명 
요 리 명 : 짜장밥 
재료 : 
밥,춘장,돼지고기,양파,간장 
조리시간 : 0시간 10분 0초 
건강정보 : 서민의 음식! 
재료주문 요리시작
요조숙녀~ 
조리법 
00:04:43.29 
재료 잘게 깍뚝 썰고 청주, 소금 후추로 
밑간한다. 
이전 일시정지 시작 다음
레시피등록 
레시피등록 
음식 정보 
음 식 이 름 : 
음 식 칼 로 리 : 
음 식 사 진 (경로): 
음 식 소 개 : 
조리 정보 
조 리 시 간 : 
분 량 : 
난 이 도 : 
총 재 료 개 수 : 
조 리 팁 : 
kcal 
sec 
인분 
개 
사진가져오기 
조리과정등록하기 재료등록하기 레시피등록하기 돌아가기
조리과정등록 
조리과정등록 
단계시간(초) 
사진경로 사진선택 
설 
명 
등록 완료
예시)볶음밥 
재료 등록하기 돌아가기 
재료1 재료명: 
재료2 재료명: 
재료3 재료명: 
수량: 
수량: 
수량: 
개(g) 
개(g) 
개(g) 
재료등록
파일설계 
CookingCourseListData.txt 조리과정 
FoodInfoData.txt 
MemberInfoData.txt 
RecipeIngreInfoData.txt 
RecipeInfoData.txt 
StoreInfoList.txt 
StoreItemInfoList.txt 
음식정보 
회원정보 
요리재료정보 
요리정보 
판매처정보 
판매물품정보
파일설계 
전체음식정보목록 
파일형식 : *.txt 
구분자 : 개행 
파일명 : FoodInfoData 
저장내용 : 음식코드, 음식명, 음식소개, 음식사진, 
열량
DB설계 논리적 설계
DB설계 물리적 설계
클래스다이어그램 
RegistRecipeActionListener 
OrderedRecordActionListener 
MainFrameUI 
RecipeRegistrationUI 
M C V 
LoginUI 
TodayEatUI 
LoginButtonActionListener 
FoodSearchActionListener 
SpecialRecommendFoodActionListener 
LoginCheckController 
LoginContorller LoginActionListener 
LoginJoinActionListener 
CheckActionListener 
JoinActionListener JoinUI 
CancelActionListener 
IdCheckController 
JoinDBController 
FoodSearchFrameUI 
FoodNameActionListener 
CategoryActionListener 
RecommandActionListener 
FoodNameSearchController SearchActionListener FoodNameFrameUI 
PhtotoActionListener 
PhotoController 
FoodInfoUI 
CategoryFrameUI 
CategorySearchActionListener 
ComboBoxStateListener 
IngredSrchActionListener FoodRecommendUI 
IngredSrchController IngredSrchBtnListener 
MoneySrchActionListener 
MoneySrchBtnListener 
MoneySrchController 
TodayController TodayActionListener 
OrderRecordListUI 
StepInputListener 
IngredientButtonListener 
RecipeInputListener 
RecipeCourseUI 
FileSelListener 
RegistListener 
EndButtonListener 
PhotoButtonController 
CookingCourseRegistController 
IngredientRegisterController IngredientRegisterListener IngredientInputUI 
RegisterDBController 
TempCookingCourseList CookingCourse 
RecipeIngreInfo 
FoodRecipeInfoList 
RecipeIngreInfoList 
FoodInfo 
RecipeInfo 
TempRecipeIngreInfoList 
FoodDAO 
FoodDTO 
FoodList 
FoodRecipeInfo FoodRecipeInfoList 
RecipeDAO 
RecipeDTO 
RecipeList 
CookingCourseList 
RecipeCourseDAO 
RecipeCourseDTO 
RecipeCourseList 
RecipeIngredientDAO 
RecipeIngredientDTO 
RecipeIngredientList 
IngredientDAO 
IngredientDTO 
IngredientList 
MemberInfoList 
ManagerInfo 
LoginInfo 
RecipeIngreInfo 
SoldItemInfo 
SoldItemInfoList 
RecipeIngreInfoList
Data Loading - File 
FoodFileIO 
-cookingCourseListData: CookingCourseListData 
-recipeIngreInfoListData: RecipeIngreInfoListData 
-recipeInfoList: RecipeInfoList 
-foodInfoList: FoodInfoList 
+FoodFileIO() 
+FoodFileIO(cookingCourseListData: CookingCourseListData, recipeIngreInfoListData: RecipeIngreInfoListData, recipeIngoList: RecipeInfoList, foodInfoList: FoodInfoList) 
+getCookingCourseListData(): CookingCourseListData 
+getRecipeIngreInfoListData(): RecipeIngreInfoListData 
+getRecipeInfoList(): RecipeInfoList 
+getFoodInfoList(): FoodInfoList 
+setCookingCourseListData(cookingCourseListData: CookingCourseListData) 
+setRecipeIngreInfoListData(recipeIngreInfoListData: RecipeIngreInfoListData) 
+setRecipeInfoList(recipeInfoList: RecipeInfoList) 
+setFoodInfo(foodInfoList: FoodInfoList) 
+readFoodInfo() 
+load() 
RecipeIngreInfoListData 
-recipeIngreInfoListData: Collection<RecipeIngreInfoList> 
+RecipeIngreInfoListData() 
+RecipeIngreInfoListData(recipeIngreInfoListData: Collection<RecipeIngreInfoList>) 
+getRecipeIngreInfoList(): Collection<RecipeIngreInfoList> 
+setRecipeIngreInfoList(recipeIngreInfoListData: Collection<RecipeIngreInfoList>) 
+addRecipeIngreInfoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList 
+reviseRecipeIngreInfoList(searchRecipeIngreInfoList: RecipeIngreInfoList, changeRecipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList 
+removeRecipeIngreInfoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList 
+searchRecipeIngreIngoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList 
CookingCourseListData 
-cookingCourseListData: Collection<CookingCoureseList> 
+CookingCourseListData() 
+CookingCourseListData(cookingCourseListData: Collection<CookingCoureseList>) 
+getCookingCourseListData(): Collection<CookingCoureList> 
+setCookingCoureListData(cookingCourseListData: Collection<CookingCourseListData>) 
+addCookingCourseList(cookingCourseList) 
+reviseCookingCourseList(searchData, reviseData) 
+removeCookingCourseList(cookingCourseList) 
+searchCookingCourseList(cookingCourseList) 
RecipeInfoList 
-recipeInfoList: Collection<RecipeInfo> 
+RecipeInfoList() 
+RecipeInfoList(list: Collection<RecipeInfo>) 
+getRecipeInfoList(): Collection<RecipeInfo> 
+setRecipeInfoList(recipeInfoList: Collection<RecipeInfo>) 
+addRecipeInfoList(recipeInfo) 
+reviseRecipeInfoList(foodCode: String, recipeInfo) 
+removeRecipeInfoList(foodCode: String) 
+searchRecipeInfo(foodCode: String) 
+searchRecipeInfoList(foodName: String): Collection<RecipeInfo> 
FoodInfoList 
-foodInfoList: Collection<FoodInfo> 
+FoodInfoList() 
+FoodInfoList(list: Collection<FoodInfo>) 
+getFoodInfoList(): Collection<FoodInfo> 
+setFoodInfoList(list: Collection<FoodInfo>) 
+addFoodInfoList(foodInfo) 
+reviseFoodInfoList(foodCode: String, reviseData) 
+removeFoodInfoList(foodCode: String) 
+searchFoodInfo(foodCode: String) 
+searchFoodInfoList(foodName: String): Collection<FoodInfo> 
FoodRecipeInfoList 
+foodRecipeInfoList: Collection<FoodRecipeInfo> 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo) 
+reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) 
+removeFoodRecipeInfoList(foodCode: String) 
+searchFoodRecipeInfo(foodCode: String) 
+searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> 
+searchTodayFood(keyword: String): Collection<FoodRecipeInfo> 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo>
FoodRecipeInfoList 
FoodFileIO 
Data Loading - File 
CookingCourseListData FoodInfoList 
RecipeIngreInfoListData RecipeInfoList
Data Loading - DB 
RecipeCourseDAO 
-conn: Connection 
+RecipeCourseDAO() 
+getConn(): Connection 
+setConn(conn: Connection) 
-connect() 
+disconnect() 
+insert(courseLevel: int, recipeCode: int, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String): int 
+selectAll(): RecipeCourseList 
+selectCourseLevelRecipeCode(courseLevel: int, recipeCode: int): RecipeCourseDTO 
+selectCourseLevel(courseLevel: int): RecipeCourseList 
+selectRecipeCode(recipeCode: int): RecipeCourseList 
+selectRecipeCoursePhoto(recipeCoursePhoto: String): RecipeCourseDTO 
+selectRecipeCourseTime(recipeCourseTime: int): RecipeCourseList 
+selectRecipeCourseIntro(recipeCourseIntro: String): RecipeCourseDTO 
+selectCourse(): CourseList 
+updateAll(courseLevel: int, recipeCode: int, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String): int 
+updateRecipeCoursePhoto(courseLevel: int, recipeCode: int, recipeCoursePhoto: String): int 
+updateRecipeCourseTime(courseLevel: int, recipeCode: int, recipeCourseTime: int): int 
+updateRecipeCourseIntro(courseLevel: int, recipeCode: int, recipeCourseIntro: String): int 
+deleteAll(): int 
+deleteCourseLevel(courseLevel: int): int 
+deleteRecipeCode(recipeCode: int): int 
+deleteCourseLevelRecipeCode(courseLevel: int, recipeCode: int): int 
+deleteRecipeCourseTime(recipeCourseTime: int): int 
+deleteRecipeCourseIntro(recipeCourseIntro: String): int 
+deleteRecipeCoursePhoto(recipeCoursePhoto: String): int 
CourseDTO 
-foodCode: int 
-foodName: String 
-recipeCoursePhoto: String 
-recipeCourseTime: int 
-recipeCourseIntro: String 
+CourseDTO() 
+CourseDTO(foodCode: int, foodName: Stiring, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String) 
+getFoodCode(): int 
+getFoodName(): String 
+getRecipeCoursePhoto(): String 
+getRecipeCourseTime(): int 
+getRecipeCourseIntro(): String 
+setFoodCode(foodCode: int) 
+setFoodName(foodName: String) 
+setRecipeCoursePhoto(recipeCoursePhoto: String) 
+setRecipeCourseTime(recipeCourseTime: int) 
+setRecipeCourseIntro(recipeCourseIntro: String) 
+toString(): String 
RecipeIngredientDAO 
-conn: Connection 
+RecipeIngredientDAO() 
-connect() 
+disconnect() 
+insert(recipeIngredientCode: int, ingredientCode: int, recipeCode: int, recipeIngredientNum: int): int 
+selectAll(): RecipeIngredientList 
+selectRecipeIngredientCode(recipeIngredientCode: int): RecipeIngredientDTO 
+selectIngredientCode(ingredientCode: int): RecipeIngredientList 
+selectRecipeCode(recipeCode: int): RecipeIngredientList 
+selectRecipeIngredientNum(recipeIngredientNum: int): RecipeIngredientList 
+selectMaxRecipeIngredientCode(): RecipeIngredientDTO 
+selectIngre(): RecipeIngreInfoDTOList 
+updateAll(recipeIngredientCode: int, ingredientCode: int, recipeCode: int, recipeIngredientNum: int): int 
+updateIngredientCode(recipeIngredientCode: int, ingredientCode: int): int 
+updateRecipeCode(recipeIngredientCode: int, recipeCode: int): int 
+updateRecipeIngredientNum(recipeIngredientCode: int, recipeIngredientNum: int): int 
+deleteAll(): int 
+deleteRecipeIngredientCode(recipeIngredientCode: int): int 
+deleteIngredientCode(ingredientCode: int): int 
+deleteRecipeCode(recipeCode: int): int 
+deleteRecipeIngredientNum(recipeIngredientNum: int): int 
+getConn(): Connection 
+setConn(conn: Connection) 
RecipeIngreInfoDTO 
-foodCode: int 
-foodName: String 
-ingredientName: String 
-ingredientCode: int 
-ingredientNum: int 
+RecipeIngreInfoDTO() 
+RecipeIngreInfoDTO(foodCode: int, foodName: String, ingredientName: String, ingredientCode: int, ingredientNum: int) 
+getFoodCode(): int 
+getFoodName(): String 
+getIngredientName(): String 
+getIngredientCode(): int 
+getIngredientNum(): int 
+setFoodCode(foodCode: int) 
+setFoodName(foodName: String) 
+setIngredientName(ingredientName: String) 
+setIngredientCode(ingredientCode: int) 
+setIngredientNum(ingredient: int) 
+toString(): String 
FoodRecipeDBManager 
-cokkingCourseListData: CookingCourseListData 
-recipeIngreInfoListData: RecipeIngreInfoListData 
-recipeInfoList: RecipeInfoList 
-foodInfoList: FoodInfoList 
+FoodRecipeDBManager() 
+FoodRecipeDBManager(cookingCourseListData: CookingCourseListData, recipeIngreInfoListData: RecipeIngreInfoListData, recipeInfoList: RecipeInfoList, foodInfoList: FoodInfoList) 
+getCookingCourseListData(): CookingCourseListData 
+getRecipeIngreInfoListData(): RecipeIngreInfoListData 
+getRecipeInfoList(): RecipeInfoList 
+getFoodInfoList(): FoodInfoList 
+setCookingCourseListData(cookingCourseListData: CookingCourseListData) 
+setRecipeIngreInfoListData(recipeIngreInfoListData: RecipeIngreInfoListData) 
+setRecipeInfoList(recipeInfoList: RecipeInfoList) 
+setFoodInfoList(foodInfoList: FoodInfoList) 
+readFoodInfo() 
+readCookingCourse() 
+readIngredient() 
+readRecipe() 
+load() 
FoodRecipeInfoList 
-foodRecipeInfoList: Collection<FoodRecipeInfo> 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo: FoodRecipeInfo) 
+reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo: FoodRecipeInfo): FoodRecipeInfo 
+removeFoodRecipeInfoList(foodCode: String): FoodRecipeInfo 
+searchFoodRecipeInfo(foodCode: String): FoodRecipeInfo 
+searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> 
+searchTodayFood(keyword: String): Collection<FoodRecipeInfo> 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo>
FoodRecipeInfoList 
Data Loading - DB 
FoodRecipeDBManager 
RecipeIngreInfoDAO CourseDAO 
RecipeIngredientDTO RecipeCourseDTO
MVC 구조 
음식추천받기(오늘 뭐먹지?) 
TodayEatUI 
-text: JTextField 
+TodayEatUI() 
+TodayEatUI(text: JTextField) 
+showUI() 
+getText(): JTextField 
+setText(text: JTextField) 
TodayController 
+TodayController() 
+TodayController(foodName: String) 
+verifyFoodName(): Collection<FoodRecipeInfo> 
+getFoodName(): String 
+setFoodCode(foodName: String) 
FoodRecipeInfo 
TodayController 
PhotoController 
PhotoController 
-foodName: String 
-foodInfo: FoodInfo 
-recipeInfo: RecipeInfo 
-foodCode: String 
+PhotoController() 
+PhotoController(foodCode: String) 
+verifyFoodCode(): FoodRecipeInfo 
+getFoodCode(): String 
+setFoodCode(foodCode: String) 
TodayActionListener 
-frame: JFrame 
-text: JTextField 
-scrollPane: JScrollPane 
+TodayActionListener() 
+TodayActionListener(frame: JFrame, text: JTextField, scrollPane: JScrollPane) 
+actionPerforemd(e: ActionEvent) 
+showResult() 
+getFrame(): JFrame 
+getText(): JTextField 
+getScrollPane(): JScrollPane 
+setFrame(frame: JFrame) 
+setText(text: JTextField) 
+setScrollPane(scrollPane: JScrollPane) 
PhtotoActionListener 
-text: String 
+PhtotoActionListener() 
+PhtotoActionListener(text: String) 
+actionPerformed(e: ActionEvent) 
+moveUI() 
+getText(): String 
+setText(text: String) 
FoodRecipeInfoList 
-foodRecipeInfoList: Collection<FoodRecipeInfo> 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo) 
+reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) 
+removeFoodRecipeInfoList(foodCode: String) 
+searchFoodRecipeInfo(foodCode: String) 
+searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> 
+searchTodayFood(keyword: String): Collection<FoodRecipeInfo> 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> 
-foodName: String 
FoodRecipeInfo 
-foodInfo: FoodInfo 
-recipeInfo: RecipeInfo 
-foodCode: String 
+FoodRecipeInfo() 
+FoodRecipeInfo(foodInfo, recipeInfo) 
+getFoodInfo() 
+getRecipeInfo() 
+setFoodinfo(foodInfo) 
+setRecipeInfo(recipeInfo) 
FoodInfo 
-foodCode: String 
-foodName: String 
-foodIntro: String 
-foodPhoto: String 
-foodCalorie: int 
+FoodRecipeInfo() 
+FoodRecipeInfo(foodInfo, recipeInfo) 
+getFoodInfo() 
+getRecipeInfo() 
+setFoodinfo(foodInfo) 
+setRecipeInfo(recipeInfo) 
+FoodInfo() 
+FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+getFoodCode(): String 
+getFoodName(): String 
+getFoodIntro(): String 
+getFoodPhoto(): String 
+getFoodCalorie(): int 
+setFoodCode(foodCode: String) 
+setFoodName(foodName: String) 
+setFoodIntro(foodIntro: String) 
+setFoodPhoto(foodPhoto: String) 
+setFoodCalorie(foodCalorie: int) 
FoodRecipeInfoList 
-foodRecipeInfoList: Collection<FoodRecipeInfo> 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(+TodayController() 
foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo) 
+reviseFoodRecipeInfoList(+TodayController(foodCode: String, foodName: foodRecipeInfo) 
String) 
+removeFoodRecipeInfoList(+verifyFoodName(): foodCode: String) 
Collection<FoodRecipeInfo> 
+searchFoodRecipeInfo(foodCode: String) 
+searchFoodRecipeInfoList(+getFoodName(): foodName: String): String 
Collection<FoodRecipeInfo> 
+searchTodayFood(+keyword: setFoodCode(String): Collection<foodName: FoodRecipeInfo> 
String) 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> 
+PhotoController() 
+PhotoController(foodCode: String) 
+verifyFoodCode(): FoodRecipeInfo 
+getFoodCode(): String 
+setFoodCode(foodCode: String)
MVC 구조 
레시피등록 
+RecipeRegistrationUI() 
+RecipeRegistrationUI(foodName: String, foodCalorie: int, foodPhoto: String, foodIntro: String, cookingTotalTime: int, porton: int, level: String[], totalIngredient: int, tip: String) 
+createContentPane(): Container 
+showUI() 
+getFrame(): JFrame 
+getFoodName(): JTextField 
+getFoodCalorie(): JTextField 
+getFoodPhoto(): JTextField 
+getFoodIntro(): JTextArea 
+getCookingTotalTime(): JTextField 
+getPorton(): JTextField 
+getLevelComboBox(): JComboBox<String> 
+getTotalIngredient(): JTextField 
+getTip(): JTextArea 
+setFrame(frame: JFrame) 
+setFoodName(foodName: JTextField) 
+setFoodCalorie(foodCalorie: JTextField) 
+setFoodPhoto(foodPhoto: JTextField) 
+setFoodIntro(foodIntro: JTextArea) 
+setCookingTotalTime(cookingTotalTime: JTextField) 
+setPorton(porton: JTextField) 
+setLevelComboBox(levelComboBox: JComboBox<String>) 
+setTotalIngredient(totalIngredient: JTextField) 
+setTip(tip: JTextArea) 
FoodRecipeInfoList 
RegisterDBController 
-foodRecipeInfoList: Collection<FoodRecipeInfo> 
-foodInfo: FoodInfo 
-recipeInfo: RecipeInfo 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo) 
+reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) 
+removeFoodRecipeInfoList(foodCode: String) 
+searchFoodRecipeInfo(foodCode: String) 
+searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> 
+searchTodayFood(keyword: String): Collection<FoodRecipeInfo> 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> 
+RegisterDBController() 
+RegisterDBController(foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextField, cookingTotalTime: JTextField, portion .......) 
+register() 
+getFoodInfo() 
+getRecipeInfo() 
+setFoodInfo(foodInfo: FoodInfo) 
+setRecipeInfo(recipeInfo: RecipeInfo) 
+RecipeInfo() 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, cookingCourseList, recipeIngreInfoList) 
RecipeInputListener 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, foodCode: +frame: JFrame 
+foodName: String, JTextField 
cookingCourseList, recipeIngreInfoList) 
+foodCalorie: JTextField 
+foodPhoto: JTextField 
+getFoodeName(): String 
+foodIntro: JTextArea 
+cookingTotalTime: JTextField 
+porton: JTextField 
+levelComboBox: JComboBox<String> 
+getCookingTotalTime(): int 
+totalIngredient: JTextField 
+tip: JTextArea 
+getTip(): String 
+getPortion(): int 
+getLevel(): Level 
+getFoodCode(): String 
+getCookingCourseList() 
+getRecipeIngreInfoList() 
+setFoodName(foodName: String) 
+setCookingTotalTime(cookingTotalTime: int) 
+setTip(tip: String) 
+setPortion(portion: int) 
+setLevel(level: Level) 
+setFoodCode(foodCode: String) 
+setCookingCourseList(cookingCourseList) 
+setIngredientInfoList(recipeIngreInfoList) 
+check(ingred1: String, ingred2: String, ingred3: String): boolean 
RecipeRegistrationUI 
-frame: JFrame 
-foodName: JTextField 
-foodCalorie: JTextField 
-foodPhoto: JTextField 
-foodIntro: JTextArea 
-cookingTotalTime: JTextField 
-porton: JTextField 
-levelComboBox: JComboBox<String> 
-totalIngredient: JTextField 
-tip: JTextArea 
+RecipeInputListener() 
+RecipeInputListener(frame: JFrame, foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextArea, cookingTotalTime: JTextField, porton: JTextField, levelComboBox: JComboBox<String>[], totalIngredient: JTextField, tip: JTextArea) 
+actionPerformed(e: ActionEvent) 
+Register() 
+getFrame(): JFrame 
+getFoodName(): JTextField 
+getFoodCalorie(): JTextField 
+getFoodPhoto(): JTextField 
+getFoodIntro(): JTextArea 
+getCookingTotalTime(): JTextField 
+getPorton(): JTextField 
+getLevelComboBox(): JComboBox<String> 
+getTotalIngredient(): JTextField 
+getTip(): JTextField 
+setFrame(frame: JFrame) 
+setFoodName(foodName: JTextField) 
+setFoodCalorie(foodCalorie: JTextField) 
+setFoodPhoto(foodPhoto: JTextField) 
+setFoodIntro(foodIntro: JTextArea) 
+setCookingTotalTime(cookingTotalTime: JTextField) 
+setPorton(porton: JTextField) 
+setLevelComboBox(levelComboBox: JComboBox<String>) 
+setTotalIngredient(totalIngredient: JTextField) 
+setTip(tip: JTextArea) 
-foodName: String 
-cookingTotalTime: int 
-tip: String 
-portion: int 
-level: Level <<enum>> 
FoodInfo 
-foodCode: -foodCode: String 
String 
-foodName: String 
-foodIntro: String 
-cookingCourseList: -foodPhoto: String 
-foodCalorie: int 
CookingCourseList 
-recipeIngreInfoList: RecipeIngreInfoList 
+FoodInfo() 
+FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+getFoodCode(): String 
+getFoodName(): String 
+getFoodIntro(): String 
+getFoodPhoto(): String 
+getFoodCalorie(): int 
+setFoodCode(foodCode: String) 
+setFoodName(foodName: String) 
+setFoodIntro(foodIntro: String) 
+setFoodPhoto(foodPhoto: String) 
+setFoodCalorie(foodCalorie: int) 
RecipeInfo 
-foodName: String 
-cookingTotalTime: int 
-tip: String 
-portion: int 
-level: Level <<enum>> 
-foodCode: String 
-cookingCourseList: CookingCourseList 
-recipeIngreInfoList: RecipeIngreInfoList 
+RecipeInfo() 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, cookingCourseList, recipeIngreInfoList) 
+RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, foodCode: String, cookingCourseList, recipeIngreInfoList) 
+getFoodeName(): String 
+getCookingTotalTime(): int 
+getTip(): String 
+getPortion(): int 
+getLevel(): Level 
+getFoodCode(): +getCookingCourseList() 
+getRecipeIngreInfoList() 
+setFoodName(foodName: String) 
+setCookingTotalTime(cookingTotalTime: int) 
+setTip(tip: String) 
+setPortion(portion: int) 
+setLevel(level: Level) 
+setFoodCode(foodCode: String) 
+setCookingCourseList(cookingCourseList) 
+setIngredientInfoList(recipeIngreInfoList) 
+check(ingred1: String, ingred2: String, ingred3: String): boolean 
TempCookingCourseList 
+cookingCourseList: Collection<CookingCourse> 
+foodName: String 
+foodCode: String 
+getCookingCourseList(): Collection<CookingCourse> 
+getFoodName(): String 
+getFoodCode(): String 
+setCookingCourseList(list: Collection<CookingCourse>) 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+searchCookingCourse(step: int) 
+addCookingCourse(cookingCourse) 
+addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) 
+searchCookingCourse(step: int) 
+searchCookingCourse(cookingCourse) 
+removeCookingCourse(cookingCourse) 
+removeCookingCourse(step: int) 
+reviseCookingCourse(searchData, reviseData) 
+reviseCookingCourseList(step: int, reviseData) 
CookingCourseList 
-cookingCourseList: Collection<CookingCourse> 
-foodName: String 
-foodCode: String 
+CookingCourseList() 
+CookingCourseList(foodName: String, foodCode: String) 
+CookingCourseList(cookingCourseList: Collection<CookingCourse>, foodName: String, foodCode: String) 
+getCookingCourseList(): Collection<CookingCourse> 
+getFoodName(): String 
+getFoodCode(): String 
+setCookingCourseList(list: Collection<CookingCourse>) 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+searchCookingCourse(step: int) 
+addCookingCourse(cookingCourse) 
+addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) 
+searchCookingCourse(step: int) 
+searchCookingCourse(cookingCourse) 
+removeCookingCourse(cookingCourse) 
+removeCookingCourse(step: int) 
+reviseCookingCourse(searchData, reviseData) 
+reviseCookingCourseList(step: int, reviseData) 
RecipeIngreInfoList 
-foodName: String 
-foodCode: String 
-recipeIngreInfoList: Collection<RecipeIngreInfo> 
+RecipeIngreInfoList() 
+RecipeIngreInfoList(foodName: String, foodCode: String, recipeIngreInfoList: Collection<RecipeIngreInfo>) 
+getFoodName(): String 
+getFoodCode(): String 
+getRecipeIngreInfoList(): Collection<RecipeIngreInfo> 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) 
+addRecipeIngreInfoList(recipeIngreInfo) 
+reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo) 
+removeRecipeIngreInfoList(ingredientCode: String) 
+searchRecipeIngreInfo(ingredientCode: String) 
+searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> 
+searchRecipeIngreInfo(ingredientName: String) 
TempRecipeIngreInfoList 
+foodName: String 
+foodCode: String 
+recipeIngreInfoList: Collection<RecipeIngreInfo> 
+getFoodName(): String 
+getFoodCode(): String 
+getRecipeIngreInfoList(): Collection<RecipeIngreInfo> 
+setFoodName(foodName: String) 
+setFoodCode(foodCode: String) 
+setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) 
+addRecipeIngreInfoList(recipeIngreInfo) 
+reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo) 
+removeRecipeIngreInfoList(ingredientCode: String) 
+searchRecipeIngreInfo(ingredientCode: String) 
+searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> 
+searchRecipeIngreInfo(ingredientName: String) 
FoodRecipeInfo 
-foodInfo: FoodInfo 
-recipeInfo: RecipeInfo 
+FoodRecipeInfo() 
+FoodRecipeInfo(foodInfo, recipeInfo) 
+getFoodInfo() 
+getRecipeInfo() 
+setFoodinfo(foodInfo) 
+setRecipeInfo(recipeInfo) 
RecipeInfo 
FoodInfo 
FoodRecipeInfoList 
-foodRecipeInfoList: Collection<FoodRecipeInfo> 
+getFoodRecipeInfoList(): Collection<FoodRecipeInfo> 
+setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) 
+addFoodRecipeInfoList(foodRecipeInfo) 
+reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) 
+removeFoodRecipeInfoList(foodCode: String) 
+searchFoodRecipeInfo(foodCode: String) 
+searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> 
+searchTodayFood(keyword: String): Collection<FoodRecipeInfo> 
+searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> 
RegisterDBController 
-foodInfo: FoodInfo 
-recipeInfo: RecipeInfo 
+RegisterDBController() 
+RegisterDBController(foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextField, cookingTotalTime: JTextField, portion: JTextField, levelComboBox: JComboBox<String>, totalIngredient: JTextField, tip: :JTextArea) 
+register() 
+getFoodInfo() 
+getRecipeInfo() 
+setFoodInfo(foodInfo: FoodInfo) 
+setRecipeInfo(recipeInfo: RecipeInfo) 
-foodCode: String 
-foodName: String 
-foodIntro: String 
-foodPhoto: String 
-foodCalorie: int 
+FoodInfo() 
+FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) 
+getFoodCode(): String 
+getFoodName(): String 
+getFoodIntro(): String 
+getFoodPhoto(): String 
+getFoodCalorie(): int 
+setFoodCode(foodCode: String) 
+setFoodName(foodName: String) 
+setFoodIntro(foodIntro: String) 
+setFoodPhoto(foodPhoto: String) 
+setFoodCalorie(foodCalorie: int)
시퀀스 다이어그램
Use Case : 레시피 등록 
1. 레시피 
등록을 위한 
각종 정보 입력 
2. DB에 
레시피 정보 
저장 
RecipeIngreInfoList 
RegiserDBController RecipeInfo CookingCourseList FoodRecipeInfoList FoodDAO RecipeDAO RecipeCourseDAO RecipeIngredientDAO RecipeIngredientDTO 
레시피 등록 버튼 리스너 
9번 음식정보 
1. 음식이름 
2. 음식칼로리 
3. 음식 사진 경로 
4. 음식 소 
<<create>> 
<<create>> 
<<create>> 
10번 조리정보 
1. 조리시간 
2. 분량 
3. 난이도(선택) 
4. 총 재료 개수 
5. 조리 팁 
sd데이터베이스 저장 
sd for문 
sd for문 
23 : addFoodRecipeInfo(foodRecipeInfo:FoodRecipeInfo) 
24 
25 : insert() 
26 : disconnect() 
27 
28 : insert() 
29 : CookingCourseList := getCookingCourseList() 
30 : Collection<CookingCourse>:=getCookingCourseList() 
31 
32 : insert() 
33 : disconnect() 
<<create>> 
34 
35 : Collection<RecipeIngreInfo>:=getRecipeIngreInfoList() 
36 : RecipeIngredientDTO := selectMaxRecipeIngredientCode() 
37 : int := getRecipeIngredientCode() 
38 : insert() 
39 : disconnect() 
23번, static 클래스(음식조리정보리스트)에 저장 
36번, 37번 가장 낮은 음식코드 불러온다. 
RecipeInputListener 
레시피 정보 조리과정목록 음식조리정보리스트 음식 DAO 조리법 DAO 조리과정DAO 조리재료 DAO 조리재료 DTO 
21 : register() 
레시피 등록 컨트롤러 
int i=1 값을 요리 단계 번호로 하여 
1씩 증가시키면서 insert 
주 
int j=1 부터 시작하여 
최대 재료 코드에 
1씩 증가시키며 insert 
조리재료 정보 리스트 
RecipeIngreInfoList 
RecipeDBController 
클래스 
설명 
FoodRecipeInfoList(static)와 DB에 레시피를 추 
위한 콘트롤러 
메소드 register() 
메소드 
설명 
입력받은 레시피를 등록하는 메소드 
파라미터 
리턴 
클래스 
설명 
조리재료정보목록을 임시로 저장하는 클래스 
메소드 getRecipeIngreInfoList():Collection <Reci 
eInfo> 
메소드 
설명 
하나의 음식에 저장된 조리재료정보목록을 
져오기 위한 메소드 
파라미 
터 
리턴 조리재료정보목록
Use Case : 음식 추천 받기 
: 사용자 
음식추천받기UI 음식추천받기 콘트롤러 음식추천받기 음식조리법정보리스트 
리스너 
음식추천받기 리스너 
음식추천받기UI 음식추천받기 리스너 음식추천받기 콘트롤러 음식조리법정보리스트 음식정보 및 사진 출력리스너 
음식정보 및 사진 
콘트롤러 
TodayController FoodRecipreInfoList 
TodayActionListener 
TodayEatUI TodayActionListener TodayController FoodRecipreInfoList PhtoActionListener PhotoController FoodInfoUI 
1 : 본인의기분 또는 날씨 등을 입력 후 검색 요청() 
2 : void := actionPerformed(e:ActionEvent) 
3 : showResult() 
<<create>> 
4 
음식코드에 맞는 UI 생성하기 
<<create>> 
TodayController객체 생성시, 사용자가 입력한 검색값 중 
첫번째 문자만으로 객체를 생성한다. 
5 : Collection<FoodRecipeInfo> := verifyFoodName() 
조건에 맞는 음식정보, 조리법 정보를 for문을 
이용하여 패널에 각종 정보를 넣기 시작 
<<create>> 
6 : Collection<FoodRecipeInfo> := searchFoodRecipeList(foodName:String) 
7 : 음식 사진 클릭() 
8 : void := actionPerformed(e:ActionEvent) 
음식코드에 맞는 UI 생성하기 
9 : moveUI() 
<<create>> 
10 
<<create>> 
11 : FoodRecipeInfo := searchFoodRecipeList(foodCode:String) 
12 : FoodInfo := verifyFoodCode() 
TodayController객체 생성시, 사용자가 입력한 검색값 중 
첫번째 문자만으로 객체를 생성한다. 
<<create>> 
13 
검색값이 존재하는 경우 
14 : void := showUI() 
음식정보UI 
: 사용자 
TodayEatUI TodayActionListener 
1 : 본인의기분 또는 날씨 등을 입력 후 검색 요청() 
2 : void := actionPerformed(e:ActionEvent) 
3 : showResult() 
4 
5 : Collection<FoodRecipeInfo> := verifyFoodName() 
6 : Collection<FoodRecipeInfo> := searchFoodRecipeList(foodName:String) 
조건에 맞는 음식정보, 조리법 정보를 for문을 
이용하여 패널에 각종 정보를 넣기 시작 
1. 입력한 키워드에 
부합하는 음식 검색 
2. 선택한 음식 
사진의 
상세설명 출력 
PhtoActionListener PhotoController FoodInfoUI 
9 : moveUI() 
10 
11 : FoodInfo := verifyFoodCode() 
12 : FoodRecipeInfo := searchFoodRecipeList(foodCode:String) 
13 
14 : void := showUI() 
FoodRecipreInfoList 
TodayController 
클래스 
설명 
FoodRecipeInfoList(static)에서 Data 검색조건에 
식정보를 UI로 넘겨주는 컨트롤러 
메소드 verifyFoodName():Collection 
<FoodRecipeInfo> 
메소드 
설명 
키워드에 맞는 음식정보를 가져오는 메소드 
파라미터 
리턴 음식 목록 
FoodRecipeInfoList 
클래스 설명 프로그램 내 모든 음식정보를 가지고있는 Static class 
메소드 searchFoodRecipeList(foodCode:String) 
:FoodRecipeInfo 
메소드 
설명 
파라미터와 같은 keyword를 가진 모든 음식을 찾는다 
파라미터 :keyword-검색정보 
리턴 음식목록

Weitere ähnliche Inhalte

Was ist angesagt?

MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎Naruhiko Ogasawara
 
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新Masatoshi Tada
 
날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기NAVER Engineering
 
서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)_ce
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템강 민우
 
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарах
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарахУрок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарах
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарахVsimPPT
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템BOAZ Bigdata
 
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게Seongyun Byeon
 
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)A AOKI
 
데이터를 얻으려는 노오오력
데이터를 얻으려는 노오오력데이터를 얻으려는 노오오력
데이터를 얻으려는 노오오력Youngjae Kim
 
MongoDB for Java Developers with Spring Data
MongoDB for Java Developers with Spring DataMongoDB for Java Developers with Spring Data
MongoDB for Java Developers with Spring DataChris Richardson
 
WkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べたWkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べたfirewood
 
Ергономіка розміщення відомостей на веб-сторінці
Ергономіка розміщення відомостей на веб-сторінціЕргономіка розміщення відомостей на веб-сторінці
Ергономіка розміщення відомостей на веб-сторінціrussoua
 
웨일브라우저 성능 및 메모리 최적화
웨일브라우저 성능 및 메모리 최적화웨일브라우저 성능 및 메모리 최적화
웨일브라우저 성능 및 메모리 최적화NAVER D2
 
코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우Arawn Park
 
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템BOAZ Bigdata
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축BOAZ Bigdata
 
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선]
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선] UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선]
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선] RightBrain inc.
 

Was ist angesagt? (20)

MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎
 
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
 
날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기
 
서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)서비스중인 게임 DB 설계 (쿠키런 편)
서비스중인 게임 DB 설계 (쿠키런 편)
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
 
React vac pattern
React vac patternReact vac pattern
React vac pattern
 
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарах
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарахУрок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарах
Урок 7 для 6 класу - Багатошарові зображення, розміщення об’єктів у шарах
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Find Your Style 팀] : 사용자 이미지 라벨링을 통한 의류 추천 시스템
 
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
 
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
 
데이터를 얻으려는 노오오력
데이터를 얻으려는 노오오력데이터를 얻으려는 노오오력
데이터를 얻으려는 노오오력
 
MongoDB for Java Developers with Spring Data
MongoDB for Java Developers with Spring DataMongoDB for Java Developers with Spring Data
MongoDB for Java Developers with Spring Data
 
WkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べたWkWebViewのキャッシュについて調べた
WkWebViewのキャッシュについて調べた
 
Ергономіка розміщення відомостей на веб-сторінці
Ергономіка розміщення відомостей на веб-сторінціЕргономіка розміщення відомостей на веб-сторінці
Ергономіка розміщення відомостей на веб-сторінці
 
웨일브라우저 성능 및 메모리 최적화
웨일브라우저 성능 및 메모리 최적화웨일브라우저 성능 및 메모리 최적화
웨일브라우저 성능 및 메모리 최적화
 
코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우
 
Rich domain model
Rich domain modelRich domain model
Rich domain model
 
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [SiZoAH] : 리뷰 기반 의류 사이즈 추천시스템
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Hands-on 팀] : 수어 번역을 통한 위험 상황 속 의사소통 시스템 구축
 
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선]
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선] UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선]
UX 아카데미 오픈프로젝트 [29cm - UX/UI 개선]
 

Andere mochten auch

Rainbow Project Web App
Rainbow Project Web AppRainbow Project Web App
Rainbow Project Web Appbingoori
 
주변의 임베디드3
주변의 임베디드3주변의 임베디드3
주변의 임베디드3bbangg
 
Web Planning Story 4 Shopping Reservation 고딕
Web Planning   Story 4 Shopping Reservation 고딕Web Planning   Story 4 Shopping Reservation 고딕
Web Planning Story 4 Shopping Reservation 고딕ahnsunggon
 
온라인 영화예매 서비스3
온라인 영화예매 서비스3온라인 영화예매 서비스3
온라인 영화예매 서비스3희윤 김
 
영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)_ce
 
Devon 2011 b-2 Spring Social
Devon 2011 b-2 Spring SocialDevon 2011 b-2 Spring Social
Devon 2011 b-2 Spring SocialDaum DNA
 
[팀E] 미디어 프로젝트 기획서
[팀E] 미디어 프로젝트 기획서[팀E] 미디어 프로젝트 기획서
[팀E] 미디어 프로젝트 기획서Heekyung12
 
주변의 임베디드2
주변의 임베디드2주변의 임베디드2
주변의 임베디드2bbangg
 
기말레포트
기말레포트기말레포트
기말레포트Miri Kim
 
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보풀싸롱 울
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발Jongmyoung Kim
 
관리자 화면설계 V 1 0 레이아웃
관리자 화면설계  V 1 0 레이아웃관리자 화면설계  V 1 0 레이아웃
관리자 화면설계 V 1 0 레이아웃guest02cfd10
 
캡스톤설계1(강의계획서)2013-1
캡스톤설계1(강의계획서)2013-1캡스톤설계1(강의계획서)2013-1
캡스톤설계1(강의계획서)2013-1Yong Heui Cho
 
주변의 임베디드 최종
주변의 임베디드 최종주변의 임베디드 최종
주변의 임베디드 최종bbangg
 
DB Project - Gmarket
DB Project - Gmarket DB Project - Gmarket
DB Project - Gmarket Han Sung Kim
 

Andere mochten auch (20)

Rainbow Project Web App
Rainbow Project Web AppRainbow Project Web App
Rainbow Project Web App
 
발표2
발표2발표2
발표2
 
주변의 임베디드3
주변의 임베디드3주변의 임베디드3
주변의 임베디드3
 
Web Planning Story 4 Shopping Reservation 고딕
Web Planning   Story 4 Shopping Reservation 고딕Web Planning   Story 4 Shopping Reservation 고딕
Web Planning Story 4 Shopping Reservation 고딕
 
온라인 영화예매 서비스3
온라인 영화예매 서비스3온라인 영화예매 서비스3
온라인 영화예매 서비스3
 
요조숙녀
요조숙녀요조숙녀
요조숙녀
 
영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)영화 예매 프로그램 (DB 설계, 프로그램 연동)
영화 예매 프로그램 (DB 설계, 프로그램 연동)
 
Devon 2011 b-2 Spring Social
Devon 2011 b-2 Spring SocialDevon 2011 b-2 Spring Social
Devon 2011 b-2 Spring Social
 
[팀E] 미디어 프로젝트 기획서
[팀E] 미디어 프로젝트 기획서[팀E] 미디어 프로젝트 기획서
[팀E] 미디어 프로젝트 기획서
 
주변의 임베디드2
주변의 임베디드2주변의 임베디드2
주변의 임베디드2
 
발표Ppt
발표Ppt발표Ppt
발표Ppt
 
기말레포트
기말레포트기말레포트
기말레포트
 
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보
울산풀싸롱『◑◐』 삼산풀싸롱 O1O-7189-1243 시즌3 예약/가격정보
 
TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발TTS System을 이용한 교육용 소프트웨어 개발
TTS System을 이용한 교육용 소프트웨어 개발
 
관리자 화면설계 V 1 0 레이아웃
관리자 화면설계  V 1 0 레이아웃관리자 화면설계  V 1 0 레이아웃
관리자 화면설계 V 1 0 레이아웃
 
발표Ppt
발표Ppt발표Ppt
발표Ppt
 
DB 설계 과제
DB 설계 과제DB 설계 과제
DB 설계 과제
 
캡스톤설계1(강의계획서)2013-1
캡스톤설계1(강의계획서)2013-1캡스톤설계1(강의계획서)2013-1
캡스톤설계1(강의계획서)2013-1
 
주변의 임베디드 최종
주변의 임베디드 최종주변의 임베디드 최종
주변의 임베디드 최종
 
DB Project - Gmarket
DB Project - Gmarket DB Project - Gmarket
DB Project - Gmarket
 

Ähnlich wie 발표Ppt (1)

Django O/R Mapper
Django O/R MapperDjango O/R Mapper
Django O/R MapperIan Lewis
 
Practical Generative Testing Patterns
Practical Generative Testing PatternsPractical Generative Testing Patterns
Practical Generative Testing PatternsSrihari Sriraman
 
Django Introduction Osscamp Delhi September 08 09 2007 Mir Nazim
Django Introduction Osscamp Delhi September 08 09 2007 Mir NazimDjango Introduction Osscamp Delhi September 08 09 2007 Mir Nazim
Django Introduction Osscamp Delhi September 08 09 2007 Mir NazimMir Nazim
 
Automated Unit Testing
Automated Unit TestingAutomated Unit Testing
Automated Unit TestingMike Lively
 
Indiana SNA Menu Planning Session
Indiana SNA Menu Planning SessionIndiana SNA Menu Planning Session
Indiana SNA Menu Planning SessionPrimeroEdge
 
Testers Desk Presentation
Testers Desk PresentationTesters Desk Presentation
Testers Desk PresentationQuality Testing
 
Qtp 92 Tutorial769
Qtp 92 Tutorial769Qtp 92 Tutorial769
Qtp 92 Tutorial769subhasis100
 
qtp 9.2 features
qtp 9.2 featuresqtp 9.2 features
qtp 9.2 featureskrishna3032
 
Qtp 92 Tutorial
Qtp 92 TutorialQtp 92 Tutorial
Qtp 92 Tutorialsasidhar
 
Qtp 92 Tutorial769
Qtp 92 Tutorial769Qtp 92 Tutorial769
Qtp 92 Tutorial769subhasis100
 
Qtp 92 Tutorial Anil
Qtp 92 Tutorial AnilQtp 92 Tutorial Anil
Qtp 92 Tutorial Anilguest3373d3
 
Qtp 9.2 Tutorial
Qtp 9.2 TutorialQtp 9.2 Tutorial
Qtp 9.2 Tutorialguest37ae7f
 
IRJET- Discovery of Recipes based on Ingredients using Machine Learning
IRJET- Discovery of Recipes based on Ingredients using Machine LearningIRJET- Discovery of Recipes based on Ingredients using Machine Learning
IRJET- Discovery of Recipes based on Ingredients using Machine LearningIRJET Journal
 
Gousto: Data-Driven Product Management at Scale
Gousto: Data-Driven Product Management at ScaleGousto: Data-Driven Product Management at Scale
Gousto: Data-Driven Product Management at ScaleAmazon Web Services
 
JAVASCRIPT I need help adding the following to my code Enha.pdf
JAVASCRIPT I need help adding the following to my code Enha.pdfJAVASCRIPT I need help adding the following to my code Enha.pdf
JAVASCRIPT I need help adding the following to my code Enha.pdfadinathassociates
 
Angular js quickstart
Angular js quickstartAngular js quickstart
Angular js quickstartLinkMe Srl
 

Ähnlich wie 발표Ppt (1) (20)

Django O/R Mapper
Django O/R MapperDjango O/R Mapper
Django O/R Mapper
 
Practical Generative Testing Patterns
Practical Generative Testing PatternsPractical Generative Testing Patterns
Practical Generative Testing Patterns
 
Qtp day 3
Qtp day 3Qtp day 3
Qtp day 3
 
Django Introduction Osscamp Delhi September 08 09 2007 Mir Nazim
Django Introduction Osscamp Delhi September 08 09 2007 Mir NazimDjango Introduction Osscamp Delhi September 08 09 2007 Mir Nazim
Django Introduction Osscamp Delhi September 08 09 2007 Mir Nazim
 
Automated Unit Testing
Automated Unit TestingAutomated Unit Testing
Automated Unit Testing
 
Indiana SNA Menu Planning Session
Indiana SNA Menu Planning SessionIndiana SNA Menu Planning Session
Indiana SNA Menu Planning Session
 
Testers Desk Presentation
Testers Desk PresentationTesters Desk Presentation
Testers Desk Presentation
 
Qtp 92 Tutorial769
Qtp 92 Tutorial769Qtp 92 Tutorial769
Qtp 92 Tutorial769
 
qtp 9.2 features
qtp 9.2 featuresqtp 9.2 features
qtp 9.2 features
 
Qtp 92 Tutorial
Qtp 92 TutorialQtp 92 Tutorial
Qtp 92 Tutorial
 
Ppt Qtp
Ppt QtpPpt Qtp
Ppt Qtp
 
Qtp 92 Tutorial769
Qtp 92 Tutorial769Qtp 92 Tutorial769
Qtp 92 Tutorial769
 
Qtp 92 Tutorial Anil
Qtp 92 Tutorial AnilQtp 92 Tutorial Anil
Qtp 92 Tutorial Anil
 
Qtp 9.2 Tutorial
Qtp 9.2 TutorialQtp 9.2 Tutorial
Qtp 9.2 Tutorial
 
Qtp 92 Tutorial769
Qtp 92 Tutorial769Qtp 92 Tutorial769
Qtp 92 Tutorial769
 
IRJET- Discovery of Recipes based on Ingredients using Machine Learning
IRJET- Discovery of Recipes based on Ingredients using Machine LearningIRJET- Discovery of Recipes based on Ingredients using Machine Learning
IRJET- Discovery of Recipes based on Ingredients using Machine Learning
 
Gousto: Data-Driven Product Management at Scale
Gousto: Data-Driven Product Management at ScaleGousto: Data-Driven Product Management at Scale
Gousto: Data-Driven Product Management at Scale
 
Opm mac subledger
Opm mac subledgerOpm mac subledger
Opm mac subledger
 
JAVASCRIPT I need help adding the following to my code Enha.pdf
JAVASCRIPT I need help adding the following to my code Enha.pdfJAVASCRIPT I need help adding the following to my code Enha.pdf
JAVASCRIPT I need help adding the following to my code Enha.pdf
 
Angular js quickstart
Angular js quickstartAngular js quickstart
Angular js quickstart
 

Kürzlich hochgeladen

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniquesugginaramesh
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitterShivangiSharma879191
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 

Kürzlich hochgeladen (20)

Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniques
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 

발표Ppt (1)

  • 1.
  • 2. 개요 개발 환경 개발 일정 업무 분담 업무 분담 Project 개 요 Project 시 연 Usecase Diagram Usecase 정 의 서 Project 설 계 설계 단계 분석 단계 요구사항 정 의 서 Sequence Diagram 화면 설계 데이터 설 계
  • 5. 개발일정표 날짜 내용 4월 2주차 3주차 4주차 날짜 정보수집 유즈 케이스 모델링 분석 클래스 모델링 설계클래스 모델링 프로그램구현 5월 9 12 13 14 15 TABLE설계 DAO / DTO 설계 Controller 설계 프로그램 구현 문서작업
  • 6. 개발 업무 분담표 이름 : 장 성봉 업무 : 프로젝트 업무 총괄 이름 : 김 대곤 업무 : 클래스 다이어그램 관리 이름 : 박 홍근 업무 : 코드 통합 이름 : 양 진영 업무 : 코드 버전관리 문서관리 이름 : 김 영한 업무 : 클래스 다이어그램 관리
  • 7. 벤치마킹 Survey Web Site & Application
  • 8. 벤치마킹 Survey 요리할 때, 어려움을 겪는 사람의 비율 92% 8% 있다 없다
  • 9. 벤치마킹 Survey 28 18 4 18 1 0 30 25 20 15 10 5 0 요리를 할 때 겪는 어려움 메뉴선정 식재료구입 재정상태 요리법을 잘 몰라서 기타 없음
  • 10. 벤치마킹 Survey 요리도우미에게 제공받고 싶은 서비스 49% 17% 10% 20% 4% 요리법제공 대신장보기 음식메뉴선정 영양소/열량계산 기타
  • 11. 벤치마킹 Web Site & Application 벤치마킹 대상 벤치마킹 기능 다나와 가격대 검색,배송지 변경, 배송예약, 기본배송지 지마켓 회원로그인, 아이디 저장, 기본 배송지 수정 롯데마트 비회원로그인,주문 배송 조회, 배송지 관리 이마트 가까운 배송 지 찾기, 배송정보 조회 미즈쿡 요리 카테고리, 음식정보, 요리법제공,댓 글,레시피 추가 메뉴판 닷컴 음식정보 목록, 재료정보, , 구매/소유 재료 체크, 체크리스트, 계량정보, 별 점, 만개의 레시피 회원가입,요리법 제공, 별 점, 요리카테고리 오마이 쉐프 아이디/비밀번호 찾기,재료정보
  • 12. 회원 로그인 요구사항 정의서 기본 서비스 특화기능 회원가입 요리 추천 요리정보 제공 사용자 레시피 추가 레시피 정보 Stop watch 기능
  • 13. 정보수집단계 키추출 명사 동사 명사 명사 사용자 수령인 시스템 주부 비회원 제공자 작성자 주문자 회원 이용자 세프 대상 주사용자 여성 고수 비사용자 네티즌 요리도우 미 관리자 요리블로 거 받으실분 배송자 사람 올린이 초보 에디터 동사 (가격대를)검색하다 (가격대를)선택하다 (가격대를)입력하다 (가까운매장을)찾는다 (개인노트카테고리를)선택하다 (계량선택을)선택하다 (계량수치를)제공하다 (계정을)복구하다 (계정을)설정하다 (공감수가)증가한다 (구매장소를)설정하다 (구매장소를)파악하다 (국가별레시피를)선택하다 (글자수를)제한하다 (금액을)구분하다 (금액을)선택하다 (기본배송지를)설정하다 (날짜를)선택하다 (날짜와예약가능시간을)선택하다 (낮은가격순으로)선택하다 (높은가격순으로)선택하다 (다음페이지로)이동한다 (단위를)표시하다 (댓글을)작성하다 (덧글을)선택하다 동사 (덧글을)수정하다 (덧글을)입력하다 (덧글을)정렬하다 (레시피를)검색하다 (레시피를)선택하다 (레시피를)스크랩하다 (레시피를)입력하다 (레시피를)작성하다 (레시피를)제공하다 (레시피를)조회하다 (레시피를)조회한다 (레시피를)찜하다 (레시피를)추천하다 (레시피를)확인한다 (레시피목록을)제공하다 (레시피의내용을)입력하다 (로그인을)취소하다 (메일주소를)입력한다 (배달가능시간을)선택하다 (배송시간을)수정하다 (배송시간을)예약하다 (배송시간을)조회하다 (배송정보를)조회하다 (배송지를)등록하다 (배송지를)삭제하다 동사 (요리를)선택하다 (요리리스트를)제공하다 (요리명을)보여주다 (요리명을)입력하다 (요리목록을)선택하다 (요리목적에따라)선택한다 (요리목적을)선택하다 (요리목적을)제공한다 (요리사진을)보여준다 (요리사진을)분류하다 (요리사진을)선택하다 (요리사진을)제공하다 (요리의목적을)선택하다 (요리이름을)선택한다 (요리이름을)조회하다 (요리재료를)입력하다 (요리재료를)제공하다 (요리정보를)공유하다 (요리정보를)보여준다 (요리정보를)선택하다 (우편번호를)검색하다 (우편번호를)선택하다 (우편번호를)입력하다 (음식사진을)선택하다 (음식사진을)제공한다 동사 (음식사진을)첨부하다 (음식재료를)확인하다 (의견을)입력하다 (이름을)입력하다 (이미지를)선택하다 (인기상품순을)선택한다 (인기순으로)검색하다 (인기순으로)정렬하다 (인기순으로)출력하다 (입력정보를)초기화하다 (장보기목록을)선택하다 (재료계량정보를)제공하다 (재료를)구매하다 (재료를)확인하다 (재료별레시피를)선택하다 (재료수량을)확인하다 (재료의양을)제공하다 (재료의양을)확인하다 (재료정보를)제공하다 (정보를)조회하다 (조리과정을)확인한다 (조리시간을)확인한다 (조회수를)보여준다 (주문을)조회하다 (주문자정보항목을)입력하다 동사 (주문하기를)선택하다 (주소를)입력하다 (주재료를)제공한다 (주재료를)확인한다 (집에있는재료를)구분하다 (체크리스트를)수정하다 (체크리스트를)입력하다 (체크리스트를)조회하다 (총결제금액을)출력한다 (총판매가를)출력한다 (총포장비를)출력한다 (총할인금액을)보여준다 (최근알림메시지를)확인한다 (최신순으로)보다 (추천수를)보여준다 (카테고리를)선택하다 (카테고리를)추천하다 (카테고리에)등록하다 (테마를)추천하다 (평점을기준으로)조회하다 (항목의내용을)초기화하다 (회원만족도를)확인하다 (회원프로필을)설정하다 로그인하다 회원가입하다 동사 (배송지를)선택하다 (배송지를)설정하다 (배송지를)수정하다 (배송지를)입력하다 (배송지를)추가하다 (배송지정보를)수정하다 (배송지정보를)저장하다 (별점을)추가하다 (보안문자를)선택하다 (보안문자를)입력하다 (보안문자를)제공하다 (본인인증을)하다 (비밀번호를)입력하다 (비밀번호를)찾다 (비밀번호를)확인하다 (사진을)제공하다 (상품을)검색하다 (상품을)선택하다 (새배송지를)추가하다 (셰프를)등록하다 (예약가능시간을)확인하다 (요리건수를)제공한다 (요리단계를)제공한다 (요리대상을)확인하다 (요리레시피를)조회하다 엑터후보 유즈케이스 후보
  • 14. UseCase 다이어그램 사용자 회원가입 음식 명으로 검색 음식추천받기 재료를 입력하여 검색 가격대 검색 음식정보 등록 조리과정조회 재료등록 조리과정등록 로그인 <<extends>> <<include>>
  • 15. UseCase 정의서 유즈케이스 정의서(4. UC001) Note 시스템명 요조숙녀 작성일자 2014.04.30 페이지 1/1 N-1. 키워드 : 기분, 상태 등 UseCase 명 음식추천받기 작성자 김대곤 3.2 Alternative 3.3 Exception Flows Flows A-1. 검색결과가 존재하지 않은 경우 1. “검색결과가 E-1. 사용자가 존재하지 키워드 않습니다. 입력을 다시 입력해주세요.” 하지 않고 창을 라는 메시지를 닫은 경우 보여준다. -> Main ->Flow의 Use Case를 2번으로 종료한다. 3.1 Main Flows 1. 사용자는 음식 추천 받기를 요청한다. 2. 시스템은 사용자에게 키워드(N-1) 입력을 요청한다. 3. 사용자는 키워드를 입력하고 음식 추천 받기를 요청한다(A-1)(E-1). 4. 시스템은 음식 검색 결과를 사용자에게 보여주고 Use Case를 종료한다.
  • 16. UseCase 정의서 4. Note N-1. 3.3 음식정보 Exception : 음식이름, 음식칼로리, Flows 음식사진(경로), 음식소개 N-2. E-조리정보 1. 사용자가돌아가기를선택한경우 : 조리시간, 분량, 난이도, 총 재료개수, 조리팁 N-3. 조리과정 등록정보 : 단계시간(초), 사진경로, 설명 N-4. ->재료정보 Use Case를종료한다 : 재료명, 수량 유즈케이스 정의서(UC002) 3.2 Alternative Flows 시스템명 요조숙녀 A-1. 사용자가 작성일자 등록을 2014.04.30 선택한 경우 페이지 1/1 UseCase 명 음식정보등록 -> Main Flow의 5번으로 작성자 장성봉 3.1 Main Flows 1. 사용자는 음식정보 등록을 요청한다. 2. 시스템은 사용자에게 음식정보(N-1), 조리정보(N-2) 입력을 요청한다. 3. 사용자는 음식정보, 조리정보를 입력한다. (E-1) 4. 사용자는 조리과정 등록하기를 요청한다. 5. 시스템은 사용자에게 조리과정 등록정보(N-3) 입력을 요청한다. 6. 사용자는 조리과정 등록정보를 입력하고 완료를 선택한다(A-1). 7. 사용자는 재료 등록하기를 요청한다. 8. 시스템은 사용자에게 재료정보(N-4) 입력을 요청한다. 9. 사용자는 재료정보를 입력하고 재료 등록하기를 선택한다. 10. 시스템은 성공적으로 재료를 등록하였고 Use Case를 종료한다.
  • 19. 분석단계 클래스다이어그램(영문) IngredientInfoList -ingredientInfoList: Collection<IngredientInfo> -foodName: String +IngredientInfoList() +IngredientInfoList(list: Collection<IngredientInfo>, foodName: String) +getIngredientInfoList(): Collection<IngredientInfo> +getFoodName(): String +setIngredientInfoList(list: Collection<IngredientInfo>) +setFoodName(foodName: String) +addIngredienInfoList(ingredientInfo: IngredientInfo): IngredientInfo +reviseIngredientInfoList(ingredientCode: String, ingredientInfo: IngredientInfo): IngredientInfo +removeIngredientInfoList(ingredientCode: String): IngredientInfo +searchIngredientInfo(ingredientCode: String): IngredientInfo +searchIngredientInfoList(ingredientName: String): Collection<IngredientInfo> IngredientInfo -ingrdientName: String -ingredientCode: String -unit: String -soldItemName: String -soldItemNum: int -soldItemCode: String -placeOfOrisin: String -price: double +IngredientInfo() +IngredientInfo(ingredientName: String, ingredientCode: String, unit: String) +IngredientInfo(ingredientName: String, ingredientCode: String) +IngredientInfo(ingredientCode: String) +getIngredientName(): String +getIngredientCode(): String +getUnit(): String +setIngredientName(ingredientName: String) +setIngredientCode(ingredientCode: String) +setUnit(unit: String) RecipeIngreInfo -ingredientName: String -ingredientCode: String -ingredientNum: int SoldItemInfo +RecipeIngreInfo() +RecipeIngreInfo(ingredientName: String, ingredientCode: String, ingredientNum: int) +getIngredientName(): String +getIngredientCode(): String +getIngredientNum(): int +setIngredientName(ingredientName: String) +setIngredientCode(ingredientCode: String) +setIngredientNum(ingredientNum: int) RecipeIngreInfoList -foodName: String -foodCode: String -recipeIngreInfoList: Collection<RecipeIngreInfo> +RecipeIngreInfoList() +RecipeIngreInfoList(foodName: String, foodCode: String, recipeIngreInfoList: Collection<RecipeIngreInfo>) +getFoodName(): String +getFoodCode(): String +getRecipeIngreInfoList(): Collection<RecipeIngreInfo> +setFoodName(foodName: String) +setFoodCode(foodCode: String) +setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) +addRecipeIngreInfoList(recipeIngreInfo: RecipeIngreInfo): RecipeIngreInfo +reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo: RecipeIngreInfo): RecipeIngreInfo +removeRecipeIngreInfoList(ingredientCode: String): RecipeIngreInfo +searchRecipeIngreInfo(ingredientCode: String): RecipeIngreInfo +searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> +searchRecipeIngreInfo(ingredientName: String): RecipeIngreInfo CookingCourse -cookingPhoto: String -cookingTime: int -cookingInst: String +CookingCourse() +CookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) +CookingCourse(cookingTime: int, cookingInst: String) +getCookingPhoto(): String +getCookingTime(): int +getCookingInst(): String +setCookingPhoto(cookingPhoto: String) +setCookingTime(cookingTime: int) +setCookingInst(cookingInst: String) -cookingCourseList:CookingCourseList :한음식의 전체조리과정 -recipeIngreInfoList:LoginInfo -id: String RecipeIngreInfoList -password: String -loginState: boolean :한음식의 전체재료 -name : String -id : String -password : String -address : String -phone : String -zipCode : String +LoginInfo() +LoginInfo(id: String, password: String) +getId(): String +getPassword(): String +getLoginState(): boolean +setId(id: String) +setPassword(password: String) +setLoginState(loginState: boolean) FoodInfo -foodCode: String -foodName: String -foodIntro: String -foodPhoto: String -foodCalorie: int +SoldItemInfo() +SoldItemInfo(name: String, num: int, code: String, placeOfOrisin: String, price: double) +getSoldItemName(): String +getSoldItemNum(): int +getSoldItemCode(): String +getPlaceOfOrisin(): String +getPrice(): double +setSoldItemName(name: String) +setSoldItemNum(num: int) +setSoldItemCode(code: String) +setPlaceOfOrisin(placeOfOrisin: String) +setPrice(price: double) +FoodInfo() +FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String) +FoodInfo(foodCode: String, foodName: String) +getFoodCode(): String +getFoodName(): String +getFoodIntro(): String +getFoodPhoto(): String +getFoodCalorie(): int +setFoodCode(foodCode: String) +setFoodName(foodName: String) +setFoodIntro(foodIntro: String) +setFoodPhoto(foodPhoto: String) +setFoodCalorie(foodCalorie: int) SoldItemInfo -soldItemName: String -soldItemNum: int -soldItemCode: String -placeOfOrisin: String -price: double +SoldItemInfo() +SoldItemInfo(name: String, num: int, code: String, placeOfOrisin: String, price: double) +getSoldItemName(): String +getSoldItemNum(): int +getSoldItemCode(): String +getPlaceOfOrisin(): String +getPrice(): double +setSoldItemName(name: String) +setSoldItemNum(num: int) +setSoldItemCode(code: String) +setPlaceOfOrisin(placeOfOrisin: String) +setPrice(price: double) RecipeInfo -foodName: String -cookingTotalTime: int -tip: String -portion: int -level: Level <<enum>> -foodCode: String -cookingCourseList: CookingCourseList -recipeIngreInfoList: RecipeIngreInfoList +RecipeInfo() +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, foodCode: String, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) +getFoodeName(): String +getCookingTotalTime(): int +getTip(): String +getPortion(): int +getLevel(): Level +getFoodCode(): String +getCookingCourseList(): CookingCourseList +getRecipeIngreInfoList(): RecipeIngreInfoList +setFoodName(foodName: String) +setCookingTotalTime(cookingTotalTime: int) +setTip(tip: String) +setPortion(portion: int) +setLevel(level: Level) +setFoodCode(foodCode: String) +setCookingCourseList(cookingCourseList: CookingCourseList) +setIngredientInfoList(recipeIngreInfoList: RecipeIngreInfoList) +check(ingred1: String, ingred2: String, ingred3: String): boolean CookingCourseList -cookingCourseList: Collection<CookingCourse> -foodName: String -foodCode: String +CookingCourseList() +CookingCourseList(foodName: String, foodCode: String) +CookingCourseList(cookingCourseList: Collection<CookingCourse>, foodName: String, foodCode: String) +getCookingCourseList(): Collection<CookingCourse> +getFoodName(): String +getFoodCode(): String +setCookingCourseList(list: Collection<CookingCourse>) +setFoodName(foodName: String) +setFoodCode(foodCode: String) +searchCookingCourse(step: int): CookingCourse +addCookingCourse(cookingCourse: CookingCourse): CookingCourse +addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) +searchCookingCourse(step: int): CookingCourse +searchCookingCourse(cookingCourse: CookingCourse): CookingCourse +removeCookingCourse(cookingCourse: CookingCourse): CookingCourse +removeCookingCourse(step: int): CookingCourse +reviseCookingCourse(searchData: CookingCourse, reviseData: CookingCourse): CookingCourse +reviseCookingCourseList(step: int, reviseData: CookingCourse): CookingCourse MemberInfo -name: String -id: String -password: String -address: String -phone: String -zipCode: String +MemberInfo() +MemberInfo(name: String, id: String) +MemberInfo(name: String, id: String, password: Stirng, address: String, phone: String, zipCode: String) +getName(): String +getId(): String +getPassword(): String +getAddress(): String +getPhone(): String +getZipCode(): String +setName(name: String) +setId(id: String) +setPassword(password: String) +setAddress(address: String) +setPhone(phone: String) +setZipCode(zipCode: String) FoodInfoList -foodInfoList: Collection<FoodInfo> +FoodInfoList() +FoodInfoList(list: Collection<FoodInfo>) +getFoodInfoList(): Collection<FoodInfo> +setFoodInfoList(list: Collection<FoodInfo>) +addFoodInfoList(foodInfo: FoodInfo): FoodInfo +reviseFoodInfoList(foodCode: String, reviseData: FoodInfo): FoodInfo +removeFoodInfoList(foodCode: String): FoodInfo +searchFoodInfo(foodCode: String): FoodInfo +searchFoodInfoList(foodName: String): Collection<FoodInfo> SoldItemInfoList -soldItemInfoList: Collection<SoldItemInfo> +SoldItemInfoList() +SoldItemInfoList(soldItemInfoList: Collection<SoldItemInfo>) +getSoldItemInfoList(): Collection<SoldItemInfo> +setSoldItemInfoList(soldItemInfoList: Collection<SoldItemInfo>) +addSoldItemInfoList(soldItemInfo: SoldItemInfo): SoldItemInfo +reviseSoldItemInfoList(soldItemCode: String, soldItemInfo: SoldItemInfo): SoldItemInfo +removeSoldItemInfoList(soldItemCode: String): SoldItemInfo +searchSoldItemInfoList(soldItemCode: String): SoldItemInfo StoreInfo -storeName: String -storeCode: String -storeAddress: String -storePhone: String +StoreInfo() +StoreInfo(storeName: String, storeCode: String, storeAddress: String, storePhone: String) +getStoreName(): String +getStoreCode(): String +getStoreAddress(): String +getStorePhone(): String +setStoreName(storeName: String) +setStoreCode(storeCode: String) +setStoreAddress(storeAddress: String) +setStorePhone(storePhone: String) StoreInfoList -list: Collection<StoreInfo> +StoreInfoList() +StoreInfoList(list: Collection<StoreInfo>) +getList(): Collection<StoreInfo> +setList(list: Collection<StoreInfo>) +addStoreInfoList(storeInfo: StoreInfo): StoreInfo +reviseStoreInfoList(code: String, storeInfo: StoreInfo): StoreInfo +removeStoreInfoList(code: String): StoreInfo +searchStoreInfo(code: String): StoreInfo MemberInfo -name: String -id: String -password: String -address: String -phone: String -zipCode: String +MemberInfo() ++MemberInfo(getName() name: String, id: String) +MemberInfo(name: String, id: String, password: Stirng, address: String, phone: String, zipCode: String) +-> getName(): +getId(): 이름을 String String 찾다 StoreInfo +getPassword(): String ++getAddress(): setZipCode() String +getPhone(): String +->getZipCode(): 주소를 String 입력하다 +setName(name: String) +setId(id: String) +setPassword(password: String) +setAddress(address: String) +setPhone(phone: String) +setZipCode(zipCode: String) -storeName: String -storeCode: String -storeAddress: String -storePhone: String +StoreInfo() +StoreInfo(storeName: String, storeCode: String, storeAddress: String, storePhone: String) +getStoreName(): String +getStoreCode(): String +getStoreAddress(): String +getStorePhone(): String +setStoreName(storeName: String) +setStoreCode(storeCode: String) +setStoreAddress(storeAddress: String) +setStorePhone(storePhone: String) FoodInfo -foodCode: String -foodName: String -foodIntro: String -foodPhoto: String -foodCalorie: int +FoodInfo() +FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String) +FoodInfo(foodCode: String, foodName: String) +getFoodCode(): String +getFoodName(): String +getFoodIntro(): String +getFoodPhoto(): String +getFoodCalorie(): int +setFoodCode(foodCode: String) +setFoodName(foodName: String) +setFoodIntro(foodIntro: String) +setFoodPhoto(foodPhoto: String) +setFoodCalorie(foodCalorie: int) StoreInfo 판매처 SoldItemInfo 판매물품 FoodInfo 음식 RecipeIngreInfo -ingredientName: String -ingredientCode: String -ingredientNum: int +RecipeIngreInfo() +RecipeIngreInfo(ingredientName: String, ingredientCode: String, ingredientNum: int) +getIngredientName(): String +getIngredientCode(): String +getIngredientNum(): int +setIngredientName(ingredientName: String) +setIngredientCode(ingredientCode: String) +setIngredientNum(ingredientNum: int) CookingCourse -cookingPhoto: String -cookingTime: int -cookingInst: String +CookingCourse() +CookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) +CookingCourse(cookingTime: int, cookingInst: String) +getCookingPhoto(): String +getCookingTime(): int +getCookingInst(): String +setCookingPhoto(cookingPhoto: String) +setCookingTime(cookingTime: int) +setCookingInst(cookingInst: String) RecipeIngreInfo 재료 1개 CookingCourse 조리과정 1단계 RecipeInfo -foodName: String -cookingTotalTime: int -tip: String -portion: int -level: Level <<enum>> -foodCode: String -cookingCourseList: CookingCourseList -recipeIngreInfoList: RecipeIngreInfoList +RecipeInfo() +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level: Level, foodCode: String, cookingCourseList: CookingCourseList, recipeIngreInfoList: RecipeIngreInfoList) +getFoodeName(): String +getCookingTotalTime(): int +getTip(): String +getPortion(): int +getLevel(): Level +getFoodCode(): String +getCookingCourseList(): CookingCourseList +getRecipeIngreInfoList(): RecipeIngreInfoList +setFoodName(foodName: String) +setCookingTotalTime(cookingTotalTime: int) +setTip(tip: String) +setPortion(portion: int) +setLevel(level: Level) +setFoodCode(foodCode: String) +setCookingCourseList(cookingCourseList: CookingCourseList) +setIngredientInfoList(recipeIngreInfoList: RecipeIngreInfoList) +check(ingred1: String, ingred2: String, ingred3: String): boolean +check(ingred1:String,ingred2:String,ingred3:String) :boolean ->재료가 있나없나???
  • 20. 로그인 요조숙녀~ 음식검색 뭐먹지? 레시피등록 주문내역확인 메인화면
  • 21. 검색 요조숙녀~ 음식검색 요리명 음식목록
  • 22. 요조숙녀~ 음식설명 요 리 명 : 짜장밥 재료 : 밥,춘장,돼지고기,양파,간장 조리시간 : 0시간 10분 0초 건강정보 : 서민의 음식! 재료주문 요리시작
  • 23. 요조숙녀~ 조리법 00:04:43.29 재료 잘게 깍뚝 썰고 청주, 소금 후추로 밑간한다. 이전 일시정지 시작 다음
  • 24. 레시피등록 레시피등록 음식 정보 음 식 이 름 : 음 식 칼 로 리 : 음 식 사 진 (경로): 음 식 소 개 : 조리 정보 조 리 시 간 : 분 량 : 난 이 도 : 총 재 료 개 수 : 조 리 팁 : kcal sec 인분 개 사진가져오기 조리과정등록하기 재료등록하기 레시피등록하기 돌아가기
  • 25. 조리과정등록 조리과정등록 단계시간(초) 사진경로 사진선택 설 명 등록 완료
  • 26. 예시)볶음밥 재료 등록하기 돌아가기 재료1 재료명: 재료2 재료명: 재료3 재료명: 수량: 수량: 수량: 개(g) 개(g) 개(g) 재료등록
  • 27. 파일설계 CookingCourseListData.txt 조리과정 FoodInfoData.txt MemberInfoData.txt RecipeIngreInfoData.txt RecipeInfoData.txt StoreInfoList.txt StoreItemInfoList.txt 음식정보 회원정보 요리재료정보 요리정보 판매처정보 판매물품정보
  • 28. 파일설계 전체음식정보목록 파일형식 : *.txt 구분자 : 개행 파일명 : FoodInfoData 저장내용 : 음식코드, 음식명, 음식소개, 음식사진, 열량
  • 31. 클래스다이어그램 RegistRecipeActionListener OrderedRecordActionListener MainFrameUI RecipeRegistrationUI M C V LoginUI TodayEatUI LoginButtonActionListener FoodSearchActionListener SpecialRecommendFoodActionListener LoginCheckController LoginContorller LoginActionListener LoginJoinActionListener CheckActionListener JoinActionListener JoinUI CancelActionListener IdCheckController JoinDBController FoodSearchFrameUI FoodNameActionListener CategoryActionListener RecommandActionListener FoodNameSearchController SearchActionListener FoodNameFrameUI PhtotoActionListener PhotoController FoodInfoUI CategoryFrameUI CategorySearchActionListener ComboBoxStateListener IngredSrchActionListener FoodRecommendUI IngredSrchController IngredSrchBtnListener MoneySrchActionListener MoneySrchBtnListener MoneySrchController TodayController TodayActionListener OrderRecordListUI StepInputListener IngredientButtonListener RecipeInputListener RecipeCourseUI FileSelListener RegistListener EndButtonListener PhotoButtonController CookingCourseRegistController IngredientRegisterController IngredientRegisterListener IngredientInputUI RegisterDBController TempCookingCourseList CookingCourse RecipeIngreInfo FoodRecipeInfoList RecipeIngreInfoList FoodInfo RecipeInfo TempRecipeIngreInfoList FoodDAO FoodDTO FoodList FoodRecipeInfo FoodRecipeInfoList RecipeDAO RecipeDTO RecipeList CookingCourseList RecipeCourseDAO RecipeCourseDTO RecipeCourseList RecipeIngredientDAO RecipeIngredientDTO RecipeIngredientList IngredientDAO IngredientDTO IngredientList MemberInfoList ManagerInfo LoginInfo RecipeIngreInfo SoldItemInfo SoldItemInfoList RecipeIngreInfoList
  • 32. Data Loading - File FoodFileIO -cookingCourseListData: CookingCourseListData -recipeIngreInfoListData: RecipeIngreInfoListData -recipeInfoList: RecipeInfoList -foodInfoList: FoodInfoList +FoodFileIO() +FoodFileIO(cookingCourseListData: CookingCourseListData, recipeIngreInfoListData: RecipeIngreInfoListData, recipeIngoList: RecipeInfoList, foodInfoList: FoodInfoList) +getCookingCourseListData(): CookingCourseListData +getRecipeIngreInfoListData(): RecipeIngreInfoListData +getRecipeInfoList(): RecipeInfoList +getFoodInfoList(): FoodInfoList +setCookingCourseListData(cookingCourseListData: CookingCourseListData) +setRecipeIngreInfoListData(recipeIngreInfoListData: RecipeIngreInfoListData) +setRecipeInfoList(recipeInfoList: RecipeInfoList) +setFoodInfo(foodInfoList: FoodInfoList) +readFoodInfo() +load() RecipeIngreInfoListData -recipeIngreInfoListData: Collection<RecipeIngreInfoList> +RecipeIngreInfoListData() +RecipeIngreInfoListData(recipeIngreInfoListData: Collection<RecipeIngreInfoList>) +getRecipeIngreInfoList(): Collection<RecipeIngreInfoList> +setRecipeIngreInfoList(recipeIngreInfoListData: Collection<RecipeIngreInfoList>) +addRecipeIngreInfoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList +reviseRecipeIngreInfoList(searchRecipeIngreInfoList: RecipeIngreInfoList, changeRecipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList +removeRecipeIngreInfoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList +searchRecipeIngreIngoList(recipeIngreInfoList: RecipeIngreInfoList): RecipeIngreInfoList CookingCourseListData -cookingCourseListData: Collection<CookingCoureseList> +CookingCourseListData() +CookingCourseListData(cookingCourseListData: Collection<CookingCoureseList>) +getCookingCourseListData(): Collection<CookingCoureList> +setCookingCoureListData(cookingCourseListData: Collection<CookingCourseListData>) +addCookingCourseList(cookingCourseList) +reviseCookingCourseList(searchData, reviseData) +removeCookingCourseList(cookingCourseList) +searchCookingCourseList(cookingCourseList) RecipeInfoList -recipeInfoList: Collection<RecipeInfo> +RecipeInfoList() +RecipeInfoList(list: Collection<RecipeInfo>) +getRecipeInfoList(): Collection<RecipeInfo> +setRecipeInfoList(recipeInfoList: Collection<RecipeInfo>) +addRecipeInfoList(recipeInfo) +reviseRecipeInfoList(foodCode: String, recipeInfo) +removeRecipeInfoList(foodCode: String) +searchRecipeInfo(foodCode: String) +searchRecipeInfoList(foodName: String): Collection<RecipeInfo> FoodInfoList -foodInfoList: Collection<FoodInfo> +FoodInfoList() +FoodInfoList(list: Collection<FoodInfo>) +getFoodInfoList(): Collection<FoodInfo> +setFoodInfoList(list: Collection<FoodInfo>) +addFoodInfoList(foodInfo) +reviseFoodInfoList(foodCode: String, reviseData) +removeFoodInfoList(foodCode: String) +searchFoodInfo(foodCode: String) +searchFoodInfoList(foodName: String): Collection<FoodInfo> FoodRecipeInfoList +foodRecipeInfoList: Collection<FoodRecipeInfo> +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo) +reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) +removeFoodRecipeInfoList(foodCode: String) +searchFoodRecipeInfo(foodCode: String) +searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> +searchTodayFood(keyword: String): Collection<FoodRecipeInfo> +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo>
  • 33. FoodRecipeInfoList FoodFileIO Data Loading - File CookingCourseListData FoodInfoList RecipeIngreInfoListData RecipeInfoList
  • 34. Data Loading - DB RecipeCourseDAO -conn: Connection +RecipeCourseDAO() +getConn(): Connection +setConn(conn: Connection) -connect() +disconnect() +insert(courseLevel: int, recipeCode: int, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String): int +selectAll(): RecipeCourseList +selectCourseLevelRecipeCode(courseLevel: int, recipeCode: int): RecipeCourseDTO +selectCourseLevel(courseLevel: int): RecipeCourseList +selectRecipeCode(recipeCode: int): RecipeCourseList +selectRecipeCoursePhoto(recipeCoursePhoto: String): RecipeCourseDTO +selectRecipeCourseTime(recipeCourseTime: int): RecipeCourseList +selectRecipeCourseIntro(recipeCourseIntro: String): RecipeCourseDTO +selectCourse(): CourseList +updateAll(courseLevel: int, recipeCode: int, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String): int +updateRecipeCoursePhoto(courseLevel: int, recipeCode: int, recipeCoursePhoto: String): int +updateRecipeCourseTime(courseLevel: int, recipeCode: int, recipeCourseTime: int): int +updateRecipeCourseIntro(courseLevel: int, recipeCode: int, recipeCourseIntro: String): int +deleteAll(): int +deleteCourseLevel(courseLevel: int): int +deleteRecipeCode(recipeCode: int): int +deleteCourseLevelRecipeCode(courseLevel: int, recipeCode: int): int +deleteRecipeCourseTime(recipeCourseTime: int): int +deleteRecipeCourseIntro(recipeCourseIntro: String): int +deleteRecipeCoursePhoto(recipeCoursePhoto: String): int CourseDTO -foodCode: int -foodName: String -recipeCoursePhoto: String -recipeCourseTime: int -recipeCourseIntro: String +CourseDTO() +CourseDTO(foodCode: int, foodName: Stiring, recipeCoursePhoto: String, recipeCourseTime: int, recipeCourseIntro: String) +getFoodCode(): int +getFoodName(): String +getRecipeCoursePhoto(): String +getRecipeCourseTime(): int +getRecipeCourseIntro(): String +setFoodCode(foodCode: int) +setFoodName(foodName: String) +setRecipeCoursePhoto(recipeCoursePhoto: String) +setRecipeCourseTime(recipeCourseTime: int) +setRecipeCourseIntro(recipeCourseIntro: String) +toString(): String RecipeIngredientDAO -conn: Connection +RecipeIngredientDAO() -connect() +disconnect() +insert(recipeIngredientCode: int, ingredientCode: int, recipeCode: int, recipeIngredientNum: int): int +selectAll(): RecipeIngredientList +selectRecipeIngredientCode(recipeIngredientCode: int): RecipeIngredientDTO +selectIngredientCode(ingredientCode: int): RecipeIngredientList +selectRecipeCode(recipeCode: int): RecipeIngredientList +selectRecipeIngredientNum(recipeIngredientNum: int): RecipeIngredientList +selectMaxRecipeIngredientCode(): RecipeIngredientDTO +selectIngre(): RecipeIngreInfoDTOList +updateAll(recipeIngredientCode: int, ingredientCode: int, recipeCode: int, recipeIngredientNum: int): int +updateIngredientCode(recipeIngredientCode: int, ingredientCode: int): int +updateRecipeCode(recipeIngredientCode: int, recipeCode: int): int +updateRecipeIngredientNum(recipeIngredientCode: int, recipeIngredientNum: int): int +deleteAll(): int +deleteRecipeIngredientCode(recipeIngredientCode: int): int +deleteIngredientCode(ingredientCode: int): int +deleteRecipeCode(recipeCode: int): int +deleteRecipeIngredientNum(recipeIngredientNum: int): int +getConn(): Connection +setConn(conn: Connection) RecipeIngreInfoDTO -foodCode: int -foodName: String -ingredientName: String -ingredientCode: int -ingredientNum: int +RecipeIngreInfoDTO() +RecipeIngreInfoDTO(foodCode: int, foodName: String, ingredientName: String, ingredientCode: int, ingredientNum: int) +getFoodCode(): int +getFoodName(): String +getIngredientName(): String +getIngredientCode(): int +getIngredientNum(): int +setFoodCode(foodCode: int) +setFoodName(foodName: String) +setIngredientName(ingredientName: String) +setIngredientCode(ingredientCode: int) +setIngredientNum(ingredient: int) +toString(): String FoodRecipeDBManager -cokkingCourseListData: CookingCourseListData -recipeIngreInfoListData: RecipeIngreInfoListData -recipeInfoList: RecipeInfoList -foodInfoList: FoodInfoList +FoodRecipeDBManager() +FoodRecipeDBManager(cookingCourseListData: CookingCourseListData, recipeIngreInfoListData: RecipeIngreInfoListData, recipeInfoList: RecipeInfoList, foodInfoList: FoodInfoList) +getCookingCourseListData(): CookingCourseListData +getRecipeIngreInfoListData(): RecipeIngreInfoListData +getRecipeInfoList(): RecipeInfoList +getFoodInfoList(): FoodInfoList +setCookingCourseListData(cookingCourseListData: CookingCourseListData) +setRecipeIngreInfoListData(recipeIngreInfoListData: RecipeIngreInfoListData) +setRecipeInfoList(recipeInfoList: RecipeInfoList) +setFoodInfoList(foodInfoList: FoodInfoList) +readFoodInfo() +readCookingCourse() +readIngredient() +readRecipe() +load() FoodRecipeInfoList -foodRecipeInfoList: Collection<FoodRecipeInfo> +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo: FoodRecipeInfo) +reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo: FoodRecipeInfo): FoodRecipeInfo +removeFoodRecipeInfoList(foodCode: String): FoodRecipeInfo +searchFoodRecipeInfo(foodCode: String): FoodRecipeInfo +searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> +searchTodayFood(keyword: String): Collection<FoodRecipeInfo> +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo>
  • 35. FoodRecipeInfoList Data Loading - DB FoodRecipeDBManager RecipeIngreInfoDAO CourseDAO RecipeIngredientDTO RecipeCourseDTO
  • 36. MVC 구조 음식추천받기(오늘 뭐먹지?) TodayEatUI -text: JTextField +TodayEatUI() +TodayEatUI(text: JTextField) +showUI() +getText(): JTextField +setText(text: JTextField) TodayController +TodayController() +TodayController(foodName: String) +verifyFoodName(): Collection<FoodRecipeInfo> +getFoodName(): String +setFoodCode(foodName: String) FoodRecipeInfo TodayController PhotoController PhotoController -foodName: String -foodInfo: FoodInfo -recipeInfo: RecipeInfo -foodCode: String +PhotoController() +PhotoController(foodCode: String) +verifyFoodCode(): FoodRecipeInfo +getFoodCode(): String +setFoodCode(foodCode: String) TodayActionListener -frame: JFrame -text: JTextField -scrollPane: JScrollPane +TodayActionListener() +TodayActionListener(frame: JFrame, text: JTextField, scrollPane: JScrollPane) +actionPerforemd(e: ActionEvent) +showResult() +getFrame(): JFrame +getText(): JTextField +getScrollPane(): JScrollPane +setFrame(frame: JFrame) +setText(text: JTextField) +setScrollPane(scrollPane: JScrollPane) PhtotoActionListener -text: String +PhtotoActionListener() +PhtotoActionListener(text: String) +actionPerformed(e: ActionEvent) +moveUI() +getText(): String +setText(text: String) FoodRecipeInfoList -foodRecipeInfoList: Collection<FoodRecipeInfo> +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo) +reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) +removeFoodRecipeInfoList(foodCode: String) +searchFoodRecipeInfo(foodCode: String) +searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> +searchTodayFood(keyword: String): Collection<FoodRecipeInfo> +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> -foodName: String FoodRecipeInfo -foodInfo: FoodInfo -recipeInfo: RecipeInfo -foodCode: String +FoodRecipeInfo() +FoodRecipeInfo(foodInfo, recipeInfo) +getFoodInfo() +getRecipeInfo() +setFoodinfo(foodInfo) +setRecipeInfo(recipeInfo) FoodInfo -foodCode: String -foodName: String -foodIntro: String -foodPhoto: String -foodCalorie: int +FoodRecipeInfo() +FoodRecipeInfo(foodInfo, recipeInfo) +getFoodInfo() +getRecipeInfo() +setFoodinfo(foodInfo) +setRecipeInfo(recipeInfo) +FoodInfo() +FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +getFoodCode(): String +getFoodName(): String +getFoodIntro(): String +getFoodPhoto(): String +getFoodCalorie(): int +setFoodCode(foodCode: String) +setFoodName(foodName: String) +setFoodIntro(foodIntro: String) +setFoodPhoto(foodPhoto: String) +setFoodCalorie(foodCalorie: int) FoodRecipeInfoList -foodRecipeInfoList: Collection<FoodRecipeInfo> +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(+TodayController() foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo) +reviseFoodRecipeInfoList(+TodayController(foodCode: String, foodName: foodRecipeInfo) String) +removeFoodRecipeInfoList(+verifyFoodName(): foodCode: String) Collection<FoodRecipeInfo> +searchFoodRecipeInfo(foodCode: String) +searchFoodRecipeInfoList(+getFoodName(): foodName: String): String Collection<FoodRecipeInfo> +searchTodayFood(+keyword: setFoodCode(String): Collection<foodName: FoodRecipeInfo> String) +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> +PhotoController() +PhotoController(foodCode: String) +verifyFoodCode(): FoodRecipeInfo +getFoodCode(): String +setFoodCode(foodCode: String)
  • 37. MVC 구조 레시피등록 +RecipeRegistrationUI() +RecipeRegistrationUI(foodName: String, foodCalorie: int, foodPhoto: String, foodIntro: String, cookingTotalTime: int, porton: int, level: String[], totalIngredient: int, tip: String) +createContentPane(): Container +showUI() +getFrame(): JFrame +getFoodName(): JTextField +getFoodCalorie(): JTextField +getFoodPhoto(): JTextField +getFoodIntro(): JTextArea +getCookingTotalTime(): JTextField +getPorton(): JTextField +getLevelComboBox(): JComboBox<String> +getTotalIngredient(): JTextField +getTip(): JTextArea +setFrame(frame: JFrame) +setFoodName(foodName: JTextField) +setFoodCalorie(foodCalorie: JTextField) +setFoodPhoto(foodPhoto: JTextField) +setFoodIntro(foodIntro: JTextArea) +setCookingTotalTime(cookingTotalTime: JTextField) +setPorton(porton: JTextField) +setLevelComboBox(levelComboBox: JComboBox<String>) +setTotalIngredient(totalIngredient: JTextField) +setTip(tip: JTextArea) FoodRecipeInfoList RegisterDBController -foodRecipeInfoList: Collection<FoodRecipeInfo> -foodInfo: FoodInfo -recipeInfo: RecipeInfo +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo) +reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) +removeFoodRecipeInfoList(foodCode: String) +searchFoodRecipeInfo(foodCode: String) +searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> +searchTodayFood(keyword: String): Collection<FoodRecipeInfo> +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> +RegisterDBController() +RegisterDBController(foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextField, cookingTotalTime: JTextField, portion .......) +register() +getFoodInfo() +getRecipeInfo() +setFoodInfo(foodInfo: FoodInfo) +setRecipeInfo(recipeInfo: RecipeInfo) +RecipeInfo() +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, cookingCourseList, recipeIngreInfoList) RecipeInputListener +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, foodCode: +frame: JFrame +foodName: String, JTextField cookingCourseList, recipeIngreInfoList) +foodCalorie: JTextField +foodPhoto: JTextField +getFoodeName(): String +foodIntro: JTextArea +cookingTotalTime: JTextField +porton: JTextField +levelComboBox: JComboBox<String> +getCookingTotalTime(): int +totalIngredient: JTextField +tip: JTextArea +getTip(): String +getPortion(): int +getLevel(): Level +getFoodCode(): String +getCookingCourseList() +getRecipeIngreInfoList() +setFoodName(foodName: String) +setCookingTotalTime(cookingTotalTime: int) +setTip(tip: String) +setPortion(portion: int) +setLevel(level: Level) +setFoodCode(foodCode: String) +setCookingCourseList(cookingCourseList) +setIngredientInfoList(recipeIngreInfoList) +check(ingred1: String, ingred2: String, ingred3: String): boolean RecipeRegistrationUI -frame: JFrame -foodName: JTextField -foodCalorie: JTextField -foodPhoto: JTextField -foodIntro: JTextArea -cookingTotalTime: JTextField -porton: JTextField -levelComboBox: JComboBox<String> -totalIngredient: JTextField -tip: JTextArea +RecipeInputListener() +RecipeInputListener(frame: JFrame, foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextArea, cookingTotalTime: JTextField, porton: JTextField, levelComboBox: JComboBox<String>[], totalIngredient: JTextField, tip: JTextArea) +actionPerformed(e: ActionEvent) +Register() +getFrame(): JFrame +getFoodName(): JTextField +getFoodCalorie(): JTextField +getFoodPhoto(): JTextField +getFoodIntro(): JTextArea +getCookingTotalTime(): JTextField +getPorton(): JTextField +getLevelComboBox(): JComboBox<String> +getTotalIngredient(): JTextField +getTip(): JTextField +setFrame(frame: JFrame) +setFoodName(foodName: JTextField) +setFoodCalorie(foodCalorie: JTextField) +setFoodPhoto(foodPhoto: JTextField) +setFoodIntro(foodIntro: JTextArea) +setCookingTotalTime(cookingTotalTime: JTextField) +setPorton(porton: JTextField) +setLevelComboBox(levelComboBox: JComboBox<String>) +setTotalIngredient(totalIngredient: JTextField) +setTip(tip: JTextArea) -foodName: String -cookingTotalTime: int -tip: String -portion: int -level: Level <<enum>> FoodInfo -foodCode: -foodCode: String String -foodName: String -foodIntro: String -cookingCourseList: -foodPhoto: String -foodCalorie: int CookingCourseList -recipeIngreInfoList: RecipeIngreInfoList +FoodInfo() +FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +getFoodCode(): String +getFoodName(): String +getFoodIntro(): String +getFoodPhoto(): String +getFoodCalorie(): int +setFoodCode(foodCode: String) +setFoodName(foodName: String) +setFoodIntro(foodIntro: String) +setFoodPhoto(foodPhoto: String) +setFoodCalorie(foodCalorie: int) RecipeInfo -foodName: String -cookingTotalTime: int -tip: String -portion: int -level: Level <<enum>> -foodCode: String -cookingCourseList: CookingCourseList -recipeIngreInfoList: RecipeIngreInfoList +RecipeInfo() +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, cookingCourseList, recipeIngreInfoList) +RecipeInfo(foodName: String, cookingTotalTime: int, tip: String, portion: int, level, foodCode: String, cookingCourseList, recipeIngreInfoList) +getFoodeName(): String +getCookingTotalTime(): int +getTip(): String +getPortion(): int +getLevel(): Level +getFoodCode(): +getCookingCourseList() +getRecipeIngreInfoList() +setFoodName(foodName: String) +setCookingTotalTime(cookingTotalTime: int) +setTip(tip: String) +setPortion(portion: int) +setLevel(level: Level) +setFoodCode(foodCode: String) +setCookingCourseList(cookingCourseList) +setIngredientInfoList(recipeIngreInfoList) +check(ingred1: String, ingred2: String, ingred3: String): boolean TempCookingCourseList +cookingCourseList: Collection<CookingCourse> +foodName: String +foodCode: String +getCookingCourseList(): Collection<CookingCourse> +getFoodName(): String +getFoodCode(): String +setCookingCourseList(list: Collection<CookingCourse>) +setFoodName(foodName: String) +setFoodCode(foodCode: String) +searchCookingCourse(step: int) +addCookingCourse(cookingCourse) +addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) +searchCookingCourse(step: int) +searchCookingCourse(cookingCourse) +removeCookingCourse(cookingCourse) +removeCookingCourse(step: int) +reviseCookingCourse(searchData, reviseData) +reviseCookingCourseList(step: int, reviseData) CookingCourseList -cookingCourseList: Collection<CookingCourse> -foodName: String -foodCode: String +CookingCourseList() +CookingCourseList(foodName: String, foodCode: String) +CookingCourseList(cookingCourseList: Collection<CookingCourse>, foodName: String, foodCode: String) +getCookingCourseList(): Collection<CookingCourse> +getFoodName(): String +getFoodCode(): String +setCookingCourseList(list: Collection<CookingCourse>) +setFoodName(foodName: String) +setFoodCode(foodCode: String) +searchCookingCourse(step: int) +addCookingCourse(cookingCourse) +addCookingCourse(cookingPhoto: String, cookingTime: int, cookingInst: String) +searchCookingCourse(step: int) +searchCookingCourse(cookingCourse) +removeCookingCourse(cookingCourse) +removeCookingCourse(step: int) +reviseCookingCourse(searchData, reviseData) +reviseCookingCourseList(step: int, reviseData) RecipeIngreInfoList -foodName: String -foodCode: String -recipeIngreInfoList: Collection<RecipeIngreInfo> +RecipeIngreInfoList() +RecipeIngreInfoList(foodName: String, foodCode: String, recipeIngreInfoList: Collection<RecipeIngreInfo>) +getFoodName(): String +getFoodCode(): String +getRecipeIngreInfoList(): Collection<RecipeIngreInfo> +setFoodName(foodName: String) +setFoodCode(foodCode: String) +setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) +addRecipeIngreInfoList(recipeIngreInfo) +reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo) +removeRecipeIngreInfoList(ingredientCode: String) +searchRecipeIngreInfo(ingredientCode: String) +searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> +searchRecipeIngreInfo(ingredientName: String) TempRecipeIngreInfoList +foodName: String +foodCode: String +recipeIngreInfoList: Collection<RecipeIngreInfo> +getFoodName(): String +getFoodCode(): String +getRecipeIngreInfoList(): Collection<RecipeIngreInfo> +setFoodName(foodName: String) +setFoodCode(foodCode: String) +setRecipeInfoList(recipeIngreInfoList: Collection<RecipeIngreInfo>) +addRecipeIngreInfoList(recipeIngreInfo) +reviseRecipeIngreInfoList(ingredientCode: String, recipeIngreInfo) +removeRecipeIngreInfoList(ingredientCode: String) +searchRecipeIngreInfo(ingredientCode: String) +searchRecipeIngreInfoList(ingredientName: String): Collection<RecipeIngreInfo> +searchRecipeIngreInfo(ingredientName: String) FoodRecipeInfo -foodInfo: FoodInfo -recipeInfo: RecipeInfo +FoodRecipeInfo() +FoodRecipeInfo(foodInfo, recipeInfo) +getFoodInfo() +getRecipeInfo() +setFoodinfo(foodInfo) +setRecipeInfo(recipeInfo) RecipeInfo FoodInfo FoodRecipeInfoList -foodRecipeInfoList: Collection<FoodRecipeInfo> +getFoodRecipeInfoList(): Collection<FoodRecipeInfo> +setFoodRecipeInfoList(foodRecipeInfoList: Collection<FoodRecipeInfo>) +addFoodRecipeInfoList(foodRecipeInfo) +reviseFoodRecipeInfoList(foodCode: String, foodRecipeInfo) +removeFoodRecipeInfoList(foodCode: String) +searchFoodRecipeInfo(foodCode: String) +searchFoodRecipeInfoList(foodName: String): Collection<FoodRecipeInfo> +searchTodayFood(keyword: String): Collection<FoodRecipeInfo> +searchFoodRecipeInfoList(ingred1: String, ingred2: String, ingred3: String): Collection<FoodRecipeInfo> RegisterDBController -foodInfo: FoodInfo -recipeInfo: RecipeInfo +RegisterDBController() +RegisterDBController(foodName: JTextField, foodCalorie: JTextField, foodPhoto: JTextField, foodIntro: JTextField, cookingTotalTime: JTextField, portion: JTextField, levelComboBox: JComboBox<String>, totalIngredient: JTextField, tip: :JTextArea) +register() +getFoodInfo() +getRecipeInfo() +setFoodInfo(foodInfo: FoodInfo) +setRecipeInfo(recipeInfo: RecipeInfo) -foodCode: String -foodName: String -foodIntro: String -foodPhoto: String -foodCalorie: int +FoodInfo() +FoodInfo(foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +FoodInfo(foodCode: String, foodName: String, foodIntro: String, foodPhoto: String, foodCalorie: int) +getFoodCode(): String +getFoodName(): String +getFoodIntro(): String +getFoodPhoto(): String +getFoodCalorie(): int +setFoodCode(foodCode: String) +setFoodName(foodName: String) +setFoodIntro(foodIntro: String) +setFoodPhoto(foodPhoto: String) +setFoodCalorie(foodCalorie: int)
  • 39. Use Case : 레시피 등록 1. 레시피 등록을 위한 각종 정보 입력 2. DB에 레시피 정보 저장 RecipeIngreInfoList RegiserDBController RecipeInfo CookingCourseList FoodRecipeInfoList FoodDAO RecipeDAO RecipeCourseDAO RecipeIngredientDAO RecipeIngredientDTO 레시피 등록 버튼 리스너 9번 음식정보 1. 음식이름 2. 음식칼로리 3. 음식 사진 경로 4. 음식 소 <<create>> <<create>> <<create>> 10번 조리정보 1. 조리시간 2. 분량 3. 난이도(선택) 4. 총 재료 개수 5. 조리 팁 sd데이터베이스 저장 sd for문 sd for문 23 : addFoodRecipeInfo(foodRecipeInfo:FoodRecipeInfo) 24 25 : insert() 26 : disconnect() 27 28 : insert() 29 : CookingCourseList := getCookingCourseList() 30 : Collection<CookingCourse>:=getCookingCourseList() 31 32 : insert() 33 : disconnect() <<create>> 34 35 : Collection<RecipeIngreInfo>:=getRecipeIngreInfoList() 36 : RecipeIngredientDTO := selectMaxRecipeIngredientCode() 37 : int := getRecipeIngredientCode() 38 : insert() 39 : disconnect() 23번, static 클래스(음식조리정보리스트)에 저장 36번, 37번 가장 낮은 음식코드 불러온다. RecipeInputListener 레시피 정보 조리과정목록 음식조리정보리스트 음식 DAO 조리법 DAO 조리과정DAO 조리재료 DAO 조리재료 DTO 21 : register() 레시피 등록 컨트롤러 int i=1 값을 요리 단계 번호로 하여 1씩 증가시키면서 insert 주 int j=1 부터 시작하여 최대 재료 코드에 1씩 증가시키며 insert 조리재료 정보 리스트 RecipeIngreInfoList RecipeDBController 클래스 설명 FoodRecipeInfoList(static)와 DB에 레시피를 추 위한 콘트롤러 메소드 register() 메소드 설명 입력받은 레시피를 등록하는 메소드 파라미터 리턴 클래스 설명 조리재료정보목록을 임시로 저장하는 클래스 메소드 getRecipeIngreInfoList():Collection <Reci eInfo> 메소드 설명 하나의 음식에 저장된 조리재료정보목록을 져오기 위한 메소드 파라미 터 리턴 조리재료정보목록
  • 40. Use Case : 음식 추천 받기 : 사용자 음식추천받기UI 음식추천받기 콘트롤러 음식추천받기 음식조리법정보리스트 리스너 음식추천받기 리스너 음식추천받기UI 음식추천받기 리스너 음식추천받기 콘트롤러 음식조리법정보리스트 음식정보 및 사진 출력리스너 음식정보 및 사진 콘트롤러 TodayController FoodRecipreInfoList TodayActionListener TodayEatUI TodayActionListener TodayController FoodRecipreInfoList PhtoActionListener PhotoController FoodInfoUI 1 : 본인의기분 또는 날씨 등을 입력 후 검색 요청() 2 : void := actionPerformed(e:ActionEvent) 3 : showResult() <<create>> 4 음식코드에 맞는 UI 생성하기 <<create>> TodayController객체 생성시, 사용자가 입력한 검색값 중 첫번째 문자만으로 객체를 생성한다. 5 : Collection<FoodRecipeInfo> := verifyFoodName() 조건에 맞는 음식정보, 조리법 정보를 for문을 이용하여 패널에 각종 정보를 넣기 시작 <<create>> 6 : Collection<FoodRecipeInfo> := searchFoodRecipeList(foodName:String) 7 : 음식 사진 클릭() 8 : void := actionPerformed(e:ActionEvent) 음식코드에 맞는 UI 생성하기 9 : moveUI() <<create>> 10 <<create>> 11 : FoodRecipeInfo := searchFoodRecipeList(foodCode:String) 12 : FoodInfo := verifyFoodCode() TodayController객체 생성시, 사용자가 입력한 검색값 중 첫번째 문자만으로 객체를 생성한다. <<create>> 13 검색값이 존재하는 경우 14 : void := showUI() 음식정보UI : 사용자 TodayEatUI TodayActionListener 1 : 본인의기분 또는 날씨 등을 입력 후 검색 요청() 2 : void := actionPerformed(e:ActionEvent) 3 : showResult() 4 5 : Collection<FoodRecipeInfo> := verifyFoodName() 6 : Collection<FoodRecipeInfo> := searchFoodRecipeList(foodName:String) 조건에 맞는 음식정보, 조리법 정보를 for문을 이용하여 패널에 각종 정보를 넣기 시작 1. 입력한 키워드에 부합하는 음식 검색 2. 선택한 음식 사진의 상세설명 출력 PhtoActionListener PhotoController FoodInfoUI 9 : moveUI() 10 11 : FoodInfo := verifyFoodCode() 12 : FoodRecipeInfo := searchFoodRecipeList(foodCode:String) 13 14 : void := showUI() FoodRecipreInfoList TodayController 클래스 설명 FoodRecipeInfoList(static)에서 Data 검색조건에 식정보를 UI로 넘겨주는 컨트롤러 메소드 verifyFoodName():Collection <FoodRecipeInfo> 메소드 설명 키워드에 맞는 음식정보를 가져오는 메소드 파라미터 리턴 음식 목록 FoodRecipeInfoList 클래스 설명 프로그램 내 모든 음식정보를 가지고있는 Static class 메소드 searchFoodRecipeList(foodCode:String) :FoodRecipeInfo 메소드 설명 파라미터와 같은 keyword를 가진 모든 음식을 찾는다 파라미터 :keyword-검색정보 리턴 음식목록

Hinweis der Redaktion

  1.   데이터베이스에서 데이터가 로딩되는 과정입니다.