SMV Vending Machine Implementation and Verification 김성민 정혁준 손영석

Similar documents
PowerPoint 프레젠테이션

텀블러514

282서비스업관리-마트


자식농사웹완

chungo_story_2013.pdf

*중1부

2

Çѱ¹ÀÇ ¼º°øº¥Ã³µµÅ¥

...._



전반부-pdf

표1.4출력

003-p.ps

<4D F736F F F696E74202D20312E20B0E6C1A6C0FCB8C15F3136B3E2C7CFB9DDB1E25F325FC6ED28C0BA292E >

_

12월월간보고서내지편집3

중앙도서관소식지겨울내지33

에너지포커스 2007년 가을호


01_당선자공약_서울

인권문예대회_작품집4-2




목차

A°ø¸ðÀü ³»Áö1-¼öÁ¤

±¹³»°æÁ¦ º¹»ç1

¿¡³ÊÁö ÀÚ¿ø-Âü°í ³»Áö.PDF

전반부-pdf

뉴스레터6호

Microsoft PowerPoint 하반기 크레딧 전망_V3.pptx

50차 본문 최종

양성내지b72뼈訪?303逞

³»Áöc03âš

fsb9¿ù³»ÁöÃÖÁ¾Ãâ

¾ç¼º-¾÷¹«Æí¶÷-³»¿ëÃà¼Ò4

전도대회자료집


< DBAB4B9ABC3BB5FBAB9B9ABB0FCB8AEB8C5B4BABEF32D33B1C72E706466>

표1~4

<3344C7C1B8B0C6C320BFE4BEE02D E706466>

µ¶ÀÏÅëÀÏÁý1~2Æíq36£02Ð


1학년-방학활용.hwp

PowerPoint 프레젠테이션

PowerPoint Template


U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

(......).hwp

00Àâ¹°

00Àâ¹°

11.indd

intro

¿ï¸²58È£




untitled

슬라이드 제목 없음

늘푸른세상4월-136호

2015 경제ㆍ재정수첩

PRO1_02E [읽기 전용]

2002 KT

1+2월호-최종2

ƯÁý2-~27pš

¾Æ½Ã¾ÆÀú³Î8È£-ÅëÇÕ

게임 기획서 표준양식 연구보고서

표1~4

MVVM 패턴의 이해

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

연간전망_통신 1215

Macaron Cooker Manual 1.0.key

*º¹ÁöÁöµµµµÅ¥-¸Ô2Ä)

#KLZ-371(PB)

2002년 2학기 자료구조

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

SW¹é¼Ł-³¯°³Æ÷ÇÔÇ¥Áö2013

????밀촼꿜

<C7D1B1B9C0E7B9ABBCB3B0E820B7AFB4D7BCBEC5CD20BAEAB7CEBDB4BEEE28B4DCB8E9292E706466>

<C4DAC0CEB7CEC4BF5F666F E687770>

_USB JTAG Ver1.0 User's Manual.hwp

Visual Basic 반복문


DIY 챗봇 - LangCon

¸íÁö-³»-07.4¿ù-1

PRO1_04E [읽기 전용]

#KM-250(PB)

지도상 유의점 m 학생들이 어려워하는 낱말이 있으므로 자세히 설명해주도록 한다. m 버튼을 무리하게 조작하면 고장이 날 위험이 있으므로 수업 시작 부분에서 주의를 준다. m 활동지를 보고 어려워하는 학생에게는 영상자료를 접속하도록 안내한다. 평가 평가 유형 자기 평가

WS12. Security

(SW3704) Gingerbread Source Build & Working Guide

PowerPoint 프레젠테이션

슬라이드 1

ETL_project_best_practice1.ppt

슬라이드 1

Manufacturing6

슬라이드 1

Ver. DS-2012.T3.DWS.STR-1.0 System Test Report for Digital Watch System Test Cases Specification Test Summary Report Project Team 이동아 Latest update on

Microsoft Word - src.doc

Transcription:

SMV Vending Machine Implementation and Verification 201321124 김성민 201472412 정혁준 201472262 손영석 2015.05.04

Contents Review 지적사항 개선사항

Review

Review sell_denied start coin {1, 5, 10, 50, 100} coin Ready Input_ select {can_0, can_1, can_2, can_3, tea_0, tea_1, tea_2, tea3} select_ product sell select_ product led_out stock_check refund refund coin_out Overview

Review start coin_1 (10 원동전투입 ) coin_1 coin = coin + 1 Ready Input_ coin_5 (50 원동전투입 ) coin_10 (100 원동전투입 ) coin_50 (500 원동전투입 ) coin_5 coin_10 coin = coin + 5 coin = coin + 10 coin_100 (1000 원권투입 ) coin_50 coin = coin + 50 동전투입 coin_100 coin = coin + 100

Review led_can_0 Ready Input_ if coin > can_price[0] & stock_can[0] > 0 if coin > can_price[1] & stock_can[1] > 0 if coin > can_price[2] & stock_can[2] > 0 led_can_1 led_can_2 if coin > can_price[3] & stock_can[3] > 0 led_can_3 캔음료재고검사및판매가능캔음료의 LED 점등

Review Ready Input_ if coin > tea_price[0] & stock_tea_coffee > amount_tea_coffee[0] & stock_tea_sugar > amount_tea_suagr[0] & stock_tea_cream > amount_tea_cream[0] & stock_tea_cocoa > amount_tea_cocoa[0] & stock_tea_yulmu > amount_tea_yulmu[0] & stock_water > 0 stock_cup > 0 if coin > tea_price[1] & led_tea_0 led_tea_1 if coin > tea_price[2] & led_tea_2 if coin > tea_price[3] & led_tea_3 차음료재료검사및판매가능차음료의 LED 점등

Review start select_can_0 (1 번캔음료선택 ) select_can_0 if led_can[0] Ready Input_ select_can_1 (2 번캔음료선택 ) select_can_2 (3 번캔음료선택 ) select_can_1 if led_can[1] if led_can[2] led_out select_can_2 (4 번캔음료선택 ) select_can_2 if led_can[3] coin = coin can_price[n] stock_can[n] = stock_can[n] - 1 select_can_3 캔음료선택및판매

Review start select_tea_0 (1 번차음료선택 ) select_tea_0 if led_tea[0] Ready Input_ select_tea_1 (2 번차음료선택 ) select_tea_2 (3 번차음료선택 ) select_tea_1 if led_tea[1] if led_tea[2] led_out select_tea_2 (4 번차음료선택 ) select_tea_2 if led_tea[3] coin = coin tea_price[n] stock_tea_coffee = stock_tea_coffee amount_tea_coffee[n] select_tea_3 stock_water = stock_water 1 stock_cup = stock_cup - 1 차음료선택및판매

Review start Ready Input_ refund refund coin_out_100 = coin / 100 coin_out_50 = (coin mod 100) / 50 coin_out_10 = ((coin mod 100) mod 50) / 10 coin_out_5 = (((coin mod 100) mod 50) mod 10) / 5 coin_out_1 = (((coin mod 100) mod 50) mod 10) mod 5 투입금액환불

지적사항

지적사항 Module 일원화 SMV coding 기존코딩 Main 모듈에서각각의모듈을사용하나 Input_process 에서대부분의작업이일원화되어있다.

지적사항 Model Checking 기존 Model Checking 현재 step 에대해서만 checking 수행 Next step 에대한 checking 이없음

개선사항

개선사항 (module 세분화 ) main Run Vending Machine Control Select Can Maintain Stock refund Select Tea Check_can Check_tea Insert Coin

개선사항 - Code SMV coding 개선된코딩 Input_process 에일원화되어있던작업을기능별모듈로세분화하였다. runvendingmachine : 밴딩머신의세분화된작업이총괄적으로실행되는모듈

개선사항 - Code SMV coding

개선사항 Model Checking

개선사항 Model Checking 1. 자판기의반환버튼을누른후잔액은 0원이된다. 2. 자판기에서캔을선택한후캔이나온다 3. 동전을넣은후금액이반영된다 4. 캔을선택한후캔금액만큼차감된다.

개선사항 Model Checking 1. 자판기의반환버튼을누른후잔액은 0 원이된다. test11 : SPEC AG((state = ) & (input_button = refund) -> AX (coin = 0)) State 가 이면서 refund 버튼이눌렸을때다음 state 에서잔액은 0 원이다 TRUE!

개선사항 Model Checking 1. 자판기에서캔을선택한후캔이나온다 test12 : SPEC AG((input_button = select_can_0) & (led_can[0]) -> AX (led_out)) 선택가능 led 가 TRUE 이면서해당캔버튼을클릭했을시다음 state 에서캔이나온다. TRUE!

개선사항 Model Checking 1. 동전을넣었을시금액이반영된다 test13 : SPEC AG((coin < 500) & (input_button = coin_1) -> AX (coin = coin + 1);) 현재들어있는금액에최고한도보다작으면서 10 원을투입시다음 state 에서 10 원이추가가반영된다. TRUE!

개선사항 Model Checking 1. 캔을선택했을시캔금액만큼차감된다. test18 : SPEC AG((input_button = select_can_0) & (led_can[0]) -> AX (coin = coin pr ice_can[0])) 선택가능한캔을선택시다음 state 에서캔금액만큼차감된금액이반영된다. TRUE!