2010-04-08 7 views
3

필자는 평생 동안 COBOL을 읽지 않고 새로운 언어로 기존 COBOL 코드를 다시 작성해야했습니다. COBOL 프로그램의 흐름도를 생성 할 수있는 무료 또는 무료 평가판 소프트웨어 패키지가 있습니까?COBOL 코드 용 무료 (맥주와 같이) 플로우 차트 생성기가 있습니까?

나는 "Visustin"와 "비주얼 코드 흐름도를"검토 한

Visustin 코드의 부분을 지 웁니다 및 데모 덜 정확한 원인 데모 버전에 무작위로 회전을한다.

코드 비주얼 플로우 차트가 코드에서 올바르게 작동하지 못했습니다.

내가 시도해 볼 수있는 다른 패키지에 대해 알고 계십니까?

+0

* ... 이전 언어 COBOL 코드를 새 언어로 다시 작성해야합니다 ... * 나는 당신을 위해 잠시 침묵을 지킵니다. –

+0

출력을보고 결과 imho를 복제하십시오! PS는 구두점을주의하십시오. (.) –

+0

하하 !!! 정말 고맙게 생각합니다. – btelles

답변

2

Graphiz를 사용하는 Python에서 COBOL 용 간단한 흐름 차트 생성기를 작성했습니다. 정말 사소한 일이며 내 목적에 유용한 .jpg 차트를 생성합니다. 어쩌면 그것은 당신과 동일하지 않을 수도 있습니다.

어쨌든, 당신이 원한다면 여기에 메일을 보낼 수 있습니다 http://www.contactify.com/a6148 그리고 나는 내 작은 스크립트를 보내 드리겠습니다. 리눅스에 있다면 python이 거의 설치되어있을 것입니다. windows에서는 yapgvb 모듈과 함께 설치해야합니다.

알려주세요! Bye

+2

공개 코드 스 니펫 사이트에 코드를 게시하고 링크를 제공하는 것이 가장 좋은 이유는 무엇입니까? – NealB

+0

이봐, 네가 맞아! 여기에 그것은 http://codepad.org/0sXIwrp2 – synasius

+0

입니다. 내 스크립트는 외부 루틴에 대한 호출을 잡아 내지 못한다는 것을 잊지 않습니다. 모든 호출은 레이블 아래에 있습니다. 그래서 모든 레이블을 잡습니다. 내 목적을 위해 작동 – synasius

4

나는 당신을 부러워하지 않는다. 대부분 손으로 COBOL 프로그램을 추적하는 것은 매우 간단합니다 (지루할지라도). 나는 같은 상황에 처해 있었고 손으로 그것을 끝내었다. 어쨌든 새로운 언어를 배우는 것이 결코 아프지 않으므로 완전히 헛되지 않습니다.

"PROCEDURE DIVISION"구문을 찾아서 시작하십시오. 논리를 추적하기 위해 실행하는 "PERFORM"문장을 따릅니다. 자신을 죽게하지 않으면 더 나은 사람이 나옵니다.

+1

지원해 주셔서 감사합니다. 하지만 수천 줄의 코드를 살펴볼 필요가 있습니다. COBOL을 배우는 것을 좋아하지만, 이제는 더 많은 시간과 직접 비즈니스 ROI가 필요합니다. 위에서 언급 한 것과 같은 흐름 생성기에 대해 알고 있습니까? – btelles

+0

죄송합니다. 무료로 보낼 수있는 흐름 생성기를 사용하거나 보지 못했습니다. 나는 ROI 문제를 이해하고 있지만 COBOL은 대개 너무 오랫동안 붙어서 잘 작동하므로 대체 할 시간과 노력이 거의 필요하지 않습니다. 물론 모든 COBOL 프로그래머가 사라지면 우리는 곤경에 빠집니다. – brydgesk

+2

COBOL은 복잡한 언어가 아니며 자동으로 소스 코드로 변환 한 다음 흐름 차트를 읽는 것보다 빠르다는 것을 알고 있습니다. 도움이되는 힌트 : 당신이 생각하는 언어 구조가 너무 어리 석다는 것을 생각하면 더 깊은 의미가 있어야하며 COBOL 프로그램에 있다고 생각하면 틀린 것입니다. –

2

COBOL은 BNF 표기법보다 오래되었으며 LR (k) 유형 문법을 사용하여 설명 할 수 없습니다. 대부분의 인기있는 렉싱/파싱 전략은이 언어에 대해서는 작동하지 않습니다 (늦은 밤이나 새가 많은 언어가 없어도 적어도). 결과적으로 COBOL을위한 양질의 파서 (parser)가 나오기가 어렵다. 존재하는 사람들은 일반적으로 꽤 페니를 명령합니다.

견고하고 무료로 사용할 수있는 파서가 없으면 COBOL 용 다이어그램 작성 도구가 무료로 제공 될 가능성이 매우 낮습니다. 내가 만난 모든 것은 (나는 여기서 자선되고있다) 매우 약하다.

자신 만의 도구를 만드는 것은 어려운 작업 일 수 있습니다. COBOL Grammar을보십시오. COBOL은 큰 언어이며, 진지한 일을 할 준비가되어 있습니다.

먼저 몇 가지 심각한 수학을 수행하십시오. 얼마나 많은 코드를 변환해야합니까? COBOL을 없애려면 얼마나 가치가 있습니까? 건전한 재무 논쟁이 이루어지지 않으면 현재 COBOL 응용 프로그램과 함께 살 수 있습니다.

진행할 사례가 있으면 코드 분석/변환 시스템의 시작 지점으로 OpenCobol을 조사해보십시오. 그러나이 작업을 수행하려면 C와 COBOL 모두에서 종자를 채워야합니다. IBM COBOL 사투리로 작업하고 IBM 메인 프레임 컴파일러에 액세스 할 수있는 경우 ADATA compiler option을 살펴보면 프로그램의 AST가 제공됩니다. 이것들은 몇 가지 가능한 출발점입니다.

다른 대안은 상업용 COBOL 변환/리노베이션 제품을 얻는 것입니다.나는이 제품들에 대해 많은 개인적인 경험을 갖고 있지 않으며 특정 제품을 추천 할 수 없다.

수학이 전환을 수행 할 수있을만큼 COBOL을 학습하는 것을 지원하지 않으면 기존 COBOL 응용 프로그램과 함께 살면됩니다. 이 결론에 도달 한 사람은 처음이 아닐 것입니다!

+0

LR (k)에서 COBOL에 대해 설명 할 수없는 비트가 잘못되었습니다. 특히 GNU 사람들이 C++에서 Bison을 파헤쳐보고 싶어하는 것과 동일한 유형의 작업을 수행하려는 경우에 그렇습니다. COBOL은 해킹 없이도 GLR 파서로 구문 분석하기가 상대적으로 쉽습니다 (필자는 IBM 엔터프라이즈 파서를 이렇게 구축했습니다). 나는 동의한다, 당신은 무료로 이것들 중의 좋은 것을 발견 할 것 같지 않다. –

+0

@Ira Baxter. GLR 파서가 문제를 해결했지만, K에 대한 합리적인 값이 작은 기존 LR 파서의 줄을 생각하고있었습니다. IBM Enterpise COBOL 용 GLR 파서를 작성하는 데 얼마나 오래 걸렸습니까? 늦은 밤이나 더러운 언어가 많이 포함되어 있었습니까? – NealB

+0

우리는 DMS http://www.semanticdesigns.com/Products/DMS/DMSToolkit.html이라고하는 파싱/변형 툴킷을 구축하고 있습니다. 우리는 DMS 용으로 GLR 용 파서 생성기 시스템을 구축했으며, 많은 언어 정의에 사용하기 때문에 비용이 상각되고 합리적입니다. WRT IBM Enterprise COBOL, GLR 파서는 Bison을 기성품으로 만드는 것과 같습니다. 네, 밤 늦게까지 많은 언어들이 관련되어 있었지만 파서와 아무런 관련이 없었습니다. 오히려, 그것은 Enterprise COBOL의 세부 사항을 설명하는 IBM 문서의 부정확성과 관련이 있습니다. 이것은 진짜 고통이있는 곳입니다. –

1

아니요, 알고있는 신뢰할 수있는 COBOL 순서도 도구가 없습니다 (40 년 경력).

일반적으로 COBOL 프로그램은 매우 복잡한 문제 일 수 있습니다.

COBOL의 필수 요소는 단순합니다. COBOL의 적절한 사용과 논리는 아닙니다.

+0

다음은 신뢰할 수있는 COBOL 플로우 차트입니다 : (예제 COBOL 제어 흐름 그래프 참조) : http://www.semanticdesigns.com/Products/DMS/FlowAnalysis.html. (무료는 아닙니다). –

1

나는 그 중 하나를 찾고 있습니다.

현재 COBOL 프로그램을 작성하고 있지만 프로젝트 관리자는 프로그램 작성, 테스트 및 배포에도 사진을 원합니다.

visustin 것은 좋지만 프로그램을 분석하는 데 오랜 시간이 걸립니다. 아마도 그들이 다소 커지기 때문일 것입니다. 가장 작은 것은 3500+ 회선입니다.

또한 COBOL74를 사용하여 UNISYS 메인 프레임에서 작업하고 있고 vistustin이 DMSII의 COBOL74 확장 중 일부를 이해하지 못하는 데 도움이되지 않습니다.

시간이 얼마 남았는지 알기 때문에 방금 사본을 주문했습니다. 다행히도 단어를 읽을 수없고 그것을 다이어그램으로 볼 필요가있는 사람들에게는 충분히 좋기를 바랍니다.

1

IBM에는 Asset Analyzer라는 제품이 있습니다 (요즘은 Rational Websphere Asset Analyzer 등으로 판매 될 예정입니다).

Cobol 소스의 전체 라이브러리를 분석하고 리펙터를 도우며 충분한 프로그램 이해보고 기능을 제공합니다. 실제로 웹 사이트를 구축하여 프로그램 논리를 원하는 수준에서 서핑 할 수 있습니다.

관련 문제