• 제목/요약/키워드: 소프트웨어 소스 코드

검색결과 323건 처리시간 0.027초

레거시 시스템 이해도구를 이용한 비즈니스 로직 추출 기법 (The Extraction Method of Business Logic Using Legacy System Understanding Tool)

  • 송문섭;박창순
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (2)
    • /
    • pp.100-102
    • /
    • 2002
  • 최근 컴포넌트 기반 개발이 소프트웨어 개발의 새로운 패러다임으로 대두되고 있는 가장 큰 이유는 컴포넌트의 재사용으로 인해 얻을 수 있는 개발 기간의 단축, 유지ㆍ보수의 용이함 등의 장점들 때문이다. 재사용의 개념을 시스템으로 확장하여 생각하면 기존 레거시 시스템을 컴포넌트 기반 시스템으로 바꾸는 것이며 이를 위해서는 레거시 시스템의비즈니스 로직을 추출하여 컴포넌트화 해야 한다. 본 논문에서는 기존 레거시 시스템에서 컴포넌트 기반 시스템으로 변환하기 위해 필요한 비즈니스 로직 추출 방법으로 레거시 시스템 분석을 통해 얻은 시스템 플로우 그래프, 프로그램 호출 그래프, 패러그래프 흐름 그래프 등의 그래프 등을 이용하여 레거시 시스템을 이해하고 추출 정보로써 핵심 변수와 패턴 식별을 이용한 방법을 제안한 후 구현된 비즈니스 로직 추출기를 이용하여 구체적으로 COBOL 소스 코드에서 비즈니스 로직이 추출되는 과정을 설명하겠다.

  • PDF

실시간 시스템의 순환 공학을 위한 정형 기법: 추상 시간 기계 (A Formal Method for Round-Trip Engineering of Real-Time System : Abstract Timed Machine)

  • 노경주;박지연;이문근
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.558-560
    • /
    • 2000
  • 본 논문은 ATM(Abstract Timed Machine)에 대해서 기술한다. ATM 은 임무 위급 시스템과 같은 실시간 시스템을 명세, 분석 및 검증할 수 있는 정형 기법이다. ATM 은 모드(mode), 전이(transition), 포트(port)로 구성된다. 모드는 머신의 압축된 상태를 의미하고 전이는 모드와 모드 사이의 변화를 말한다. 포트는 ATM 들 사이의 상호작용을 위한 진입을 나타내기 위한 것이다. ATM 은 소프트웨어 순환 공학을 위해 디자인 되었다. ATM은 재/역공학적 측면에서 계산 이론과 더불어 기존의 실시간 시스템의 소스코드에 대한 디지안 및 환경 정보를 나타낸다. 본 논문은 병렬성, 병렬적으로 동작하는 엔터티들 사이의 제어 정보이 흐름, ATM 타입과 클래스로부터의 인스턴스, 비/동기적 이벤트, 포트와 이벤트 타입, 포트의 타입, 통신, 입/출력, 예외처리, 시간에 관한 요구사항, 다수를 대상으로 하는 통신 주기적 작업등과 같은 ATM의 여러 개념을 기술하고 이러한 속성들을 Producer-Buffer-Consumer 예제로 살펴본다.

  • PDF

추상 시간 기계를 사용한 실시간 시스템의 역명세 검증 (Verification of Reverse specification for Real-Time System in Abstract Timed Machine)

  • 박지연;노경주;이문근
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.489-491
    • /
    • 2000
  • 본 논문은 ATM(Abstract Timed Machine)으로 명세된 실시간 시스템을 검증하기 위한 방법을 기술한다. ATM은 임무 위급 시스템인 실시간 시스템을 명세, 분석, 검증하기 위한 정형기법이다. ATM은 모드와 전이, 포트로 구성된다. 다른 정형기법과 비교하여 ATM은 소프트웨어의 순환공학 과정에서 사용하기 위해 설계되었다. 역공학 과정에서 ATM은 계산 논리 뿐만 아니라 실시간 시스템의 실제 소스코드에 있는 설계나 환경정보를 표현할 수 있다. 이러한 목적을 위해 ATM은 다양한 모드를 사용한다. ATM을 사용한 실시간 시스템의 검증은 도달성 그래프를 생성함으로써 수행한다. 도달성 그래프는 상태와 시간을 추상화되고 압축된 형태로 표현할 수 있으며 그 결과 시간 속성을 지닌 상태 공간을 감소시킬 수 있다. 또한 시스템의 교착상태를 쉽게 발견할 수 있다. 본 논문은 ATM과 실행 모델, 도달성 그래프, 검증을 위한 속성 등을 기술하며 이들을 다른 정형 기법들과 예제를 통하여 비교한다.

  • PDF

온라인 채점 시스템을 활용한 문제해결학습 모형 탐색 (A Problem Solving Learning Model using Online Judge System)

  • 전준호;정웅열;이영준
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2018년도 제58차 하계학술대회논문집 26권2호
    • /
    • pp.417-418
    • /
    • 2018
  • 오늘날 SW 중심사회에서 컴퓨팅 사고력은 꼭 필요한 핵심역량으로 중요성이 강조되고 있으며, 이에 따라 2015 개정 교육과정에서는 소프트웨어(SW) 교육, 정보 교육을 강화하였다. 온라인 채점 시스템은 학생들이 문제해결 소스코드를 제출하면 이를 평가하고, 적절한 피드백을 제공하므로 자기주도적인 문제해결학습 경험과 프로그래밍 스킬을 향상시키는데 도움을 줄 수 있어 사용이 확대되고 있다. 그러나 채점시스템에 탑재된 문제들은 반구조화된 형태로 되어 있어 학생들이 컴퓨팅 사고단계 중 1단계인 문제공식화(추상화) 단계를 충분히 연습하지 못할 가능성이 있다. 본 논문에서는 이를 보완한 문제해결학습 학습모형을 제안하고, 논의한다.

  • PDF

자바에서 동적인 클래스 로딩과 링킹의 분석 (Analysis of Dynamic Class Loading and Linking in Java)

  • 김기태;고훈준;조선문;심현진;강성관;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2003년도 춘계학술발표논문집 (하)
    • /
    • pp.1785-1788
    • /
    • 2003
  • 자바의 동적 클래스 로딩은 실행 시간에 소프트웨어 컴포넌트를 동적으로 로딩하기 위한 강력한 메커니즘이다. 다른 시스템에서도 동적 료딩과 링킹을 제공하지만 지연 로딩, 타입 안전 링크, 사용자 정의 클래스 로딩 정책, 그리고 나중 이름공간 둥은 자바가 가진 중요한 특징이다. 자바에서 클래스 로딩의 핵심은 타입 안전에 대한 확신이다. 하지만 자바 가상머신에서 타입 안전에 대한 메커니즘은 매우 복잡하고 또 정확성에 대한 접근이 명확하지 않아서 지금까지 많은 버그가 발생되었고 따라서 타입 안전에 문제가 되어왔다. 본 논문은 간단한 자바 소스 코드를 이용하여 동적인 클래스 로더의 동작을 분석하여 도식화하고, 연산적 의미론으로 추상화하여 이전에 제시되었던 타입 안전에 대한 문제를 분석한다.

  • PDF

가상 네트워크 망에서의 효율적인 테스트 시나리오 관리 기법 (An Efficient Test Scenario Management on Virtual Network)

  • 장준영;김재훈;김응구
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.867-870
    • /
    • 2010
  • 여러 장치들과 연동하여서 동작하는 네트워크 시스템 개발 시, 회귀 테스트는 전체 시스템의 안정성을 보장하기 위한 가장 필요한 테스트중의 하나이다. 그러나, 서비스가 되고 있거나 연동을 위한 추가적인 장비가 필요할 경우 테스트의 제약을 받게 된다. 본 논문에서는 자동 회귀 테스트를 위한 가상 네트워크 망을 제공하는 시뮬레이터를 디자인 한다. 또한, 시뮬레이터를 효율적으로 관리 및 동작하기 위한 UI 환경을 제안한다. 오픈 소스를 기반으로 제작된 본 시나리오의 관리 툴은 회귀 테스트의 자동화와 시나리오의 생성 및 배포가 가능하며 여러 프로토콜을 통합하여 사용할 수 있는 환경과 검증 코드를 제공한다. 이로 인해 네트워크 시스템 상의 소프트웨어에 대해 기능 및 회귀 테스트가 가능해 질것이고 결과적으로 프로그램의 개발 시간 단축과 유지보수에 탁월한 환경을 제공받게 될 것이다.

데이터 변경에 유연한 이진 데이터 처리를 위한 XML 기반 객체 모델의 적용 방법 (Applications of XML based Object Model for flexible binary data processing)

  • 이용헌;심준용;김세환
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.1426-1428
    • /
    • 2011
  • 컴퓨터에서 사용하는 데이터의 기본 단위는 2진수 형식으로 표현되는 이진(binary) 데이터이며 이는 CPU 연산에서부터 이기종간 네트워크 통신에 이르기까지 폭넓은 영역에서 사용되고 있다. 이진데이터를 처리하는 소프트웨어를 개발하기 위하여 다양한 원시타입(Primitive Type)을 사용하는 프로그래밍 언어가 사용되는데, 일반적으로 이러한 프로그래밍 언어를 통한 개발은 소스코드에 구조체, 공용체 및 클래스로 이진 데이터를 정적으로 정의함으로써 추후 데이터 변경에 대한 유연성이 떨어지는 문제가 존재한다. XML 기반의 객체 모델은 프로그래밍 언어에서 사용되는 모든 타입 및 이진 데이터 구성 형식을 제공하고 이를 통해 이진 데이터를 동적으로 관리함으로써 이러한 유연성의 문제를 해결하고 있으며 실제 이진 데이터를 사용하는 분야에 적용할 수 있다.

소프트웨어 공동 개발 환경을 위한 웹 버전 관리 시스템 (Web Version Management System for Software Cooperation Development Environment)

  • 김수용;최동운
    • 인터넷정보학회논문지
    • /
    • 제4권2호
    • /
    • pp.21-30
    • /
    • 2003
  • 본 논문에서는 UML 편집기에서 생성된 mdl 형태의 파일을 웹 상에서 공유하기 적합한 XML 형태로 변환하여 관계형 데이터베이스에 저장하고, 각종 설계 정보들을 웹 환경에서 팀들간 공동 작업을 위해서 웹 브라우저를 통해 참조하고, 파악되도록 하기 위한 방안을 기술한다. 또한 웹 기반의 소프트웨어 공동 개발 환경에서 얻어진 많은 소스코드와 실행파일 그리고 오브젝트파일들을 프로젝트 팀들간에 공유할 수 있는 환경을 지원하는 웹 기반의 시소러스를 이용한 검색 시스템을 지원하며, 이들 설계정보들 간의 관계를 웹 상에서 유기적으로 항해할 수 있는 항해 도구 시스템에 관한 연구이다.

  • PDF

소프트웨어 공동 개발 환경을 위한 웹 버전 저장소의 항해 도구 (Navigation Tool of Web Version Repository for Software Cooperation Development Environment)

  • 김수용;최동운
    • 정보처리학회논문지D
    • /
    • 제9D권5호
    • /
    • pp.813-818
    • /
    • 2002
  • 본 논문에서는 UML 편집기에서 생성된 *.mdl 형태의 파일을 웹 상에서 공유하기 적합한 XML 형태로 변환하여 관계형 데이터베이스에 저장 관리한다. 또한, 각종 설계 정보들을 웹 환경에서 팀들간 공동 작업을 하기 위해 웹 브라우저를 통해 참존 수정될 수 있다. 그리고, 웹 기반의 소프트웨어 공동 개발 환경에서 얻어진 많은 소스코드, 실행파일과 오브젝트파일들을 프로젝트 팀들간에 공유할 수 있는 환경을 지원한다. 본 논문은 웹 브라우저를 통해 시소러스 기반의 검색 시스템을 이용하여 설계정보들 간의 관계를 유기적으로 항해할 수 있는 항해 도구 시스템에 관한 연구이다.

모바일 시큐어코딩 자가평가(M-SCSA) 방법에 대한 연구 (A Study on Self Assessment of Mobile Secure Coding)

  • 김동원;한근희
    • 정보보호학회논문지
    • /
    • 제22권4호
    • /
    • pp.901-911
    • /
    • 2012
  • 개발단계에서의 보안취약점 제거는 운영단계에서 실행하는 것보다 훨씬 더 효율적이고 효과적으로 적용될 수 있다. 소프트웨어에 내재된 보안취약점이 사이버 침해사고의 주요 원인이 되고 있어서 소스코드 수준에서의 보안취약점을 최소화하기 위한 일환으로 시큐어코딩이 주목받고 있다. 소프트웨어 개발과정에서 보안취약점을 제거하는 것이 보다 효과적이면서도 근본적인 해결책이 될 수 있다. 본 논문에서는 개인 단체 조직에서 모바일 시큐어코딩 적용에 따른 보안수준을 평가하기 위한 모바일 시큐어코딩 자가평가(Mobile-Secure Coding Self Assessment) 방법을 연구 제안한다.