• Title/Summary/Keyword: 소프트웨어 소스 코드

Search Result 323, Processing Time 0.027 seconds

A Study on the Support Tool for Database Application Software Development (데이터베이스 응용 소프트웨어 개발 지원 도구에 관한 연구)

  • Kim, Ah-Young;Youn, Cheong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.04a
    • /
    • pp.534-536
    • /
    • 2015
  • 소프트웨어 산업의 발전에 따라 개발 수요의 충족 및 개발 효율성의 증대를 위해 다양한 개발 방법론과 개발 지원 도구들이 등장해 왔다. 그러나 데이터베이스 응용 소프트웨어(Database Application Software, DB-App)의 개발이 활발함에도 불구하고, 해당 분야 개발의 효율을 도모하는 방안에 관한 연구는 미비한 실정이다. DB-App의 소스 코드(Source code)에는 쿼리(Query)문이 빈번하게 사용되지만 작성 과정에서 오류가 발생하기가 쉽고 관리에 대한 어려움이 있다. 이는 개발 효율을 저하시켜 비용을 증가시키는 요인이 된다. 본 논문에서는 다양한 데이터베이스와 프로그래밍 언어로 개발되는 DB-App 개발을 지원하기 위한 방법을 기술하였으며, 사용자의 설정에 따라 쿼리문을 포함한 소스 코드를 생성하는 도구를 설계하였다.

Unit test for highly hardware-dependent Embedded Software Using open-source testing tools (공개 소스 테스팅 도구를 활용한 하드웨어 의존도가 높은 임베디드 소프트웨어 단위 테스트 기법)

  • Shin, Hee-Jung;Long, Jin;An, So-Jin;Lee, Jean-Ho;Choi, Jin-Young
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06b
    • /
    • pp.123-125
    • /
    • 2012
  • 임베디드 소프트웨어에서의 테스팅은 하드웨어에 의존도가 높기 때문에 일반적인 소프트웨어에서의 테스팅과 달리 다양한 테스트 기법과 도구를 활용한 기술 집약적 테스트가 미약하고, 다른 펌웨어에서 테스팅 할 경우 테스팅이 제대로 되지 않는다. 본 논문에서는 하드웨어 의존도가 높은 임베디드 소프트웨어의 모듈을 펌웨어가 다른 x86의 환경에서 테스팅 할 수 있도록, 레지스터, 포트 등을 참조하는 부분을 로그로 출력하고, 모듈끼리의 의존성이 없도록 소스 코드를 수정하여, 공개 소스 테스팅 도구를 활용하여 단위 테스트 할 수 있도록 하였다.

Open Source based Integrated Development Environment (오픈소스 기반 통합개발도구)

  • Yoo, Jeong-Mok;Kim, Jin-Mee;Woo, Young-Choon;Bae, Hyun-Seop;Kim, Myung-Joon
    • 한국IT서비스학회:학술대회논문집
    • /
    • 2005.05a
    • /
    • pp.495-500
    • /
    • 2005
  • 현재 리눅스 기반 데스크탑 환경에서는 C, C++, JAVA와 같은 프로그램 언어로 작성된 프로그램을 개별적으로 처리할 수 있는 컴파일러들과 디버거들이 존재하지만, 소프트웨어 개발자들은 그래픽 환경 프로그래밍에 적합한 통합개발환경하에서 프로그램을 개발하기를 원한다. 이를 위해, 본 논문에서는 부여 리눅스 기반 데스크탑 환경을 위한 통합개발환경을 제안한다. 본 논문에서 제안하는 통합개발환경은 오픈 소스 기반 프로그램 도구인 Eclipse를 기반으로 통합개발환경에서 제공하는 컴파일, 디버깅과 같은 일반적인 기능들뿐만 아니라 XML 정보저장소(repository)를 활용하여 소스 코드 기반 소프트웨어 시험 자동화 기능을 통합하여 사용자가 체계적이고 계획적인 소프트웨어 테스트를 수행할 수 있도록 하며, 신뢰성 있는 소프트웨어 개발을 할 수 있도록 지원한다.

  • PDF

Measuring Method of Worst-case Execution Time by Analyzing Relation between Source Code and Executable Code (소스코드와 실행코드의 상관관계 분석을 통한 최악실행시간 측정 방법)

  • Seo, Yongjin;Kim, Hyeon Soo
    • Journal of Internet Computing and Services
    • /
    • v.17 no.4
    • /
    • pp.51-60
    • /
    • 2016
  • Embedded software has requirements such as real-time and environment independency. The real-time requirement is affected from worst-case execution time of loaded tasks. Therefore, to guarantee real-time requirement, we need to determine a program's worst-case execution time using static analysis approach. However, the existing methods for worst-case execution time analysis do not consider the environment independency. Thus, in this paper, in order to provide environment independency, we propose a method for measuring task's execution time from the source codes. The proposed method measures the execution time through the control flow graph created from the source codes instead of the executable codes. However, the control flow graph created from the source code does not have information about execution time. Therefore, in order to provide this information, the proposed method identifies the relationships between statements in the source code and instructions in the executable code. By parameterizing those parts that are dependent on processors based on the relationships, it is possible to enhance the flexibility of the tool that measures the worst-case execution time.

A Code Clustering Technique for Unifying Method Full Path of Reusable Cloned Code Sets of a Product Family (제품군의 재사용 가능한 클론 코드의 메소드 경로 통일을 위한 코드 클러스터링 방법)

  • Kim, Taeyoung;Lee, Jihyun;Kim, Eunmi
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.12 no.1
    • /
    • pp.1-18
    • /
    • 2023
  • Similar software is often developed with the Clone-And-Own (CAO) approach that copies and modifies existing artifacts. The CAO approach is considered as a bad practice because it makes maintenance difficult as the number of cloned products increases. Software product line engineering is a methodology that can solve the issue of the CAO approach by developing a product family through systematic reuse. Migrating product families that have been developed with the CAO approach to the product line engineering begins with finding, integrating, and building them as reusable assets. However, cloning occurs at various levels from directories to code lines, and their structures can be changed. This makes it difficult to build product line code base simply by finding clones. Successful migration thus requires unifying the source code's file path, class name, and method signature. This paper proposes a clustering method that identifies a set of similar codes scattered across product variants and some of their method full paths are different, so path unification is necessary. In order to show the effectiveness of the proposed method, we conducted an experiment using the Apo Games product line, which has evolved with the CAO approach. As a result, the average precision of clustering performed without preprocessing was 0.91 and the number of identified common clusters was 0, whereas our method showed 0.98 and 15 respectively.

Component-based Reuse using Semantic Network (의미망을 이용한 컴포넌트 기반 재사용)

  • Han Jung-Soo;Kim Gui-Jug
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.11a
    • /
    • pp.357-360
    • /
    • 2004
  • 본 논문은 소프트웨어의 효율적인 재사용을 위해 소스 코드 기반 컴포넌트 검색 방법을 제안하였다. 제안한 방법은 2단계로 이루어지는데, 먼저 라이브러리에 저장된 클래스를 기반으로 한 컴포넌트는 파싱 과정을 거쳐 의미망을 구성하고, 다음으로 사용자가 질의한 소스 코드를 이용하여 검색이 이루어진다. 소스 코드에서 추출된 식별자가 컴포넌트의 의미망을 활성화시켜 연관된 컴포넌트를 검색한다. 본 연구에서 제안한 검색방법은 프로그래머의 관심을 라이브러리 내에 있는 컴포넌트로 유도하여 재사용성을 높일 수 있으며, 프로그래밍 패턴을 제공함으로써 프로그래머로 하여금 프로그램의 가이드 라인으로 사용할 수 있도록 도움을 줄 수 있다.

  • PDF

Building a Code Visualization Process to Extract Bad Smell Codes (배드 스멜 코드 추출을 위한 코드 가시화 프로세스 구축)

  • Park, Jihoon;Park, Bo Kyung;Kim, Ki Du;Kim, R. Young Chul
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.8 no.12
    • /
    • pp.465-472
    • /
    • 2019
  • Today, in many area the rise of software necessity there has been increasing the issue of the impotance of Good Software. Our reality in software industrial world has been happening to frequently change requirements at any stage of software life cycle. Furthermore this frequent changing will be increasing the design complexity, which will result in being the lower quality of software against our purpose the original design goals. To solve this problem, we suggest how to improve software design through refactoring based on reverse engineering. This is our way of diverse approaches to visually identify bad smell patterns in source code. We expect to improve software quality through refactoring on even frequently changing requirements.

Program Plagiarism Detection through Memory Access Log Analysis (메모리 액세스 로그 분석을 통한 프로그램 표절 검출)

  • Park, Sung-Yun;Han, Sang-Yong
    • The KIPS Transactions:PartD
    • /
    • v.13D no.6 s.109
    • /
    • pp.833-838
    • /
    • 2006
  • Program Plagiarism is an infringement of software copyright. In detecting program plagiarism, many different source program comparison methods has been studied. But, it is not easy to detect plagiarized program that made a few cosmetic changes in program structures and variable names In this paper, we propose a new ground-breaking technique in detecting plagiarism by Memory Access Log Analysis.

A Study on Source Code vulnerability detection Scheme using Symbol-based Static Analysis System (기호 기반 정적 분석 시스템을 이용한 소스코드 취약점 탐지 기법 연구)

  • Kim, Hyungjoo;Kim, Mansik;Lee, Jaeseung;Kang, Jungho
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.10a
    • /
    • pp.824-826
    • /
    • 2015
  • 최근 IT 산업의 발달로 다양한 분야에서 소프트웨어 활용이 증가하였으며, 이에 따라 공개 오픈소스 소프트웨어의 사용빈도가 증가하고, 다양한 범위에서 활용되고 있다. 하지만, 공개 오픈소스의 이용이 증가함에 따라, 공개 오픈소스 취약점에 기반한 다양한 문제에 노출될 수 있으며, 실제 'OpenSSL'의 하트블리드 취약점은 전세계적으로 많은 피해를 야기시켰다. 따라서, 기존 오픈 소스 취약점 분석 환경에서 기호 기반의 취약점 분석 방법을 이용하여 오탐 및 미탐을 최소화 하고, 정확한 보안약점 탐지 가능 기법을 제안한다.

A Study on the Open Source License Analysis of EDISON Project (에디슨 사업의 오픈소스 라이선스 분석에 관한 연구)

  • Lee, Joon;Lee, Jeongcheol;Seo, Jeong Hyeon;Lee, Sik;Cho, Kum Won
    • Journal of the Korea Convergence Society
    • /
    • v.8 no.9
    • /
    • pp.31-39
    • /
    • 2017
  • The open source software is widely used nowadays so that means developing software without using open source software can hardly imagine. However, the developer's recognition about the license statements that defines the requirements in accordance with the use of open source is relatively low and a few study is associated with this topic. Therefore, this study examines the use of open source in software development in the context of EDISON project in the national research and development project. Furthermore, the study attempts to suggest the advanced model from simply avoiding license conflicts to constructing the open source project ecosystem including the choose of representative open source, the development of open source communities and contributor agreements.