Contents Activity Define Real s Activity Define Reports UI, and Storyboards Activity Refine System Architecture Activity Defin

Similar documents
Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx

Ver 1.0 마감하루전 Category Partitioning Testing Tool Project Team T1 Date Team Information 김강욱 김진욱 김동권

Microsoft Word - OOPT stage 2040 ver2.docx

PowerPoint 프레젠테이션

Index Activity Refine System Architecture Activity Define Design Class Diagrams Activity 2141, 2142, 2144 Design Real Use Case + Define Re

1.5 Issue TrafficCard Management Activity 2142 Define Reports, UI, and Storyboards window Window Windo

Contents. Phase Revise Plan --- Phase Synchronize Artifacts --- Phase 2130 Analyze Activity2131. Define Essential Use Cases --- Activity21

OSP Stage 2040 <Plan & Elaboration> 유아를위한주제별영어학습놀이프로그램 T 김도희 박수민 + 김태현 1

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000_ docx

OOO Paint

PowerPoint 프레젠테이션

Microsoft Word - [2017SMA][T8]OOPT_Stage_1000 ver2.docx

화판_미용성형시술 정보집.0305

<Software Modeling & Analysis> OSP Stage 2040 < Design > Ver 3 Team 2 김민우 김재엽 최하나 /05/23 1

OOO Paint

Ver. 4.0 OOPT Stage 1000 <Plan and Elaboration> Version 4.0 Project Team T7 Team Date Team Information 오세욱 임현유

슬라이드 1

Convenience Timetable Design

Software Modeling < < OOAD Stage 김정태 최정명 이낙원 송준현

Ver1.0

UML

A NEW CSE ATM OOPT Stage 1000 Project Team T3 Date Team Information 이원오 이재규

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

소프트웨어개발방법론

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

MPLAB C18 C

Ver 2.2 마감하루전 Category Partitioning Testing Tool Project Team T1 Date Team Information 김강욱 김진욱 김동권

Orcad Capture 9.x

IT현황리포트 내지 완

Software Modeling & Analysis Global ATM System Project Team 1 Team Date Team Information 엄현식 최정헌 전다윤


자식농사웹완

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Ð



Software Modeling & Analysis Global ATM System Project Team 1 Team Date Team Information 엄현식 최정헌 전다윤 목차 Activ

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

Software Verification 1 st Testing System Test Team 고예은 김수현 김아름 1

A NEW CSE ATM OOPT Stage 1000 Project Team T3 Date Team Information 이원오 이재규

슬라이드 1

PRO1_02E [읽기 전용]

Index Process Specification Data Dictionary

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

VOL /2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi

PowerPoint 프레젠테이션

PowerPoint Template

Remote UI Guide

OOO Paint

윈도우즈프로그래밍(1)

Microsoft PowerPoint - Java7.pptx

,,,,,, (41) ( e f f e c t ), ( c u r r e n t ) ( p o t e n t i a l difference),, ( r e s i s t a n c e ) 2,,,,,,,, (41), (42) (42) ( 41) (Ohm s law),

System Recovery 사용자 매뉴얼

푸른21탄소중립행사내지확정

PowerPoint 프레젠테이션


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

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

PowerPoint Presentation

EndNote X2 초급 분당차병원도서실사서최근영 ( )

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

Transcription:

OSP Stage 2040 < Design > 그놈! Clone Checker Project Team T4 Date 2016-04-12 Team Information 201411258 강태준 201411265 김서우 201411321 홍유리 Team 4 1

Contents Activity 2041. Define Real s Activity 2042. Define Reports UI, and Storyboards Activity 2043. Refine System Architecture Activity 2044. Define Interaction Diagrams Activity 2045. Define Design Class Diagrams Activity 2046. Design Traceability Analysis Team 4 2

Activity 2041. Define Real s Display Main User 프로그램을시작한다. Overview 프로그램의첫메인화면을보여준다. Primary and Essential Cross Reference System Function : R 1.1 Typical Courses of Events (A) :, (S):System 1. (A) 사용자가프로그램을실행한다. 2. (S) 프로그램의메인 UI를띄운다.( 그림 #1) Alternative Courses of Events Exceptional Courses of Events Input Path User 유사도검사를진행할대상의위치파악. Overview 유사도검사를할폴더의경로를입력한다. Primary and Essential Cross Reference : Setting Files System Function : R 1.2, R 1.2.1 Typical Courses of Events (A) :, (S):System 1. (A) 경로를입력한뒤 ( 그림 #1-A), 입력버튼 ( 그림 #1-B) 클릭. 2. (S) input_path(path) 실행 3. (S) 해당폴더의모든소스파일의주석을제거한다. 4. (S) 해당폴더의모든소스파일의대문자를소문자로통합한다. 5. 완료되면화면에알림을띄운다.( 그림 #3 A) Alternative Courses of Events 2. (S) 해당경로에오류가있다면알림을띄운다.( 그림 #2 A) Exceptional Courses of Events Team 4 3

Setting Files System 소스코드파일정리 Overview 소스코드의주석을제거하고, 소문자로통일한다. Primary and Essential Cross Reference System Function : R 1.2.1 Typical Courses of Events (A) :, (S):System 1. (S) 파일개수만큼 setting_files(file f1) 을 f1자리의파일을바꿔가며실행 2. (S) setting_files(file f1) 에서 f1.open() 실행 3. (S) while(buf!=null){ strbuf[i].append(reader.readline())}; strbuf 원소 1개에소스코드파일 1개의내용전체저장 4. (S) // 뒷부분을다지움 ( 함수의매개변수로 // 가들어가는경우를걸러내기위해 // 뒤에 ) 가나오나검사후삭제 /* 가나온다면 */ 가나오는부분까지찾아서다지움 Alternative Courses of Events Exceptional Courses of Events -> strbuf 각원소안에존재하는모든주석제거 5. (S) while(strbuf[i][j]!=null) { if( A <= strbuf[i][j] && strbuf[i][ j] <= Z ) strbuf[i][ j] +=32} 전체코드에서모든 ( A ~ Z ) 찾아서 +32 -> 모든대문자소문자로변경 Start Analyze User 유사도검사시작 Overview 유사도검사를시작한다. Primary and Essential Cross Reference : Analyze Change Name, Analyze Loop, Analyze Conditional, Analyze Function, Calculate Similarity System Function : R 2.1.0, R 2.2.1, R 2.2.2, R 2.2.3, R 3.1 Typical Courses of Events (A) :, (S):System 1. (A) Start 버튼 ( 그림 #1 C) 클릭 Team 4 4

Alternative Courses of Events Exceptional Courses of Events 2. 분석진행중이라는알림 ( 그림 #4 A) 을띄운다. 3. (S) start() ->start_flow() ->counting() 4. (S) 변수, 함수, 조건문, 반복문의개수를세어줌. 5. (S) AnalysisSystem as = new AnalysisSystem(); AnalysisSystem() 에서 Sourcecode[] 저장 6. (S) as.analyze_codes() 7. (S) SetupSystem에서받아온 strbuf를분석. 8. (S) SourceCode객체, 그안의 Variable, Function, Loop, Conditional 객체생성 Analyze Change Name 유사도분석 Overview 변수명, 함수명을변경하였는지검사한다. Primary and Essential and Hidden Cross Reference Functional Requirement : R 2.2.0 Typical Courses of Events (A) :, (S):System 1. (S) change_name() For(j=0;j<SourceCode_num;j++) If (SourceCode[i].Variable[ j].numofuse == SourceCode[i+1].Variable[j].numOfuse) Check[0]++; 두소스코드상에서각각변수와함수의배열을만들고, 각변수, 함수의빈도수를두소스코드사이에서비교한다. Alternative Courses of Events Exceptional Courses of Events Analyze Loop 유사도분석 Overview 반복문의유사도를검사한다. Primary and Essential and Hidden Team 4 5

Cross Reference Functional Requirement : R 2.2.1 Typical Courses of Events (A) :, (S):System 1. (S) analyze_loop() 반복문의종류변경 (for->while,while->for) 을검사한다 { } 안의내용확인 {} 안의내용은변수, 함수의이름변경말고는알고리즘상의변화이므로이는유사도에반영이되지않는다. 따라서, 아스키코드 33번값 (! ) 부터 126번 (~) 사이의값의개수 ( 알파벳대소문자, 숫자, 기본적인특수문자포함 ) 가각각일치시 Check[1]++; -> 반복문안의 body의내용을비교 Alternative Courses of Events Exceptional Courses of Events Analyze Conditional 유사도분석 Overview 조건문의유사도를검사한다. Primary and Essential and Hidden Cross Reference Functional Requirement : R 2.2.2 Typical Courses of Events (A) :, (S) : System 1. (S) analyze_cond() 반복문과마찬가지로조건문 (if->switch, switch->if) 를검사한다. 조건문의 body( 내용 ) 부분은 switch나 if나같기때문에,body 부분을아스키코드 33번값 (! ) 부터 126번 (~) 사이의값의개수 ( 알파벳대소문자, 숫자, 기본적인특수문자포함 ) 가각각일치시 ->Check[2]++; Alternative Courses of Events Exceptional Courses of Events Analyze Function Team 4 6

유사도분석 Overview 함수의분기를검사한다. Primary and Essential and Hidden Cross Reference Functional Requirement : R 2.2.3 Typical Courses of Events (A) :, (S) : System 1. (S) analyze_func() 1개의함수가 2개로분해되었거나, 2개의함수를 1개 로합쳐놓은것을검사 소스코드 1개의모든함수의 {} 안의내용을합쳐놓고,5번과 비슷한 방법으로, 특수문자, 숫자, 알파벳의 개수가 일치시 Check[3]++; Alternative Courses of Events Exceptional Courses of Events Overview Cross Reference Typical Courses of Events Alternative Courses of Events Exceptional Courses of Events Calculate Similarity System 유사도의계산및그놈파일찾기코드분석을바탕으로유사도를계산하여저장하고이를바탕으로중심이되는그놈파일을찾는다. Primary and Essential : Analyze Code System Function : R 3.1 (A) :, (S):System 1. (S) cal_similarity(check) Check 배열각각의원소에가중치를적용하여유사도를계산한다. 2. (S) write_result() 각소스코드끼리어떤부분이유사하고어떤식으로유사도를도출해냈는지총분석결과를 text파일로저장. Show X File Team 4 7

User 그놈! 파일확인 Overview 그놈! 파일의파일명을본다. Primary and Essential Cross Reference : Calculate Similarity System Function : R 3.2 Typical Courses of Events (A) :, (S):System 1. (A) Show 그놈 _File 버튼클릭 ( 그림 #1 D) 2. (S) showmessage(2); ->에게 X File name 출력 ( 그림 #6-A) Alternative Courses of Events Exceptional Courses of Events Show Detail User 각각의유사도검사결과확인 Overview 각각의유사도검사결과를확인한다. Primary and Essential Cross Reference : Calculate Similarity System Function : R 3.3 Typical Courses of Events (A) :, (S):System 1. (A) Show Detail 버튼 ( 그림 #1 E) 클릭 2. (S) 유사도검사의기록이담긴 txt 파일을보여준다.( 그림 #7-A) Alternative Courses of Events Exceptional Courses of Events Exit User 프로그램종료 Overview 프로그램을종료한다. Primary and Essential Cross Reference System Function : R 3.3 Team 4 8

Typical Courses of Events (A) :, (S):System 1. (A) Exit 버튼 ( 그림 #1-F) 클릭 2. (S) 프로그램을종료할것인지다시물어본다. 3. (A) 확인 ( 그림 #7-B) 버튼을누르면종료한다. Alternative Courses of Events 3. (A) 취소 ( 그림 #7-C) 버튼을누르면메인으로돌아간다. Exceptional Courses of Events Activity 2042. Define Reports UI, and Storyboards [ 그림 #1] [ 그림 #2] Team 4 9

[ 그림 #3] [ 그림 #4] Team 4 10

[ 그림 #5] [ 그림 #6] Team 4 11

[ 그림 #7] [ 그림 #8] Team 4 12

Activity 2043. Refine System Architecture Activity 2044. Define Interaction Diagrams [ Display Main ] Team 4 13

[ Input Path ] [ Start Analyze ] Team 4 14

[ Show X File ] [ Show Detail ] Team 4 15

[ Exit ] Activity 2045. Define Design Class Diagrams Team 4 16

Activity 2046. Design Traceability Analysis Team 4 17