KR100299623B1 - 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법 - Google Patents

클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법 Download PDF

Info

Publication number
KR100299623B1
KR100299623B1 KR1019980055982A KR19980055982A KR100299623B1 KR 100299623 B1 KR100299623 B1 KR 100299623B1 KR 1019980055982 A KR1019980055982 A KR 1019980055982A KR 19980055982 A KR19980055982 A KR 19980055982A KR 100299623 B1 KR100299623 B1 KR 100299623B1
Authority
KR
South Korea
Prior art keywords
program
function call
client
server
integrated
Prior art date
Application number
KR1019980055982A
Other languages
English (en)
Other versions
KR20000040362A (ko
Inventor
김명호
이윤준
박웅제
박창섭
김종수
Original Assignee
윤덕용
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윤덕용, 한국과학기술원 filed Critical 윤덕용
Priority to KR1019980055982A priority Critical patent/KR100299623B1/ko
Publication of KR20000040362A publication Critical patent/KR20000040362A/ko
Application granted granted Critical
Publication of KR100299623B1 publication Critical patent/KR100299623B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 중앙처리장치, 주기억장치, 보조기억장치, 입출력장치, 시스템 버스 및 분산 운영체제를 포함하는 분산 컴퓨팅 시스템에 적용되는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법으로, 사용자의 디버깅 모드 선택에 따라 클라이언트 프로그램과 서버 프로그램에서 원격 함수 호출과 관련된 정보를 추출하는 단계와, 이 추출 단계에서 추출된 정보에 기초하여 원격 함수 호출을 지역 함수 호출로 변형하는 단계와, 이 변형 단계에서의 결과에 기초하여 두 소스 코드를 통합하여 실행 파일을 생성하는 단계와, 이 생성 단계에서 생성된 실행 파일에 기초하여 오류 검사 루틴을 실행하는 단계를 포함하며, 클라이언트 프로그램과 서버 프로그램 간의 원격 함수 호출을 지역 함수 호출로 자동 변환하는 것에 의해 이들을 하나로 통합하여 하나의 컴퓨터에서 실행 가능하도록 만듦으로써 디버거를 이용하여 클라이언트 프로그램과 서버 프로그램을 한번에 모두 추적할 수 있도록 하는 효과가 있다.

Description

클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법(Method for debugging client and server programs by integration)
본 발명은 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법, 특히 클라이언트 프로그램과 서버 프로그램을 하나로 통합하여 하나의 컴퓨터에서 실행 가능하도록 만듦으로써 디버거를 이용하여 클라이언트 프로그램과 서버 프로그램을 한번에 모두 추적할 수 있도록 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법에 관한 것이다.
일반적으로, 디버거(debugger)는 프로그램 개발 과정에서 사용되는 도구로서, 프로그램을 실행하고 그 상태를 조사 및 변경하며 중단점을 설정하도록 하여 프로그램 내에 포함된 구문적 오류(syntatic error) 또는 의미적 오류(semantic error)를 쉽게 찾을 수 있도록 도와주는 기능을 한다. 특히, 프로그램의 의미적 오류의 경우에 프로그램 개발 과정에서 개발자가 범한 논리적인 오류로서 이를 발견하기 위해서는 프로그램을 추적해보아야 한다.
여기서, 프로그램의 추적이라고 하는 것은 프로그램을 라인 또는 명령어 단위로 하나씩 실행해 가면서 그 중간 결과들을 살펴보는 것을 말하며 디버거가 제공하는 가장 중요한 기능들 가운데 하나이다. 즉, 디버거는 프로그램을 소스 코드(source code)의 라인 단위로 실행할 수 있는데 이것은 컴퓨터의 CPU로 하여금 한 라인 수행후 개발자의 다음 명령을 기다리도록 만드는 것을 의미한다.
이와 같은 디버거를 이용한 프로그램의 디버깅은 크게 프로그램의 오류 인지 단계, 오류의 위치 발견 단계, 오류의 원인 발견 단계, 오류의 수정 단계와 같은 4단계로 구성된다. 이를 위해 디버거는 프로그램의 실행, 프로그램의 추적, 중단점 설정, 변수 시험, 변수 변경, 현재 위치 보고 등의 기본적인 기능을 제공한다.
위와 같이 디버거가 소망하는 기능을 수행하기 위해서는 컴파일러는 디버깅할 원시파일을 디버거에게 기술하기 위한 디버깅 정보를 생성한다. 이러한 디버깅 정보에는 프로그램의 구조를 나타내는 정보와 프로그램 내부의 심벌에 대한 정보로 크게 나눌 수 있다. 여기서, 프로그램 구조에 대한 정보에는 원시파일 라인정보, 모듈 이름, 모듈 범위, 원시파일의 이름과 경로, 블록 정보, 프로시저 이름과 타입 등이 있다. 또한, 프로그램 내부의 심벌에 대한 정보에는 심벌 모드, 각 모드의 정보, 심벌 주소 등이 있다.
한편, 분산 소프트웨어는 여러 개의 부프로그램(sub-program)들로 구성되며, 이 부프로그램들은 지리적으로 분산되어 있고 통신망으로 연결된 여러 개의 컴퓨터들에서 동시에 실행되면서 주어진 작업을 수행한다. 이 부프로그램들은 통신망을 통해 서로 메시지나 데이터를 주고 받으면서 협동한다.
분산 소프트웨어의 주된 형태는 클라이언트-서버 방식인데, 이 방식은 클라이언트 프로그램이 서버 프로그램에게 어떤 서비스를 요청하면 서버 프로그램이 그 요구에 대해 적절한 서비스 작업을 수행하고 그 결과를 클라이언트 프로그램에 다시 전달하는 형태이다.
클라이언트 프로그램과 서버 프로그램은 서로 다른 두 컴퓨터에서 각각 실행된다. 그러나, 종래의 디버거는 반드시 하나의 컴퓨터에서만 실행될 수 있다. 그래서 오류 검사를 위해 디버거를 사용하여 클라이언트 프로그램부터 추적하는 경우 도 1에 도시된 바와 같이 클라이언트 프로그램에서 서버 프로그램으로 메시지 또는 데이터가 전달되는 시점 이후부터는 서버 프로그램의 실행 과정은 추적할 수 없게 된다.
또, 서버 프로그램 자체를 추적하는 것도 어떤 클라이언트 프로그램으로부터의 서비스 요청이 없이는 시작할 수가 없다. 따라서, 종래의 디버거를 이용하여 클라이언트 프로그램과 서버 프로그램 사이를 오가면서 실행과정을 추적하여 오류 검사를 하는 것이 불가능하다는 문제점이 발생되었다.
상술한 바와 같은 종래 기술의 문제점을 해소하기 위한 본 발명의 목적은 클라이언트 프로그램과 서버 프로그램 간의 원격 함수 호출을 지역 함수 호출로 자동 변환하는 것에 의해 이들을 하나로 통합하여 하나의 컴퓨터에서 실행 가능하도록 만듦으로써 디버거를 이용하여 클라이언트 프로그램과 서버 프로그램을 한번에 모두 추적할 수 있도록 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법을 제공하는 것이다.
도 1은 통상적인 원격 함수 호출을 사용한 클라이언트/서버 프로그램의 디버깅을 실행하는 과정을 도시하는 도면,
도 2는 본 발명의 양호한 실시예에 따라 클라이언트 프로그램과 서버 프로그램을 하나로 통합한 프로그램의 디버깅을 실행하는 과정을 도시하는 도면,
도 3은 본 발명에 따라 통합되기 이전의 클라이언트/서버 프로그램의 실제 수행순서와 소스 코드가 갖는 위치 정보를 도시하는 도면,
도 4는 본 발명의 양호한 실시예에 따라 통합된 클라이언트/서버 프로그램의 실제 수행 순서와 소스 코드가 갖는 위치 정보를 도시하는 도면,
도 5는 본 발명의 양호한 실시예에 따라 통합된 클라이언트/서버 프로그램의 동작을 도시하는 흐름도.
도 6은 본 발명이 적용되는 분산 컴퓨팅 시스템의 구성을 개략적으로 도시하는 블록도.
<도면의 주요 부분에 대한 부호의 설명>
10 : 주기억장치 20 : 보조기억장치
30 : 중앙처리장치 40 : 입출력장치
50 : 시스템 버스 60 : 분산 운영체제부
상기 목적을 달성하기 위한 본 발명의 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법의 특징은, 중앙처리장치, 주기억장치, 보조기억장치, 입출력장치, 시스템 버스 및 분산 운영체제를 포함하는 분산 컴퓨팅 시스템에 적용되는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법에 있어서, 사용자의 디버깅 모드 선택에 따라 클라이언트 프로그램과 서버 프로그램에서 원격 함수 호출과 관련된 정보를 추출하는 단계와, 상기 추출 단계에서 추출된 정보에 기초하여 원격 함수 호출을 지역 함수 호출로 변형하는 단계와, 상기 변형 단계에서의 결과에 기초하여 두 소스 코드를 통합하여 실행 파일을 생성하는 단계와, 상기 생성 단계에서 생성된 실행 파일에 기초하여 오류 검사 루틴을 실행하는 단계를 포함하는 데 있다.
본 발명의 상술한 목적과 여러 가지 장점은 이 기술 분야에 숙련된 사람들에 의해 첨부된 도면을 참조하여 후술되는 발명의 바람직한 실시예로부터 더욱 명확하게 될 것이다.
이하, 첨부한 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 살펴보기로 한다.
도 2는 본 발명의 양호한 실시예에 따라 클라이언트 프로그램과 서버 프로그램을 하나로 통합한 프로그램의 디버깅을 실행하는 과정을 도시하는 도면이다.
여기서는 도 1과 달리 원격 함수 호출을 일반적인 지역 함수 호출로 변형함으로써 함수 order(int a, int b) 및 payment(int c, int d)를 함수 Main()과 통합하여 통합 파일을 형성하고 있다. 따라서, 이를 컴파일한 실행 파일은 클라이언트/서버 시스템에 기초를 둔 분산 소프트웨어가 아니라 자신의 시스템에서 통합 프로그램 내의 모든 함수들이 처리되는 방식으로 바뀌는 것이다.
즉, 함수 Main()에서 ① 과정이 수행된 후 원래는 원격 함수인 지역 함수 order(int a, int b)를 ② 과정에서 호출하여 지역 함수가 정의된 부분으로 이동한다. 그 후, ③ 과정에서 지역 코드를 수행한 후 ④ 과정에 의해 함수 Main()으로 반환되어 ⑤ 과정을 수행한다.
그 후, 다시 원래는 원격 함수인 지역 함수 payment(int c, int d)를 ⑥ 과정에서 호출하여 지역 함수가 정의된 부분으로 이동하여 ⑦ 과정에서 지역 코드를 수행한다. 이 지역 코드가 수행된 후에는 ⑧ 과정에 의해 다시 함수 Main()으로 반환되어 나머지 ⑨ 과정을 수행한 후 통합 프로그램의 디버깅을 종료하는 절차를 거친다.
물론 이것은 프로그램 개발 과정에서 디버깅을 하기 위한 절차의 일환일 뿐이며 실제로 프로그램 개발이 완성되어 프로그램을 실행할 때에는 분산 소프트웨어의 특성을 살려 원격 함수 호출을 통해 소망하는 결과를 얻을 것이다.
도 3은 본 발명에 따라 통합되기 이전의 클라이언트/서버 프로그램의 실제 수행순서와 소스 코드가 갖는 위치 정보를 도시하는 도면이며, 도 4는 본 발명의 양호한 실시예에 따라 통합된 클라이언트/서버 프로그램의 실제 수행 순서와 소스 코드가 갖는 위치 정보를 도시하는 도면이다.
이들 도면에 따르면, 소스 코드 파일 내에 존재하는 각 소스 코드는 통합 과정에 따라 변형되더라도 파일 내의 위치 즉 파일 내부에서의 절대적 라인 번호는 변경하지 않고 유지한다.
따라서, 도 4에서 소스 코드 상에서의 위치 2, 3, 6, 7, 8번 코드는 실제 수행될 때 1, 2, 3, 4, 5번 순서에 따라 수행되지만, 소스 코드의 1, 4, 5번 위치에 해당하는 코드들을 물리적으로 삭제하지 않으며 또 2, 3, 6, 7, 8번의 위치 정보를 변경하지 않음으로써 오류 검사시 도 3에 표시된 소스 코드 상에서의 위치 2, 3, 6, 7, 8번의 코드와 동일한 위치 정보를 제공한다.
도 5는 본 발명의 양호한 실시예에 따라 통합된 클라이언트/서버 프로그램의 동작을 도시하는 흐름도로서, 원격 함수 호출과 관련된 정보를 추출하는 단계(S10), 원격 함수 호출을 지역 함수 호출로 변형하는 단계(S20), 통합 실행 파일을 생성하는 단계(S30) 및 오류 검사 루틴을 실행하는 단계(S40)를 포함한다.
사용자가 분산 컴퓨팅 환경의 프로그램을 개발하면서 그 논리적 오류를 찾기 위해 본 발명에 따른 디버거를 시동하면, 디버거는 먼저 클라이언트 프로그램과 서버 프로그램에서 원격 함수 호출과 관련된 정보를 추출하여 원격 함수의 이름 및 인수 등에 관한 정보를 통합 프로그램의 기억장치에 저장한다(단계 S10). 이러한 정보는 각 클라이언트/서버 프로그램의 소스 코드 또는 별도의 인터페이스 정의 파일에 상세히 기록되어 있다.
상기 단계(S10)에서 기억장치에 저장한 정보를 바탕으로 클라이언트 및 서버 프로그램의 소스 코드를 수정하여 원격 함수 호출을 일반적인 지역 함수 호출로 변환한다(단계 S20). 즉, 각 프로그램 소스 코드에서 원격 함수 호출과 관련된 부분들을 모두 주석 형태로 변환하여 실행되지 않도록 제외시키고, 그 대신에 해당 원격 함수 호출을 일반적인 지역 함수 호출의 형태로 수정한다.
결과적으로, 변환후에는 클라이언트 프로그램의 소스 코드에서 서버 프로그램의 소스 코드에 정의된 외부 함수를 지역 함수 형태로 호출하는 하나의 통합된 프로그램 형태를 띠게 된다. 이 때, 두 소스 코드를 오브젝트 파일 수준에서 하나로 통합 및 연결시키도록 컴파일하는 방법을 정의한 Makefile을 정의한다.
그 결과, 두 개의 독립적인 프로그램으로 나누어져 원격 함수에 의해 수행되는 도 1의 ② 및 ④, ⑥ 및 ⑧번 실행순서가 도 2의 ② 및 ④, ⑥ 및 ⑧번 실행순서와 같이 하나의 단일 프로그램 내에서의 지역 함수 호출로 변환된다.
그런데, 클라이언트/서버 프로그램의 소스 코드 수정 후 생성된 통합 프로그램에 대한 오류 검사가 통합 이전의 분리된 두 프로그램에 대한 개별적인 오류 검사와 일치하기 위해서는 오류 검사시 참조되고 출력되는 각종 정보들, 예를 들면 라인 번호 등이 동일하게 유지되어야 한다. 이를 위해 소스 코드 수정시 원격 함수 호출과 관련된 부분을 제외한 응용 로직 및 지역 함수 정의 등에 해당하는 소스 코드는 제외시키거나 수정하지 않는다. 즉, 도 1의 ①, ③, ⑤, ⑦, ⑨번 실행순서에 위치한 코드들은 도 2의 ①, ③, ⑤, ⑦, ⑨번 실행순서의 코드들과 정확히 일치한다.
클라이언트/서버 프로그램의 소스 코드 중 수정되는 코드의 경우에도 상술한 요구 조건을 만족시키기 위하여 코드 수정시에도 특정 코드의 라인 번호 즉 소스 코드 상에서의 위치는 변경하지 않고 유지한다. 즉, 도 3의 프로그램을 도 4의 프로그램으로 통합시키는 과정에서 2, 3, 6, 7, 8번 코드들의 위치 정보를 변경하지 않음으로써 통합된 코드의 오류 검사시 실행되는 코드들이 통합전 프로그램의 소스 코드 내에서의 위치 정보를 제공하게 된다.
그 후, 상기 단계(S20)에서의 결과에 기초하여 두 소스 코드를 통합하여 실행 파일을 생성하고(단계 S30), 상기 생성 단계에서 생성된 실행 파일에 기초하여 오류 검사 루틴을 실행함으로써 개발 프로그램의 로직 오류를 수정하여 오류가 없는 완전한 프로그램을 창출한다(단계 S40).
도 6은 본 발명이 적용되는 분산 컴퓨팅 시스템의 구성을 개략적으로 도시하는 블록도이다. 본 발명에 따른 분산 컴퓨팅 시스템은 주기억장치(10), 보조기억장치(20), 중앙처리장치(30), 입출력장치(40), 시스템 버스(50) 및 분산 운영체제부(60)를 포함한다.
주기억장치(10)는 현재 수행되는 프로그램 및 그 중간 결과와 최종 결과를 일시 기억하는 부분이며, 보조기억장치(20)는 파일, 데이터 등을 반영구적으로 저장하는 부분으로 상기 주기억장치보다 훨씬 큰 용량을 갖는다.
중앙처리장치(30)는 상기 주기억장치에 기억되어 있는 프로그램을 수행시키는 부분이며, 입출력장치(40)는 사용자와의 인터페이스 및 다른 시스템과의 인터페이스를 위해 필요한 부분으로 디버깅 중에 발생하는 모든 오류 메시지를 입출력하며 분산 컴퓨팅 환경에서 다른 시스템과의 데이터 입출력에도 관계한다.
시스템 버스(50)는 시스템 내의 각 장치간의 메시지 전송을 담당하며, 분산 운영체제부(60)는 상기 각 장치를 제어하며 분산 소프트웨어 환경에서 다른 시스템과의 데이터 전송도 관리한다.
상술한 바와 같이 본 발명을 바람직한 실시예를 들어 설명하였지만, 본 발명은 이에 한정되지 아니하며 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다양한 한정이나 부가 등을 가하여 본 발명을 여러 가지 다양한 형태로 구체화할 수 있음은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게는 자명한 것이다.
상술한 바와 같이 동작하는 본 발명에 따른 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법은 클라이언트 프로그램과 서버 프로그램 간의 원격 함수 호출을 지역 함수 호출로 자동 변환하는 것에 의해 이들을 하나로 통합하여 하나의 컴퓨터에서 실행 가능하도록 만듦으로써 디버거를 이용하여 클라이언트 프로그램과 서버 프로그램을 한번에 모두 추적할 수 있도록 하는 효과를 갖는다.

Claims (5)

  1. 중앙처리장치, 주기억장치, 보조기억장치, 입출력장치, 시스템 버스 및 분산 운영체제를 포함하는 분산 컴퓨팅 시스템에 적용되는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법에 있어서,
    사용자의 디버깅 모드 선택에 따라 클라이언트 프로그램과 서버 프로그램에서 원격 함수 호출과 관련된 정보를 추출하는 단계와,
    상기 추출 단계에서 추출된 정보에 기초하여 원격 함수 호출을 지역 함수 호출로 변형하는 단계와,
    상기 변형 단계에서의 결과에 기초하여 두 소스 코드를 통합하여 실행 파일을 생성하는 단계와,
    상기 생성 단계에서 생성된 실행 파일에 기초하여 오류 검사 루틴을 실행하는 단계를 포함하는 것을 특징으로 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법.
  2. 제 1항에 있어서,
    상기 추출 단계에서 추출된 정보는 통합 프로그램을 관리하는 기억장치에 저장되는 것을 특징으로 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법.
  3. 제 1항에 있어서,
    상기 변형 단계에서 디버깅시 참조되고 출력되는 정보들이 동일하게 유지되도록 소스 코드를 변형할 때 원격 함수 호출과 관련된 부분을 제외한 응용 로직 및 지역 함수 정의에 해당하는 소스 코드는 제외되거나 수정되지 않는 것을 특징으로 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법.
  4. 제 1항에 있어서,
    상기 변형 단계에서 디버깅시 참조되고 출력되는 정보들이 동일하게 유지되도록 코드의 수정시에도 특정 코드의 라인 번호 즉 소스 코드 상에서의 위치는 변경되지 않고 유지되는 것을 특징으로 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법.
  5. 제 1항에 있어서,
    상기 오류 검사 루틴은 통합 프로그램 실행 단계, 통한 프로그램 추적 단계, 중단점 설정 단계, 변수 시험 단계 및 변수 변경 단계를 포함하는 것을 특징으로 하는 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법.
KR1019980055982A 1998-12-18 1998-12-18 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법 KR100299623B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980055982A KR100299623B1 (ko) 1998-12-18 1998-12-18 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980055982A KR100299623B1 (ko) 1998-12-18 1998-12-18 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법

Publications (2)

Publication Number Publication Date
KR20000040362A KR20000040362A (ko) 2000-07-05
KR100299623B1 true KR100299623B1 (ko) 2001-09-06

Family

ID=19563593

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980055982A KR100299623B1 (ko) 1998-12-18 1998-12-18 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법

Country Status (1)

Country Link
KR (1) KR100299623B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026645B (zh) * 2019-11-20 2023-11-28 航天信息股份有限公司 用户界面自动化测试方法、装置、存储介质及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428782A (en) * 1989-09-28 1995-06-27 Texas Instruments Incorporated Portable and dynamic distributed applications architecture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428782A (en) * 1989-09-28 1995-06-27 Texas Instruments Incorporated Portable and dynamic distributed applications architecture

Also Published As

Publication number Publication date
KR20000040362A (ko) 2000-07-05

Similar Documents

Publication Publication Date Title
Rosenblum A practical approach to programming with assertions
US9015671B2 (en) Integrating program construction
US8156473B2 (en) Model oriented debugging
US20040205720A1 (en) Augmenting debuggers
US20070277163A1 (en) Method and tool for automatic verification of software protocols
US7900198B2 (en) Method and system for parameter profile compiling
US9003367B2 (en) Specific debug trace collecting
US20070055911A1 (en) A Method and System for Automatically Generating a Test-Case
US8776024B2 (en) Software application fine-tuning method, system, and corresponding computer program product
US6493834B1 (en) Apparatus and method for dynamically defining exception handlers in a debugger
US7363617B2 (en) Database breakpoint apparatus and method
US8225286B2 (en) Debugging interpreted input
US8533683B2 (en) Stack walking enhancements using sensorpoints
US7062753B1 (en) Method and apparatus for automated software unit testing
Brörkens et al. Dynamic event generation for runtime checking using the JDI
CN112286784A (zh) 一种测试用例生成方法、装置、服务器及存储介质
US8365154B2 (en) Multi-language software development
KR100299623B1 (ko) 클라이언트 프로그램과 서버 프로그램의 통합 디버깅 방법
CN115291855A (zh) 一种基于互联网信息的软件开发设计系统
Lutz et al. Testing tools (software)
Wotawa et al. The Java2CSP debugging tool utilizing constraint solving and model-based diagnosis principles
CN114968751A (zh) 一种无代码开发平台的程序调试方法和程序调试装置
Peleska et al. Formal methods for the international space station ISS
KR100214125B1 (ko) 전전자 교환기에서 함수 파라미터 추적 방법
Heckeler et al. Accelerated model-based robustness testing of state machine implementations

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070531

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee