• 제목/요약/키워드: Software Graph

검색결과 310건 처리시간 0.025초

A Dependability Modeling of Software Under Memory Faults for Digital System in Nuclear Power Plants

  • Park, Jong-Gyun;Seong, Poong-Hyun
    • Nuclear Engineering and Technology
    • /
    • 제29권6호
    • /
    • pp.433-443
    • /
    • 1997
  • In this work, an analytic approach to the dependability of software in the operational phase is suggested with special attention to the hardware fault effects on the software behavior : The hardware faults considered are memory faults and the dependability measure in question is the reliability. The model is based on the simple reliability theory and the graph theory which represents the software with graph composed of nodes and arcs. Through proper transformation, the graph can be reduced to a simple two-node graph and the software reliability is derived from this graph. Using this model, we predict the reliability of an application software in the digital system (ILS) in the nuclear power plant and show the sensitivity of the software reliability to the major physical parameters which affect the software failure in the normal operation phase. We also found that the effects of the hardware faults on the software failure should be considered for predicting the software dependability accurately in operation phase, especially for the software which is executed frequently. This modeling method is particularly attractive for the medium size programs such as the microprocessor-based nuclear safety logic program.

  • PDF

CAS IMPLEMENTATION OF RECURSIVE STRUCTURE IN A SPANNING TREE

  • Song, Kee-Hong
    • East Asian mathematical journal
    • /
    • 제21권2호
    • /
    • pp.249-260
    • /
    • 2005
  • Experimentation using computer plays an important part in education and research in graph theory. The purpose of this paper is to develop the CAS techniques for the hands-on approach in graph theory specifically on the topic of constructing the spanning tree. This paper discusses the advantages of CAS as the software system for doing graph theory and introduces the software solutions integrating multimedia user interface developed by the author, which extend the functionality of the existing CAS-based graph theory software package.

  • PDF

Variable Reference Graph 의 설계 및 구현 (A Design and Implementation of Variable Reference Graph)

  • 이헌기;이문수;신규상
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2000년도 제13회 춘계학술대회 및 임시총회 학술발표 논문집
    • /
    • pp.815-820
    • /
    • 2000
  • Variable Reference Graph 는 C 언어로 작성된 프로그램으로부터 상호 절차적인 자료 흐름 분석 정보를 수평적 방향 그래프(directed graph)로 자동 생성해주는 역공학(reverse engineering) 도구들 중 하나이다. 본 논문에서는 판독성 있는 구조적 정보를 제공하기위한 그래픽 표현의 전략을 바탕으로 JAVA 로 구현된 그래픽 사용자 인터페이스(graphic user interface) 및 그래프 레이아웃 알고리즘(graph layout algorithm)을 기술한다. 이 알고리즘은 4 단계로 구성되어 있다: 정보 모형, 레벨 알고리즘, 순서 알고리즘, 위치 알고리즘. 각 단계별에서 수행되는 주요 알고리즘을 살펴 본다. 특히, 이 알고리즘들은 사이클(cycle) 및 비사이클(acyclic) 방향 그래프, 그리고 트리(tree)를 수평적 계층 구조를 생성하는데 사용될 수 있다. 본 논문에서 구현된 Variable Reference Graph 는 소프트웨어 재공학 도구를 개발하는 RESORT(RESearch on object-oriented SOftware Reengineering Technology) 과제에서 개발되었다.

  • PDF

Efficiency of Graph for the Remodularization of Multi-Level Software Architectures

  • Lala Madiha HAKIK
    • International Journal of Computer Science & Network Security
    • /
    • 제24권5호
    • /
    • pp.33-39
    • /
    • 2024
  • In a previous study we proceeded to the remodularization architecture based on classes and packages using the Formal Concept Analysis (FCA)[13] [14] [30]. we then got two possible remodularized architectures and we explored the issue of redistributing classes of a package to other packages, we used an approach based on Oriented Graph to determine the packages that receive the redistributed classes and we evaluated the quality of a remodularized software architecture by metrics [31] [28] [29]. In this paper, we will address the issue of the efficiency of the Oriented Graph in the remodularization of software architectures compared to the Formal Concept Analysis FCA method. The formal method of FCA concept is not popularized among scientists as opposed to the use of the labeled directed graph. It is for this reason that our directed graph approach is more effective in its simplicity and popularity.

점진적 실행을 통한 소프트웨어의 구조 그래프 생성 (Constructing Software Structure Graph through Progressive Execution)

  • 이혜련;신승훈;최경희;정기현;박승규
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권7호
    • /
    • pp.111-123
    • /
    • 2013
  • 소프트웨어의 취약성을 검증하기 위하여 소프트웨어의 구조를 유추하여 유추된 구조를 활용하여 테스트하는 방법이 주목받고 있다. 이와 같은 방법을 사용하기 위해서 효과적인 소프트웨어의 구조 유추 방법이 요구된다. 많이 사용되는 DFG(Data Flow Graph), CFG(Control Flow Graph) 이나 CFA(Control Flow Automata)와 같은 그래프나 트리 방식은 소프트웨어 모델을 구조적으로 표현하지 못하는 단점을 가진다. 본 논문에서는 이러한 단점을 극복할 수 있는 방법을 제시한다. 제시된 방법은 바이너리 코드에 다양한 입력데이터 들을 부여하여 입력데이터별 CFG를 생성하고, 생성된 CFG들이 구조적으로 표현될 수 있도록 계층적 제어 흐름 그래프(Hierarchical Control Flow Graph, HCFG)를 작성한다. 또한 제안하는 HCFG을 생성하는데 요구되는 그래프의 구성요소와 점진적 그래프 생성 알고리듬도 제시한다. 제안한 방법론을 공개된 SMTP(Simple Mail Transfer Protocol) 서버 프로그램에 적용시켜 소프트웨어의 모델을 작성하는 실험을 수행하고, 생성된 모델과 실제 소프트웨어 구조를 비교 분석한다.

A UML-based Approach towards Test Case Generation and Optimization

  • Shahid Saleem;Saif U. R. Malik;Bilal Mehboob;Roobaea Alroobaea;Sultan Algarni;Abdullah M. Baqasah;Naveed Ahmad;Muhammad Hasnain
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제18권3호
    • /
    • pp.633-652
    • /
    • 2024
  • Software testing is an important phase as it ensures the software quality. The software testing process comprises of three steps: generation, execution, and evaluation of test cases. Literature claims the usage of single and multiple 'Unified Modeling Language' (UML) diagrams to generate test cases. Using multiple UML diagrams increases test case coverage. However, the existing approaches show limitations in test case generation from UML diagrams. Therefore, in this research study, we propose an approach to generate the test cases using UML State Chart Diagram (SCD), Activity Diagram (AD), and Sequence Diagram (SD). The proposed approach transforms UML diagrams into intermediate forms: SCD Graph, AD Graph, and SD Graph respectively. Furthermore, by integrating these three graphs, a System Testing Graph (STG) is formed. Finally, test cases are identified from STG by using a traversal algorithm such as Depth First Search (DFS) that is an optimization method. The results show that the proposed approach is better compared to existing approaches in terms of coverage and performance. Moreover, the generated test cases have the ability to detect faults at the unit level, integration, and system level testing.

Ada 프로그램의 Visibility Graph 생성모델에 관한 연구 (A Study on Visibility Graph Generating Model of Ada Program)

  • 정중영;김희주;윤창섭
    • 한국국방경영분석학회지
    • /
    • 제16권2호
    • /
    • pp.56-74
    • /
    • 1990
  • Programming-in-the-Large refers to software development environment and includes the organization and representation of a system structure, module decomposition, component dependence analysis, seperate compilation, subsystem and composition identification. The most intricate problem in this environment is the mastery of the structural complexity of large software systems. Ada programming language is tailored to the needs for building of large, integrated software systems from many program units. The visibility graph generating model presented in this paper transforms Ada source program into a visibility graph with nodes for program units and edges for visibility relations among program units. The system description in terms of program units and their visibility relations produced by this model can be utilized for some apects of Programming-in-the-Large environment and also assists designeers, programmers, integrators and maintainers in defining, understanding and exploring the structure of evolving software systems. The model designed and implemented in Ada programming language runs on PCs and will remain useful both in practice and as experimental tool.

  • PDF

Software Similarity Measurement based on Dependency Graph using Harmony Search

  • Yun, Ho Yeong;Joe, Yong Joon;Jung, Byung Ok;Shin, Dong myung;Bahng, Hyo Keun
    • 한국컴퓨터정보학회논문지
    • /
    • 제21권12호
    • /
    • pp.1-10
    • /
    • 2016
  • In this paper, we attempt to prevent certain cases by tracing a history and making genogram about open source software and its modification using similarity of source code. There are many areas which use open source software actively and widely, and open source software contributes their development. However, there are many unconscious cases like ignoring license or intellectual properties infringe which can lead litigation. To prevent such situation, we analyze source code similarity using program dependence graph which resembles subgraph isomorphism problem, a typical NP-complete problem. To solve subgraph isomorphism problem, we utilized harmony search of metaheuristic algorithm and compared its result with a genetic algorithm. For the future works, we represent open source software as program dependence graph and analyze their similarity.

초등 수학 수업에서의 소프트웨어(Graphers) 활용 (Using an educational software Graphers in elementary school mathematics)

  • 황혜정
    • 대한수학교육학회지:학교수학
    • /
    • 제1권2호
    • /
    • pp.555-569
    • /
    • 1999
  • The graph unit(chapter) is a good example of a topic in elementary school mathematics for which computer use can be incorporated as part of the instruction. Teaching graph can be facilitated by using the graphing utilities of computers, which make it possible to observe the property of many types of graphs. This study was concerned with utilizing an educational software Graphers as an instructional tool in teaching to help young students gain a better understanding of graph concepts. For this purpose, three types of instructional activities using Graphers were shown in the paper. Graphers is a data-gathering tool for creating pictorial data chosen from several data sets. They can represent their data on a table or with six types of graphs such as Pictograph, Bar Graph, Line Graph, Circle Graph, Grid Plot and Loops. They help students to select the graph(s) which are the most appropriate for the purpose of analyzing data while comparing various types of graphs. They also let them modify or change graphs, such as adding grid lines, changing the axis scale, or adding title and labels. Eventually, students have a chance to interpret graphs meaningfully and in their own way.

  • PDF

SIMD 최적화를 이용한 CPU 기반 그래프 엔진의 성능 개선 (SIMD Optimization for Improving the Performance of a CPU-Based Graph Engine)

  • 조익현 ;장명환;김상욱
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 춘계학술발표대회
    • /
    • pp.383-385
    • /
    • 2023
  • Single-machine-based 그래프 엔진의 state-of-the-art 모델인 RealGraph 는 쓰레드를 이용한 병렬화로 성능을 향상하였으나 쓰레드 내부에서의 병렬성은 고려되지 않았다. 본 논문은 SIMD 명령어를 이용해 RealGraph 의 병렬성을 향상시켰다. 쓰레드 내부의 효율성을 높이기 위해 RealGraph 의 구조와 그래프 알고리즘의 분석을 통한 SIMD 명령어의 적용 가능한 영역을 탐색하였다. 실험으로 SIMD 명령어의 적용을 통해 쓰레드 내부에서 벡터 연산을 수행하여 평균 7.6%, 11.7%, 9.2%의 수행 시간 단축을 이끌어냈으며 SIMD 명령어의 적용이 그래프 엔진의 분석 성능에 얼마나 도움이 될 수 있는지 확인하였다.