UML 사용보고서 소프트웨어모델링및분석레포트 박진성 송병우 근량 1

Size: px
Start display at page:

Download "UML 사용보고서 소프트웨어모델링및분석레포트 박진성 송병우 근량 1"

Transcription

1 UML 사용보고서 소프트웨어모델링및분석레포트 박진성 송병우 근량 1

2 1. UML 1.1. 의미 1.2. 기능 1.3. 구조 1.4. Structure Diagram 1.5. Behaviour Diagram 2. Collaboration Diagram Index 2.1. Semantics 2.2. Notation Collaboration Instance Collaboration 2.3. Example 2.4. Mapping 3. Activity Diagrams 3.1. Semantics 3.2. Notation 3.3. Example 3.4. Mapping 4. 활동상태 (Action State) 4.1. Semantics 4.2. Notation 4.3. Presentation options 4.4. Example 4.5. Mapping 5. 하위상태 5.1. Semantics 5.2. Notation 5.3. Example 6. 컴포넌트 6.1. 인터페이스 6.2. 컴포넌트다이어그램작성방법 포트생성 제공인터페이스 (Provided Interface) 작성 요청인터페이스 (Required Interface) 작성 6.3. 컴포넌트모델과 UML 과의대응관계 6.4. 컴포넌트사이의연결관계및구현관계 2

3 7. Use Case Diagram 7.1. Use Case와 Actor 그리고이들간의관계표현 7.2. 구성요소 Actor Use Case Actor와 Use Case의관계 Use Case와 Use Case 관계 7.3. Use Case Specification Actor와 Use Case 간의상호작용에대한기술문서 구성요소 Use Case 이름 Use Case 간략한설명 Event 흐름 특별한요구사항 사전조건 사후조건 확장점 System 관련그룹 7.4. Use Case Diagram include exclude Generalization 7.5. Use Case의사례 8. Class Diagram 8.1. 의미 8.2. 구성 8.3. 연결 8.4. Object diagram과의차이 8.5. Classifier 8.6. Class 의미 표현명 용법 8.7. 사용예 9. Deployment Diagram 9.1. 구성요소 Graphical node artifact node deployment 3

4 Graphical path 9.2. 용법 9.3. 사용예 10. Sequence Diagram 구성요소 Object Lifeline 용법 사용예 4

5 1. UML 1.1. 의미 객체지향소프트웨어를모델링하는표준그래픽언어 1980 년대말부터 1990 년대초에객체지향으로모델링하는과정과모델링언어출현설계와표현방법의급증으로혼란을초래 1994 년 Verdix 사에합병된 Rational 사에서 Ada 와 C++ 로개발되어있던환경을 Verdix 사의코드생성기와런타임으로병합 년 Rational 사의세명의객체지향전문가가서로의일을통합하기위해 UML 을개발했다. 1.0 버젼이 Object Management Group(OMG) 에제출되었고, 후속개발이추진되었다 년 OMG 가 UML 표준화를추진하였고 2005 년 ISO/IEC 에 버젼이채택되어국제표준으로제정되었다 기능 자세한의미 (semantic) 표현확장메커니즘관련텍스트언어 Object Constraint Language(OCL) UML 의목적은소프트웨어설계방법론이아니라표현을도와주는것이다. 5

6 1.3. 구조 (v2.2) 1.4. Structure Diagram 시스템의설계에서꼭존재해야만하는것을강조하여표현한다. 구조를표현하므로 SA 에서주로사용된다 Behaviour Diagram 설계된시스템에서어떤일을해야만하는가를강조하여표현한다. 시스템의기능을표현해야할때에따로사용된다. 아래에서는 ISO 표준에의해전통적으로주요하게사용되는다이어그램을설명한다. 2. Collaboration Diagram 2.1. Semantics Collaboration diagram 은인스턴스 (Instance) 들의수행되어지는역할과특정한상황속에서요구하는관계들의집합이포함된 Collaboration 의한측면을표현하거나인스턴스 (Instance) 들과그것들의관계의집합과함께 CollaborationInstanceSet 을표현한다. 그다이어그램은원하는결과를달성하기위한역할을수행하는인스턴스들사이에서특정한메세지 (Stmuli) 들의집합을정의하는 InteractionInstanceSet 을표현하기도한다. 하나의 Collaboration 은해당작동 (Operation) 이나특성 (Classifier) 의구현 (realization) 설명을위해사용되어진다. Use case 와같이, 하나의특성 (Classifier) 을설명하는 Collaboration 은대개특성 (Classifier) 들과관계 (Association) 들을참조한다. 반면에, 작동 (Operation) 을설명하는 Collaboration 은해당작동 (Operation) 의인자 (Argument) 들과지역변수 (local variable) 들을포함하고보통관계 (Association) 들은그작동 (Operation) 이갖고있는특성 (Classifier) 을연결한다. 6

7 2.2. Notation 어떤 collaboration diagram 은서로연결되어진인스턴스 (Instance), 특성역할 (Classifier Role), 관계역할 (Association Role) 의한측면을그래프로보여준다. 이러한것은상호작용 (Interation) 또는상호작용집합 (InterationInstanceSet) 에의해서정해진커뮤니케이션을포함할수있다. 왜냐하면 collaboration diagram 은때때로프로시저 (Procedure) 들을설계하는데에도움을주기위해사용되어진다. 그것들은흔히링크 (Links) 또는관계역할 (Association Roles) 들을표현하는데화살표를이용해서방향을보여준다.( 링크또는관계역할을나타내는박스들사이에한방향을가리키는하나의화살표.) 상호작용 (Interation) 의순서는보통 1 로시작하는일련의숫자와함께설명된다. 하나의절차적인작동흐름을위해서, 하위커뮤니케이션숫자들을중첩호출과함께중첩된다. 동시에여러인스턴스 (Instance) 들의상호작용을하는비절차적배열을위해, 모든해당일련의숫자들은같은레벨에있다 ( 이숫자들은중첩되지않는다 ). 어떠한상호작용도갖지않는 Collaboration diagram 은상호작용들이발생할수있는상황을보여준다. 또, Single Operation 이나모든클래스 (Class) 또는클래스들의그룹을위한상황조차도보여줄수있다. 이표준은아래조건의실시하에인스턴스, 링크의생성과파괴의여부를보여주는데사용될수있다. 인스턴스 (Instance) 와링크 (Link) 들은 { new } 로설계될수있는것이실행되는동안만들어진다. 인스턴스 (Instance) 와링크 (Link) 들은 { destroyed } 로설게될수있는것이실행되는동안파괴된다. 인스턴스 (Instance) 와링크 (Link) 들은 { transient } 로설계될수있는실행되고파괴되는동안만들어진다. 이러한것들은인스턴스 (Instance) 들간의상세한상호작용으로부터끌어낼수있는생명의상태에한해서변경한다. 그것들은기호의편의가제공된다 Collaboration Instance 인스턴스레벨에서주어지는하나의 collaboration diagram 은한 CollaborationInstanceSet 을보여준다. CollaborationInstanceSet 이란, 각기인스턴스와링크이오브젝트박스와선으로매핑되는컬렉션을뜻한다. 이러한인스턴스들은해당 CollaborationInstanceSet 의 Collaboration 의특성역할 (Classifier Role) 과관계역할 (Association Role) 들을맞게한다. 또한, 해당다이어그램은링크 (Link) 를통해전달되어지는자극 (Stimuli) 과일치하는선들을연결하는화살표를포함한다. 그다이어그램은성능에간접적으로영향을미치거나접근하는인스턴스 (Instance) 들이포함하는어떤동작 (Operation) 또는특성 (Classifier) 의구현과관련된인스턴스 (Instances) 들을보여준다. 그다이어그램은인스턴스 (Instance) 들간의링크 (Link) 들을프로시저의인자들, 지역변수들, 자기자신의링크들을표현하는것을일시적으로포함하여보여준다. 개개의속성값들은보통명시적으로보여지지않는다. 만약자극 (Stimuli) 가속성값들에게보내져야만한다면, 그속성 (Attribute) 들은관계 7

8 대신사용할수있도록설계되어야만한다 Collaboration 특정레벨에주어진어떤 collaboration diagram 은 collaboration 속에역할들이정의된하나의 Collaboration 을보여준다. 함께, 이러한역할들은해당 Collaboration 의동작 (Operation) 또는특성 (Classifier) 가붙여진구현 (realization) 의형태를이룬다. 그다이어그램은 Collaboration 안에특성역할 (ClassifierRole) 과관계역할 (AssociationRole) 들에해당하는클래스박스들과라인들의집합을포함한다. 이러한경우에해당화살표들은메세지 (Message) 들이매핑된라인들에연결되어있다 Example 8

9 2.4. Mapping Collaboration diagram 은가능한한상호작용 (Interation), CollaborationInstanceSet, InterationInstanceSet 과함께한관점을매핑한다. 3. Activity Diagrams 3.1. Semantics Activity graph 는 State machine 의변화이다. 해당상태들은하위상태 (Subactivity state) 나활동상태 (Action state) 들의성능을표현하고해당상태의전이 (Transition) 들은하위상태 (Subactivity state) 나활동상태 (Action state) 들이완료됨에따라일으켜진다. 9

10 이것은자기자신절차의 State machine 을표현한다 Notation Activity diagram 은모든 ( 또는적어도대부분 ) 상태들이활동상태 (Action state) 나하위상태 (Subactivity state) 들로이루어져있고원본상태 (Source state) 에서모든전이 (Transtion) 들은하위상태 (Subactivity state) 나활동상태 (Action state) 의완료에일으켜지는 state diagram 의특별한경우이다. 그전체 activity diagram 은 use case, package, operation 의구현과같이모델을통해서특성 (classifier) 이연결된다. 이다이어그램의목적은 ( 외부적인이벤트와반대되는 ) 내부적인프로세싱에의해서주도되는절차에집중하는것이다. 대부분 ( 모든 ) 이벤트들이발생하는상황에서액티비티다이어그램의사용방법은내부적으로생성되는액션 ( 절차적인컨트롤플로우 ) 들의완성을표현한다. 이벤트들이비동기적으로발생하는상황에서정식 state 다이어그램을사용한다 Example 10

11 3.4. Mapping Activity 다이어그램은 Activity Graph 와연결된다. 4. 활동상태 (Action State) 4.1. Semantics 활동상태 (Action state) 는하나의 entry 활동과적어도한개의암묵적인완료이벤트 ( 방어조건을가질수있다면여러같은전이 (transition) 들이있을수있다 ) 를포함하는 outgoing 전이 (transition) 를가지는상태 (state) 의줄임말이다. 활동상태들은내부적인전이 (transition), 명시적인이벤트를기반으로하는 outgoing 전이또는종료액션 (action) 들을갖지못한다. 이러한것에는 normal 상태들을사용해라. 하나의액션상태에의해나가는전이들은어떠한이벤트신호도포함하지못한다. 같은전이들은상태에서의액션에의해암묵적으로일으켜진다. 이런전이 (transition) 들은보호조건과액션을포함하지않을수있다. 활동상태 (action state) 의정식용도는알고리즘 ( 프로시져 ) 또는워크플로우프로세스의실행에가담하는모델이다 Notation 활동상태 (Action state) 는위와아래는스트레이트, 양쪽은볼록한모양으로보여진다. 활동식 (action expression) 은그모양 (symbol) 안에놓여진다. 활동식은 diagram 내에서유일할필요가없다 Presentation options 활동 (Action) 은인간의언어, 수도코드또는프로그래밍언어로묘사될수있다. 이것은오브젝트소유의속성들과링크들만사용할수있다. 주의하라, 활동상태 (action state) 표기는일반상태다이어그램에서도사용될수있다. 그러나, 그것들은 activity daigram 과함께대부분공통으로사용되어진다 Example 4.5. Mapping 활동상태 (Action state) 의표시는 entry action 상태와매핑되어지는 action expression 에서 ActionState 와연결된다. 이런상태는일반적으로쓰인다. 11

12 5. 하위상태 (Subactivity state) 5.1. Semantics 하위상태 (Subactivity state) 는액티비티그래프를호출한다. 하위상태가들어갈때, 일반액티비티그래프로써실행될수있는 중첩된 " 액티비티그래프이다. 하위상태는중첩된그래프의마지막상태에도달하거나, 하위상태의바깥으로나가는전이 (transition) 가일어날때까지끝나지않는다. 액티비티그래프 (activity graph) 안에서상태들은일반적으로어떤이벤트들도발생시키지않는다면, 하위상태 (subactivity states) 는중첩된그래프가끝날때, 일반적으로종료되게된다. 단일액티비티그래프 (activity graph) 는많은하위상태 (subactivity graph) 들에의해호출되어질수있다 Notation 하위상태 (subactivity state) 는일반활동상태 (action state) 에서오른쪽아래에중첩액티비티다이어그램 (activity diagram) 이묘사된아이콘이추가된형태로보여진다. 이표기는중첩된구조를지원하는어떤 UML 에서도적용할수있다. 아이콘은반드시중첩된구조의형태를암시해야한다 Example 6. 컴포넌트 컴포넌트 (conponent) 스테레오타입이있는클래스타입혹은아이콘형태로표현. 컴포넌트는인공물 ( 시스템사용이나생성에관한정보의조각 ) 로구분될수있는컴퓨터시스템모듈러이다. 컴포넌트는소프트웨어시스템의기능을정의한다. 컴포넌트는다른컴포넌트가접근할수있도록인터페이스를제공한다. 접근하고있는컴포넌트에서는필수의인터페이스를사용한다. 컴포넌트모델은 M = ( S, V, E, I, P, N, T ) 로정의한다. S : (T) X (T) : 컴포넌트상태 (state) 들의집합. V : N X VT : 변수 (Variable) 들의집합. E : 이벤트 (event) 들의집합. I : (E) : 인터페이스 (interface) 들의집합 P : N X N X I X PT : 포트 (Port) 들의집합. N : 컴포넌트이름, 변수이름, 인터페이스이름들의집합. T : S X G X P X E X (A) X S : 상태전이 (Transition) 들의집합. G : Boolean 식으로표현가능한수행조건 (guard condition) 의집합 A : 행위식 (Expression) 들의집합. 12

13 6.1. 인터페이스인터페이스를나타내는방법에는두가지가있다. 첫번째는인터페이스의정보를가지고있는사각형을텅빈삼각형머리를한점선으로컴포넌트에연결하는방법이고, 두번째는작은원을실선으로컴포넌트에연결하는방법이다. UML2.0 에서는인터페에스가컴포넌트에의해제공되며, 다른컴포넌트에는필수적으로필요하다는것을공과소켓표기법으로도표현할수도있다. 공의모양은이미알고있듯이작은원모양이고, 소켓은다른컴포넌트에실선으로연결된작은반원 ( 열려있는 ) 모양이다. 공은제공되는인터페이스를의미하고, 소켓은필수의인터페이스를의미한다 컴포넌트다이어그램작성방법 포트생성컴포넌트를선택하고, 오른쪽마우스버튼으로팝업메뉴를디스플레이한다. Add Port 메뉴항목을선택하고, 세부항목으로포트를작성할위치를선택한다 제공인터페이스 (Provided Interface) 작성컴포넌트를선택하고, 오른쪽마우스버튼으로팝업메뉴를디스플레이한다. Add Provided Interface 메뉴항목을선택한다. 제공인터페이스는컴포넌트의왼쪽에생성된다 요청인터페이스 (Required Interface) 작성컴포넌트를선택하고, 오른쪽마우스버튼으로팝업메뉴를디스플레이다. Add Required Interface 메뉴항목을선택한다. 제공인터페이스는컴포넌트의오른쪽에생성된다 컴포넌트모델과 UML 과의대응관계컴포넌트모델은 UML 에서크게구조모델과행위모델로나누어지며, 구조모델은 UML 13

14 Class Diagram, 행위모델은 UML Statechart 로표현한다. 컴포넌트의구조모델을 UML 모델로표현하기위해서컴포넌트는하나의 UML Class 로대응하고, 컴포넌트의포트부분은 Class 의 Port 로대응한다. 반원형포트는 use 포트를, 원형포트는 provide 포트를의미한다. 포트의인터페이스는포트아래에표시한다. 변수는 Class 내부에표기되며 private 와 public 을구분해서표기한다. 컴포넌트의행위모델은의 UML state diagram 와같이표현된다. 행위모델은초기상태에서부터출발하며 / 를기준으로앞쪽에서는선행조건이, 뒤쪽에서는전이가되면서취하는행위가표기된다. 상태전이의표기방법은 로트리거이벤트에서포트와이벤트의구분을 _ 기호로표현하고수행조건이트리거이벤트앞에위치하는세부적인내용이외에는 3.1 장의표기방법을그대로따른다. UML state diagram 에서의기본적인표기법을따르나 multiple region, sub state 등은현재지원하지않는다 컴포넌트사이의연결관계및구현관계 14

15 컴포넌트사이에서시그널전송, 함수호출등의서비스요청및응대는포트를통해이루어지며, 포트의인터페이스에정의되어있는이벤트로만소통할수있다. 또한동일한인터페이스를가진포트들만을연결할수있다. 포트의종류는요청을받고결과를외부로제공되는 provide 와요청을보내고결과를제공받는 use 로나누어지며, 컴포넌트사이에서포트간의연결관계는 <connected> 와 <bind> 로표현된다. <connected> 연결관계는컴포넌트모델 M2 의인터페이스를제공하는컴포넌트모델 M1 에서 M1 에인터페이스를사용하는컴포넌트모델 M2 로의방향성그래프이다. <connected> 연결관계집합 Cr 은 Cr M1 X M2 와같이표현한다. <connected> 연결관계는 provide 포트에서 use 포트로방향성을가지고연결되며, provide 포트에서 use 포트로인터페이스에정의된이벤트를제공함을의미한다. 요청 / 응대한다. <connected> 연결관계는 one to one 연결만을지원한다. <bind> 연결관계는인터페이스가같은컴포넌트모델 M1 과 M2 사이의방향성그래프이다. <connected> 연결관계집합 Br 은 Br M1 X M2 와같이표현한다. <bind> 연결관계는 provide 포트에서 provide 포트로방향성을가지고연결되며, 연결의방향기준에서목표 (target) 컴포넌트쪽에서비스요청이들어왔을때, 해당서비스요청을실제로는근원 (source) 컴포넌트쪽에서응대함을의미한다. <realization> 연결관계는구현대상인컴포넌트모델 M1 과구현에필요한컴포넌트모델 M2 간의방향성그래프이다. 구체화관계집합 Rr 은 Rr M1 X M2 와같이표현한다. 컴포넌트간의 <realization> 관계는근원컴포넌트의구현을위해서목표컴포넌트가필요하다는것을나타내는표기방법이다. 예를들어 TargetCompA 는 porta 에서받은서비스의요청을모두 <bind> 연결관계에있는 TargetCompC 로다시요청하며, 15

16 TargetCompA 자체의행위모델은정의되어있지않다. 따라서 TargetCompA 를실질적으로구현하기위해서는 TargetCompC 가반드시필요하며이러한필요성을 <realization> 으로표기한다. <realization> 관계는추후에본연구에서컴포넌트구조를분석하고조합대상컴포넌트를선별하는과정에활용되며, cyclic 한의존관계를가지지않는다. 컴포넌트의상태 (state) 는진입상태전이 (incoming transition) 들의멱집합과퇴출상태전이 (outgoing transition) 의멱집합의조합으로상태는진입상태전이들과퇴출상태전이들을기억한다. 변수 (variable) 는이름과변수타입 VT = {public, 10private} 의조합으로변수의종류는외부에공개되는 public 과공개되지않는내부변수 private 로나누어진다. 이벤트 (event) 는시그널혹은함수호출등의종류가있으며, 인터페이스 (interface) 는이벤트의멱집합의조합으로표현된다. 포트는근원컴포넌트이름, 포트이름과인터페이스, 포트타입 PT = {provide, use} 의조합으로포트의종류는요청을받고결과를외부로제공되는 provide 와요청을보내고결과를제공받는 use 로나누어진다. 상태전이 (Transition) 은근원상태, 수행조건, 이벤트를수신하는포트, 수신대상이벤트, 행위식들의집합, 도달상태로표시되며표현양식은아래와같다. 상태전이는수행조건을만족하며, 인터페이스와이벤트로표현되는트리거이벤트 (Trigger Event) 가발생할때수행되며, 상태가전이되는시점에서함수호출, 시그널전송, 변수값전송등의행위를수행한다. 7. Use Case Diagram 7.1. Use Case 와 Actor 그리고이들간의관계표현 System 주요기능들과이들과관계하는관련당사자들에대한내용을한눈에알아볼수있도록전체적인 View 를제공 7.2. 구성요소 Actor Use Case Actor 와 Use Case 의관계 Actor Use Case 와상호작용을하는, System 사용 (System 에어떤 Action 을취한다 ) 의주체적인존재 사람, 사물, 시스템 Actor 명은역할로표현 Actor 구분 Primary Actor Use Case 기동 Actor 관계의화살표방향이 Actor 로부터 Use Case 를향하고있는모습 16

17 Supporting Actor 주로외부연동하는 System System 에대한설계진행시점에주로식별 특정 System 의제어권외부에존재하며특정 System 에요구사항부과 대상이되는 System 을사용하는사람이나외부 System 항목을나열후, 나열된 Actor 후보가하는역할을이해하기쉬운용어로표현 Use Case System, Sub System 에의해서제공되는상호연관성이높은기능성을표현 System 과 Actor 간에발생하는상호작용을일련의메시지로표현 ( 목적어 + 동사의명사형 ) 표현 Use Case 크기 Use Case 크기크고개수는적게 유지및관리대상이적으므로편의성증대 각 Use Case 처리의복잡도증가 Diagram 이간단하여전체적인이해의수준이낮아짐 Use Case 크기작고개수는많게 Use Case 처리 Logic 이단순하고명쾌 유지및관리대상의증가로인해유지 / 관리부담증가 Actor 와 Use Case 의관계 모든 Use Case 는 Actor 로시작 관계의종류 Actor Use Case 양방향단방향 Actor Actor 일반화 Use Case Use Case 일반화 포함 <<include>> 확장 <<exclude>> Actor Use Case: Association, Communicates Association Actor Actor: Generalization( 상속 ) Use Case 와 Use Case 관계 Include: 최소한 2 개이상의 Use Case 들이동일한흐름을가진하나의업무기능을공유할때 Exclude: 화살표의방향은포함관계의방향과반대, 확장 Use Case 는 17

18 기본 Use Case 에서특정조건이나 Actor 의선택에따라기동 7.3. Use Case Specification Actor 와 Use Case 간의상호작용에대한기술문서 Diagram 에표현되어있는 Actor 와 Use Case 가어떤상호작용을하는지, 어떤요청과응답을주고받는지, 즉 Event 에대한기술문서 구성요소 Use Case 이름 Use Case 간략한설명 Event 흐름 ( 기본흐름, 대체흐름 ) 특별한요구사항 사전 / 사후조건 확장점 Use Case 이름 Actor 의관점에서의미있는이름 Use Case 간략한설명 Use Case 의역할과목적 Event 흐름 ( 기본흐름, 대체흐름 ) System 흐름에대한윤곽 : System 이무엇을해야하는가. 개발자, 사용자, 고객, 실무자등이이해할수있는용어 기본흐름 대체흐름 정상적이고일반적인흐름 기본흐름을진행하는동안발생하는여러가지비정상적이거나선택적인행위를설명 특별한요구사항 Event 흐름에표현되지않은비기능요구사항 제약사항이될수있는특정 Use Case 에해당되는내용기술 하나혹은여러 Use Case 에적용가능 사전조건 Use Case 시작전에 System 이가지고있어야할상태 기본흐름으로부터대체흐름을식별한후확장하는시점에사전조건과의중복여부판단 사후조건 Use Case 가종료된후 System 의제약사항기술 성공 / 실패의경우모두고려 확장점특정조건을만나면특정 Use Case 로확장되는지점 System 관련그룹 개발자 System 분석, 설계, 구현 18

19 Tester 교육담당자 지원담당 System 의도목적달성여부검증 사용자들에게 System 사용방법설명 System 가동에대한책임및유지보수 7.4. Use Case Diagram Use case 는사용자관점에서의시스템수행기능이다. Use case diagram 을그릴때, 시스템내의어떤특정기능이 Use case 인지아닌지의기준은사용자와시스템간의시스템수행기능인지를확인하면된다. 예를들어, 어떠한웹사이트에서회원가입시입력정보를 DB 에저장하는기능과같은사용자의눈에보이지않는내부적인수행기능은사용자관점에서의시스템기능이아니기때문에 Use case 로그리지않는다. 관계는 Generalization, Include, Exclude 이렇게세가지면충분하다. 간혹 Use case diagram 을보면다양한관계를사용하는것을많이볼수있는데, 오히려혼란을초래할수있다. 일반적으로 Use case diagram 에서는 Generalization, Include, Exclude 이렇게세가지관계만사용한다. 관계를사용하는목적과의미에대해생각해보자. Use case diagram 에서의관계는사용자에게기능을좀더쉽게보여주고설계에대한방향을이끌어낸다는관점으로접근해야한다 include Include 를사용하는목적은크게두가지이다. 하나는추상적이고복잡한하나의 Use case 를논리적인행동단위의작은 Use case 들로분리함으로써해당 Use case 를의미적으로좀더간소화한다는것이고, 다른하나는아래와같이두개이상의 Use case 들이가지고있는공통된행동을추출하여모듈화하는데에그목적을두고있다. 아래는그사용예를보여준다 exclude 보조적이고선택적인하나의 Use case 가다른하나의 Use case 안에언제어떻게추가되는지를정의한다. 따라서 Extension Point 가중요하며, 그 Extension Point 에는확장하는 Use case 가언제, 어떻게선택적으로추가되는지에대한조건이정의되어야한다 Generalization 클래스들사이의일반화와유사하다. 자식 Use case 는부모 Use case 의 property 들과 behavior 들을상속하고또한 behavior 들을 override 할수있다 Use Case 의사례 ATM 현금출금이벤트흐름 << 기본흐름 >> 이 Use Case 는고객이 ATM 에서현금인출을하기위해행동하면서시작한다. 19

20 1. 고객이 ATM 에서현금인출을시작한다 고객이화면에서메뉴를선택하는경우 : A 고객이현금 / 신용카드를넣는경우 : A02 2. 고객인증처리 System 은 Card 에저장된개인정보 ( 은행번호, 계좌번호등 ) 를읽는다 System 이카드판독이불가능한경우 : E System 은고객에게비밀번호입력을요구하고, 입력한비밀번호가맞는지확인한다. Input : 고객비밀번호 (6 자리 ) 2.4. 입력한비밀번호가다를경우 : A 입력한비밀번호가맞는경우 : A04 3. 현금인출메뉴제공 3.1. System 은고객이선택한현금인출메뉴를제공한다 System 은인출금액입력을요구한다. 4. 고객은인출금액을입력한다. 5. 인출금액확인 5.1. System 은입력금액의범위를확인한다.( 최하 / 최대금액 ) 입력금액범위를벗어난경우 : E System 은 ATM 에고객이요청한금액이있는지확인한다 ATM 에요청금액이부족한경우 : E System 은고객의계좌에요청한금액인출여부를확인한다 은행접속이불가능한경우 : E 잔액이부족한경우 : E05 6. 현금인출 6.1. System 은거래내용을기록한다. Input: 거래일시, ATM 위치, 고객계좌번호, 거래유형, 거래금액, 거래번호등 6.2. System 은고객에게현금을지급한다 System 은영수증과카드를고객에게제공한다. 7. 고객은현금, 카드, 영수증을확인한다. 8. Use Case 를종료한다. 8. Class Diagram 유사한구조를가지는구조체와구조체간의정적인연결을표현하는정적구조체도식이다. 또한인터페이스, 패키지, 연결, 인스턴스, 객체와링크까지도포함하기도한다. 정적구조체다이어그램의짧은표현으로보는것이좋다 의미정적인상태의시스템구조체를시각적으로표현하는모델이다. 각클래스다이어그램은기반모델의분할을표현하지않는다 구성 20

21 정적으로선언되는원소들인클래스, 인터페이스, 그상호관계를서로와서로의내용물과연결되는그래프로표현한다. 기반모델이나여러기반모델의패키지들로이루어지는각패키지형태로구성한다 연결구성요소는하나이상의요소와결합할수있다. 한패키지는하나이상의클래스다이어그램으로도표시될수있다. 여러다이어그램으로나누는것은표현상의효율을위한것이지모델자체가나누어져있음을의미하지않는다. 다이어그램의내용물들은정적의미모델의각요소로연결된다. 어떤다이어그램이패키지의일부분이면, 그내용물은해당패키지의내부로연결된다 Object diagram 과의차이 Class diagram 이객체 (Object) 를포함할수는있지만 Object diagram 은클래스 (Class) 를포함하지않는다. 이두가지용어를구분하면사용용도가구별되므로편리하다 Classifier 클래스, 자료형, 인터페이스의상위모델이다. 이세가지는서로비슷한구문으로표현되므로모두직사각형으로표시하고필요한경우형명을표시한다. 일반적으로다이어그램에서가장많은것이클래스이므로아무형명이없는직사각형으로표시하고나머지자료형과인터페이스는앞에형명을표시하는방법을주로사용한다. 아래클래스에관한내용은자료형과인터페이스에도일정부분적용가능한내용이다 Class 의미설계하는시스템을구성하는개념을표현한다. 자료구조를가지고다른요소에특정동작이나연관을갖는다. 패키지내부의한정범위에서만선언되며그이름은다른클래스이름과달라야한다 표현형 구분 표현 클래스 21

22 속성이있는클래스 속성값이있는클래스 용법외곽선을실선으로그리며, 내부에세개로나뉜공간을갖는다. 맨위의이름부분에는클래스이름과 { } 내부에일반속성을기입한다. 가운데는속성, 아래는작동이들어간다. 패키지내부의클래스는 패키지명 :: 클래스명 형태로기입한다. 패키지내부의패키지인경우 패키지명 :: 패키지명 ::...:: 클래스명 형태로절대적형태를표현할수있다 사용예 클래스사용예 22

23 학교 (v2.0) Erubis J 23

24 9. Deployment Diagram 시스템의노드와컴포넌트및그관계를묘사하는정적구조체도식이다. 즉, 시스템의하드웨어와소프트웨어, 원격의다른시스템과연결시켜주는미들웨어를보여준다. 따라서여러장치에서작동하는어플리케이션을표현하기에좋다 구성요소 (v2.1 기준 ) artifact, node, deployment 의세가지노드와연결선을이용하여작성한다 graphical node : 노드 a. artifact 개발의과정을통해서나온결과물을총칭한다. 시스템의개발, 배포, 운영에필요한정보의물리적인부분을명세한다. type artifact 속성이있는 artifact 24

25 artifact b. node artifact 가실행되는장치또는실행환경을의미한다. 각 node 간의연결선은통신연결을의미한다. type node artifact 가탑재된 node node c. deployment artifact 를특정 node 에서작동하기위한모든활동을의미한다. 소프트웨어 artifact 가어떻게장치및실행환경과설치또는할당되어있는지를나타낸다. type deployment 속성이있는 deployment 속성의값이있는 deployment deployment graphical path : 연결선 type 연관의존일반화 path type deploy 선언 path 9.2. 용법 node 는입체정육면체로나타내고, 윗부분에이름을표시한다. 노드이름에는밑줄을 25

26 그으며, 이름 : 노드타입명 형태로나타낸다. artifact 에는 << 타입명 >> 을이용해어떤형태에기반하는지를표현할수있다. node 간, 혹은 artifact 간에 <<become>> 이붙는의존관계가있을수있는데, 이는전체수행시간중적은시간동안만해당 node 혹은 artifact 에상주한다는것을의미한다 사용예 온라인비디오대여서비스 종합대학정보시스템 (v2.1) 26

27 위종합대학정보시스템의보다간결한실용적표현 27

28 10. Sequence Diagram 가장일반적인형태의상호작용을나타내기위한행위도식이다. 여러상호작용요소간의메시지교환을중점적으로묘사한다. 대부분은다이어그램의시간순서만이중요하지만, 실시간어플리케이션의경우는시간축이실제시간의절대값과같은단위이기도하다 구성요소다음과같은구성요소이며이는 Collaboration diagram 과같다 객체생명선 (Object Lifeline) 수직점선으로객체인스턴스의생명선을나타낸다. 이시간동안인스턴스가존재함을의미한다. 객체이름은생명선의최상단에표시한다. 인스턴스가실행중간에생성되면활성화화살표로생성주체와연결하고, 중간에소멸되면커다란 X 표시를소멸시키는주체인스턴스와의연결이나자멸의경우에는해당인스턴스로들어오는마지막화살표에한다. 상호작용이전부터존재하는인스턴스는생명선을최초상호작용화살표보다위에서다이어그램맨위까지닿도록그리고, 마지막상호작용이후에도남아있는인스턴스는최후상호작용화살표이후로부터다이어그램맨아래까지그린다. 28

29 Diagram 1 Diagram 2 왼쪽의다이어그램이오른쪽다이어그램으로연결된다. 구분표현설명 통신 절차실행, 제어 비동기통신 하위절차가모두완료되어야외부과정이계속된다. 제어는다른객체의인스턴스에신호를보내고그모든하위절차의종료를대기한다. 절차제어가없다. 바로다음으로넘어간다 용법수직방향은시간의흐름을의미하고수평방향은각각의인스턴스를의미한다. 일반적으로는페이지의아래방향이시간의흐름과같은방향이다. 평행축은순서가관계없다. 모든실행화살표가한방향으로정렬되기도하지만, 이는항상가능하지는않고정렬된순서가의미를가지지는않는다. 시간수치나활성화되는활동의설명이변화나활성화화살표에표지로붙기도한다. 일반적으로는페이지의아래방향이시간의흐름과같은방향이고오른쪽방향이서로다른객체이지만, 거꾸로배치하기도한다. 대부분은다이어그램의시간순서만이중요하지만, 실시간어플리케이션의경우는시간축이실제시간의절대값과같은단위이기도하다. 평행축은순서가관계없다. 29

30 모든실행화살표가한방향으로정렬되기도하지만, 이는항상가능하지는않고정렬된순서가의미를가지지는않는다. 시간값이나활성화되는활동의설명이변화나활성화화살표에표지로붙기도한다. 시간값은시간단위로표현될수도이고, 활성화화살표의이름으로붙기도한다. 활성화화살표이름에 sendtime, recceivetime 함수를적용하여실제시간을구해야하는경우도있다. 시간함수는사용자가상황에맞게 elapsedtime, executionstarttime, queuedtime, handledtime 등으로수정하여사용할수있도록열려있다. 설계도에있는생성표시는연결이활성화되는시간간격을표현한다. 이표현방법은시각적으로효과적이지만, 화살표가평행인경우보내는시간과받는시간이구분되지않을수있다. 이럴경우대부분은전송시간이서로같은경우가많기때문에괜찮기도하지만, 소프트웨어툴에서는이렇게혼동되지않도록메시지와활성화이름을표시해야한다. 툴은시간함수이름을따로관리하여활성화이름과연동되도록하여 "b.receivetime a.sendtime < 1 sec" 와같은표현의이용이가능해야할것이다. 물론이런표현은의미모델과도연동되어야할것이다 사용예 병렬실행형객체 ( 굵은사각형 ) 의간단한 Sequence diagram 제어, 조건, 재귀, 생성, 소멸에대한 Sequence diagram 30

31 31

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

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi 소프트웨어공학 Tutorial #2: StarUML Eun Man Choi emchoi@dgu.ac.kr Contents l StarUML 개요 l StarUML 소개및특징 l 주요기능 l StarUML 화면소개 l StarUML 설치 l StarUML 다운 & 설치하기 l 연습 l 사용사례다이어그램그리기 l 클래스다이어그램그리기 l 순서다이어그램그리기 2

More information

슬라이드 1

슬라이드 1 201111339 김민우 201111344 김재엽 201211386 최하나 1 UML 이란 2 UML 특징 3 UML 의구성요소 3.1 UML Building Blocks 구성요소 사물 (Things) 관계 (Relationship) 다이어그램 (Diagram) 4 UML 모델링 Tools : CASE UML(Unified Modeling Language)

More information

UML

UML Introduction to UML Team. 5 2014/03/14 원스타 200611494 김성원 200810047 허태경 200811466 - Index - 1. UML이란? - 3 2. UML Diagram - 4 3. UML 표기법 - 17 4. GRAPPLE에 따른 UML 작성 과정 - 21 5. UML Tool Star UML - 32 6. 참조문헌

More information

uml.hwp

uml.hwp Project Team T3 Date 2013-03-21 Team Information 양승민 200911400 정세진 200911418 한종철 200911429 1 1. Basic concept of UML - UML이란 UML은소프트웨어시스템이나업무모델링그리고기타비소프트웨어시스템등을나타내는가공물을구체화하고, 시각화하고, 구축하고, 문서화하기위해만들어진언어이다.

More information

Microsoft PowerPoint - 1주차 UML의 구성과 도구

Microsoft PowerPoint - 1주차 UML의 구성과 도구 UML의 구성과 도구 v UML(Unified Modeling Language) v UML의 구성 요소 v UML의 관계 v UML의 다이어그램 v UML 도구 UML(Unified Modeling Language) l 모델링 과정(modeling process)과 모델링 언어(modeling language)를 제안 모델링 과정 : 객체지향으로 분석하고 설계하는

More information

슬라이드 1

슬라이드 1 2 장 UML 의구성 UML 아키텍처 UML 메커니즘 한빛미디어 ( 주 ) 학습목표 UML 의구성요소를학습한다. UML 의관계를이해한다. 다이어그램의개념을이해한다. 2 UML 의구성요소 UML은기본요소를구성하는 사물 (Things) 사물간의관계를나타내는 관계 (Relationship) 사물과관계를도형으로표현하는 다이어그램 (Diagram) [ 그림 2-1]

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

UML의 구성과 도구

UML의 구성과 도구 UML 의구성과도구 UML(Unified Modeling Language) UML 의구성요소 UML 의관계 UML 의다이어그램 UML 도구 UML(Unified Modeling Language) 모델링과정 (modeling process) 과모델링언어 (modeling language) 를제안 모델링과정 : 객체지향으로분석하고설계하는프로세스 모델링언어 : 설계를표현할때사용하는그래픽심볼

More information

Chap 6: Graphs

Chap 6: Graphs 그래프표현법 인접행렬 (Adjacency Matrix) 인접리스트 (Adjacency List) 인접다중리스트 (Adjacency Multilist) 6 장. 그래프 (Page ) 인접행렬 (Adjacency Matrix) n 개의 vertex 를갖는그래프 G 의인접행렬의구성 A[n][n] (u, v) E(G) 이면, A[u][v] = Otherwise, A[u][v]

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

1. 파일 명명규칙

1. 파일 명명규칙 소프트웨어 공학 UML 과제 [UseCase Diagram] Use Case Diagram [ 목 차 ] 2.1.Use Case Diagram 개요 2.2.Use Case 구성요소 2.3.Relationship 2.4.작성방법 2.5.참고문헌 1. Use Case Diagram 1.1 Use Case 모델링 개요 - Use Case 는 개발자가 아닌 사용자

More information

Microsoft PowerPoint _UML

Microsoft PowerPoint _UML GRID 소프트웨어공학 UML 작성자 : 서경석정보처리기술사 2005 년하반기 [ 이원석기술사 (wslee@skcc.com) ] 1 UML(Unified Modeling Language) 1. UML 의개요 1) UML 의정의 - 객체기술에관한국제표준화기구 (OMG:Object Management Group) 에서인정한 객체지향분석, 설계를위한통합모델링언어

More information

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

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 5 장생성자와접근제어 1. 객체지향기법을이해한다. 2. 클래스를작성할수있다. 3. 클래스에서객체를생성할수있다. 4. 생성자를이용하여객체를초기화할수 있다. 5. 접근자와설정자를사용할수있다. 이번장에서만들어볼프로그램 생성자 생성자 (constructor) 는초기화를담당하는함수 생성자가필요한이유 #include using namespace

More information

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

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형 AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형 언어 변환 1.4. 기대 효과 4.4. 프로그램 Restructuring 4.5. 소스 모듈 관리 2. SeeMAGMA 적용 전략 2.1. SeeMAGMA

More information

JAVA PROGRAMMING 실습 08.다형성

JAVA PROGRAMMING 실습 08.다형성 2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스

More information

제8장 자바 GUI 프로그래밍 II

제8장 자바 GUI 프로그래밍 II 제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로

More information

슬라이드 1

슬라이드 1 마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***

More information

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요 . 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요소로써안드로이드시스템에서는 Activities, Services, Content Providers,

More information

소프트웨어공학개론 강의 7: 시퀀스다이어그램 최은만동국대학교컴퓨터공학과

소프트웨어공학개론 강의 7: 시퀀스다이어그램 최은만동국대학교컴퓨터공학과 소프트웨어공학개론 강의 7: 시퀀스다이어그램 최은만동국대학교컴퓨터공학과 UML 시퀀스다이어그램 l 시퀀스다이어그램 (Sequence Diagram) l 사용사례가어떻게수행되는지어떤메시지가언제보내지는지나타낸그림 l 시스템의동적인측면을캡처한것 l 동적뷰 (dynamic view) l 시간의흐름에따라정리해놓은것 l 페이지내려갈수록시간이흐름 l 객체는왼쪽에서오른쪽으로나열

More information

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

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법

More information

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 객체지향프로그래밍 IT CookBook, 자바로배우는쉬운자료구조 q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 q 객체지향프로그래밍의이해 v 프로그래밍기법의발달 A 군의사업발전 1 단계 구조적프로그래밍방식 3 q 객체지향프로그래밍의이해 A 군의사업발전 2 단계 객체지향프로그래밍방식 4 q 객체지향프로그래밍의이해 v 객체란무엇인가

More information

Microsoft PowerPoint - 13_UMLCoding(2010).pptx

Microsoft PowerPoint - 13_UMLCoding(2010).pptx LECTURE 13 설계와코딩 최은만, CSE 4039 소프트웨어공학 설계구현매핑 UML 설계도로부터 Java 프로그래밍언어로의매핑과정설명 정적다이어그램의구현 동적다이어그램의구현 최은만, CSE 4039 소프트웨어공학 2 속성과오퍼레이션의구현 Student - name : String #d department t: String Sti packageattribute

More information

Spring Data JPA Many To Many 양방향 관계 예제

Spring Data JPA Many To Many 양방향 관계 예제 Spring Data JPA Many To Many 양방향관계예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) 엔티티매핑 (Entity Mapping) M : N 연관관계 사원 (Sawon), 취미 (Hobby) 는다 : 다관계이다. 사원은여러취미를가질수있고, 하나의취미역시여러사원에할당될수있기때문이다. 보통관계형 DB 에서는다 : 다관계는 1

More information

Microsoft PowerPoint - e pptx

Microsoft PowerPoint - e pptx Import/Export Data Using VBA Objectives Referencing Excel Cells in VBA Importing Data from Excel to VBA Using VBA to Modify Contents of Cells 새서브프로시저작성하기 프로시저실행하고결과확인하기 VBA 코드이해하기 Referencing Excel Cells

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

More information

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 UI 이벤트 Event listener Touch mode Focus handling Notification Basic toast notification Customized toast notification Status bar notification 2 사용자가인터랙션하는특정 View

More information

Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx

Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 애플리케이션기초 애플리케이션컴포넌트 액티비티와태스크 Part 1 프로세스와쓰레드 컴포넌트생명주기 Part 2 2 Library Java (classes) aapk.apk (android package) identifiers Resource & Configuration aapk: android

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 7 장클래스와객체 이번장에서학습할내용 객체지향이란? 객체 메시지 클래스 객체지향의장점 String 클래스 객체지향개념을완벽하게이해해야만객체지향설계의이점을활용할수있다. 실제세계는객체로이루어진다. 객체지향이란? 실제세계를모델링하여소프트웨어를개발하는방법 절차지향과객체지향 절차지향프로그래밍 (procedural programming): 문제를해결하는절차를중요하게생각하는방법

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

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

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx OOPT Stage 2040 - Design Feesual CPT Tool Project Team T8 Date 2017-05-24 T8 Team Information 201211347 박성근 201211376 임제현 201411270 김태홍 2017 Team 8 1 Table of Contents 1. Activity 2041. Design Real Use

More information

Microsoft Word - FunctionCall

Microsoft Word - FunctionCall Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack

More information

PowerPoint Template

PowerPoint Template 16-1. 보조자료템플릿 (Template) 함수템플릿 클래스템플릿 Jong Hyuk Park 함수템플릿 Jong Hyuk Park 함수템플릿소개 함수템플릿 한번의함수정의로서로다른자료형에대해적용하는함수 예 int abs(int n) return n < 0? -n : n; double abs(double n) 함수 return n < 0? -n : n; //

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Verilog: Finite State Machines CSED311 Lab03 Joonsung Kim, joonsung90@postech.ac.kr Finite State Machines Digital system design 시간에배운것과같습니다. Moore / Mealy machines Verilog 를이용해서어떻게구현할까? 2 Finite State

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

Windows Server 2012

Windows Server  2012 Windows Server 2012 Shared Nothing Live Migration Shared Nothing Live Migration 은 SMB Live Migration 방식과다른점은 VM 데이터파일의위치입니다. Shared Nothing Live Migration 방식은 Hyper-V 호스트의로컬디스크에 VM 데이터파일이위치합니다. 반면에, SMB

More information

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어서가장중요한부분이라고도할수있기때문입니다. 1. 새로운메크로생성 새메크로만들기버튺을클릭하여파일을생성합니다. 2. 메크로저장 -

More information

소프트웨어공학개론 강의 11: UML 코드매핑 최은만동국대학교컴퓨터공학과

소프트웨어공학개론 강의 11: UML 코드매핑 최은만동국대학교컴퓨터공학과 소프트웨어공학개론 강의 11: UML 코드매핑 최은만동국대학교컴퓨터공학과 구현작업 l 작업이후본격적으로시스템을구축하는단계 l 프로그램, 즉코드모듈을구축하는과정 2 2 StarUML 코드생성 l Tools->Java->Generate Code 3 정적모델의구현 l 설계를프로그램으로매핑 l 클래스다이어그램과패키지다이어그램이프로그램과밀접 l 추상수준에따라구현에도움이되는정도가다름

More information

ii iv 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 2 3 4 5 1 3 6 37 제품군 제품분류 39 제출물관리대장 41 43 45 47 < 접수번호 > 관리번호 평가결과보고서 < 평가대상제품명 > 년월일 < 평가기관명 > 49 제 1 장개요 o 일반적으로다음의사항을포함한다. - 정보보호제품평가인증관련규정 (

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

Windows 8에서 BioStar 1 설치하기

Windows 8에서 BioStar 1 설치하기 / 콘텐츠 테이블... PC에 BioStar 1 설치 방법... Microsoft SQL Server 2012 Express 설치하기... Running SQL 2012 Express Studio... DBSetup.exe 설정하기... BioStar 서버와 클라이언트 시작하기... 1 1 2 2 6 7 1/11 BioStar 1, Windows 8 BioStar

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

2_안드로이드UI

2_안드로이드UI 03 Layouts 레이아웃 (Layout) u ViewGroup의파생클래스로서, 포함된 View를정렬하는기능 u 종류 LinearLayout 컨테이너에포함된뷰들을수평또는수직으로일렬배치하는레이아웃 RelativeLayout 뷰를서로간의위치관계나컨테이너와의위치관계를지정하여배치하는레이아웃 TableLayout 표형식으로차일드를배치하는레이아웃 FrameLayout

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 9 강. 클래스의활용목차 멤버함수의외부정의 this 포인터 friend 선언 static 멤버 임시객체 1 /17 9 강. 클래스의활용멤버함수의외부정의 멤버함수정의구현방법 내부정의 : 클래스선언내에함수정의구현 외부정의 클래스선언 : 함수프로토타입 멤버함수정의 : 클래스선언외부에구현

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

11장 포인터

11장 포인터 누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 1, 변수와메모리

More information

Microsoft PowerPoint - 06_ClassDiagram(2010).ppt [호환 모드]

Microsoft PowerPoint - 06_ClassDiagram(2010).ppt [호환 모드] LECTURE 6 UML 클래스다이어그램 클래스다이어그램은 UML 의중심 최은만, CSE 4039 소프트웨어공학 목차 UML 이란? UML 의역사 UML 클래스다이어그램 Exercise 클래스다이어그램설계 최은만, CSE 4039 소프트웨어공학 2 UML 분석, 설계를비주얼화, 문서화하기위한그래픽언어 Unified 이전의 OO 방법들의통합 Modeling 객체지향분석설계를위한비주얼모델링

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

MVVM 패턴의 이해

MVVM 패턴의 이해 Seo Hero 요약 joshua227.tistory. 2014 년 5 월 13 일 이문서는 WPF 어플리케이션개발에필요한 MVVM 패턴에대한내용을담고있다. 1. Model-View-ViewModel 1.1 기본개념 MVVM 모델은 MVC(Model-View-Contorl) 패턴에서출발했다. MVC 패턴은전체 project 를 model, view 로나누어

More information

Microsoft Word - src.doc

Microsoft Word - src.doc IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

쉽게

쉽게 Power Java 제 4 장자바프로그래밍기초 이번장에서학습할내용 자바프로그램에대한기초사항을학습 자세한내용들은추후에. Hello.java 프로그램 주석 주석 (comment): 프로그램에대한설명을적어넣은것 3 가지타입의주석 클래스 클래스 (class): 객체를만드는설계도 ( 추후에학습 ) 자바프로그램은클래스들로구성된다. 그림 4-1. 자바프로그램의구조 클래스정의

More information

Introduction to UML 소프트웨어모델링 유준범교수님 황정아 김성민 이한빈

Introduction to UML 소프트웨어모델링 유준범교수님 황정아 김성민 이한빈 Introduction to UML 소프트웨어모델링 유준범교수님 201111397 황정아 201111341 김성민 201111379 이한빈 1. Subject : UML ( Unified Modeling Language ) and UML Tools 2. Outline 1. Subject 2. Outline 3. What is UML? A. 정의 B. 배경 C.

More information

View Licenses and Services (customer)

View Licenses and Services (customer) 빠른 빠른 시작: 시작: 라이선스, 라이선스, 서비스 서비스 및 주문 주문 이력 이력 보기 보기 고객 가이드 Microsoft 비즈니스 센터의 라이선스, 서비스 및 혜택 섹션을 통해 라이선스, 온라인 서비스, 구매 기록 (주문 기록)을 볼 수 있습니다. 시작하려면, 비즈니스 센터에 로그인하여 상단 메뉴에서 재고를 선택한 후 내 재고 관리를 선택하십시오. 목차

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 03 모델변환과시점변환 01 기하변환 02 계층구조 Modeling 03 Camera 시점변환 기하변환 (Geometric Transformation) 1. 이동 (Translation) 2. 회전 (Rotation) 3. 크기조절 (Scale) 4. 전단 (Shear) 5. 복합변환 6. 반사변환 7. 구조변형변환 2 기하변환 (Geometric Transformation)

More information

Microsoft PowerPoint - Lect04.pptx

Microsoft PowerPoint - Lect04.pptx OBJECT ORIENTED PROGRAMMING Object Oriented Programming 이강의록은 Power Java 저자의강의록을사용했거나재편집된것입니다. Class 와 object Class 와객체 클래스의일생 메소드 필드 String Object Class 와객체 3 클래스 클래스의구성 클래스 (l (class): 객체를만드는설계도 클래스로부터만들어지는각각의객체를특별히그클래스의인스턴스

More information

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

ThisJava ..

ThisJava .. 자바언어에정확한타입을추가한 ThisJava 소개 나현익, 류석영 프로그래밍언어연구실 KAIST 2014 년 1 월 14 일 나현익, 류석영 자바언어에정확한타입을추가한 ThisJava 소개 1/29 APLAS 2013 나현익, 류석영 자바 언어에 정확한 타입을 추가한 ThisJava 소개 2/29 실제로부딪힌문제 자바스크립트프로그램분석을위한요약도메인 나현익,

More information

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

소프트웨어개발방법론

소프트웨어개발방법론 사용사례 (Use Case) Objectives 2 소개? (story) vs. 3 UC 와 UP 산출물과의관계 Sample UP Artifact Relationships Domain Model Business Modeling date... Sale 1 1..* Sales... LineItem... quantity Use-Case Model objects,

More information

Convenience Timetable Design

Convenience Timetable Design Convenience Timetable Design Team 4 2 Contents 1. Introduction 2. Decomposition description 3. Dependency description 4. Inter face description 5. Detailed design description 3 1. Introduction Purpose

More information

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 SNU 4190.210 프로그래밍 원리 (Principles of Programming) Part III Prof. Kwangkeun Yi 차례 1 값중심 vs 물건중심프로그래밍 (applicative vs imperative programming) 2 프로그램의이해 : 환경과메모리 (environment & memory) 다음 1 값중심 vs 물건중심프로그래밍

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

Microsoft Word - Armjtag_문서1.doc

Microsoft Word - Armjtag_문서1.doc ARM JTAG (wiggler 호환 ) 사용방법 ( IAR EWARM 에서 ARM-JTAG 로 Debugging 하기 ) Test Board : AT91SAM7S256 IAR EWARM : Kickstart for ARM ARM-JTAG : ver 1.0 ( 씨링크테크 ) 1. IAR EWARM (Kickstart for ARM) 설치 2. Macraigor

More information

유니티 변수-함수.key

유니티 변수-함수.key C# 1 or 16 (Binary or Hex) 1:1 C# C# (Java, Python, Go ) (0101010 ). (Variable) : (Value) (Variable) : (Value) ( ) (Variable) : (Value) ( ) ; (Variable) : (Value) ( ) ; = ; (Variable) : (Value) (Variable)

More information

Something that can be seen, touched or otherwise sensed

Something that can be seen, touched or otherwise sensed Something that can be seen, touched or otherwise sensed Things about an object Weight Height Material Things an object does Pen writes Book stores words Water have Fresh water Rivers Oceans have

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

PowerPoint Presentation

PowerPoint Presentation Object-Oriented Analysis and Design How to use StarUML, Korea 1. StarUML 개요 2 2. 설치하기 다음의 website 에서다운로드받음. http://staruml.sourceforge.net/ko/download.php staruml-5.0-uml-cm.exe 파일을클릭합니다. 로컬디스크에다운받은 staruml-5.0-with-cm.exe

More information

Frama-C/JESSIS 사용법 소개

Frama-C/JESSIS 사용법 소개 Frama-C 프로그램검증시스템소개 박종현 @ POSTECH PL Frama-C? C 프로그램대상정적분석도구 플러그인구조 JESSIE Wp Aorai Frama-C 커널 2 ROSAEC 2011 동계워크샵 @ 통영 JESSIE? Frama-C 연역검증플러그인 프로그램분석 검증조건추출 증명 Hoare 논리에기초한프로그램검증도구 사용법 $ frama-c jessie

More information

Introduction to UML Software Modeling & Analysis Report #1 과목정보 학생정보 학교명건국대학교전공컴퓨터공학부 학기 2015 학년도 1 학기과목명소프트웨어모델링및분석 팀원 김민재 이규진 20

Introduction to UML Software Modeling & Analysis Report #1 과목정보 학생정보 학교명건국대학교전공컴퓨터공학부 학기 2015 학년도 1 학기과목명소프트웨어모델링및분석 팀원 김민재 이규진 20 Software Modeling & Analysis Report #1 과목정보 학생정보 학교명건국대학교전공컴퓨터공학부 학기 2015 학년도 1 학기과목명 팀원 201011314 김민재 201011349 이규진 201011356 이종찬 Contents 1. UML 에대하여 1-1. UML 설명 1-1-1. UML 정의 1-1-2. UML 역사 1-1-3. UML

More information

Microsoft Word - logic2005.doc

Microsoft Word - logic2005.doc 제 8 장 Counters 실험의목표 - Catalog counter 의동작원리에대하여익힌다. - 임의의 counter를통하여 FSM 구현방법을익힌다. - 7-segment display 의동작원리를이해한다. 실험도움자료 1. 7-segment display 7-segment는디지털회로에서숫자를표시하기위하여가장많이사용하는소자이다. 이름에서알수있듯이 7개의 LED(

More information

P a g e 2 Context A. Brief Information : 전반적인정보 1. Introduction 3 2. UML 의정의와간략한역사, 그리고특징 3 3. UML 구조에대한간략한기술 5 B. Digging Deeper : UML 의각구성요소에대한설명 4.

P a g e 2 Context A. Brief Information : 전반적인정보 1. Introduction 3 2. UML 의정의와간략한역사, 그리고특징 3 3. UML 구조에대한간략한기술 5 B. Digging Deeper : UML 의각구성요소에대한설명 4. Software Modeling & Analysis Assignment #1 A Compact Report on UML & Tools Due 14th MAR 2014 기세파 201013760 강태호 201013275 이인구 200913215 P a g e 2 Context A. Brief Information : 전반적인정보 1. Introduction 3

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074>

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074> 객체지향프로그램밍 (Object-Oriented Programming) 1 C++ popular C 객체지향 (object oriented) C++ C : 상위계층언어특징 + 어셈블리언어특징 C++ : 소프트웨어개발플랫폼에객체지향개념제공 객체지향 : 자료와이들자료를어떻게다룰것인지따로생각하지않고단지하나의사물로생각 형 변수가사용하는메모리크기 변수가가질수있는정보

More information

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

PathEye 공식 블로그 다운로드 받으세요!!   지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다. PathEye Mobile Ver. 0.71b 2009. 3. 17 By PathEye 공식 블로그 다운로드 받으세요!! http://blog.patheye.com 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다. PathEye 설치 1/3 최종 배포 버전을 다 운로드 받습니다. 다운로드된 파일은 CAB 파일입니다. CAB 파일에는

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 13. 포인터와배열! 함께이해하기 2013.10.02. 오병우 컴퓨터공학과 13-1 포인터와배열의관계 Programming in C, 정재은저, 사이텍미디어. 9 장참조 ( 교재의 13-1 은읽지말것 ) 배열이름의정체 배열이름은 Compile 시의 Symbol 로서첫번째요소의주소값을나타낸다. Symbol 로서컴파일시에만유효함 실행시에는메모리에잡히지않음

More information

Chap 6: Graphs

Chap 6: Graphs 5. 작업네트워크 (Activity Networks) 작업 (Activity) 부분프로젝트 (divide and conquer) 각각의작업들이완료되어야전체프로젝트가성공적으로완료 두가지종류의네트워크 Activity on Vertex (AOV) Networks Activity on Edge (AOE) Networks 6 장. 그래프 (Page 1) 5.1 AOV

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 인터페이스 배효철 th1g@nate.com 1 목차 인터페이스의역할 인터페이스선언 인터페이스구현 인터페이스사용 타입변환과다형성 인터페이스상속 디폴트메소드와인터페이스확장 2 인터페이스의역할 인터페이스란? 개발코드와객체가서로통신하는접점 개발코드는인터페이스의메소드만알고있으면 OK 인터페이스의역할 개발코드가객체에종속되지않게 -> 객체교체할수있도록하는역할 개발코드변경없이리턴값또는실행내용이다양해질수있음

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M.

HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M. 오늘할것 5 6 HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M. Review: 5-2 7 7 17 5 4 3 4 OR 0 2 1 2 ~20 ~40 ~60 ~80 ~100 M 언어 e ::= const constant

More information

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout << " 양수입력 : "; cin >> *p; if (*p <= 0) cout << " 양수를입력해야합니다 " << endl; return; 동적할

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout <<  양수입력 : ; cin >> *p; if (*p <= 0) cout <<  양수를입력해야합니다  << endl; return; 동적할 15 장기타주제들 auto_ptr 변환함수 cast 연산자에의한명시적형변환실행시간타입정보알아내기 (RTTI) C++ 프로그래밍입문 1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout > *p; if (*p

More information

JAVA PROGRAMMING 실습 05. 객체의 활용

JAVA PROGRAMMING 실습 05. 객체의 활용 public class Person{ public String name; public int age; } public Person(){ } public Person(String s, int a){ name = s; age = a; } public String getname(){ return name; } @ 객체의선언 public static void main(string

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES 2012.02.18 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone 02-2108-8030 Fax 02-2108-8031 www.softbase.co.kr Copyright 2010 SOFTBase Inc. All rights reserved 목차 1 장 : ActiveX

More information

< 소프트웨어모델링및분석 > - UML 보고서 조원 : 홍준택 신재용 정재호 김철웅

< 소프트웨어모델링및분석 > - UML 보고서 조원 : 홍준택 신재용 정재호 김철웅 < 소프트웨어모델링및분석 > - UML 보고서 조원 : 200611525 홍준택 200711441 신재용 200711470 정재호 200710115 김철웅 UML 의역사 UML 은 'Unified Modeling Language' 의약자입니다. 무엇을통합했기에 'Unified' 라는말이붙게된것일까요? 먼저, UML 의역사를간단히살펴보면아래그림과같습니다. 객체지향적분석과디자인에대해다양한방면으로실험적인접근을하던방법론자들에의해서다양한객체지향모델링방법이등장하게됩니다.

More information

An introduction to UML 과목명 : 소프트웨어모델링및분석 교수명 : 유준범교수님 제출일 : ( 수 ) 팀 원 : 김태현 고수창 이상규

An introduction to UML 과목명 : 소프트웨어모델링및분석 교수명 : 유준범교수님 제출일 : ( 수 ) 팀 원 : 김태현 고수창 이상규 An introduction to UML 과목명 : 소프트웨어모델링및분석 교수명 : 유준범교수님 제출일 : 2016.03.16. ( 수 ) 팀 원 : 201211341 김태현 201411269 고수창 200911411 이상규 1. UML 개요 a. UML 이란무엇인가? b. UML 을정의하게된동기 i. 모델링을하는이유 ii. 소프트웨어산업의경향 iii. 산업표준이생기기전

More information

Network Programming

Network Programming Part 5 확장된 Network Programming 기술 1. Remote Procedure Call 2. Remote Method Invocation 3. Object Request Broker 2. Java RMI

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Software Modeling & Analysis - UML Report T6 200811425 김평석 200811435 신성호 200811449 이찬희 200811454 전인서 200811462 최현빈 Contents History of UML & Rational Unified Process Construction of UML & Diagram Use Case,

More information

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

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for 2003 Development of the Software Generation Method using Model Driven Software Engineering Tool,,,,, Hoon-Seon Chang, Jae-Cheon Jung, Jae-Hack Kim Hee-Hwan Han, Do-Yeon Kim, Young-Woo Chang Wang Sik, Moon

More information

슬라이드 1

슬라이드 1 - 1 - 전자정부모바일표준프레임워크실습 LAB 개발환경 실습목차 LAB 1-1 모바일프로젝트생성실습 LAB 1-2 모바일사이트템플릿프로젝트생성실습 LAB 1-3 모바일공통컴포넌트생성및조립도구실습 - 2 - LAB 1-1 모바일프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new Mobile Project 메뉴를선택한다.

More information