• Title/Summary/Keyword: Software Graph

Search Result 310, Processing Time 0.025 seconds

Korean Dependency Parsing Using Stack-Pointer Networks and Subtree Information (스택-포인터 네트워크와 부분 트리 정보를 이용한 한국어 의존 구문 분석)

  • Choi, Yong-Seok;Lee, Kong Joo
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.10 no.6
    • /
    • pp.235-242
    • /
    • 2021
  • In this work, we develop a Korean dependency parser based on a stack-pointer network that consists of a pointer network and an internal stack. The parser has an encoder and decoder and builds a dependency tree for an input sentence in a depth-first manner. The encoder of the parser encodes an input sentence, and the decoder selects a child for the word at the top of the stack at each step. Since the parser has the internal stack where a search path is stored, the parser can utilize information of previously derived subtrees when selecting a child node. Previous studies used only a grandparent and the most recently visited sibling without considering a subtree structure. In this paper, we introduce graph attention networks that can represent a previously derived subtree. Then we modify our parser based on the stack-pointer network to utilize subtree information produced by the graph attention networks. After training the dependency parser using Sejong and Everyone's corpus, we evaluate the parser's performance. Experimental results show that the proposed parser achieves better performance than the previous approaches at sentence-level accuracies when adopting 2-depth graph attention networks.

Software-Defined HoneyNet: Towards Mitigating Link Flooding Attacks (링크 플러딩 공격 완화를 위한 소프트웨어 정의 네트워크 기반 허니넷)

  • Kim, Jinwoo;Lee, Seungsoo;Shin, Seungwon
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2018.10a
    • /
    • pp.152-155
    • /
    • 2018
  • Over the past years, Link Flooding Attacks (LFAs) have been introduced as new network threats. LFAs are indirect DDoS attacks that selectively flood intermediate core links, while legacy DDoS attacks directly targets end points. Flooding bandwidth in the core links results in that a wide target area is affected by the attack. In the traditional network, mitigating LFAs is a challenge since an attacker can easily construct a link map that contains entire network topology via traceroute. Security researchers have proposed many solutions, however, they focused on reactive countermeasures that respond to LFAs when attacks occurred. We argue that this reactive approach is limited in that core links are already exposed to an attacker. In this paper, we present SDHoneyNet that prelocates vulnerable links by computing static and dynamic property on Software-defined Networks (SDN). SDHoneyNet deploys Honey Topology, which is obfuscated topology, on the nearby links. Using this approach, core links can be hidden from attacker's sight, which leads to effectively building proactive method for mitigating LFAs.

  • PDF

Regression Testing of Software Evolution by AOP (AOP를 이용하여 진화된 프로그램의 회귀테스트 기법)

  • Lee, Mi-Jin;Choi, Eun-Man
    • The KIPS Transactions:PartD
    • /
    • v.15D no.4
    • /
    • pp.495-504
    • /
    • 2008
  • Aspect Oriented Programming(AOP) is a relatively new programming paradigm and has properties that other programming paradigms don't have. This new programming paradigm provides new modularization of software systems by cross-cutting concerns. In this paper, we propose a regression test method for program evolution by AOP. By using JoinPoint, we can catch a pointcut-name which makes it possible to test the incorrect pointcut strength fault and the incorrect aspect precedence fault. Through extending proof rules to aspect, we can recognize failures to establish expected postconditions faults. We can also trace variables using set() and get() pointcut and test failures to preserve state invariant fault. Using control flow graph, we can test incorrect changes in control dependencies faults. In order to show the correctness of our proposed method, channel management system is implemented and tested by using proposed methods.

On the Efficiency Comparison of Dynamic Program Slicing Algorithm using Multiple Criteria Variables (다중 기준변수를 사용한 동적 프로그램 슬라이싱 알고리즘의 효율성 비교)

  • Park, Sun-Hyeong;Park, Man-Gon
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.9
    • /
    • pp.2384-2392
    • /
    • 1999
  • Software engineers are used to analyse the error behavior of computer programs using test cases which are collected for the testing phase when software errors are detected. In actual software testing and debugging, it is important to adopt dynamic slicing technique which is concerned on all the statements to be affected by the variables of current inputs and to use technique of its implementations. The traditional dynamic slicing has focused on the single slicing criterion algorithm. It has been thought that it is needed to develope and implement algorithm for used multiple criteria variables program slicing, which finds every slicing criterion variable where it is used multiple criteria variables. In this paper, we propose an efficient algorithm to make dynamic program slices when it has used multiple criteria variables. The results of the implementation are presented by the making table on execution history and the dynamic dependence graph. Also we can find that the proposed dynamic program slicing approach using multiple criteria variables is more efficient than the traditional single case algorithm on the practical testing environment.

  • PDF

Performance-based Tracing Non-Functional Requirements of Embedded Software (내장형 소프트웨어의 비기능적 요구사항 성능 중심 추적)

  • Choi Jung-A;Chong Ki-Won
    • Journal of KIISE:Software and Applications
    • /
    • v.33 no.7
    • /
    • pp.615-623
    • /
    • 2006
  • A non-functional requirement is a property or quality that the proposed systems have to support the functional requirements. A non-functional requirement is reflected by quality attribute These non-functional requirements playa crucial role during system development, serving as selection criteria for choosing among decisions. It should be continuously considered through the software development process. In spite of the importance of the non-functional requirements, it received little attention because of ambiguousness and invisibility of non-functional requirements. Therefore non-functional model which is a process to analyze the non-functional requirement is proposed for improving the management efficiency of non-functional requirements. Also, this paper presents the trace among the UML diagrams to the conceptual model. According to the non-functional requirement development process, this paper achieved performance-based case study. After then, non-functional requirement should be traced using the UML diagrams.

Identification of Microservices to Develop Cloud-Native Applications (클라우드네이티브 애플리케이션 구축을 위한 마이크로서비스 식별 방법)

  • Choi, Okjoo;Kim, Yukyong
    • Journal of Software Assessment and Valuation
    • /
    • v.17 no.1
    • /
    • pp.51-58
    • /
    • 2021
  • Microservices are not only developed independently, but can also be run and deployed independently, ensuring more flexible scaling and efficient collaboration in a cloud computing environment. This impact has led to a surge in migrating to microservices-oriented application environments in recent years. In order to introduce microservices, the problem of identifying microservice units in a single application built with a single architecture must first be solved. In this paper, we propose an algorithm-based approach to identify microservices from legacy systems. A graph is generated using the meta-information of the legacy code, and a microservice candidate is extracted by applying a clustering algorithm. Modularization quality is evaluated using metrics for the extracted microservice candidates. In addition, in order to validate the proposed method, candidate services are derived using codes of open software that are widely used for benchmarking, and the level of modularity is evaluated using metrics. It can be identified as a smaller unit of microservice, and as a result, the module quality has improved.

Improving Resilience in Graph-based Structure Comparison for Binary Objects (그래프 기반 바이너리 구조 비교 기법의 강인성 개선)

  • Jang, Joon-Hyouk;Cho, Yoo-Kun;Hong, Ji-Man
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06a
    • /
    • pp.104-106
    • /
    • 2012
  • 소프트웨어 버스마크 (Software Birthmark)는 프로그램 실행 파일로부터 프로그램의 고유한 정보를 추출하는 기법이다. 프로그램의 도용을 판별하기 위해 바이너리로부터 버스마크를 추출하여 원본 프로그램과의 유사도를 측정하거나 악성 코드 탐지에 사용된다. 본 논문에서는 그래프 기반 바이너리 구조 매칭기법을 기반으로 한 버스마크를 제안한다. 제안 기법은 원본 프로그램과 대상 프로그램 사이에서 함수와 함수, 기본 블록과 기본 블록의 매칭 방법을 개선함으로써, 기존 기법에 비해 강인성(Resilience)이 향상된 버스마크를 추출한다.

A Multi-Level HW/SW Partitioning Algorithm for SoCs (SoC를 위한 다단 HW/SW 분할 알고리듬)

  • Ahn, Byung-Gyu;Sihn, Bong-Sik;Chong, Jong-Wha
    • Proceedings of the IEEK Conference
    • /
    • 2004.06b
    • /
    • pp.553-556
    • /
    • 2004
  • In this paper, we present a new efficient multi-level hardware/software partitioning algorithm for system-on-a-chip design. Originally the multi-level partitioning algorithm are proposed to enhance the performance of previous iterative improvement partitioning algorithm for large scale circuits. But when designing very complex and heterogeneous SoCs, the HW/SW partitioning decision needs to be made prior to refining the system description. In this paper, we present a new method, based on multi-level algorithm, which can cover SoC design. The different variants of algorithm are evaluated by a randomly generated test graph. The experimental results on test graphs show improvement average $9.85\%$ and $8.51\%$ in total communication costs over FM and CLIP respectively.

  • PDF

A Study on Developing an User Interface for GIS Construction (GIS 구축을 위한 사용자 인터페이스 개발에 관한 연구)

  • 남인길;부기동
    • Journal of Korea Society of Industrial Information Systems
    • /
    • v.4 no.4
    • /
    • pp.25-31
    • /
    • 1999
  • This paper proposes an easy method to develope user interfaces for the GIS using local server automation In the developing stage of user interface the most important thing is to apply effective windows programming techniques and component software supporting techniques. This study shows an user interface developing method using the local server automation and Visual Basic programming. For a case study, the study constructs its user interface which performs map overlaying, referencing attribute tablet, graph analysis, drawing up of thematic amp.

  • PDF

A Study on the Efficient Program Integration using Data Flow Analysis Method (자료 흐름 분석 기법을 이용한 효율적인 프로그램 통합에 관한 연구)

  • Park, Soon-Hyung
    • 한국IT서비스학회:학술대회논문집
    • /
    • 2008.11a
    • /
    • pp.337-340
    • /
    • 2008
  • To take the re-use of software, we need to study the efficient integration method of source programs. When the source programs are merged, it is required the steps of verification for any non-interference on non-identical parts of them. The traditional techniques of the program integration verify non-interference of source programs through the simple comparison of statements of source programs. We propose the efficient integration method using data flow analysis in the programs. A study comparing test results from the traditional method and the proposed method has found that the proposed method is more efficient than the traditional method.

  • PDF