상호운용연구동향 홍익대학교소프트웨어공학연구실김영철 2009. 10. 28
배경 Interoperability has been a topic of concern for at least 30 years DoD continues to experience interoperability problems Much work has already been done: Military policy created Interoperability defined Types of interoperability identified d Frameworks, methods, models, and measures for interoperability created
상호운용성정의 국제표준정의 ISO/IEC 9216 품질메트릭 ( 기능성 상호운용성 ) The ability of two or more systems or components to exchange information and to use the information that has been exchanged. IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. New York, NY: 1990. Being able to accomplish end-user applications using different types of computer systems, operating systems, and application software, interconnected by different types of local and wide area networks. James A. O'Bien and George M. [1] 미국국방부정의 체계, 부대, 군이효과적으로임무를수행하기위하여, 다른체계, 부대혹은군과정보혹은서비스를교환이용하는능력 [Joint Pubs 1-02, 2004] 한국국방부정의 서로다른군, 부대, 체계간특정서비스, 정보또는데이터를막힘없이공유, 교환및운용할수있는능력 [ 국방부상호운용성관리규정, 07.11.16] 16]
상호운용성역사 SOA MDA LISI Integration Protocol, Any Platform IDL FDS POSIX ITA HLA ITMF, ebxml e-mda 80 83 85 88 90 95 96 96 98 99 99 01 03 05 09 12 상호운용성관련모델식별
Related Works for Interoperability 1) Wrapper [Language level] Java 의 Wrapper Class 2) XML(eXtensible Markup Language) 3) Federated Database System for managing Distributed, Heterogeneous Databases [1994] :Heterogeneous databases : 서로다른 platform에서사용가능 Internal database: Conceptual database, Physical database Exported schema Federated Schema : Integration External database: Logical database 4) Heterogeneous database의연동과 Soap을통한통합체제의프로토콜연구 [KIDA ] 5) Inter-Legacy간의 Interface Mechanism: IDL (Interface Definition Language) Interface: Component들을interface로연결 Connector: o Interface 들을연결해주는 connector o 를이용 Adaptor: Component 의성질을변형시켜주는 Adaptor를놓아서적용시킴 6) Standardized API(Application Programming Interface: API의 Interface 재정의 7) Any Platform (CORBA, EJB,.Net) 상에서의상호운영성연구 : 통합이슈 8) MDA (Model Driven Architecture): Meta Modeling 을통해 ArcStyler 도구 9) High-level Architecture: 현재시도 [ 카네기멜론대학, 미군성 ] 10) Interoperability Testing Methodology and Framework [ICU 1999] 실제통신환경하에서프로토콜에대한해석차, 선택사항, 파라미터의구현차이 11) IMM (Interoperability Maturity Model) : LISI
Inter-Legacy간의 Interface Mechanism: IDL [Lamb, 1983] IDL (Interface Description Language) is a software interface description language (also referred to as Interface Descriptor Language) g created by William Wulf and John Nestor of Carnegie Mellon University and David Lamb of Queen's University, Canada. Like other interface description languages, IDL defined interfaces in a language- g and machine- independent way, allowing the specification of interfaces between components written in different languages, and possibly executing on different machines using remote procedure calls.
IDL (Interface Definition Language) Structure simple Root exp Is tree ::= lefaf inner; inner => op: operator, sons:seq Of tree; leaf => name:string; operator ::= plus minus times dicide; plus =>; minus=>; times =>; divide =>; End Simple IDL structure Structure t rep1 Refines simple Is For leaf.name Use fixedstring 20; For operator Use enumeration; End Structure rep2 Refines simple Is For leaf.name Use index; End Refining structures
Federated Database System for managing Distributed, Heterogeneous Databases
Federated Database System for managing Distributed, Heterogeneous Databases [McLeod and Heimbigner, 1985] A federated database system is a type of meta-database management system (DBMS) which transparently integrates multiple autonomous database systems into a single federated database. The constituent databases are interconnected via a computer network, and may be geographically decentralized. Since the constituent database systems remain autonomous, a federated database system is a contrastable alternative to the (sometimes daunting) task of merging together several disparate databases. A federated database (or virtual database) is the fully-integrated, logical l composite of all constituent t databases in a federated d database system. McLeod and Heimbigner [1] were one of the first papers to define a Federated Database Architecture define the architecture and interconnect databases that minimize central authority yet supports partial sharing and coordination among database systems
Federated database system for managing distributed, heterogeneous, and autonomous database External schema External schema External schema Federated schema Federated schema Export schema Export Export schema schema Conceptual schema Logical schema Conceptual schema Logical schema Component DBS Component DBS
High Level Architecture
ITA(Information Technology Architecture)/EA(Enterprise Architecture) [ 미국연방정부, 1990] 일정한기준과절차에따라업무, 응용, 데이터, 기술보안등조직전체의정보화구성요소들을통합적으로분석한뒤이들간의관계를구조적으로정리한체계및이를바탕으로정보시스템을효율적으로구성하기위한방법. 미국국방부가 1991 년걸프전을계기로군지휘통제시관계기관및정보시스템간상호운용성 (Interoperability) 확보의중요성을절감하여도입한일종의방법론. 우리나라는범정부정보기술아키텍처적용을전자정부핵 심과제의하나로추진중
pack pack pack pack 국방정보시스템에서의상호운용성위기 걸프전에서의상호운용성오류 상호운용성이검증되지않은시스템을실전에배치하여많은문제점발생 합동, 연합전장환경 13/31
What ITA : EA+TRM+SP ITA = EA (Enterprise Architecture) + TRM (Technical Reference Model) + SP (Standards Profile) EA = Business Processes + Information Flows and Relationships 업무 (Business) 정보 (Information) + Applications 응용 + Data Descriptions + Technology Infrastructure (Application) 자료 (Data) 기술 (Technology) 14
High-level Architecture: 현재시도 [DoD, 1995] Networked Virtual Environment(NVE) Interactions among simulation nodes connected to the network High Level Distributed Simulation Architecture for NVE Interaction among federates connected to the network Federation corresponds to NVE entity entity Federate Federate 실세계 Federation
HLA (High Level Architecture) Simulations environment, military systems, doctrine Weapon Systems Real-world C4I Instrumented Ranges Individual Combatants Exercise Mgmt After- Action Review Interfaces to live players Runtime Infrastructure Communications (e.g., DSI) HLA Interface Specification Key: Reusable across all DoD simulation systems Reusable across a simulation domain unique
미국의적용사례 타체계 SBA 를통한동시공학환경 임무소요서 운용요구서 체계개념 1. 체계소요 2. 개념설계 Digital System Model 자원저잗소자원저잗소 3. 기능설계 분산네트워크 자원저잗소 4. 물리적설계 8. 비용, 일정 사업관리 7. 운영유지, 물류, 교육 6. 시험평가 5. 공학개발 / 제조 타체계
Adapter on any Platform
Any Platform (CORBA, EJB,.Net) 상에서의상호운영성연구 : 통합이슈 [Robert Kim, 2003] 컴포넌트기반시스템의상호운영에대한기술적접근방안정립 컴포넌트기반시스템의상호운용적합성시험및평가 어댑터를이용한컴포넌트상호운용성확보 CORBA Adapter 상호운용성시험기술 EJB COM 상호운용적합성및인증기술 국방컴포넌트기반시스템상호운용성확보
문제점 구축 단순한상호운용 복잡한상호운용 20/31
SOA & Web 2.0
SOA(Service Oriented Architecture)[Gartner, 1996] SOA 는공개, 기민성, 확장, 연합, 자립적요소들로구성된조합가능한아키텍처, 서비스품질, 다양한벤더, 상호운영성, 서비스발견그리고잠재적으로재사용가능한서비스들이웹서비스로구현된다. SOA는비지니스로직과기술을추상화하여, 이도메인간에느슨한결합을유도한다. SOA는과거플랫폼의진화물로서, 전통적인아키텍처의특징들을고스란히가지고있으며, 명확한원칙을가지고 SOE 를지원하며서비스지향을촉진한다. SOA 는엔터프라이즈환경을이상적으로는표준화하지만, 치밀한사전계획에의한이전필요성과현재도진화하고있는기술에대한지원만이이러한목적을달성할수있다.
SOA(Service Oriented Architecture) Public or Private UDDI Registry Service Registry Service Description WSDL Description Find Publish WSDL Description Service Requester Service Proxy (Client) Bind SOAP Protocol http Service Service Provider Service Description Service < SOA>
MDA (Model Driven Architecture)
MDA (Model Driven Architecture)[OMG, 2001] The Model-Driven Architecture approach defines system functionality using a platform-independent model (PIM) using an appropriate domain-specific language. Then, given a platform definition model (PDM) corresponding to CORBA,.NET, the Web, etc., the PIM is translated to one or more platformspecific models (PSMs) that computers can run. (EDIT: This requires mappings and transformations and should be modeled too.) The PSM may use different Domain Specific Languages, or a General Purpose Language like Java, C#, PHP, Python, etc.[citation needed]. Automated tools generally perform this translation. The OMG organization provides rough specifications rather than implementations, often as answers to Requests for Proposals (RFPs). Implementations come from private companies or open source groups. MDA principles can also apply to other areas such as business process modeling where the PIM is translated to either automated or manual processes[citation needed].
MDA (Model Driven Architecture)
MDA (Model Driven Architecture) for Embedded Software System
e-mda (Embedded Model Driven Architecture)[Robert Kim, 2005] IT 산업의발달로새롭게등장한많은임베디드시스템응용의복 잡도가증가함으로인해독자적인개발만으로는경쟁력을얻을 수없기때문에플랫폼에독립적인개발방법론의확보가시급 개발과정에서의에러율을감소시키기위하여개발프로세스와 테스트프로세스가동시에진행되어야함 임베디드소프트웨어의개발환경이일반소프트웨어의개발환경 보다훨씬어려워서효과적인개발도구없이는경쟁력있는개발 불가 업체들이개발한제품들간의인터페이스가다르고연동이불가 능하여고비용, 저효율을야기하고임베디드소프트웨어산업절반의활성화를저해하고있음
e-mda (Embedded Model Driven Architecture) e-mda 기반의모델변환프레임워크 Windows Mobile iphone Android Windows Mobile iphone Android Microsoft Apple Google Microsoft Apple Google 29
e-mda (Embedded Model Driven Architecture) xuml Requirement Analysis T I M MDA based Modeling Process input xuml Profile TSM Automation TSM Auto Trans..NET C Model and Component Store Repository model reuse Code Porting code porting WinCE Embedded Linux ucos
IMM (Interoperability Maturity Model) : LISI[DoD, 1998]
IMM (Interoperability Maturity Model) : LISI[DoD, 1998] LISI (Level of Information Systems Interoperability) 배경 목적 미국국방부에서국방정보시스템간의상호운용성문제의중요성을인식하고 CMU SEI 연구소와함께연구개발한상호운용성평가모델 국방정보시스템간의상호운용성소요를식별 상호운용성소요를충족시키기위한국방정보체계의요구능력 ( 기술 ) 을식별 보다높은상태의상호운용을달성하기위한실질적인해결책및전환전략을제공 기능 국방정보체계의상호운용의각수준을정의하여상호운용성에대한공통의이해를촉진 국방정보체계수명주기동안상호운용성을평가하고개선시키기위한방법을제공
LISI 능력모델 능력모델 (Capability Model) LEVEL (Environm ent) Enterprise Level (Universal) Domain L evel (Integrated) Functional Level (Distributed) Connected Level (Peer-to-Peer) Isolated Level (M anual) 4 3 참조모델에서정의된요구기능을만족하기위한구체적인능력 구체적인기술은구현옵션 (Implementation Option) 에서선택 c b a c b a c 2 b 1 0 a d c b a d c b a o Interoperability A ttributes P A I D M ulti-national Enterprises Cross Government Enterprise Govt Enterprise Domain Organization-wide Doctrine, Procedures, Training, etc. Common Operating Environment Program Standard Procedures, Training, etc. Standards Compliant Security Profile Media Exchange Procedures Collocated systems, Single operator Collocated systems, Separate operators Non-collocated systems, Exchange via Operators In teractiveti (cross applications) Full Object Cut & Paste Shared Data (e.g., Situation Displays Direct DB Exchanges) Group Collaboration (e.g.,w hite Boards, V TC ) Full Text Cut & Paste W eb Browser Basic Operations Documents Briefings Pictures & M aps Spreadsheets Databases Adv. Messaging M essage Parsers E-M ail w/attachm ents Basic M essaging (e.g.,unformatted Text, E-m ail w/o attachm ents) D ata File Transfer Simple Interaction (e.g., Telem etry, Remote Access Text Chatter, Voice, Fax) N/A M ulti- Dimensional Topologies WAN LAN NET Two Way One Way Removable Media Manual Re-entry NO KNOWN INTEROPERABILITY C ross- Enterprise Models Enterprise Model DBMS D omain Models Program Models & Advanced Data Formats Basic Data F ormats Media Formats Private Data WAN SIPRNET JWICS NIPRNET (Internet) Standards DoD JTA ANSI ISO IEEE Example Implementation Options Services Databases Imagery Graphics Word Processing Document Formats.asc.aw.lwp.rtf.txt.doc.pdf.wpx Mapping Chart ARC INFO ARCVIEW ATLAS CMTK Dew Drop Delorme Edge
LISI 평가절차 34/31
상호운용성숙도메트릭 개발단계별 CIMM 체계간상호운용성성숙도측정 상호운용성평가모델기술 상호운용성시험기술 요구사항분석 설계상세설계시험인수 개발단계별상호운용성측정
Heterogeneous database의연동과 Soap을통한통합체제의프로토콜연구 [KIDA, 2003] 현재까지정보체계의시스템통합사업은주로하나의핵심시스 템을기준으로나머지시스템들을연결하는수직적통합방식 (Orchestration) 의연계방안이추진되어져왔다. 하지만앞으로는정보체계의통합및상호연계의범위가계속확 대되어감에따라서로다른조직혹은기업간정보체계간연계및 협업을필요로하게되며, 이경우수직적통합은불가능하게된다. 이렇게서로다른조직 / 기업의정보체계간대등한관계의협업구조를토대로상호연동체계를구성하는기술 (Choreography) 을포함하여, 웹서비스는수직적 / 수평적통합모두를포괄하는표준안으로 Web Service Composition을제시하고있다.
Any Platform (CORBA, EJB,.Net) 상에서의상호운영성연구 : 통합이슈 [Robert Kim, 2003] 컴포넌트기반시스템의상호운영에대한기술적접근방안정립 컴포넌트기반시스템의상호운용적합성시험및평가 어댑터를이용한컴포넌트상호운용성확보 CORBA Adapter 상호운용성시험기술 EJB COM 상호운용적합성및인증기술 국방컴포넌트기반시스템상호운용성확보
문제점 구축 단순한상호운용 복잡한상호운용 38/31