JP2000003283A - プログラム作成支援装置 - Google Patents

プログラム作成支援装置

Info

Publication number
JP2000003283A
JP2000003283A JP10167331A JP16733198A JP2000003283A JP 2000003283 A JP2000003283 A JP 2000003283A JP 10167331 A JP10167331 A JP 10167331A JP 16733198 A JP16733198 A JP 16733198A JP 2000003283 A JP2000003283 A JP 2000003283A
Authority
JP
Japan
Prior art keywords
unit
program
test
result
source
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP10167331A
Other languages
English (en)
Inventor
Makoto Takiguchi
誠 滝口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP10167331A priority Critical patent/JP2000003283A/ja
Publication of JP2000003283A publication Critical patent/JP2000003283A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【課題】 プログラム製造の共通化・標準化を図り、単
純バグ発生防止と早期摘出につながるプログラム作成支
援装置を提供する。 【解決手段】 ソースプログラムD1に対し言語仕様4
0及びコーディング規約50をチェックするとともにコ
ンパイルを行うコンパイル部14と、ソースプログラム
D1のコンパイル結果に対し、予め登録された試験デー
タ30を用いて試験を行う単体試験部18と、単体試験
部18の試験結果及びコンパイル部14のコンパイル結
果に基づいて、ソースプログラムD1のデバックを行う
デバック部16と、単体試験部18の試験結果を結果リ
ストL1として表示する表示部とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラム作成支
援装置に係り、特にプログラミング時にその言語仕様や
コーディング規約が意図したように行われているか否か
をチェックするプログラム作成支援装置に関する。
【0002】
【従来の技術】現在、コンピュータはその処理能力が飛
躍的に進歩した。そこで、コンピュータの利用者の使い
勝手の向上や、高機能を盛り込んだソフトウェアを提供
するために、複数人がプログラミングを分担して1つの
ソフトウェアを作成することが一般的に行われている。
このような状況においては、プログラムのデバッグ時に
バグを容易に発見できるように、また他人がソースプロ
グラムを見た場合に記述内容を容易に且つ誤解なく把握
できるようにソースプログラムの記述方法が共通化・標
準化されていることが望ましい。
【0003】このため、プログラムの共通化・標準化を
推進するためにプログラムの製造を行う際に、プログラ
ミングを行うグループ単位、又はソフトウェア会社単位
で独自のコーディング規約を作成し適用している。しか
し、コーディングされた全てのソースプログラムがこれ
らの規約に沿って作成されているかの確認は、プログラ
ミング担当者とレビュアとによる机上レビューで実施さ
れており、レビュー方法やレビュアの資質によって偏り
が発生してしまう恐れがある。
【0004】
【発明が解決しようとする課題】ところで、規約チェッ
クを行う際には、上記のようなプログラミング担当者と
レビュアとによる机上レビュー時に規約チェックだけで
無く、プログラムの機能が過不足なく且つ誤りなく記述
されているか否かについても同時にレビューを行ってい
るので、チェック漏れが出る可能性がある。このよう
に、従来の問題点は、製造したプログラムが言語仕様及
びコーディング規約に沿ってコーディングされているか
の確認が十分に行われているとはいえないという問題が
あった。
【0005】本発明は、上記事情に鑑みてなされたもの
であり、プログラム製造の共通化・標準化を図り、単純
バグ発生防止と早期摘出につながるプログラム作成支援
装置を提供することを目的とする。
【0006】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、ソースプログラムに対し言語仕様及びコ
ーディング規約をチェックするとともにコンパイルを行
うコンパイル部と、前記ソースプログラムのコンパイル
結果に対し、予め登録された試験データを用いて試験を
行う単体試験部と、前記単体試験部の試験結果及び前記
コンパイル部のコンパイル結果に基づいて、前記ソース
プログラムのデバックを行うデバック部と、前記単体試
験部の試験結果を表示する表示部とを具備することを特
徴とする。また、本発明は、前記言語仕様が、前記ソー
スプログラムが記述されてる言語に応じて変更されるこ
とを特徴とする。また、本発明は、前記単体試験部にお
ける試験データを登録するデータ登録部を有することを
特徴とする。
【0007】
【発明の実施の形態】以下、図面を参照して本発明の一
実施形態によるプログラム作成支援装置について詳細に
説明する。図1は、本発明の一実施形態によるプログラ
ム作成支援装置の構成を示すブロック図である。本実施
形態によるプログラム作成支援装置10は、一般的なP
C(パーソナルコンピュータ)やワークステーション等
において実現され、コーディングされたプログラムの言
語仕様チェック及びコーディング規約チェックを行い、
PCやワークステーション上で単体試験までを行うもの
である。
【0008】尚、図1では、プログラム作成支援装置1
0はPC100に接続されている形態を示しているが、
これは本実施形態のプログラム作成支援装置10がサー
バ上に実装され、プログラマがPC100を操作し、ネ
ットワークを介してプログラム作成支援装置10を利用
する場合の形態を示している。本発明の一実施形態によ
るプログラム作成支援装置10は、図1のようにサーバ
上に実装される形態であっても、端末となる各PC上に
実装される形態であってもよい。
【0009】本発明の一実施形態によるプログラム作成
支援装置10は、図1に示したように、ソース読込部1
2、コンパイル部14、デバック部16、単体試験部1
8、データ登録部20からなり、更に、試験データ3
0、言語仕様40、及びコーディング規約50を有す
る。上記試験データ30、言語仕様40、及びコーディ
ング規約50はハードディスク等の記録装置にデータベ
ースの形式で実装される。
【0010】ソース読込部12は、プログラマが記述し
たソースプログラムD1をプログラム作成支援装置10
内に読み込む。コンパイル部14は、言語仕様40やコ
ーディング規約50を読み込み、ソース読込部12で読
み込まれたソースプログラムD1が予め定められている
言語仕様やコーディング規約に従って記述されているか
否かを判断するとともに、ソースプログラムD1のコン
パイルを行う。
【0011】ここで、本明細書及び図面中で用いられて
いる語句「言語仕様」についての説明を行う。例えば、
以下の文(S1)がソースプログラムD1中に記述され
ているとする。 MOVE A TO B ・・・(S1) この文(S1)は、変数「A」の内容を変数「B」に移
動させる文である。
【0012】この文に対して、構文・文法のみのチェッ
クを行うと、「MOVE」に続く「TO」が有るか否か
のチェックのみを行うことができ、変数「A」「B」の
データ型(例えば、整数、小数、文字列等)や長さ(例
えば、データ型が小数の場合に倍数精度であるか等)を
チェックすることはできない。本明細書及び図面中で用
いられている語句「言語仕様」は、文法・構文以外にデ
ータ型、長さを含んた仕様を意味し、言語仕様チェック
と言った場合には、文法・構文、データ型、長さをチェ
ックすることを意味する。
【0013】データ登録部20は試験データ(DB・引
継ファイル等)30を読み込んで作成されたプログラム
の試験用のデータとして登録する。単体試験部18はコ
ンパイル部14から出力されるコンパイルされたデータ
(以下、モジュールと称する)に対して、データ登録部
20において登録されている試験用データを用いて試験
を行う。
【0014】デバッグ部16は、単体試験部18から出
力される単体試験結果及びコンパイル部14から出力さ
れるコンパイル結果を受けて、ソースプログラムD1の
修正等を行う。尚、出力帳票の各項目の出力位置の確認
やDBの更新結果の確認等は、単体試験における出力結
果にて行う。この出力結果は、プリンタから結果リスト
L1として印字出力されたり、ディスプレイ上に結果リ
ストL1として表示される。また、修正されたソースプ
ログラムは完成ソースD10として出力され、ハードデ
ィスク等の記憶装置にファイル形式で保存される。
【0015】次に、以上の構成における本発明の一実施
形態によるプログラム作成支援装置の動作について説明
する。まず、プログラマがPC100を操作して、ソー
スプログラムD1を作成して本実施形態のプログラム作
成支援装置10の動作指示をすると、ソース読込部12
はコーディングしたプログラムD1を読み込む。読み込
まれたソースプログラムD1はコンパイル部14で言語
仕様チェック40、コーディング規約50と突合わされ
て規約違反のチェックが行われるとともにコンパイルが
行われる。
【0016】ここで、コンパイル部14の動作について
詳細に説明する。ソース読込部12から読み込まれたソ
ースプログラムD1に対し、コンパイル部14は、ソー
スプログラムD1の1ステップ毎又は1行毎に言語仕様
チェック40とコーディング規約50にアクセスする。
言語仕様チェック40及びコーディング規約50はテー
ブル化されており、規約違反及びワーニングとなるキー
ワードとそのエラーメッセージが登録されている。この
キーワードと文字列検索にてサーチし、規約違反の有無
を確認する。規約違反があった場合は、その行数とエラ
ー又はワーニングメッセージがコンパイル結果としてデ
ィスプレイ上に出力される。
【0017】コーディング規約50について、一例を挙
げて説明する。コーディング規約として、if文の条件
式において、例えば文字“<>”の使用を禁止したとす
る。しかし、この規約は文法違反とはならないので、以
下のような警告文を画面出力する。 「Warning Error : 12行目:“<>”はコーディング規
約違反です。」
【0018】次に、単体試験用の入力データ(DB・引
継ファイル等)30は、データ登録部20においてデー
タ登録され、単体試験部18においてモジュールの試験
が実施される。この単体試験結果及びコンパイル結果を
受けて、デバッグ部16でソース修正等が行われる。出
力帳票の各項目の出力位置の確認やDBの更新結果の確
認等は、単体試験における出力結果にて行う。この出力
結果は、プリンタから結果リストL1として印字出力さ
れたり、ディスプレイ上に結果リストL1として表示さ
れる。また、修正されたソースプログラムは完成ソース
D10として出力され、ハードディスク等の記憶装置に
ファイル形式で保存される。
【0019】以上説明した本発明の一実施形態によるプ
ログラム作成支援装置は、開発するプログラム言語(4
GL、COBOL言語等)により、言語仕様40を変更
することができる。また、コーディング規約50も変更
可能とすることで、各々のプロジェクトで定めた規約の
登録が可能であるため、そのプロジェクト独自の規約で
の確認が可能となる。
【0020】
【発明の効果】以上、説明したように、本発明によれ
ば、レビュー方法やレビュアの資質の違いにより発生す
る規約チェックの偏りがなくなり、すべてのプログラム
の規約チェックが均一化され、従って、プログラム製造
の共通化・標準化を図り、単純バグの発生防止と早期摘
出につながるという効果がある。
【図面の簡単な説明】
【図1】 本発明の一実施形態によるプログラム作成支
援装置の構成を示すブロック図である。
【符号の説明】
10 プログラム作成支援装置 14 コンパイル部 16 デバック部 18 単体試験部 20 データ登録部 30 試験データ 40 言語仕様 50 コーディング規約 D1 ソースプログラム L1 結果リスト(表示部)

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 ソースプログラムに対し言語仕様及びコ
    ーディング規約をチェックするとともにコンパイルを行
    うコンパイル部と、 前記ソースプログラムのコンパイル結果に対し、予め登
    録された試験データを用いて試験を行う単体試験部と、 前記単体試験部の試験結果及び前記コンパイル部のコン
    パイル結果に基づいて、前記ソースプログラムのデバッ
    クを行うデバック部と、 前記単体試験部の試験結果を表示する表示部とを具備す
    ることを特徴とするプログラム作成支援装置。
  2. 【請求項2】 前記言語仕様は、前記ソースプログラム
    が記述されてる言語に応じて変更されることを特徴とす
    る請求項1記載のプログラム作成支援装置。
  3. 【請求項3】 前記単体試験部における試験データを登
    録するデータ登録部を有することを特徴とする請求項1
    記載のプログラム作成支援装置。
JP10167331A 1998-06-15 1998-06-15 プログラム作成支援装置 Pending JP2000003283A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10167331A JP2000003283A (ja) 1998-06-15 1998-06-15 プログラム作成支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10167331A JP2000003283A (ja) 1998-06-15 1998-06-15 プログラム作成支援装置

Publications (1)

Publication Number Publication Date
JP2000003283A true JP2000003283A (ja) 2000-01-07

Family

ID=15847767

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10167331A Pending JP2000003283A (ja) 1998-06-15 1998-06-15 プログラム作成支援装置

Country Status (1)

Country Link
JP (1) JP2000003283A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091796A (ja) * 2000-09-12 2002-03-29 Hitachi Koukiyou Syst Eng Kk 画面結合型プログラム連動テスト支援装置
JP2007200125A (ja) * 2006-01-27 2007-08-09 Fujitsu Ltd コーディング規約選択プログラム
JP2008250914A (ja) * 2007-03-30 2008-10-16 Canon Software Inc プログラム修正装置及び方法、並びにプログラム
JP2019020990A (ja) * 2017-07-14 2019-02-07 富士通株式会社 プログラム、情報処理装置及び情報処理方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091796A (ja) * 2000-09-12 2002-03-29 Hitachi Koukiyou Syst Eng Kk 画面結合型プログラム連動テスト支援装置
JP4525877B2 (ja) * 2000-09-12 2010-08-18 日立公共システムエンジニアリング株式会社 画面結合型プログラム連動テスト支援装置および支援方法
JP2007200125A (ja) * 2006-01-27 2007-08-09 Fujitsu Ltd コーディング規約選択プログラム
JP2008250914A (ja) * 2007-03-30 2008-10-16 Canon Software Inc プログラム修正装置及び方法、並びにプログラム
JP2019020990A (ja) * 2017-07-14 2019-02-07 富士通株式会社 プログラム、情報処理装置及び情報処理方法

Similar Documents

Publication Publication Date Title
US7937688B2 (en) System and method for context-sensitive help in a design environment
US8694960B2 (en) Computer-implemented method, system and computer program product for displaying a user interface component
US5446900A (en) Method and apparatus for statement level debugging of a computer program
US7478367B2 (en) Dynamic source code analyzer
US6317871B1 (en) System for ensuring the accuracy of file structures in a source-to-source computer program translator
US7877731B2 (en) Formatting and viewing source objects
US20040158820A1 (en) System for generating an application framework and components
US10331425B2 (en) Automated source code adaption to inject features between platform versions
US9311077B2 (en) Identification of code changes using language syntax and changeset data
US20100146494A1 (en) Compiler generator
US7865481B2 (en) Changing documents to include changes made to schemas
US20040158824A1 (en) Method and system for generating executable code for formatting and printing complex data structures
US11714636B2 (en) Methods and arrangements to process comments
US8225286B2 (en) Debugging interpreted input
US10839124B1 (en) Interactive compilation of software to a hardware language to satisfy formal verification constraints
CN110737431B (zh) 软件开发方法、开发平台、终端设备及存储介质
US20100313186A1 (en) Developer-managed debugger data records
CN113687827B (zh) 基于微件的数据列表生成方法、装置、设备及存储介质
US7272824B2 (en) Method for runtime determination of available input argument types for a software program
JP2000003283A (ja) プログラム作成支援装置
US6611924B1 (en) Reducing code size of debug output statements
JPH1173328A (ja) コーディング規約チェックシステム
KR100656559B1 (ko) Bibd 방법론을 이용하는 프로그램 자동 개발 장치
Rossini et al. Emacs Speaks Statistics: A universal interface for statistical analysis
Ornbo Go in 24 Hours, Sams Teach Yourself: Next Generation Systems Programming with Golang

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20001010