• Title/Summary/Keyword: 코드품질

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

안드로이드 기반 모바일 메신저 취약점 분석 및 시큐어 코딩 적용방안 (Android-based mobile messenger application vulnerability analysis and secure coding method)

  • 백찬호;선종민;류기동;문병종;김태완;김우제
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2014년도 제49차 동계학술대회논문집 22권1호
    • /
    • pp.83-87
    • /
    • 2014
  • 본 논문에서는 안드로이드 스마트폰 환경에서 높은 점유율을 가진 카카오톡 모바일 메신저 앱에 대하여 행정안전부가 고시한 Android-JAVA 시큐어 코딩가이드의 입력 데이터 검증 및 표현, API악용, 보안특성, 시간 및 상태, 에러처리, 코드 품질, 캡슐화 등 18가지 보안 취약점을 분석하고, 해당 취약점에 대한 시큐어 코딩 기법을 적용한다. 먼저 현재 상용화되고 있는 카카오톡 모바일 메신저 코드를 역공학(리버스엔지니어링)방법을 이용하여 코드단에서 소스를 분석한다. 실제 코드에서 시큐어 코딩이 안드로이드 스마트폰 환경에서 행정안전부가 고시한 Android-JAVA 시큐어 코딩가이드를 기준으로 취약한 부분을 찾고, 적용이 안 되어 있는 부분에 안드로이드 환경에 맞는 시큐어 코딩 기법을 적용한다.

  • PDF

IT분야에 있어서 소프트웨어 테스팅 및 품질보증의 역할 (The Role of Software Testing and Quality Assurance in the IT Industry)

  • 신성우;이남용
    • 한국IT서비스학회:학술대회논문집
    • /
    • 한국IT서비스학회 2002년도 창립기념 학술대회
    • /
    • pp.226-230
    • /
    • 2002
  • 오늘날 우리가 개발하는 소프트웨어 시스템은 사람의 실수로 인하여 문제가 생기는 경우가 너무나도 많다. 소프트웨어 테스팅은 품질보증에서 가장 중요한 부분이며, 특히 소프트웨어의 명세, 디자인, 코드 구현 부분에 대한 객관적인 평가를 가능하게 한다. 국내에서는 아직까지는 소프트웨어 테스팅 및 품질보증 활용의 경우가 미흡한 실정이지만 외국의 경우 개발비용의 40% 이상이 테스팅에 소요되는 경우도 있다. 본 고에서는 해외 IT 기업의 테스팅 수행 현황을 조사함으로써 IT 분야에 있어서 소프트웨어 테스팅 및 품질보증의 역할이 무엇인가를 살펴보도록 하겠다.

  • PDF

코드 커버리지 테스팅 기법의 금융권 차세대 프로젝트 적용사례 (Code coverage Testing in Next Generation Banking System Project)

  • 김희영;양상태
    • 한국IT서비스학회:학술대회논문집
    • /
    • 한국IT서비스학회 2009년도 추계학술대회
    • /
    • pp.343-350
    • /
    • 2009
  • 대규모 금융권 차세대 프로젝트에서 테스트에 대한 중요성은 재무RISK 관점에서 뿐만 아니라 소프트웨어 품질향상을 위한 결함의 제거 관점에서도 그 의미가 크다. 대규모 차세대 프로젝트는 일반 프로젝트에 비하여 개발되는 소프트웨어의 양이 방대하고 개발참여인원도 일반적인 관리수준을 넘어 수작업에 의한 테스트만으로는 충분한 품질을 보장하지 못한다. 또한 테스트를 수행한 이후에도 지속적으로 변경이 발생하고 이를 반영하는 과정에서 많은 결함이 유입되는 현재의 SI 프로젝트 특성상 지속적인 테스트 및 반복적인 검증만이 소프트웨어의 품질을 보장할 수 있다. 본 논문에서는 code coverage testing기법을 활용하여 동적 테스트 수행결과를 log로 도출하고, log 분석 결과를 통해 소프트웨어 품질의 향상을 기대할 수 있는 방안을 제시한다.

  • PDF

객체지향 관점의 결합도 & 응집도 재정의와 코드 가시화 시스템내 파서 플러그인화 구현 (Plug-in Diverse Parsers Within Code Visualization System with Redefining the Coupling and Cohesion in the Object-Oriented Paradigm)

  • 이진협;박지훈;변은영;손현승;서채연;김영철
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제6권5호
    • /
    • pp.229-234
    • /
    • 2017
  • 소프트웨어는 비가시적 특성과 기존 개발자들의 나쁜 코딩 습관인 중복된 코드, 불필요한 코드 등이 많아 복잡도가 높아져 소프트웨어의 고품질화가 저해된다. 그러므로 개발자가 소스코드의 복잡도를 쉽게 자동 식별하는 코드 가시화가 필요하다. 이를 위해, 공개 소스 기반의 가시화 도구를 구축하였다. 특히 나쁜 코드 패턴들을 식별하기 위해, 다양한 파서를 plug-in하는 방법을 제안한다. 또한 객체지향 관점에 맞는 결합도와 응집도 재정의를 통해, 자유로운 패턴을 입력하여 개발자가 원하는 나쁜 패턴을 추출하고자 한다.

한국어 음성에 있어서 저전송률을 갖는 개선된 VSELP코드북 설계 (Design of Low Bit Rate VSELP Codebook for the Korean Speech)

  • 김형종;한승조
    • 한국정보통신학회논문지
    • /
    • 제3권3호
    • /
    • pp.607-616
    • /
    • 1999
  • 본 논문에서는 제한된 대역에서 낮은 전송률로 족은 품질을 유지하도록 하는 개선된 4.8kbps VSELP를 제안한다. 그러나 대부분의 경우에 있어서 낮은 전송률에는 좋은 품질을 유지하지 못하는 실정이다. 이러한 문제점을 해결하기 위해 많은 방법들이 제안되어 왔으나 대부분 외국어를 기준으로 맞추어져 우리 언어 구조에 적합하지 않다. 본 실험은 잡음이 없는 실험실에서 녹취한 데이터를 가지고 수행되었다. 본 논문은 저전송률을 가지며 한국어 음성에 적합한 코드북을 설계하고 8kbps의 VSELP와 4.8kbps의 VSELP를 SEGWSNR(Segmentally Weighted SNR) 평가와 MOS(Mean Opinion Score) 평가를 수행하고 주관적 평가에 있어서 4.8kbps의 VSELP의 우수함을 보인다.

  • PDF

데이터 품질관리 프레임워크와 비즈니스 시나리오 (The Data Quality Management Framework and it's Business Scenario)

  • 이창수;김선호
    • 한국전자거래학회지
    • /
    • 제15권4호
    • /
    • pp.79-99
    • /
    • 2010
  • e-비즈니스의 활성화로 기업과 조직에서 이해당사자 간의 데이터 교환이 활발해 짐에 따라, 신뢰성 있는 데이터의 확보 및 관리가 시급한 과제로 떠오르고 있다. 이러한 문제를 해결하기 위해, 본 논문은 데이터의 품질을 체계적으로 관리할 수 있는 프레임워크를 시나리오와 함께 제시한다. 데이터 품질 관리 프레임워크는 데이터 품질 모니터링, 데이터 품질 개선, 데이터 활용의 3단계로 구분되어 있으며 각 단계마다 3개씩, 총 9개의 프로세스로 구성되어 있다. 각 프로세스에는 필요성, 기능, 역할, 프로세스간의 관계가 명시되어 있다. 또한, 본 프레임워크를 현장에 직접 적용할 수 있도록, e-비즈니스에서 많이 사용되는 상품식별 및 분류 코드체계의 사례를 이용하여 업무 시나리오를 제시하였다.

결정론적인 방법과 확률론적인 방법을 이용한 수송용기 방사선차폐해석의 비교 및 검증 (Verification of the Radiation Shielding Analysis of Shipping Cask Using Deterministic and Probabilistic Methods)

  • 윤정현;이인구;방경식;최병일;김종경
    • Journal of Radiation Protection and Research
    • /
    • 제21권1호
    • /
    • pp.17-25
    • /
    • 1996
  • 본 연구에서는 사용 후 핵연료의 안전수송을 위한 수송용기의 설계/해석 항목 중 용기 내부에 장전한 핵연료에서 방출되는 중성자의 방사선량률을 효과적으로 평가하는 방법을 구축하기 위하여 수송용기의 방사선차폐해석을 기존의 해석 수행방법인 결정론적인 방법으로 수행하고 확률론적인 방법으로 그 결과를 검증하였다. 결정론적 방법을 이용한 해석코드로 Discrete Ordinate 방법의 DOT4.2 코드를 사용하였으며, 이에 대한 비교와 검증을 위한 확률론적 방법의 차폐해석 코드로는 Monte Carlo 해법의 해석코드인 MCNP4A을 이용하였다. 동일한 대상물에 대한 방사선량율에 대한 평가를 두 방법으로 수행한 결과 두 방법으로부터의 해석결과는 큰 차이를 보이지 않았다. 이 결과비교를 통하여 사용후 핵연료 수송용기에 대한 방사선량율 평가가 올바르게 수행된 것을 확인할 수 있었고 또한 설계 및 해석에 관한 품질보중사항이 규정된 10CFR71 appendixH의 설계해석 및 전산코드 검증에 따한 요구조건을 만족시킬 수 있었다.

  • PDF

동적 관심영역 코딩을 위한 효율적인 관심영역 코드블록 판별 알고리듬 (An Eefficient ROI Code Block Discrimination Algorithm for Dynamic ROI Coding)

  • 강기준;안병태
    • 한국멀티미디어학회논문지
    • /
    • 제11권1호
    • /
    • pp.13-22
    • /
    • 2008
  • 본 논문에서는 동적 관심영역 코딩을 위한 효율적인 관심영역 코드블록 판별 알고리듬을 제안한다. 제안한 알고리듬은 관심영역 코드블록 판별 시간을 줄이기 위하여 관심영역 모양의 특징을 고려하여 일부 마스크 정보만으로 관심영역의 포함율을 계산하고, 포함율과 관심영역 임계값에 의해 관심영역 코드블록 유무를 판별한다. 그리고 판별 알고리듬은 관심영역 임계값을 조절함으로서 관심영역 코드블록 내의 배경 웨이블릿 계수의 우선적 처리와 손실 부분을 조절도 할 수 있었다. 제안한 방법의 유효성을 나타내기 위해 기존의 방법들과 비교 실험을 통해 제안한 방법이 기존의 방법에 비해 품질과 속도 면에 있어서 우수함을 확인하였다.

  • PDF

소프트웨어 재공학과 유지보수 지원을 위한 툴의 개발 (Development of the Tool for Software Re-engineering and Maintenance)

  • 김행곤;황선명
    • 한국정보처리학회논문지
    • /
    • 제1권3호
    • /
    • pp.299-310
    • /
    • 1994
  • 소프트웨어 재공학 툴은 소프트웨어 유지보수 생산성과 그작업의 품질 향상에 기 여한다. 재공학은 프로그램의 구성요소에 대한 기능 변경이 아닌 행위 변경(객체의 이 름과 정의, 재구성프로세스 논리)을 일반적으로 관리한다. 본 논문은 객체 지향 프로 그램언어(C++)로 작성된 원시 코드의 유지 보수를 위한 소프트웨어 재공학 툴인 InMaC++(Interactive Maintenance for C++)의 개발에 대해 서술한다. InMaC++ 는 원시 코드와 다이어그램(설계정보) 형태 모두를 표현할 수 있고 편집 기능이 가능 하며 원시 코드에서 다이어그램으로 다이어그램에서 원시 코드로의 변형이 가능하다. 따라서 이들 변형을 통해 기존 코드의 유지보수와 재공학이 가능하다. 특히 시스템의 검색기능은 그래픽 인터페이스로 구현되었으며 InMaC++는 객체 지향 프로그램의 메 소트, 속성, 클래스등의 구성 요소를 기반한 데이터베이스를 포함 하고 있으며, 이 모 델은 구현과 사용의 편리성과 툴의 구성을 용이하게 하기 위해 4가지의 객체 클래스와 3가지 관계를 정의하고 이들 객체 클래스의 검색을 위해 시스템 제공 단순 질의어가 제공한다.

  • PDF

code2vec 모델을 활용한 소스 코드 보안 취약점 탐지 (Detection of Source Code Security Vulnerabilities Using code2vec Model)

  • 양준혁;모지환;홍성문;도경구
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제16권2호
    • /
    • pp.45-52
    • /
    • 2020
  • 소스 코드의 보안 취약점을 탐지하는 전통적인 방법은 많은 시간과 노력을 필요로 한다. 만약 보안 취약점 유형들에 대한 좋은 품질의 데이터가 있다면, 이와 머신러닝 기술을 활용해 효과적으로 문제를 해결할 수 있을 것이다. 이에 본 논문은 정적 프로그램 분석에 머신러닝 기술을 활용하여 소스 코드에서 보안 취약점을 탐지하는 방법을 제시하고, 실험을 통하여 가능성을 보인다. 메소드 단위의 코드 조각의 의미를 해석하여 메소드의 이름을 예측하는 code2vec 모델을 사용하고, 모델을 생성하고 검증 및 평가를 하기 위한 데이터로 흔히 발생할 수 있는 보안 취약점을 모아놓은 Juliet Test Suite를 사용하였다. 모델 평가 결과 약 97.3%의 정밀도와 약 98.6%의 재현율로 매우 희망적인 결과를 확인하였고 오픈 소스 프로젝트의 취약점을 탐지함으로써 가능성을 보였다. 향후 연구를 통해 다른 취약점 유형과 다양한 언어로 작성된 소스 코드에 대해서 대응함으로써 기존의 분석 도구들을 대체할 수 있을 것이다.