• 제목/요약/키워드: UML State Machine

검색결과 19건 처리시간 0.021초

UML State Machine Diagram을 이용한 소프트웨어 시스템의 데드락 탐지 (Deadlock Detection of Software System Using UML State Machine Diagram)

  • 민현석
    • 중소기업융합학회논문지
    • /
    • 제1권1호
    • /
    • pp.75-83
    • /
    • 2011
  • Unified Modeling Language (UML)는 산업계에서 소프트웨어 설계 표준 언어로서 인정되고 있으며 특히 UML State Machine Diagram은 클래스의 동적인 행위(behavior)를 묘사하는데 많이 사용되고 있다. 이 논문은 UML State Machine Diagram을를 이용하여 시스템의 데드락 (deadlock)을 찾는 방법에 대해서 논한다. 보통 State Machine Diagram는 개별의 클래스의 행위를 나타내는 데 사용되므로 시스템 범위의 행위를 알고 싶으면 시스템에 있는 클래스들 중 관심 있는 클래스들의 State Machine Diagram을 합하여 시스템의 행위를 나타낼 수 있는 State Machine Diagram이 필요하여진다. 일반적으로 이러한 시스템 수준의 State Machine Diagram은 매우 복잡하고 실제로는 타당하지 않은 State나 Transition들을 포함하게 된다. 실제 시스템의 행위를 나타내기 위해서 synchronization과 externalization을 적용하여 State Machine Diagram을 유효한 수준으로 줄이는 것이 필요하다. 이렇게 만들어진 State Machine Diagram은 시스템의 행위를 나타내는데 사용될 수 있으며 통상의 모델 체킹 방법이 적용될 수 있다. 이 논문은 데드락 탐지를 하는 방법을 간단한 예제를 통해서 보여준다. 모든 과정은 툴에서 자동으로 지원되며 필요한 알고리즘도 같이 설명된다.

  • PDF

UML 상태 기계를 이용한 임베디드 소프트웨어의 소모 전력 분석 (Analysis of Power Consumption for Embedded Software using UML State Machine Diagram)

  • 이재욱;홍장의
    • 정보처리학회논문지D
    • /
    • 제19D권4호
    • /
    • pp.281-292
    • /
    • 2012
  • 스마트 폰과 같은 모바일 기기에서 동작하는 응용 소프트웨어는 제한된 배터리 용량으로 인하여 안정적인 서비스를 지속적으로 제공하는데 어려움을 갖는다. 과거에는 배터리의 수명을 연장 시키거나 소모전력이 적은 하드웨어 장치들을 개발하는 것으로 모바일 기기의 소모전력을 관리하였다. 그러나 시스템에 탑재되는 소프트웨어가 복잡해짐에 따라 소프트웨어에 대한 소모전력 분석 연구도 관심을 갖게 되었다. 이러한 연구들 중에서 모델 기반의 소모전력 분석은 코드가 개발되기 이전에 미리 소모전력을 분석하고, 분석 결과를 기반으로 소프트웨어를 개발한다는 측면에서 소모전력 감소를 위한 하나의 중요한 전략으로 인식되어 오고 있다. 따라서 본 논문에서는 소프트웨어의 행위 모델인 UML의 상태기계(State Machine) 다이어그램을 이용하는 소모전력 분석 기법을 제안한다. 제안하는 분석기법은 상태기계 다이어그램을 페트리 넷으로 변환하고, 이의 시뮬레이션을 통해 소모전력을 예측하게 된다.

UML 상태기계 다이어그램을 이용한 컴포넌트 인터페이스의 행위 호환성 검증 도구 (A Behavior Conformance Checker for Component Interfaces using UML State Machine Diagram)

  • 김호준;이우진
    • 정보처리학회논문지D
    • /
    • 제16D권1호
    • /
    • pp.65-72
    • /
    • 2009
  • 현재 컴포넌트 기반 개발 기법은 재사용성과 생산성 측면에서 효과적인 소프트웨어 개발 방법으로 많은 각광을 받고 있다. 하지만 기존의 UML을 이용한 컴포넌트 기반 개발에서는 컴포넌트의 행위를 배제하고 컴포넌트 인터페이스만 참조하여 컴포넌트를 설계함으로써, 컴포넌트의 구체적인 행위에 대한 파악과 컴포넌트 간 인터페이스 호환성 보장이 불가능하다. 이에 따라 컴포넌트 설계 단계에서 컴포넌트의 행위를 상태기계 다이어그램으로 표현하고, 표현된 상태기계 다이어그램을 통해 컴포넌트의 행위 호환성을 보장할 필요가 있다. 이 연구에서는 상태기계 다이어그램으로 표현된 컴포넌트의 행위를 관찰 일치(observation equivalence)와 호출 일관성(invocation consistency)의 개념을 이용하여 행위 호환성을 검증하는 방법을 제공하고, 동적으로 이를 수행하는 도구를 개발한다.

순차도의 추상 시나리오 기반의 UML 상태 머신 다이어그램 시뮬레이션 기법 (An Automatic Simulation Technique for UML State Machine Diagrams based on Abstract Scenarios in Sequence Diagrams)

  • 곽휘;이우진
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제36권6호
    • /
    • pp.443-450
    • /
    • 2009
  • 시스템 개발 초기 단계에 시스템의 기능적 요구사항이 제대로 반영되었는지를 검사하기 위해 시뮬레이션 기법을 이용한다. 일반적으로 시뮬레이션은 순차도에 나타난 추상적 시나리오를 바탕으로 상태머신을 직접 또는 랜덤으로 수행하는 행태로 진행된다. 시뮬레이션은 분석자가 직접 수행해야 하므로 많은 시간과 노력이 소요된다. 이 논문에서는 순차도 기반의 상태 머신의 시뮬레이션의 자동화 기법을 제공한다. 일반적으로 순차도와 상태머신의 추상화 레벨이 달라서 순차도에서 상세 시뮬레이션 트레이스를 추출하기가 쉽지 않다. 이 연구에서는 상태 머신을 LTS 모델로 변환하여 합성적 분석, 트랜지션 축약 등의 분석 방법을 적용하여 순차도와 동일한 추상화 레벨로 변환한 다음, 시나리오 포함여부를 검사한 후 해당 시나리오의 상세 시뮬레이션 트레이스를 생성한다. 이러한 시뮬레이션 트레이스는 순차도에 기술된 시나리오를 기반으로 시뮬레이션을 자동으로 수행할 뿐만 아니라, 특정 시스템 상태까지 자동 시뮬레이션할 수 있으므로 시뮬레이션을 효율적으로 진행할 수 있다.

UML 상태 다이어그램을 위한 코드 구현 모델의 생성 방법 (A Method of Generating Code Implementation Model for UML State Diagrams)

  • 김윤호
    • 한국정보통신학회논문지
    • /
    • 제26권10호
    • /
    • pp.1509-1516
    • /
    • 2022
  • 본 논문에서는 UML 상태 다이어그램으로부터 코드 구현 모델을 생성하는 방법을 제시한다. 첫째로 상태 다이어그램의 상태를 객체화하고, 상태 디자인 패턴에 기반하여 동작 메커니즘을 구조화한다. 다음으로 이 구조에 기반하여 컨텍스트 클래스와 이의 인터페이스 역할을 하는 추상 상태 클래스, 그리고 하위 구상 클래스의 구현 코드를 생성하는 규칙들을 설정한다. 이들 규칙들은 Java의 언어 구조에 기반해서, 상태 다이어그램의 상태들과 동작들에 대한 코드 구현 모델을 생성하게 된다. 한편, 코드의 자동 생성을 위해서는 코드 모델로부터 코드 생성을 위해 구조화된 정보가 필요하다. 따라서, 코드 생성을 위한 정보를 메타 클래스 모델과 메타 행위 모델 형태로 구조화하여 구축한다. 이 메타 정보들에 기반하여 상태 다이어그램으로부터 Java 프로그래밍 언어로의 자동 코드 생성을 위한 엔진의 구축이 가능하다. 또한 코드 모델 생성 엔진은 독자적으로 또는 UML 도구의 상태 다이어그램 기능을 지원하는 도구에 통합된 모듈로서 사용될 수 있다.

CASE 도구를 이용한 ATC 차상 소프트웨어의 UML 모델링 (Modeling of ATC On-Board Software in UML Using CASE Tool)

  • 양찬석;임재식;한재문;김치조;조용기
    • 한국철도학회:학술대회논문집
    • /
    • 한국철도학회 2006년도 추계학술대회 논문집
    • /
    • pp.947-953
    • /
    • 2006
  • ATC on-board equipment require realtime embedded software with high level of safety and reliability. To satisfy these requirements, many techniques are applied to the development of software during the lifecycle. In case of software modeling, object-oriented methodology is widening its niche replacing traditional structured methodology and modeling in UML using a CASE tool is a growing trend. In this paper, we modeled ATC on-board software in UML using Rhapsody, which is a modeling tool for realtime embedded software. We modeled the behavior of ATC on-board equipment based on state machine diagram and validated the model using the animation feature provided in the tool. According to our study, the CASE tool based on UML showed high level of applicability in modeling and verifying the software with complex behavioral characteristics.

  • PDF

시멘틱 기반의 의료 워크플로우 시스템 모델링 기법 (A Semantics-based Modeling Technique for Healthcare Workflow System)

  • 이상영;이윤석
    • 한국컴퓨터산업학회논문지
    • /
    • 제6권3호
    • /
    • pp.551-558
    • /
    • 2005
  • OMG가 UML 액티비티 다이어그램에 대한 텍츄얼한 시멘틱을 제공하지만 정확한 시멘틱의 부족으로 인하여 모호해지는 단점이 있다. OMG의 UML 액티비티 다이어그램이 제공하는 가이드로는 워크플로우 시스템의 정확한 시멘틱을 제공하지는 못한다. 이에 본 논문에서는 대안적인 방법으로 ASM을 사용하여 UML 액티비티 다이어그램의 정형화를 제시한다. 또한 워크플로우 시스템의 특성에 맞춰 ASM 시멘틱을 확장한다.

  • PDF

OCL을 이용한 상태 기계의 메타모델링 (State Machine Meta-Modeling Using OCL)

  • 구자철;권기현
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (2)
    • /
    • pp.37-39
    • /
    • 2002
  • 정형 언어 OCL은 UML의 한 부분으로써 클래스 다이어그램과 상태 기계의 조건을 표현하는데 많은 장점을 가지고 있다. 그렇지만, OCL을 이용하여 상태 기계를 메타모델링 하는데는 적지 않은 한계가 있다. UML/OCL은 모델의 정적인 구조를 강조하지만, 시스템이나 서브 시스템의 시간과 환경에 대한 반응을 고려는 미흡하다. 또한, 시스템의 변화에 있어 시그널은 오퍼레이션과 유사하지만 상태 기계에서만 다루어진다. 결국, 시스템의 변화에 대한 고려는 상태 기계를 통하여 보다 명확하게 명세 될 수 있으며, 현재 OCL의 확장으로써 이러한 문제를 해결 할 수 있다.

  • PDF

EMFG를 이용한 UML 활동 다이어그램의 수행가능성 평가 (The Performance-ability Evaluation of an UML Activity Diagram with the EMFG)

  • 여정모;이미순
    • 정보처리학회논문지D
    • /
    • 제13D권1호
    • /
    • pp.117-124
    • /
    • 2006
  • UML(Unified Modeling Language)은 객체지향 모델링을 위한 언어이다 UML에 포함되어 있는 AD(Activity Diagram; 활동 다이어그램)는 워크플로우 시스템의 모델링에 적합하지만 수행 과정의 평가가 수학적이지 못하므로 수행 과정을 직관적으로 파악해야 하는 단점이 있다. 그러나 EMFG(Extended Mark Flow Graph)는 이산적인 시스템의 모델링에 적합할 뿐 아니라 수행 과정을 수학적으로 평가할 수 있다. 따라서 본 연구에서는 EMFG를 사용하여 모델링된 AD의 수행 동작을 평가하려고 한다. 우선 AD를 EMFG로 변환하는 방법에 대하여 제안하고, 변환된 EMFG의 수행을 평가함으로써 모델링된 AD의 수행완료 가능성을 평가한다. 그리고 컴퓨터 시뮬레이션을 통하여 이를 입증한다. 제안한 알고리듬은 대규모 워크플로우 시스템을 모델링한 AD의 수행완료 가능성도 쉽게 평가할 수 있는 장점이 있다.

UML 2.0 행위 다이어그램을 확장한 비동기 상호작용 웹 애플리케이션의 항해 모델 (A Navigation Model of Asynchronous Interaction Web Applications with Extended Behavioral Diagrams of UML 2.0)

  • 변창현;서정호;류성열
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2007년도 가을 학술발표논문집 Vol.34 No.2 (B)
    • /
    • pp.104-107
    • /
    • 2007
  • Web2.0 의 비동기식 웹 페이지 전환기술이 주목을 받으면서 기존의 웹사이트들이 동적인 웹 사이트로 바뀌어 가고 있다. 그러나 웹 애플리케이션 개발에 적용 가능한 설계모델인 UML2.0은 정적인 웹 페이지 설계 모델로 국한되어 있다. 따라서 본 논문에서는 UWE의 항해모델에서 뷰 관점 항해모델과, 데이터 전송 항해 모델을 State Machine, Communication Diagram을 이용하여 비동기식 웹 페이지 항해 모델 개선과 기존의 동기식 웹 페이지 모델과의 호환성 방안을 제안한다.

  • PDF