• Title/Summary/Keyword: 코드품질

Search Result 255, Processing Time 0.052 seconds

Software Security Quality Improvement Using Secure Coding Standard (소프트웨어 보안품질 향상을 위한 시큐어 코딩표준 활용)

  • Jang, Young Su;Choi, Jin Young
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.1101-1103
    • /
    • 2010
  • 과거 인터넷을 사용하지 않는 시스템의 경우 소프트웨어의 안전성과 강건성은 철도, 국방, 우주, 항공, 원자력 등 오류 없이 수행되어야 하는 임베디드 소프트웨어에 국한되어 있었다. 그러나 인터넷의 발전으로 인터넷을 통한 정보의 교류 및 서비스가 증대하면서 소프트웨어의 보안품질은 개인, 사회, 국가 모두에게 정보보호의 중요성을 더욱 강조하고 있다. 특히 오류 없이 수행되어야 하는 고안전성 소프트웨어의 개발 기법은 이제 응용 소프트웨어의 보안강화 활동에 활용 되고 있다. 시큐어 코딩 (Secure Coding)은 방어적 프로그램(Defensive Programming)을 포함하는 개념으로 소프트웨어의 안전성과 보안성을 향상 시킬 수 있다. 본 논문에서는 C 언어의 취약가능성 유발 명령어를 예를 들고 시큐어 코딩 기법을 적용하여 취약한 코드를 개선하였다. 이러한 개선을 통해 보안 취약성 유발 가능한 코드 부분을 손쉽게 수정하여 소프트웨어 보안품질을 개선할 수 있다.

Re-engineering framework for improving reusability of embedded software (임베디드 소프트웨어의 재사용성 향상을 위한 리엔지니어링 프레임워크)

  • Kim, Kang-Tae
    • Journal of the Korea Society of Computer and Information
    • /
    • v.13 no.4
    • /
    • pp.1-9
    • /
    • 2008
  • Most consumer electronics companies hold numerous line-ups to cope with divergent customer's needs. To cope with current situation, most products are derived from the 'base product' which is developed for brand new features with respect to the change requests. That is called derivation. After 'base code' is developed for newly introduced products, some modification will occur corresponding to the derivative product models. So, quality attributes of 'base code' affects quality and productivity of 'derived code'. But in the middle of continuous modification to 'base code', violation of architectural design decision and unauthorized or maybe unsophisticated change to source code willing to happen and thus it cause critical problem. Those code has 'aging symptom' both architectural and code level in nature. In this paper, we introduced reengineering framework which guide the procedure and tactics to find and fix 'aging symptom' for improvement on quality attribute of 'base code'.

  • PDF

Code Smell Analysis of ERP Time Attendance Management System (ERP 근태 관리 시스템의 코드 스멜 분석)

  • Choi, Wonjae;Kim, Taehwan;Moon, Hyunjun;Kim, Jungsun
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2020.07a
    • /
    • pp.389-390
    • /
    • 2020
  • 배포된 소프트웨어는 고객의 새로운 요구사항을 반영하면서 기능을 추가하거나 수정한다. 수정된 소프트웨어는 문제없이 동작하지만, 내부의 구조는 점점 더 복잡해지면서 유지보수가 어려워지고, 수정 시 버그 발생 확률이 높아지게 된다. 이에 따라 잘못된 코드 구조를 개선하고, 소프트웨어의 품질을 향상시켜야한다. 본 논문에서는 개발된 ERP 근태관리 시스템이 지속적인 요구사항을 반영하면서 발생한 잘못된 코드 구조인 코드 스멜을 탐지하고 분석하는 연구를 진행하였다.

  • PDF

A Performance Evaluation of Factors Influencing the ROI Coding Quality in JPEG2000 (JPEG2000에서 ROI 코딩 품질에 영향을 미치는 요소의 성능 평가)

  • Ki Jun-Kang;Kim Hyun-Joo;Lee Jum-Sook
    • Journal of the Korea Society of Computer and Information
    • /
    • v.11 no.4 s.42
    • /
    • pp.197-206
    • /
    • 2006
  • One of the most significant characteristics of JPEG2000. the emerging still image standards. is the ROI (Region of Interest) coding. JPEG2000 provides a number of ROI coding mechanisms and ROI parameters. To apply them to an application, it must select the applicable values. In this paper, we evaluate how the ROI coding mechanisms and the ROI parameters influencing JPEG2000 qualify affect the ROI quality and the whole image quality. The ROI coding mechanisms are Maxshift and Implicit. and the parameters are tile size and ROI size, codeblock size, number of DWT decomposition levels and ROI importance. The bigger the tile size, the better the quality. The bigger the ROI size, the ROI importance and the number of DWT decomposition levels, the worse the qualify. In code block $32{\times}32$ of Maxshift and Implicit, it has the best qualify.

  • PDF

Automated Code Smell Detection and Refactoring using OCL (OCL을 이용한 자동화된 코드스멜 탐지와 리팩토링)

  • Kim, Tae-Woong;Kim, Tae-Gong
    • The KIPS Transactions:PartD
    • /
    • v.15D no.6
    • /
    • pp.825-840
    • /
    • 2008
  • Refactoring is a kind of software modification process that improves system qualities internally but maintains system functions externally. What should be improved on the existing source codes should take precedence over the others in such a modification process using this refactoring. Martin Fowler and Kent Beck proposed a method that identifies code smells for this purpose. Also, some studies on determining what refactoring will be applied to which targets through detecting code smells in codes were presented. However, these studies have a lot of disadvantages that show a lack of precise description for such code smells and detect limited code smells only. In addition, these studies showed other disadvantages that generate ambiguity in behavior preservation due to the fact that a description method of pre-conditions for the behavior preservation is included in a refactoring process or unformalized. Thus, our study represents a precise specification of code smells using OCL and proposes a framework that performs a refactoring process through the automatic detection of code smells using an OCL interpreter. Furthermore, we perform the automatic detection in which the code smells are be specified by using OCL to the java program and verify its applicability and effectivity through applying a refactoring process.

Security Coding Guide of Design Phase (설계 단계의 보안 코딩 지침)

  • Shin, Seong-Yoon;Lee, Sang-Won;Lee, Hyun-Chang
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2015.07a
    • /
    • pp.75-76
    • /
    • 2015
  • 본 논문에서는 S/W 개발 보안 지침을 알려준다. S/W 개발 보안에서 S/W의 보안 취약점 유형에 대하여 설명한다. S/W 보안 취약점 유형인 입력 데이터 검증 및 표현, API 악용, 보안 특성, 시간 및 상태, 에러처리 코드품질, 그리고 캡슐화에 대하여 설명하도록 한다. 즉, 본 논문에서는 보안 취약점에 대한 소스코드 레벨에서의 대응조치에 대한 가이드를 제시하고자 한다.

  • PDF

A Study on Criteria Establishment for Efficient Code Inspection (효율적인 코드 인스펙션을 위한 규칙 수립에 대한 연구: A 사(社) 정보시스템 사례)

  • Kyung, Tae-Won;Kim, Sang-Kuk
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2007.11a
    • /
    • pp.407-410
    • /
    • 2007
  • 본 연구에서는 소프트웨어의 완성도와 품질을 높이기 위한 방법들 중 하나인 인스펙션과 기존 검토 기법들을 정리 하였다. 그리고 코드 인스펙션(Code Inspection)을 위한 규칙들을 수립하고 실제 프로젝트에 적용함으로써 그 효율성과 효과성을 검증하였다. 본 연구를 통해 다음과 같은 결과를 얻었다. 첫째, 소프트웨어 검토 방법들에 대한 이론적 내용을 정리하였다. 둘째, 코드 인스펙션을 위한 규칙을 수립하고 사례를 통해 성과를 증명하였다. 셋째, 코드 인스펙션을 통해 정량적 데이터 관리를 수행하였다.

Component Code Generation Using Feature Diagram and XML/XSLT (특성 다이어그램과 XML/XSLT 기술을 이용한 컴포넌트 코드 자동 생성)

  • 최승훈
    • Journal of Internet Computing and Services
    • /
    • v.3 no.4
    • /
    • pp.83-94
    • /
    • 2002
  • Recently for software development productivity a lot of researches in the field of software engineering hove focuses on the component-based software product lines which allows the reuse of forger-granularity software components Its purpose is to develop the specific software application of quality more rapidly by instantiating and assembling the components populated in software product line assets The essential part to build the component-based software product lines is the quality of components, and one of the most important features determining the quality of components is 'reconfigurability' Component reconfigurability means the extent to which the reusers can change the functions and architecture of the component according to their context and environment. This paper proposes the component code generation technique which provides the reconfigurability at the time of code generation using The feature diagram and XML/XSLT technologies The approach of this paper allows the component reusers to get automatically their own component source code by providing only the values of variabilities represented in the feature diagram of the component family. The real world example, the code generation system for o list container family, shows the applicability of the feature model and XML related technologies in the area of the generative programming. Our approach should be basis to build the component based software product lines and extensible to support the larger graularity components.

  • PDF

Definition of Security Metrics for Software Security-enhanced Development (소프트웨어 개발보안 활동을 위한 보안메트릭 정의)

  • Seo, Dongsu
    • Journal of Internet Computing and Services
    • /
    • v.17 no.4
    • /
    • pp.79-86
    • /
    • 2016
  • Under the influence of software security-enhanced development guidelines announced in 2012, secure coding practices become widely applicable in developing information systems aiming to enhance security capabilities. Although continuous enhancement activities for code security is important, management issues for code security have been less addressed in the guidelines. This paper analyses limitation of secure coding practices from the viewpoint of quality management. In particular this paper suggests structures and the use of software metrics from coding to maintenance phases so that it can be of help in the future by extending the use of security metrics.

Applying Reverse Engineering through extracting Models from Code Visualization (코드 가시화부터 모델링 추출을 통한 역공학 적용)

  • Kwon, Haeun;Park, Bokyung;Yi, Keunsang;Park, Young B.;Kim, Youngsoo;Kim, R. Youngchul
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2014.11a
    • /
    • pp.646-649
    • /
    • 2014
  • 최근 레가시 소프트웨어 기능의 증가와 범위가 넓어져, 결함으로 발생하는 사고의 피해 규모가 증가하고 있다. 그로 인해 소프트웨어의 고품질화가 절대적으로 필요하다. 기존 NIPA의 소프트웨어 가시화는 코드로부터 아키텍처 추출을 중점을 고려한다. 이로부터 역공학 기법을 통한 객체지향 코드의 정적 분석과 가시화로 모델(클래스 모델, 순차적 모델, 패키지 모델, 그리고 유스 케이스 모델)과 요구사항을 추출하고자 한다. 이에 앞서 기존에 구축한 Tool-chain에서 가시화를 통한 클래스 모델 추출을 먼저 시도한다. 본 논문에서는 객체지향 패러다임에 맞게 수정된 결합도 측정 방법을 제안하고 추출된 UML 클래스 다이어그램에 적용한다. 그 방법은 측정된 결합도를 클래스 간 의존 관계와 비교하고 UML 클래스 다이어그램에 표현하는 것이다. 이를 통해 기존 레가시 소프트웨어의 재개발 과정에서 설계 문서의 추출과 고품질화가 가능하다.