論文 - 片山 徹郎
-
Prototype of an automatic visualization tool for java to educate novice programmers
Kita Y., Kawasoe T., Katayama T.
Proceedings of the IASTED International Conference on Software Engineering: part of the 23rd IASTED International Multi-Conference on Applied Informatics, SE 2005 307 - 312 2005年12月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:Proceedings of the IASTED International Conference on Software Engineering: part of the 23rd IASTED International Multi-Conference on Applied Informatics, SE 2005
The demand for software is increasing more rapidly than ever. The demand for the programmers is increasing. It is important to educate novice programmers in order to increase the number of skillful programmers. This paper describes a prototype of an automatic visualization tool "Avis" for Java programs to educate the novice programmers to the programming. "Avis" generates a flowchart and paths, from the source code. Since "Avis" visualizes correspondence of the statements of the source code to the flowchart and paths, the novice programmers can understand the behavior of Java programs easily.
-
Proposal of a method to support testing for Java programs with UML
Katayama T., Yabuya Y.
Proceedings - Asia-Pacific Software Engineering Conference, APSEC 2005 533 - 540 2005年12月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:Proceedings - Asia-Pacific Software Engineering Conference, APSEC
There is an increasing need for effective testing of software for complex safety-critical applications. This paper proposes a supporting method of testing for Java programs by using Unified Modeling Language (UML) in order to improve the reliability of them. The correspondences of source codes in Java and elements of a class diagram, a sequence diagram, and a statechart diagram have been extracted. By using the extracted correspondences as test items in testing, it becomes possible to test effectively the specification of software, the structure of Java programs, the flows of processing of a system, and the flow of transition between states. Moreover, in order to confirm the validity of the proposed method, a prototype tool to support testing for Java programs is implemented. The inputs of this prototype are three diagrams, and the outputs are test items generated from, the extracted correspondences. As an example, a source code of blackjack game in Java has been tested by using the test items outputted from the prototype. It has been possible to test 67.2% of the number of lines in the whole source code. © 2005 IEEE.
-
Java プログラムを対象としたオブジェクト間の呼び出し関係情報を含んだコントロールフローグラフの生成について
川添 貴議, 片山 徹郎
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス 105 ( 331 ) 1 - 6 2005年10月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:一般社団法人電子情報通信学会
Javaではオブジェクトとして、他のクラスなどのメソッドや変数が呼び出される場合があり、オブジェクトが呼び出されると、それがメソッドである場合にはそのメソッドに制御が移る。この呼び出し関係が、プログラムの動作を理解することを困難にしている。そこで本研究では、Javaプログラムの動作への理解を促進することを目的として、オブジェクトの呼び出し関係情報を含んだコントロールフローグラフを生成する。コントロールフローグラフを用いて、プログラムを可視化することにより、プログラムの動作を理解するために必要な時間の軽減を目指す。
-
組込みシステムの性能に応じたUMLの変形について
共著者:佐々木心也, 片山徹郎
情報処理学会組込みソフトウェアシンポジウム2005 (ESS2005), 140-143頁 2005年10月
-
JavaParserを利用したプログラム可視化のための静的解析部の作成
川添 貴議, 片山 徹郎
宮崎大學工學部紀要 34 249 - 256 2005年8月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:宮崎大学
Abstract ###Recently, Java programs are widely diffused to society. It is thought that opportunity ###to have to understand source codes of the Java programs described by others increases in ###order to maintain them. In that case, the time needed to understand their behavior can ###be reduced by introducing program visualization. This research aims at implementing ###a syntax analyzer to understand the behavior. It composes a result display part and a ###static analytical part. In this paper, a static analytical part is implemented by using ###JavaParser. As examples, Java programs are applied to the static analytical part. As ###a result, it has confirmed that the part can output analytical data correctly. However, ###the programs cannot be visualized because the result display part is not improved.
-
Extraction of Transformation Rules from UML Diagrams to SpecC
KATAYAMA Tetsuro
IEICE transactions on information and systems 88 ( 6 ) 1126 - 1133 2005年6月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:電子情報通信学会
Embedded systems are used in broad fields. They are one of the indispensable and fundamental technologies in a highly informative society in recent years. As embedded systems are large-scale and complicated, it is prosperous to design and develop a system LSI (Large Scale Integration). The structure of the system LSI has been increasing complexity every year. The degree of improvement of its design productivity has not caught up with the degree of its complexity by conventional methods or techniques. Hence, an idea for the design of a system LSI which has the flow of describing specifications of a system in UML (Unified Modeling Language) and then designing the system in a system level language has already proposed. It is important to establish how to convert from UML to a system level language in specification description or design with the idea. This paper proposes, extracts and verifies transformation rules from UML to SpecC which is one of system level languages. SpecC code has been generated actually from elements in diagrams in UML based on the rules. As an example to verify the rules, "headlights control system of a car" is adopted. SpecC code has been generated actually from elements in diagrams in UML based on the rules. It has been confirmed that the example is executed correctly in simulations. By using the transformation rules proposed in this paper, specification and implementation of a system can be connected seamlessly. Hence, it can improve the design productivity of a system LSI and the productivity of embedded systems.
-
Extraction of Transformation Rules from UML Diagrams to SpecC 査読あり
T. Katayama
IEICE Trans. on Info. & Sys., Vol.E88-D, No.6, 1126-1133 E88-D ( 6 ) 1126 - 1133 2005年6月
記述言語:英語 掲載種別:研究論文(学術雑誌)
-
Prototype of an Automatic Visualization Tool for Java to Educate Novice Programmers
共著者:Y. Kita, T. Kawasoe, and T. Katayama
Proc. Int'l Conf. on Softw. Eng. (SE 2005), as part of the 23rd Int'l Association of Sci. and Tech. for Development (IASTED) Int'l Multi-Conf. on Applied Informatics, 307-312 2005年2月
-
プログラミング支援のためのUMLから Java ソースコードへの変換規則の抽出
下村 希世人, 片山 徹郎
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス 104 ( 570 ) 25 - 30 2005年1月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:一般社団法人電子情報通信学会
近年, UMLを用いたオブジェクト指向開発事例が増えている.また, マーケットの競争が激化しソフトウェアを非常に短期間にリリースしなければならない.本論文では, プログラミング支援を目的とし, UMLおよびJavaの仕様の範囲内で, クラス図, アクティビティ図, シーケンス図, および, コラボレーション図の4つのダイアグラムの要素からJavaソースコードへの変換規則を抽出する.本論文が提案する変換規則とは, ダイアグラムの要素とJavaソースコードとの対応関係に着目することにより, Javaソースコードの生成支援を行う際の規則を指す.この規則を用いることにより, UMLからJavaソースコードを部分的に生成できることを確認した.
-
初心者を対象とした Java プログラム自動可視化ツールの実現に向けて
喜多 義弘, 川添 貴議, 片山 徹郎
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス 104 ( 570 ) 19 - 24 2005年1月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:一般社団法人電子情報通信学会
ソフトウェアの需要の急速な増加に伴い, プログラマの需要も増加している.熟練したプログラマの数を増加させるために初心者プログラマを教育することは重要である.この論文では, 初心者プログラマのプログラミング教育を支援することを目的として, Javaを対象としたプログラムの自動可視化ツール"Avis"の実現について述べる.Avisは既存のプログラムのソースコードから, フローチャートおよび実行パスを生成する.Avisが生成するフローチャートおよび実行パスによって, ソースコードの実行の流れを視覚的に確認でき, 初心者プログラマは既存のJavaプログラムの振る舞いを容易に理解することができる.
-
UMLの複数のダイアグラムを用いた Java プログラムのテスト手法に関する一考察
藪谷 悠介, 下村 希世人, 片山 徹郎
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス 104 ( 466 ) 7 - 12 2004年11月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:一般社団法人電子情報通信学会
ソフトウェア開発設計において,オブジェクト指向技術を用いた開発の増加に伴い,UML(Unified Modeling Language)が注目されている.一方で,システム稼動前のテストを十分に実施できず,そのために障害発生を防げなかった事件が増えてきている.本研究は,テストの際にUMLを利用することにより,オブジェクト指向プログラミング言語Javaで記述されたプログラムの信頼性を向上させることを目的としている.本稿では,UMLのクラス図,シーケンス図,ステートチャート図の3つのダイアグラムとJavaソースコードとの対応関係を抽出した.抽出した対応関係をテスト設計の際に利用することにより,Javaプログラムの構造や,システムの処理の流れと状態間の遷移の流れ,および,ソフトウェアの仕様を効果的にテストすることが可能になると考えられる.
-
藪谷 悠介, 片山 徹郎
宮崎大學工學部紀要 33 375 - 382 2004年10月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:宮崎大学
Abstract ###In software development, UML(Unified Modeling Language) is used more as the ###development by using object-oriented technology increases. And, the case in which ###system troubles have occurred owing to insufficient testing has been increasing. This ###research aims at increasing reliability of programs written in Java object-oriented lan-###guage by testing them with UML class diagram. As a preparatory research, this paper ###extracts relations between elements of UML class diagram and source codes in Java. By ###testing source codes with the extracted relations, it becomes possible to check whether ###the structure of the program is implemented as it is designed.
-
LinuxのUSBデバイスドライバのコード分割による抽象化に関する研究
水川 晶太, 片山 徹郎
宮崎大學工學部紀要 33 367 - 374 2004年10月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:宮崎大学
Abstract ###Writing device drivers spends much time and makes efforts because it needs much ###knowledge of the target operating system(OS) and device. And, many device drivers ###must be written. This research aims at reducing the burdens of programmers who ###write device drivers by abstracting device drivers. As a preparatory research, this ###paper adopts Linux as a target OS and USB(Univarsal Serial Bus) device as a target ###device, and defines an algorithm for PROBE function of USB device drivers on Linux. ###USB device drivers on Linux are abstracted with dividing source codes of the device ###drivers by the algorithm. It assists the programmers in understanding structure or ###behavior of device drivers.
-
水川 晶太, 片山 徹郎
情報処理学会研究報告システムソフトウェアとオペレーティング・システム(OS) 2004 ( 82 ) 9 - 16 2004年8月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:情報処理学会
デバイスドライバの作成には,オペレーティングシステム(OS)やデバイスに関する多大な知識を必要とする.またデバイスドライバは各OS,各デバイスごとに作成しなければならない為,デバイスドライバの開発者にかかる負担は大きいものとなっている.本研究では,デバイスドライバの開発にかかる負担を軽減し,デバイスドライバ開発者の作業の分担化を目的として,デバイスドライバのソースコードの抽象化を行う.本稿では,抽象化につなげる為の事前研究として,LinuxのUSBデバイスを対象とし,複数のデバイスドライバのソースコードを解析し,デバイスドライバの一関数であるPROBE関数のアルゴリズムを定義し,そのアルゴリズムに従ってコードを分割する.またDISCONNECT open close関数の分割についての考察も行う.この結果,デバイスドライバのひな型と呼べるものができ,デバイスドライバのコードを書く上での指針を示すことが出来た.Writing device drivers spends much time and makes efforts because it needs much knowledge of the target operating system(OS) and device. And, many device drivers must be written. This research aims at reducing the burdens of programmers who write device drivers by abstracting device drivers. As a preparatory research, this paper adopts Linux as a target OS and USB (Universal Serial Bus) device as a target device, and defines an algorithm for PROBE function of USB device drivers on Linux. USB device drivers on Linux are abstracted with dividing source codes of the device drivers by the algorithm. In addition, this paper tries dividing source codes of DISCONNECT, open, and close functions. It can assist the programmers in understanding structure or behavior of device drivers.
-
A Study of Co-design for Systems with Interfaces of USB Devices in SpecC,
Proc. 7th World Multiconference on Systemics, Cybernetics and Informatics (SCI2003), Vol.7, 234-240 2003年7月
-
SpecCを用いたUSBデバイスのデバイスドライバとファームウェアの協調設計
片山 徹郎
宮崎大學工學部紀要 32 357 - 364 2003年7月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:宮崎大学
Abstract ###This rcsearch aims at increasing productivity of design for systems used ###USB(Universal Serial Bus) by co-design with SpecC, which is one of system level lan-###guages. As a preparatory research, this paper attempts co-design of device driver and ###firmware which are softwares of USB. First, specification of USB device driver and ###firmware of Linux are described with SpecC, and the specification was verified with ###simulation. Next, a decoder which transforms the specification into the source codes ###of device driver and firmware which can be compiled is implemented in Perl language. ###Executing the both source codes which are generated by the decoder confirmed that ###they satisfied the specification.
-
Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML
Proc. 2002 Asia-Pacific Softw. Eng. Conf. (APSEC 2002), 475-484 2002年12月
-
USBデバイスのソフトウェアを対象としたSpecCによる協調設計
片山 徹郎, 福元 善之
情報処理学会研究報告システムソフトウェアとオペレーティング・システム(OS) 2002 ( 79 ) 39 - 46 2002年8月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:情報処理学会
本研究は、システム・レベル言語 SpecC を用いて、USB(Universal Serial Bus) デバイスを使用したシステムの協調設計を行ない、設計生産性を向上させることを目標としている。本稿では、その予備研究として、USBのソフトウェア側であるデバイスドライバとファームウェアの協調設計を試みた。まず、Linux のUSBデバイスドライバとファームウェアの仕様をSpecCで記述し、その仕様をシミュレーションで検証した。次に、SpecCで記述した仕様から、コンパイル可能なデバイスドライバとファームウェアのソースコードに変換するデコーダを、言語Perlで製作した。デコーダが生成した2つのソースコードを実行し、仕様どおりに動作することを確認した。This research aims at increasing productivity of design for systems used USB(Universal Serial Bus) by co-design with SpecC, which is one of system level languages. As a preparatory research, this paper attempts co-design of device driver and firmware which are softwares of USB. First, specification of USB device driver and firmware of Linux are described with SpecC, and the specification was verified with simulation. Next, a decoder which transforms the specification into the source codes of device driver and firmware which can be compiled is implemented in Perl language. Executing the both sourcecodes which are generated by the decoder confirmed that they satisfied the specification.
-
Javaを対象としたプログラムの基本制御構造を受理する構文解析器の作成
片山 徹郎, 岩城 吉幸
宮崎大學工學部紀要 31 385 - 391 2002年7月
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:宮崎大学
-
Proposal of a supporting method for diagram generation with the transformation rules in UML
Katayama T.
Proceedings - Asia-Pacific Software Engineering Conference, APSEC 2002-January 475 - 484 2002年
記述言語:日本語 掲載種別:研究論文(学術雑誌) 出版者・発行元:Proceedings - Asia-Pacific Software Engineering Conference, APSEC
© 2002 IEEE.Various object-oriented methodologies have been advocated in recent years. Unified Modeling Language (UML) for such notation is becoming increasingly popular. This paper proposes a supporting method for diagram generation with transformation rules in UML to draw diagrams which eliminated contradiction in a short time by using common elements which other diagrams have. The validity of the proposed method is confirmed by implementing a diagram transformation editor and verifying part of the rules on the editor. The rules are extracted and used without any extension or semantics. Consequently, diagrams without contradiction can be generated in a short time. Transformation of diagrams which show the same character as the sequence diagram and collaboration diagram expressing the interaction of an object has generated a near-complete diagram.