• 제목/요약/키워드: 소프트웨어 소스 코드

검색결과 320건 처리시간 0.024초

감정대상 프로그램의 마스터 매뉴얼 유사성 비교에 관한 연구 (A Study on the Comparison of Similarity between Master Manuals of Appraisal Program)

  • 전병태;이창훈
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제15권2호
    • /
    • pp.1-7
    • /
    • 2019
  • 프로그램 유사성 분석은 실질적 유사성과 의거성 분석으로 이루어진다. 실질적 유사성은 프로그램 소스 코드가 정량적으로 어느 정도 유사한가에 대한 판단이다. 의거성은 프로그램내의 주석이나 그 외 여러 가지 정황적 증거를 분석을 통해 유사성 정도를 판단한다. 매뉴얼의 경우, 의거성 분석의 대상이 될 수가 있다. 매뉴얼은 다음과 같이 3종류로 구분될 수 있다. 첫째, 마스터 매뉴얼은 제품의 개발 단계에서 작성하는 문서로서 해당 제품과 해당 제품의 파생 제품에 대한 모든 기능이 포함된 사용 설명서이다. 둘째, 고객 매뉴얼은 1차 고객이자 주문자에게만 공개하는 설명서이다. 셋째, 사용자 매뉴얼은 최종 OEM 생산단계에서 적용되는 문서로써 최종 구매자에게 공개되는 설명서이다. 본 논문에서는 피의자들로부터 압수한 마스터 매뉴얼과 피의자들이 인터넷 상에서 제공하고 있는 마스터 매뉴얼을 비교한다. 그리고 이 마스터 매뉴얼이 얼마나 유사하고 피해 회사만의 독창적이면서 재산적 가치를 포함하는지 여부를 판단한다.

A Study on the Standard Architecture of IFF Interface SW in the Naval Combat Management System

  • Yeon-Hee Noh;Dong-Han Jung;Young-San Kim;Hyo-Jo Lee
    • 한국컴퓨터정보학회논문지
    • /
    • 제29권1호
    • /
    • pp.139-149
    • /
    • 2024
  • 본 논문은 함정 전투체계 피아식별기 연동 소프트웨어에 대한 표준 연동 아키텍처를 제안한다. 제안된 표준 연동 아키텍처는 기존의 11종 피아식별기 연동 소프트웨어의 수정 공수 및 신뢰성시험 수행시간 단축을 위해 고안된 방법으로, 의존도가 높은 체계 및 장비 정보들을 식별하고 표준 요구사항 및 기능을 새로 정의하였다. 이를 기반으로 차기 함정전투체계 표준 연동 아키텍처(NSCP)를 적용해 1차 설계를 진행하였다. 이후 휘처 모델(Feature Model)을 통해 다중 체계 및 장비 연동에 대한 추가 공통요소와 가변요소를 도출하고 S.O.L.I.D 원칙을 고려해 최종 아키텍처를 설계하였다. 제안된 피아식별기 표준 연동 SW는 공통 아키텍처를 통한 관리 효율성 증대와 소스코드의 재사용성 및 확장성 증가, 신뢰성시험 수행시간 단축을 통한 개발비용 감소 효과를 기대할 수 있다.

스마트팜 열환경 모델링을 위한 Open source 기반 Data mining 기법 분석 (A Benchmark of Open Source Data Mining Package for Thermal Environment Modeling in Smart Farm(R, OpenCV, OpenNN and Orange))

  • 이준엽;오종우;이동훈
    • 한국농업기계학회:학술대회논문집
    • /
    • 한국농업기계학회 2017년도 춘계공동학술대회
    • /
    • pp.168-168
    • /
    • 2017
  • ICT 융합 스마트팜 내의 환경계측 센서, 영상 및 사양관리 시스템의 증가에도 불구하고 이들 장비에서 확보되는 데이터를 적절히 유효하게 활용하는 기술이 미흡한 실정이다. 돈사의 경우 가축의 복지수준, 성장 변화를 실시간으로 모니터링 및 예측할 수 있는 데이터 분석 및 모델링 기술 확보가 필요하다. 이를 위해선 가축의 생리적 변화 및 행동적 변화를 조기에 감지하고 가축의 복지수준을 실시간으로 감시하고 분석 및 예측 기술이 필요한데 이를 위한 대표적인 정보 통신 공학적 접근법 중에 하나가 Data mining 이다. Data mining에 대한 연구 수행에 필요한 다양한 소프트웨어 중에서 Open source로 제공이 되는 4가지 도구를 비교 분석하였다. 스마트 돈사 내에서 열환경 모델링을 목표로 한 데이터 분석에서 고려해야할 요인으로 데이터 분석 알고리즘 도출 시간, 시각화 기능, 타 라이브러리와 연계 기능 등을 중점 적으로 분석하였다. 선정된 4가지 분석 도구는 1) R(https://cran.r-project.org), 2) OpenCV(http://opencv.org), 3) OpenNN (http://www.opennn.net), 4) Orange(http://orange.biolab.si) 이다. 비교 분석을 수행한 운영체제는 Linux-Ubuntu 16.04.4 LTS(X64)이며, CPU의 클럭속도는 3.6 Ghz, 메모리는 64 Gb를 설치하였다. 개발언어 측면에서 살펴보면 1) R 스크립트, 2) C/C++, Python, Java, 3) C++, 4) C/C++, Python, Cython을 지원하여 C/C++ 언어와 Python 개발 언어가 상대적으로 유리하였다. 데이터 분석 알고리즘의 경우 소스코드 범위에서 라이브러리를 제공하는 경우 Cross-Platform 개발이 가능하여 여러 운영체제에서 개발한 결과를 별도의 Porting 과정을 거치지 않고 사용할 수 있었다. 빌트인 라이브러리 경우 순서대로 R 의 경우 가장 많은 수의 Data mining 알고리즘을 제공하고 있다. 이는 R 운영 환경 자체가 개방형으로 되어 있어 온라인에서 추가되는 새로운 라이브러리를 클라우드를 통하여 공유하기 때문인 것으로 판단되었다. OpenCV의 경우 영상 처리에 강점이 있었으며, OpenNN은 신경망학습과 관련된 라이브러리를 소스코드 레벨에서 공개한 것이 강점이라 할 수 있다. Orage의 경우 라이브러리 집합을 제공하는 것에 중점을 둔 다른 패키지와 달리 시각화 기능 및 망 구성 등 사용자 인터페이스를 통합하여 운영한 것이 강점이라 할 수 있다. 열환경 모델링에 요구되는 시간 복잡도에 대응하기 위한 부가 정보 처리 기술에 대한 연구를 수행하여 스마트팜 열환경 모델링을 실시간으로 구현할 수 있는 방안 연구를 수행할 것이다.

  • PDF

바이너리 분석을 통한 UNIX 커널 기반 File System의 TOCTOU Race Condition 탐지 (Detecting TOCTOU Race Condition on UNIX Kernel Based File System through Binary Analysis)

  • 이석원;김문회;오희국
    • 정보보호학회논문지
    • /
    • 제31권4호
    • /
    • pp.701-713
    • /
    • 2021
  • Race Condition은 둘 이상의 프로세스가 하나의 공통 자원에 대해 입력이나 조작이 동시에 일어나 의도치 않은 결과를 가져오는 취약점이다. 해당 취약점은 서비스 거부 또는 권한 상승과 같은 문제를 초래할 수 있다. 소프트웨어에서 취약점이 발생하면 관련된 정보를 문서화하지만 종종 취약점의 발생 원인을 밝히지 않거나 소스코드를 공개하지 않는 경우가 있다. 이런 경우, 취약점을 탐지하기 위해서는 바이너리 레벨에서의 분석이 필요하다. 본 논문은 UNIX 커널기반 File System의 Time-Of-Check Time-Of-Use (TOCTOU) Race Condition 취약점을 바이너리 레벨에서 탐지하는 것을 목표로 한다. 지금까지 해당 취약점에 대해 정적/동적 분석 기법의 다양한 탐지 기법이 연구되었다. 기존의 정적 분석을 이용한 취약점 탐지 도구는 소스코드의 분석을 통해 탐지하며, 바이너리 레벨에서 수행한 연구는 현재 거의 전무하다. 본 논문은 바이너리 정적 분석 도구인 Binary Analysis Platform (BAP)를 통해 Control Flow Graph, Call Graph 기반의 File System의 TOCTOU Race Condition 탐지 방법을 제안한다.

소프트웨어 복제도 감정기법의 표준화 모델에 관한 연구 (A Study on the Research Model for the Standardization of Software-Similarity-Appraisal Techniques)

  • 방효근;차태원;정태명
    • 정보처리학회논문지D
    • /
    • 제13D권6호
    • /
    • pp.823-832
    • /
    • 2006
  • 소프트웨어(SW) 복제도 감정의 목적은 두 프로그램 사이의 동일 또는 유사성 정도를 판단하는 것으로, 컴퓨터프로그림 저작권 관련 분쟁해결의 주요한 기술적 판단근거를 제시하는 제도라 할 수 있다. SW감정을 진행함에 있어서 중요한 점은 감정인의 주관적 판단에 편중되지 않도록 하고, 신속 객관적인 감정의 수행으로 정확한 감정결과를 도출해내는 것이다. 그러나 현재까지 체계적인 감정기법의 표준화 연구 및 개발은 미비한 상태이며, SW감정 분야별(유형별) 감정기법 조차 전문 감정인들에 따라 그 접근방법이 천차만별이어서 뚜렷한 표준안이 제시되지 못하고 있다. 또한, 기 수행되었던 감정사례에 대한 실증적 분석 결과, 기존 감정 절차 및 기법의 오류 또는 감정인의 전문지식 결여 등의 문제가 잠재하여 일부 감정결과에 대한 객관성 및 정확성에 손상이 있음을 알 수 있다. 본 논문에서는 감정인에 따라 동일한 평가 항목에 대하여 서로 다른 결과가 도출될 수 있는 오차의 허용치를 감소시키기 위한 객관적인 평가 방법과 정형화된 SW복제도 감정기법의 표준화 모델을 제시한다. 특히, 기존 감정기법의 문제점 해결 및 보완 연구를 기반으로 감정범위의 설정, 감정기준 및 방법, 단위작업 프로세스 기준의 감정영역 및 감정항목 설정, 가중치 부여, 논리적 복제도와 물리적 복제도 산출 등에 초점을 맞추어 감정기법을 분석 평가한다. 따라서 SW복제도 감정 기법의 표준화 모델은 감정인의 주관적 판단에 의한 오류의 가능성을 최소화하고, 감정결과의 객관성 및 신뢰성을 한층 제고하기 위한 도구를 제공할 것이다.

스마트 시설환경 환경변수 분석을 위한 Open source 기반 인공지능 활용법 분석 (A Benchmark of AI Application based on Open Source for Data Mining Environmental Variables in Smart Farm)

  • 민재기;이동훈
    • 한국농업기계학회:학술대회논문집
    • /
    • 한국농업기계학회 2017년도 춘계공동학술대회
    • /
    • pp.159-159
    • /
    • 2017
  • 스마트 시설환경은 대표적으로 원예, 축산 분야 등 여러 형태의 농업현장에 정보 통신 및 데이터 분석 기술을 도입하고 있는 시설화된 생산 환경이라 할 수 있다. 근래에 하드웨어적으로 급증한 스마트 시설환경에서 생산되는 방대한 생육/환경 데이터를 올바르고 적합하게 사용하기 위해서는 일반 산업 현장과는 차별화 된 분석기법이 요구된다고 할 수 있다. 소프트웨어 공학 분야에서 연구된 빅데이터 처리 기술을 기계적으로 농업 분야의 빅데이터에 적용하기에는 한계가 있을 수 있다. 시설환경 내/외부의 다양한 환경 변수는 시계열 데이터의 난해성, 비가역성, 불특정성, 비정형 패턴 등에 기인하여 예측 모델 연구가 매우 난해한 대상이기 때문이라 할 수 있다. 본 연구에서는 근래에 관심이 급증하고 있는 인공신경망 연구 소프트웨어인 Tensorflow (www.tensorflow.org)와 대표적인 Open source인 OpenNN (www.openn.net)을 스마트 시설환경 환경변수 상호간 상관성 분석에 응용하였다. 해당 소프트웨어 라이브러리의 운영환경을 살펴보면 Tensorflow 는 Linux(Ubuntu 16.04.4), Max OS X(EL capitan 10.11), Windows (x86 compatible)에서 활용가능하고, OpenNN은 별도의 운영환경에 대한 바이너리를 제공하지 않고 소스코드 전체를 제공하므로, 해당 운영환경에서 바이너리 컴파일 후 활용이 가능하다. 소프트웨어 개발 언어의 경우 Tensorflow는 python이 기본 언어이며 python(v2.7 or v3.N) 가상 환경 내에서 개발이 수행이 된다. 주의 깊게 살펴볼 부분은 이러한 개발 환경의 제약으로 인하여 Tensorflow의 주요한 장점 중에 하나인 고속 연산 기능 수행이 일부 운영 환경에 국한이 되어 제공이 된다는 점이다. GPU(Graphics Processing Unit)의 제공하는 하드웨어 가속기능은 Linux 운영체제에서 활용이 가능하다. 가상 개발 환경에 운영되는 한계로 인하여 실시간 정보 처리에는 한계가 따르므로 이에 대한 고려가 필요하다. 한편 근래(2017.03)에 공개된 Tensorflow API r1.0의 경우 python, C++, Java언어와 함께 Go라는 언어를 새로 지원하여 개발자의 활용 범위를 매우 높였다. OpenNN의 경우 C++ 언어를 기본으로 제공하며 C++ 컴파일러를 지원하는 임의의 개발 환경에서 모두 활용이 가능하다. 특징은 클러스터링 플랫폼과 연동을 통해 하드웨어 가속 기능의 부재를 일부 극복했다는 점이다. 상기 두 가지 패키지를 이용하여 2016년 2월부터 5월 까지 충북 음성군 소재 딸기 온실 내부에서 취득한 온도, 습도, 조도, CO2에 대하여 Large-scale linear model을 실험적(시간단위, 일단위, 주단위 분할)으로 적용하고, 인접한 세그먼트의 환경변수 예측 모델링을 수행하였다. 동일한 조건의 학습을 수행함에 있어, Tensorflow가 개발 소요 시간과 학습 실행 속도 측면에서 매우 우세하였다. OpenNN을 이용하여 대등한 성능을 보이기 위해선 병렬 클러스터링 기술을 활용해야 할 것이다. 오프라인 일괄(Offline batch)처리 방식의 한계가 있는 인공신경망 모델링 기법과 현장 보급이 불가능한 고성능 하드웨어 연산 장치에 대한 대안 마련을 위한 연구가 필요하다.

  • PDF

Independent I/O Relay Class Design Using Modbus Protocol for Embedded Systems

  • Kim, Ki-Su;Lee, Jong-Chan
    • 한국컴퓨터정보학회논문지
    • /
    • 제25권6호
    • /
    • pp.1-8
    • /
    • 2020
  • 스마트팩토리, 산업용 드론, 빌딩 에너지 관리 시스템, PLC, 선박, 기차 및 비행기를 포함한 산업현장에서 Modbus프로토콜을 사용하여 시스템 모듈 간 통신을 적용한다. 기존의 Modbus는 시리얼 직렬통신으로 사용되었지만, 최근 Modbus프로토콜은 TCP/IP 통신으로 사용된다. Modbus프로토콜은 3가지 유형의 RTU, TCP 및 ASCII를 지원하고 임베디스 시스템에 프로토콜을 구현 하여 사용 한다. 하지만 RTU, TCP, ASCII기반의 프로토콜은 각 송신 I/O장치가 다를 수 있다. 예를 들어 RTU, ASCII 통신은 시리얼기반으로 통신 프로토콜을 송신하지만 이더넷 TCP/IP 송신을 요구하는 경우도 있다. 이와 같은 문제는 특히 임베디드 시스템에서 C언어(절차 지향)를 사용하기 때문에 I/O레지스터 관련 소스코드의 복잡성 증가 문제가 발생된다. 본 연구는 임베디드 장치에서 I/O함수를 논리적으로 분리가능한 소프트웨어 설계를 진행하고, 더불어 대리자 클래스 인스턴스를 통하여 I/O처리가 필요한 각 인스턴스의 수행 로직을 Modbus RTU, TCP, ASCII프로토콜 생성으로 설계 하였고 인스턴스별 통신 I/O처리와 논리적 수행 로직을 분리 가능한 소프트웨어 설계와 실험을 하였다.

GPU를 이용한 소프트웨어 디지털 필터의 성능개선에 관한 연구 (A Study on the Performance Improvement of Software Digital Filter using GPU)

  • 염재환;오세진;노덕규;정동규;황주연;오충식;김효령
    • 융합신호처리학회논문지
    • /
    • 제19권4호
    • /
    • pp.153-161
    • /
    • 2018
  • 본 논문은 GPU를 이용한 소프트웨어(SW) 디지털 필터의 성능개선에 대해 기술한다. 기존에 개발한 SW 디지털 필터는 CPU 기반에서 동작하여 속도가 느린 문제점이 있었는데, EAVN 관측데이터의 디지털 필터링을 위해 GPU를 도입하여 연산속도를 개선하였고, 필터링을 통하여 다른 관측국과의 데이터 처리가 가능하도록 하였다. SW 디지털 필터의 연산속도를 개선하기 위해 Tensor Core가 내장된 NVIDIA Titan V GPU 보드를 사용하였으며, 2Gbps (512 MHz BW, 1-IF)의 95초 관측데이터를 필터링하는데 관측시간의 약 1.1배, 1Gbps (16MHz BW, 16-IF)로 필터링하는데 약 0.78배 처리속도를 각각 달성하였다. 또한 KVN으로 1, 2Gbps 동시관측한 데이터에 대해 2Gbps 데이터를 디지털 필터링하여 기존 1Gbps와 비교한 결과, 교차전력스펙트럼, 위상, SNR 등이 유사한 값을 얻어 본 연구에서 개발한 SW 디지털 필터를 활용한 데이터 처리와 분석을 수행하는데 유효함을 확인하였다. 향후에는 여러 개의 GPU 보드를 사용하기 위한 소스 코드의 분산처리 최적화를 수행할 경우 실시간으로 관측데이터를 필터링할 수 있을 것으로 기대된다.

함수 요약을 이용한 모듈단위 포인터분석 (A Modular Pointer Analysis using Function Summaries)

  • 박상운;강현구;한태숙
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제35권10호
    • /
    • pp.636-652
    • /
    • 2008
  • 본 논문에서는 업데이트 기록에 기반한 모듈단위 포인터 분석 알고리즘을 제안한다. 여기서 모듈이란 상호 재귀적인 함수들의 집합을 의미하며, 모듈단위 분석이란 한 모듈을 분석 시에 다른 모듈의 소스코드가 필요하지 않는 분석을 의미한다. 일반적으로 이러한 형태의 분석은 분석 대상 모듈의 호출 문맥을 알 수 없는 상태에서 분석을 수행하여야 하기 때문에, 프로그램의 흐름 또는 호출 문맥에 관련하여 분석의 정확도를 잃을 수 있다. 본 논문에서는 업데이트 기록이라 이름지어진 모듈단위 분석 공간을 고안하여, 프로그램 문맥과 흐름에 민감한 정확도를 가지는 모듈단위 포인터 분석 방법을 제안한다. 업데이트 기록은 함수의 호출 문맥에 독립적으로 메모리 상태를 요약할 수 있을 뿐만 아니라, 메모리 반응이 일어난 순서에 관한 정보를 유지할 수 있다. 업데이트 기록의 이러한 특성은 모듈단위 분석을 정형화하는데 효과적으로 사용되었을 뿐만 아니라, 분석의 정확도를 높이기 위해 죽은 메모리 반응 또는 관련된 별칭 문맥을 구분하는 데에도 효과적으로 사용될 수 있었다.

가치분석을 통한 휘처 기반의 요구사항 추적 기법 (A Feature-Oriented Requirement Tracing Method with Value Analysis)

  • 안상임;정기원
    • 한국전자거래학회지
    • /
    • 제12권4호
    • /
    • pp.1-15
    • /
    • 2007
  • 추적 링크는 요구사항과 아키텍처 설계서, 소스 코드, 테스트 케이스 등과 같은 시스템 산출물들 사이의 논리적인 연결을 의미한다. 이러한 추적 링크는 요구사항 변경 영향 분석, 요구사항 충돌 분석, 요구사항 일관성 점검에 매우 유용하다. 그러나, 복잡한 소프트웨어 개발시 많은 다양한 산출물들이 만들어지므로 추적 링크를 생성하거나 운용하는 것은 많은 부담을 초래한다. 본 논문은 가치분석을 근간으로 하고 휘처를 중간 매개체로 활용하는 휘처 기반의 요구사항 추적 기법을 제안한다. 이는 사용자 요구사항과 산출물간의 추적 링크를 생성하기 위한 중간 매개체로 휘처 개념을 적용하였고, 식별된 휘처들의 상세화 정도를 추정하기 위하여 요구사항의 우선순위에 따른 가치 평가를 포함한다. 또한, 본 논문에서 제안한 휘처 기반의 요구사항 추적 기법을 아파트 단지 내 홈 서비스를 통합하는 유비쿼터스 플랫폼에 적용한 사례의 결과를 기술한다.

  • PDF