[go: up one dir, main page]

JPS63181033A - プログラム自動生成方式 - Google Patents

プログラム自動生成方式

Info

Publication number
JPS63181033A
JPS63181033A JP62013780A JP1378087A JPS63181033A JP S63181033 A JPS63181033 A JP S63181033A JP 62013780 A JP62013780 A JP 62013780A JP 1378087 A JP1378087 A JP 1378087A JP S63181033 A JPS63181033 A JP S63181033A
Authority
JP
Japan
Prior art keywords
program
prototype
data
generated
generation method
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
JP62013780A
Other languages
English (en)
Inventor
Hideki Chigira
千吉良 英毅
Takehiro Yokoyama
横山 岳浩
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.)
Hitachi Ltd
Hitachi Seibu Software Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Seibu Software Co Ltd
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 Hitachi Ltd, Hitachi Seibu Software Co Ltd filed Critical Hitachi Ltd
Priority to JP62013780A priority Critical patent/JPS63181033A/ja
Priority to US07/145,989 priority patent/US4949253A/en
Publication of JPS63181033A publication Critical patent/JPS63181033A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/423Preprocessors

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、プログラム自動生成方式に関し、計算処理シ
ステムを用いて計算機プログラム開発を支援する方式に
関する。
〔従来の技術〕
従来、計算処理システムを用いて計算機プログラム開発
を支援するものとしては1日立評論v01゜66、No
3 rシステム開発支援ソフトウェアEAGLE」に記
載されたように、プログラム部品をライブラリとして蓄
え、利用するものとして、EAGLEの部品ライブラリ
管理機能がある。この機能では、部品を標準で用意し、
自由に利用できるようになっているが、データの使い方
に応じて最適なものに修正する機能はない。
〔発明が解決しようとする問題点〕。
上記従来例では、プログラムの機能を指定することによ
って行っていたため、生成されたプログラムを人手で追
加・修正する・必要があった。従って、生成のためのプ
ログラム部品の品質・信頼性が優れていても、できあが
ったプログラムは劣っている可能性があり、改めてテス
ト及びデバッグを行うことになり、システム開発時間が
長くなるという問題があった。
本発明の目的は、このような従来の問題を解決し、人手
による追加・修正を行わずに利用できるプログラムを生
成することが可能なプログラム自動生成方式を提供する
ことにある。
〔問題点を解決するための手段〕
上記問題点を解決するため、本発明では、計算処理シス
テムを用いて計算機プログラム開発を支援するシステム
において、処理の中心となるデータの宣言と該データの
使用法に関する情報を解析する手段と、上記データの型
や使用法に従ってプログラム部品の原型を選択する手段
とを設け、上記解析手段による解析結果に従ってプログ
ラム部品の原型を選択し、該選択された原型を変形して
プログラムを自動生成することに特徴がある。
〔作用〕
本発明においては、 (+)プログラムの機能ではなく、そのプログラムが扱
おうとするデータと、そのデータの使われ方を指定して
生成する。
(2)データがどんな性質のものかによって、許される
操作は限られている。そこで、その操作を行うプログラ
ムの原型を用意しておき、データの名称・型・長さなど
によって必要な変形を加えることにより生成する。これ
らの処理により、データの性質に応じた操作手段のみを
生成する。従って、生成されたプログラムをそのまま使
おうとする限り、そのデータの値の整合性は保証され、
実現手段をモジュールの外に隠すものとなる。
■プログラム原型の変形(マクロ展開)の際、単純なマ
クロの置き換えだけでなく、条件に従った置換や、置換
の繰返し適用を行う機能を持つ。この機能により、1つ
のプログラム原型を多様なデータに柔軟に適用でき、追
加・修正をする必要がなくなる。
〔実施例〕
以下、本発明の一実施例を、図面により詳細に説明する
第2図は、本発明を適用した典型的な例について、その
利用形態を示したものである。
第2図において、21はデータ宣言等を入力し。
その入力された情報等を表示する入出力装置、22は部
品原型ライブラリからプログラム部品原型の選択、解析
、変形等を行う処理装置、23は部品原型ライブラリを
格納している記憶装置、24は処理装置22によって生
成されたプログラム部品を格納する記憶装置である。
生成しようとするプログラム部品の指定は、そのプログ
ラムが扱おうとするデータと、そのデータの使われ方を
、入出力装置21から汎用テキストエディタを用いて入
力することによって行う。
処理装置22は、記憶装置23の部品原型ライブラリか
ら、指定に従って適切な部品原型を選択し、変形して、
記憶装置24に出力する。゛また。入出力装置21は、
入力データに誤りがあった場合などに、その情報を表示
する。
第3図は、生成しようとするプログラムの指定の典型的
な例を示す。この例は、第4図に示すような、マクロの
名前と値を登録しておく表を操作するものである。なお
、この例はC言語のプログラムを用いているが、本発明
の方式そのものはプログラム言語に無関係に適用できる
第1図は、本発明の一実施例を示すプログラム自動生成
方式を説明するための生成処理フローチャートである。
以下、第1図のフローチャートに従って本実施例の動作
を説明する。
まず、入出力装置21から汎用のテキストエディタを用
いてデータ宣言などの入力を行う (101)。すなわ
ち第3図に示すような、対象となる表のデータ宣言と、
その使われ方(class)、検索表の場合はキーが何
かを指定する6次に処理装置22は、このプログラムの
指定に従ってデータ宣言文の構文解析を行う(102)
。解析後、処理装置22は、第5図に示すようなデータ
属性解析衣を作成する(103)。この作成された解析
衣を参照しながら、部品原型ライブラリからプログラム
部品原型を選択する(104)。選択の基準は、部品原
型ライブラリの中に用意されている。classおよび
変数型などに基づく選択規則による。
第6図に1選択規則と、それにより選択されたプログラ
ムの部品原型の例を示す。第6図の1行目が選択規則で
ある。「検索表」というクラスに属し、変数型が5tr
uctで、変数長がOでないときに、この選択規則に合
致する。
このプログラム部品原型の中の、$ (、、、)をマク
ロ名として、第5図に示す構文解析表を参照しながらマ
クロ展開してい<(105)、ただし、 %if〜%e
ndifはある条件が満たされている場合のみ展開する
。また、%fot−1endforは各項目について繰
返し展開することを示す。
処理105のプログラム生成(マクロ展開)の結果、第
7図のようなプログラムが生成される(106)。
本実施例で用いた“検索表″の場合、初期化、設定、参
照のための操作手段が生成される。項目の個数、型がど
のようなものであっても、操作手順はよく似ているため
、1つの部品原型から生成できる。また、人手による修
正・追加を必要としないので、単体テストも省略して使
用でき、生産性・信頼性が向上する。
〔発明の効果〕
以上説明したように、本発明によれば1人手による追加
・修正を行わずに、信頼性が高いプログ第  1  図 ラムを自動生成できるので、ソフトウェア生産性を大幅
に向上させることができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示すプログラム自動生成方
式を説明するための生成処理フローチャート、第2図は
本発明を適月した典型的な例について、その利用形態を
示す図、第3図は生成しようとするプログラムの指定の
例を示す図、第4図は第3図の指定により作成しようと
している表の説明図、第5図は構文解析によって生成さ
れるデータ属性解析表の例を示す図、第6図は選択規則
と選択されたプログラム部品原型の例を示す図、第7図
は生成されたプログラムの例を示す図である。 21:入出力装置、22:処理装置、23:記憶装@(
部品原型ライブラリ)、24:記憶装置(プログラム部
品出力)。 第  2   図 第   3   図 第   Φ   図 第   5   図 第   6   図 第  7  図

Claims (1)

    【特許請求の範囲】
  1. 1、計算処理システムを用いて計算機プログラム開発を
    支援するシステムにおいて、処理の中心となるデータの
    宣言と該データの使用法に関する情報を解析する手段と
    、上記データの型や使用法に従ってプログラム部品の原
    型を選択する手段とを設け、上記解析手段による解析結
    果に従ってプログラム部品の原型を選択し、該選択され
    た原型を変形してプログラムを自動生成することを特徴
    とするプログラム自動生成方式。
JP62013780A 1987-01-23 1987-01-23 プログラム自動生成方式 Pending JPS63181033A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP62013780A JPS63181033A (ja) 1987-01-23 1987-01-23 プログラム自動生成方式
US07/145,989 US4949253A (en) 1987-01-23 1988-01-20 Method and apparatus for automatically generating program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62013780A JPS63181033A (ja) 1987-01-23 1987-01-23 プログラム自動生成方式

Publications (1)

Publication Number Publication Date
JPS63181033A true JPS63181033A (ja) 1988-07-26

Family

ID=11842758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62013780A Pending JPS63181033A (ja) 1987-01-23 1987-01-23 プログラム自動生成方式

Country Status (2)

Country Link
US (1) US4949253A (ja)
JP (1) JPS63181033A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04137038A (ja) * 1990-09-27 1992-05-12 Business Syst Kenkyusho:Kk アプリケーションソフトウェア作成装置

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5084813A (en) * 1988-04-20 1992-01-28 Kabushiki Kaisha Toshiba Rule based system for synthesizing a program suited for a target system in response to an input target system specification
JPH022419A (ja) * 1988-06-10 1990-01-08 Hitachi Ltd プログラム情報管理方式
US5187788A (en) * 1989-05-01 1993-02-16 The United States Of America As Represented By The Secretary Of The Air Force Graphics system for automatic computer code generation
US5075847A (en) * 1989-05-26 1991-12-24 Hewlett-Packard Company Method and apparatus for computer program encapsulation
US5291601A (en) * 1989-06-01 1994-03-01 Hewlett-Packard Company Shared libraries implemented with linking program loader
EP0413651A3 (en) * 1989-08-18 1993-03-03 International Business Machines Corporation Method for dynamic self-modification of data stream constructs
JP2846054B2 (ja) * 1990-04-20 1999-01-13 株式会社日立製作所 出力仕様例示形情報処理システム
US5542085A (en) * 1990-07-24 1996-07-30 Hitachi, Ltd. Method for producing program modules
JP2797698B2 (ja) * 1990-11-14 1998-09-17 株式会社日立製作所 ソフトウェア再利用支援方法
US5291583A (en) * 1990-12-14 1994-03-01 Racal-Datacom, Inc. Automatic storage of persistent ASN.1 objects in a relational schema
US5603018A (en) * 1991-07-15 1997-02-11 Mitsubishi Denki Kabushiki Kaisha Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats
JP2697399B2 (ja) * 1991-09-13 1998-01-14 三菱電機株式会社 位置決め装置及びそのプログラム表示方法
EP0549104B1 (en) * 1991-12-20 1998-05-06 International Computers Limited Program attribute control in a computer system
US5592675A (en) 1992-01-08 1997-01-07 Hitachi, Ltd. Computer controlled method and system capable of preserving information representing plural work states and recovering the work states
JPH05233239A (ja) * 1992-02-20 1993-09-10 Fujitsu Ltd プログラム自動生成装置
JPH05257661A (ja) * 1992-03-13 1993-10-08 Hitachi Ltd ソフトウェア生産方式
US5671415A (en) * 1992-12-07 1997-09-23 The Dow Chemical Company System and method for facilitating software development
US5539862A (en) * 1992-12-08 1996-07-23 Texas Instruments Incorporated System and method for the design of software system using a knowledge base
GB2278213A (en) * 1993-05-18 1994-11-23 Ibm Test program generator.
JP3220588B2 (ja) * 1994-01-28 2001-10-22 三菱電機エンジニアリング株式会社 位置決め装置
US5748973A (en) * 1994-07-15 1998-05-05 George Mason University Advanced integrated requirements engineering system for CE-based requirements assessment
JPH08234975A (ja) * 1995-02-28 1996-09-13 Fujitsu Ltd プログラム生成装置および方法
US5815717A (en) * 1995-10-27 1998-09-29 Authorgenics, Inc. Application program and documentation generator system and method
US5920717A (en) * 1995-12-20 1999-07-06 Nec Corporation Method and apparatus for automated program-generation
DE19615683A1 (de) * 1996-04-22 1997-10-23 Sel Alcatel Ag Verfahren und Steuereinrichtung für eine graphische Steuerung von Abläufen in einem Netzwerkmanagementsystem
US5860004A (en) * 1996-07-03 1999-01-12 Sun Microsystems, Inc. Code generator for applications in distributed object systems
US6275871B1 (en) * 1996-07-03 2001-08-14 Siemens Aktiengesellschaft Asynchronous transport optimizing observer-pattern-like system supporting several modes for an interface definition language-less communication subsystem
US6016394A (en) * 1997-09-17 2000-01-18 Tenfold Corporation Method and system for database application software creation requiring minimal programming
US6324681B1 (en) * 1998-10-01 2001-11-27 Unisys Corporation Automated development system for developing applications that interface with both distributed component object model (DCOM) and enterprise server environments
US6569207B1 (en) 1998-10-05 2003-05-27 International Business Machines Corporation Converting schemas to component models
US6480865B1 (en) 1998-10-05 2002-11-12 International Business Machines Corporation Facility for adding dynamism to an extensible markup language
US6654953B1 (en) * 1998-10-09 2003-11-25 Microsoft Corporation Extending program languages with source-program attribute tags
US6473896B1 (en) * 1998-10-13 2002-10-29 Parasoft, Corp. Method and system for graphically generating user-defined rules for checking language quality
IL142571A0 (en) * 1998-10-16 2002-03-10 Computer Ass Think Inc Apparatus and method for building modeling tools
US7734457B2 (en) * 1999-10-16 2010-06-08 Computer Associates Think, Inc. Method and system for generating dynamic comparison models
US6973639B2 (en) * 2000-01-25 2005-12-06 Fujitsu Limited Automatic program generation technology using data structure resolution unit
US7146347B1 (en) * 2000-08-03 2006-12-05 National Instruments Corporation System and method for automatically creating a prototype to perform a process
AU2002219926A1 (en) * 2000-11-29 2002-06-11 Fourbit Group, Inc. Generating a declarative user interface
US6883164B2 (en) * 2000-12-15 2005-04-19 International Business Machines Corporation Strategy for dynamically modeling ASN.1 data to an object model
US7346891B2 (en) 2002-07-05 2008-03-18 Eka Systems Inc. System and method for automating generation of an automated sensor network
EP1652074A4 (en) * 2003-07-11 2008-08-13 Computer Ass Think Inc ADJUNCTION TO A TOOL FOR MODELING OBJECTS DEFINED BY A USER
US7281694B2 (en) * 2004-06-14 2007-10-16 Hewlett-Packard Development Company, L.P. Mounting bracket
US8589869B2 (en) 2006-09-07 2013-11-19 Wolfram Alpha Llc Methods and systems for determining a formula
US8788524B1 (en) 2009-05-15 2014-07-22 Wolfram Alpha Llc Method and system for responding to queries in an imprecise syntax
US8601015B1 (en) 2009-05-15 2013-12-03 Wolfram Alpha Llc Dynamic example generation for queries
US8484015B1 (en) 2010-05-14 2013-07-09 Wolfram Alpha Llc Entity pages
US8812298B1 (en) 2010-07-28 2014-08-19 Wolfram Alpha Llc Macro replacement of natural language input
US9069814B2 (en) 2011-07-27 2015-06-30 Wolfram Alpha Llc Method and system for using natural language to generate widgets
US9734252B2 (en) 2011-09-08 2017-08-15 Wolfram Alpha Llc Method and system for analyzing data using a query answering system
US8898628B2 (en) 2011-09-23 2014-11-25 Ahmad RAZA Method and an apparatus for developing software
US9851950B2 (en) 2011-11-15 2017-12-26 Wolfram Alpha Llc Programming in a precise syntax using natural language
US9405424B2 (en) 2012-08-29 2016-08-02 Wolfram Alpha, Llc Method and system for distributing and displaying graphical items
US9886245B2 (en) 2016-02-24 2018-02-06 Helix Data Solutions LLC Software development tool using a workflow pattern that describes software applications

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4546435A (en) * 1980-06-24 1985-10-08 Herbert Frank P Graphic computer system and keyboard
US4604690A (en) * 1983-02-22 1986-08-05 International Business Machines Corp. Dynamic configuration for added devices
US4712174A (en) * 1984-04-24 1987-12-08 Computer Poet Corporation Method and apparatus for generating text
JPH0614320B2 (ja) * 1984-10-17 1994-02-23 株式会社日立製作所 図式プログラム・テスト方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04137038A (ja) * 1990-09-27 1992-05-12 Business Syst Kenkyusho:Kk アプリケーションソフトウェア作成装置

Also Published As

Publication number Publication date
US4949253A (en) 1990-08-14

Similar Documents

Publication Publication Date Title
JPS63181033A (ja) プログラム自動生成方式
US5799193A (en) Scenario based iterative method for development of an object oriented system model
EP0735467A2 (en) Compiler with generic front end and dynamically loadable back ends
US20040015838A1 (en) Software building support system
US20040158820A1 (en) System for generating an application framework and components
CN111061475A (zh) 软件代码生成方法、装置、计算机设备和存储介质
CN111026670B (zh) 测试用例的生成方法、测试用例的生成装置及存储介质
JPH11306046A (ja) テストケース生成システム及びテストケース生成方法
JP2004094487A (ja) 文書作成支援システム
US6763516B2 (en) Convention checking apparatus, convention checking system, convention checking method, and storage medium on which is recorded a convention checking program
JP3326713B2 (ja) 図的プログラミング方法
CN104899045B (zh) 一种通用的软件编码辅助系统及方法
JPH04172529A (ja) データ中心型ソフトウエア部品によるプログラム自動生成方式
CN118035250B (zh) 一种基于WPS加载项实现Excel报表导出的方法
JPH01191233A (ja) プログラム自動生成方式
JPH11272524A (ja) データ変換装置および記憶媒体
JP7021990B2 (ja) ソース作成装置
JP2820184B2 (ja) ロードモジュール単体テスト支援装置
JPS6375836A (ja) プログラム作成装置
JPH10207923A (ja) 設計作業における文書作成支援装置
JPH08328840A (ja) プログラム合成方法
JPH03214234A (ja) ソフトウェア自動生成装置
JPH07160536A (ja) 対話型システムのプログラムテスト支援装置
JP2003085013A (ja) Pdmシステム、システム接続用プログラム作成方法
Van Hoeve et al. The TUBA-project: a set of tools for application development and prototyping