• Title/Summary/Keyword: 소스코드 분석

Search Result 341, Processing Time 0.038 seconds

A Korean Morphological Analyzer Supports Multi-Threads (정보 검색용 다중 스레드 한국어 형태소 해석기)

  • Choi, Yoo-Kyung;An, Dong-Un;Chung, Sung-Jong
    • Annual Conference on Human and Language Technology
    • /
    • 2001.10d
    • /
    • pp.41-47
    • /
    • 2001
  • 본 논문에서는 한국어 형태소 해석기에 다중 스레드 기법을 도입하여 다중 처리가 가능하도륵 하였다. 기존의 여러 형태소 해석기들은 언어 분석에만 관심이 있었기 때문에 다량의 문서를 동시에 처리하는 기능을 고려하지 않았다. 그러나 형태소 해석기가 정보 검색 시스템 분야에서 사용되기 시작하면서, 다수의 사용자가 대량의 문서를 처리해야 하는 필요성이 생겼다. 스레드 간에는 메모리 영역과 같은 자원을 공유한다. 이러한 특징 때문에 자칫하면 예상치 못한 결과가 야기될 수 있다. 따라서, 다중 스레드 기법을 사용하기 위해서는 스레드의 특징을 고려한 조치가 필요하다 기존의 한국어 형태소 해석기의 소스 코드를 분석하여 자주 사용되는 전역 변수는 하나의 구조체로 구성하였다. 그리고 이러한 전역 변수와 크기가 큰 지역 변수를 사용할 때 메모리를 동적으로 할당하였다. 또한, 파일에서 입력값을 읽어오거나 파일에 결과값을 쓰는 등 여러 스레드가 접근할 때 값이 변경될 위험이 있는 부분은 조건 변수를 이용하여 동기화 시켰다. 구현된 시스템의 검증을 위하여, 단일 스레드 방식으로 순차적인 처리를 하는 원래의 형태소 해석기와 비교 실험을 실시하였다. 35Kbyte 문서 30개를 처리하는 경우, 다중 처리가 가능한 형태소 해석기가 단일 스레드 방식의 형태소 해석기보다 처리속도가 약 12% 향상되었다.

  • PDF

Implementation of Source Analysis Tool for Vulnerability Search of Web Program (웹 프로그램의 취약점 검색을 위한 소스분석 툴 구현)

  • Kim, Soung-Uk;Hoang, Tae-Moon;Kim, Pan-Kyu;Park, Sang-Su;Lee, Jong-Hyeok
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • v.9 no.2
    • /
    • pp.776-779
    • /
    • 2005
  • The Program language for web, such as PHP, JSP, ASP and so on, make it possible to offer more user interactive page by using with HTML. These language and program have been developed with great speed, but security part could not catch up with this development. As a result, it has brought a problem which is expose many server systems to the outside. In this research, we implement Web and SQL analysis program which can analysis hacking causing factor. With this analysis program, we will show you how much efficient it has compared with security patch for server system.

  • PDF

Design and Implementation of Event Trace FAcilities for Debugging RPC-oriented Distributed Systems (RPC에 기반한 분산 시스템의 디버깅을 위한 이벤트 추적 기능의 설계 및 구현)

  • Seo, Yeong-Ae;Lee, Eun-Jeong;Park, Chang-Sun
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.5 no.3
    • /
    • pp.313-325
    • /
    • 1999
  • 분산 프로그램의 디버깅이 순차 프로그램의 디버깅보다 어려운 이유중의 하나는 수행중인 프로세스들 간의 통신 때문이다. 비록 분산 시스템을 위해 구축된 디버거들이 많이 있음에도 불구하고 , 프로세스들간의 통신 이벤트를 효과적으로 디버깅할수 있는 실용적인 수준의 디버거는 없는 실정이다. 본 논문에서는 분산 시스템의 개발에 널리 사용되고있는 RPC 매커니즘을 이용한 프로그램간의 통신을 효과적으로 디버깅하는 방법을 제시한다. 이를 위하여 RPC 통신 이벤트를 디버깅 객체로 정의한 RPC 이벤트 모델을 제안하고 이에 기초하여 RPC 이벤트 추적 기능을 설계 및 구현하였다. RPC 프로토콜을 분석한 결과를 이용하여 메시지의 송.수신 이벤트를 추적 기능을 설계 구현하였다. RPC 프로토콜을 분석한 결과를 이용하여 메시지의 송.수신 이벤트를 라이브러리 함수의 호출과 자료의 값으로 기술하고 해당라이브러리 함수의 호출이 발생한 위치를 인지함으로써 모든 통신 이벤트의 발생을 탐지할수 있었다. 제안된 RPC 이벤트 추적기능은 현재 분산 디버거인 유니뷰 시스템에 구현되었다. 이벤트 추적 기능의 추가적 구현으로 인하여 유니뷰 시스템은 추적된 통신의 내용을 보면서 관련된 소스 코드를 보거나 프로그램을 제어하고 원격 함수 호출에 사용된 매개변수의 값을 보는 등의 행위가 가능하다. 또한 이러한 이벤트 추적기능을 수행하기 위하여 별도의 라이브러리나 수행환경이 요구되지 않으므로 실제분산시스템의 개발 환경에 적응하기가 용이한 장점을 가진다.

Proposal of Git's Commit Message Complex Classification Model for Efficient S/W Maintenance (효율적인 S/W 유지관리를 위한 Git의 커밋메시지 복합 분류모델 제안)

  • Choi, Ji-Hoon;Kim, Jae-Woong;Lee, Youn-Yeoul;Chae, Yi-Geun;Kim, Joon-Yong
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2022.07a
    • /
    • pp.123-125
    • /
    • 2022
  • Git의 커밋 메시지는 프로젝트가 진행되면서 발생하는 각종 이슈 및 코드의 변경이력을 저장하고 관리하고 있기 때문에 소프트웨어 유지관리와 프로젝트의 생명주기와 밀접한 연관성을 갖고 있다. 이러한 Git의 커밋 메시지에 대한 정확한 분석 결과는 소프트웨어 개발 및 유지관리 활동 시, 시간과 비용의 효율적인 관리에 많은 영향을 끼치고 있다. 이에 대한 기존 연구로 Git에서 발생하는 커밋 메시지를 소프트웨어 유지관리의 세 가지 형태로 분류하고 매핑하여 정확한 분석을 시도하려는 연구가 진행되었으나, 최대 87%의 정확도를 제시한 연구 결과가 있었다. 이러한 연구들은 정확도가 낮아 실제 프로젝트의 개발 및 유지관리에 적용하기에는 위험성과 어려움이 있는 현실이다. 본 논문에서는 커밋 메시지 분류에 대한 선행 연구 조사를 통해 각 연구들의 프로세스와 특징을 추출하였고, 이를 이용한 분류 정확도를 높일 수 있는 커밋 복합 분류 모델에 대해 제안한다.

  • PDF

Tracing the Development and Spread Patterns of OSS using the Method of Netnography - The Case of JavaScript Frameworks - (네트노그라피를 이용한 공개 소프트웨어의 개발 및 확산 패턴 분석에 관한 연구 - 자바스크립트 프레임워크 사례를 중심으로 -)

  • Kang, Heesuk;Yoon, Inhwan;Lee, Heesan
    • Management & Information Systems Review
    • /
    • v.36 no.3
    • /
    • pp.131-150
    • /
    • 2017
  • The purpose of this study is to observe the spread pattern of open source software (OSS) while establishing relations with surrounding actors during its operation period. In order to investigate the change pattern of participants in the OSS, we use a netnography on the basis of online data, which can trace the change patterns of the OSS depending on the passage of time. For this, the cases of three OSSs (e.g. jQuery, MooTools, and YUI), which are JavaScript frameworks, were compared, and the corresponding data were collected from the open application programming interface (API) of GitHub as well as blog and web searches. This research utilizes the translation process of the actor-network theory to categorize the stages of the change patterns on the OSS translation process. In the project commencement stage, we identified the type of three different OSS-related actors and defined associated relationships among them. The period, when a master commences a project at first, is refined through the course for the maintenance of source codes with persons concerned (i.e. project growth stage). Thereafter, the period when the users have gone through the observation and learning period by being exposed to promotion activities and codes usage respectively, and becoming to active participants, is regarded as the 'leap of participants' stage. Our results emphasize the importance of promotion processes in participants' selection of the OSS for participation and confirm the crowding-out effect that the rapid speed of OSS development retarded the emergence of participants.

  • PDF

Design of an Integrated Product Management System for Game Software Development (게임 소프트웨어 산출물 통합관리시스템 설계)

  • Kim, Byung-Cheol
    • Journal of Digital Convergence
    • /
    • v.13 no.12
    • /
    • pp.319-324
    • /
    • 2015
  • This paper proposes an integrated management system for products of game software development. Those products generated over software life-cycle are generally huge in numbers, various in kinds and interconnected in relationships among them. Especially they are highly complex and tightly coupled each other because they are used to build another world which is composed of multi-modal data such as graphics, sound, logics and so on. Therefore it is critical to manage development products in an integrated manner to guarantee the quality of software. The proposed system is designed to provide project/requirement/configuration/traceability management capabilities and interfacing to CASE standards. To achieve the objective, it is based on data warehouse technologies which provide central repositories of heterogeneous data, multi-aspect reporting&analysis capabilities, traceability, verification, etc.

A Program Analysis Technique for Recovery of Layered Architecture and Conformance Checking (층위구조 아키텍처의 복구 및 일치성 검사를 위한 프로그램 분석 방법)

  • Park Chanjin;Hong Euyseok;Kang Yoohoon;Wu Chisu
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.8
    • /
    • pp.730-741
    • /
    • 2005
  • Layered Architecture is a kind of nodule decomposition techniques, which decomposes a program by generality This paper proposes a ]aver based method for recovering layered architecture from object-oriented program and checking conformance against architectural document. To specify the rules for layered style in object-oriented program, we define a partially ordered set on modules by module use relationship and module layer relationship by module override relationship. The meaning of module layer relationship is explained with an example from design patterns. Steps to recover layered architecture from program are described and a metamodel for the recovery is proposed. Architecture recovery is performed on source codes from open-source software project, and the implication of parts that do not conform to its architectural document is discussed. As a result of checking, it is pointed out that, although the parts are considered allowable exceptions of layered architecture, their modifications should be controlled carefully.

Architecture Design for Real-time Mobile Embedded Software Test Tools (실시간 이동형 내장 소프트웨어 시험 도구의 구조 설계)

  • Kim, Sang-Il;Lee, Nam-Yong;Rhew, Sung-Yul
    • Journal of KIISE:Software and Applications
    • /
    • v.33 no.4
    • /
    • pp.388-401
    • /
    • 2006
  • A tool for analyzing and testing software in real-time is required for the efficient development of highly reliable real-time mobile embedded software This too] requires various technologies, such as source code based white-box test and real-time system monitoring and control. The tool also should be designed to improve reusability and portability by considering the interaction with other kinds of real-time system. This paper identifies and analyzes the functional requirements for the test tool on real-time mobile embedded software and suggests an adequate tool architecture based on the collected requirements. It also suggests the specific implementation technology and architecture design pattern to support the tool's expandability and portability.

The Design and An Implementation of effective algorithms Effect Based on XNA Game Development Environment (XNA기반 게임 개발의 이펙트 효과 알고리즘 설계 및 구현)

  • Seo, Jeong-Man;Choi, Chang-Soo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.19 no.7
    • /
    • pp.37-46
    • /
    • 2014
  • In this paper, by using Visual C # XNA game development application relates to a technique. This paper proposes the design and an implement effective algorithms Effect Based on XNA Game Development Environment. Existing in the development of the game using Directx C++ game developers, game development, it is necessary to position a lot of the source code. Particularly effective effect was much difficulty in the processing section. However, to eliminate this difficulty was proposed in the paper. The possibility of developing the game in XNA-based group. For the superiority of the proposed paper and the comparative analysis of existing games were designed for the development of the game was. The future study will be the design of various effects and events which give more immersive game implementation.

Implementation of JDAM virtual training function using machine learning

  • You, Eun-Kyung;Bae, Chan-Gyu;Kim, Hyeock-Jin
    • Journal of the Korea Society of Computer and Information
    • /
    • v.25 no.11
    • /
    • pp.9-16
    • /
    • 2020
  • The TA-50 aircraft is conducting simulated training on various situations, including air-to-air and air-to-ground fire training, in preparation for air warfare. It is also used for pilot training before actual deployment. However, the TA-50 does not have the ability to operate smart weapon forces, limiting training. Therefore, the purpose of this study is to implement the TA-50 aircraft to enable virtual training of one of the smart weapons, the Point Direct Attack Munition (JDAM). First, JDAM functions implemented in FA-50 aircraft, a model similar to TA-50 aircraft, were analyzed. In addition, since functions implemented in FA-50 aircraft cannot be directly utilized by source code, algorithms were extracted using machine learning techniques(TensorFlow). The implementation of this function is expected to enable realistic training without actually having to be armed. Finally, based on the results of this study, we would like to propose ways to supplement the limitations of the research so that it can be implemented in the same way as it is.