---
title: "개발자의 삶은 결코 단순하지 않습니다"
date: "2009-12-22"
tags: 
  - "altova-xmlspy"
  - "diff-merge-tool"
  - "diffdog"
  - "mapforce"
  - "missionkit"
  - "v2010"
  - "xml-schema"
  - "xmlspy"
  - "xslt"
description: Altova의 DiffDog 및 MapForce와 같은 도구들이 복잡한 프로젝트에서 XML 개발을 간소화하여, 스키마 비교, 문서화, 버전 관리를 효율적으로 수행하는 방법을 알아보세요.
---
Status: #blog

Tags:  #altova-xmlspy #diff-merge-tool #diffdog #mapforce #missionkit #v2010 #xml-schema #xmlspy #xslt

Categories: [Altova](/blog/ko/category/altova.md) 
# 개발자의 삶은 결코 단순하지 않습니다

이번 달 초에 저희 블로그 게시물인 "[XML 스키마 비교](https://www.altova.com/blog/2009/12/comparing-xml-schemas-with-diffdog-2010.html)"에서, [DiffDog 2010](https://www.altova.com/ko/diffdog/diff-merge-tool.html)의 새로운 기능을 보여드리기 위해, XML 스키마를 비교하고 XSL 변환을 생성하여 해당 XML 데이터 파일을 업데이트하는 실제적인 (하지만 단순화된) 예시를 보여드렸습니다. 실제 XML 개발자가 수행하는 프로젝트는 우리가 예시로 사용한 것처럼 작고 단순한 경우는 드뭅니다. 이번 글에서는 개발자들이 매일 겪는 일반적인 문제점들을 살펴보고, [Altova MissionKit](https://www.altova.com/ko/missionkit/software-development-tools.html)이 어떻게 복잡성을 해결하여 생산성을 향상시키는지 알아보겠습니다. **더 긴 XML 스키마 및 더 큰 매핑** 여러분의 XML 스키마는 이전 게시물에 소개된 것만큼 짧고 간단하지 않을 가능성이 높으며, XML 스키마 마이그레이션 작업을 진행하는 동안 작업 내용을 저장하는 것이 좋습니다. DiffDog를 사용하면 매핑 정보를 XML 스키마 비교 파일로 저장할 수 있습니다. 저장된 파일을 나중에 다시 불러와 작업을 계속하거나, 동료와 공유할 수 있습니다. 

[![DiffDog XML 스키마 비교 대화 상자](https://lh5.ggpht.com/_REdrfeVqYdU/SzEckzkE6-I/AAAAAAAAAHs/43HDdrzCZRk/Snap1_thumb%5B1%5D.gif?imgmax=800 "DiffDog Save XML Schema Comparison dialog")](http://lh3.ggpht.com/_REdrfeVqYdU/SzEckls_CfI/AAAAAAAAAHo/I6vZooy2Q2g/s1600-h/Snap1%5B3%5D.gif) 

만약 XML 스키마 두 개를 주기적으로 비교해야 한다면, XML 스키마 비교 문서를 활용하면 시간을 절약하는 데 도움이 될 수 있습니다. 

**내장된 XML 스키마 할당** 

아래 스크린샷은 저희가 처음 제시했던 예제의 XML 데이터 파일을 보여주지만, 중요한 차이점이 하나 있습니다. 이 버전에서는 "story" 요소 안에 XML 스키마에 대한 참조가 2번째 줄에 포함되어 있습니다. 

[![XMLSpy XML 편집기 화면](https://lh3.ggpht.com/_REdrfeVqYdU/SzEcljNnFeI/AAAAAAAAAH0/c8WJ6IuJ0ls/Snap2_thumb%5B1%5D.gif?imgmax=800 "XMLSpy XML Editor view")](http://lh3.ggpht.com/_REdrfeVqYdU/SzEclOjdSPI/AAAAAAAAAHw/2wTHTtdg10g/s1600-h/Snap2%5B3%5D.gif) 

DiffDog에서 만든 간단한 XSLT를 사용하여 이 파일을 변환하면, 새로운 XML 데이터 파일에는 업데이트된 XML 스키마 참조가 포함되지 않습니다. 이전 블로그 게시물에서는 XMLSpy의 프로젝트/속성 메뉴 옵션을 사용하여 각 폴더에 대한 기본 XML 스키마를 할당했기 때문에 임베디드 XML 스키마 참조가 문제가 되지 않았습니다. 하지만 변환해야 할 XML 데이터 파일이 많고, 이 파일들이 임베디드 XML 스키마 참조를 필요로 하는 경우, [MapForce](https://www.altova.com/ko/mapforce.html)의 추가 기능을 활용할 수 있습니다. 이전 게시물에서와 마찬가지로, DiffDog에서 만든 매핑을 MapForce로 내보낸 다음, MapForce의 출력 구성 요소에 대한 구성 설정 대화 상자를 사용하여 XML 스키마 참조를 포함시킬 수 있습니다. 

[![MapForce 구성 요소 설정 대화 상자](https://lh4.ggpht.com/_REdrfeVqYdU/SzEcmfChRiI/AAAAAAAAAH8/tGORyl1w_gg/Snap3_thumb%5B1%5D.gif?imgmax=800 "MapForce Component Settings dialog")](http://lh3.ggpht.com/_REdrfeVqYdU/SzEcl-Ma0kI/AAAAAAAAAH4/rQp0GvZuSco/s1600-h/Snap3%5B3%5D.gif) 

**작업 과정을 기록하세요** 

개발자들은 프로젝트의 초기 단계 이후 몇 달 또는 심지어 몇 년이 지나서 추가 작업이 필요할 때, 과거의 과정을 다시 확인하느라 생산성을 잃을 수 있습니다. MapForce의 "[문서 생성](https://www.altova.com/ko/mapforce/data-mapping-documentation.html)" 기능은 이러한 답답한 상황을 피하는 데 도움이 될 수 있습니다. MapForce는 XML 스키마 내의 각 요소에 대한 매핑 정보를 Microsoft Word, RTF 또는 HTML 형식으로 문서화합니다. 어떤 형식을 선택하든, 생성된 문서는 훌륭한 독립적인 프로젝트 결과물이며, 추가적으로 편집하여 더 큰 보고서에 포함할 수도 있습니다. 

[![MapForce 문서 생성 대화 상자](https://lh4.ggpht.com/_REdrfeVqYdU/SzEcnZ_160I/AAAAAAAAAIE/dM-qziNrA1Q/Snap4_thumb%5B1%5D.gif?imgmax=800 "MapForce Generate Documentation dialog")](http://lh5.ggpht.com/_REdrfeVqYdU/SzEcmxpIZzI/AAAAAAAAAIA/yjU4IWTfEhQ/s1600-h/Snap4%5B3%5D.gif) 

저희는 MapForce 매핑 문서와 XMLSpy를 사용하여 생성된 각 XML 스키마 버전에 대한 상세 설명을 함께 제공할 수 있습니다 [XML 스키마 편집기](https://www.altova.com/ko/xmlspy/xml-schema-editor.html) 문서화 기능. 

**소스 코드/버전 관리** 

소스 코드 관리 시스템은 개발팀이 동일한 프로젝트에서 서로의 변경 사항을 덮어쓰지 않고 긴밀하게 협업할 수 있도록 지원합니다. 설계 과정의 각 단계에서 소스 코드의 버전을 저장하기 때문에, 필요할 때 이전 버전을 쉽게 확인하거나 복원할 수 있습니다. Altova는 XMLSpy에 Microsoft Source Code Control Interface (MSSCCI) 버전 1.1부터 1.3을 구현했으며, 많은 인기 있는 시스템에 대한 지원을 테스트했습니다 [소스 코드 관리 시스템](https://www.altova.com/ko/solutions/source-control.html), 따라서 저희는 XML 스키마 진화 프로젝트를 통해 개발 전반에 걸쳐 파일들을 효율적으로 관리할 수 있습니다. 또한, DiffDog는 기본 비교 도구로 소스 제어 시스템과 통합될 수 있습니다. DiffDog는 다양한 형식의 변경 사항 보고서 파일을 생성하는 기능도 제공합니다. 

[Altova MissionKit](https://www.altova.com/ko/missionkit/software-development-tools.html)에 포함된 도구들이 어떻게 여러분의 XML, 웹 서비스, 데이터 통합, XML 게시, XBRL, 그리고 UML 모델링 개발 프로젝트의 복잡성을 해결할 수 있는지 직접 확인해 보세요. [무료 30일 체험판을 다운로드](https://www.altova.com/ko/download/missionkit/software_development_tools_enterprise.html)하여 경험해 보세요!
