元ハード屋です。
先日ASIC設計(半導体設計)の方との話で驚いたことがあります。その方はC言語を使いフローチャートは書かずにいきなりコーデングするそうです。
装置物(マイコンでの制御)の設計を10年位前にしていましたが、その時一緒に仕事をしてましたソフト屋さんはたしかC言語を使い、そして沢山のフローチャートを書いていました。
最近はC言語ではフローチャートを書かないのでしょうか。また言語(FORTRAN、COBOL、BASIC、、、)或いはやる内容により差があるのでしょうか。私はプログラマーでは有りませんが最近Visual Basicで割合大きなプログラムを組みましたが、その時はフローチャートを書きました。あとで変更する時フローチャートが無いと困るだろうと感じています。
No.1ベストアンサー
- 回答日時:
頭の中で整理できたり、小規模なモノ、動作させながら仕組みが変わる可能性が
ある場合はフローチャートを書かずにすぐに打ち込みするのではないでしょうか?
比較的小さいものはフローチャートを書かずに組ながら考えます。
出来上がってからちゃんとしたフォローチャートを残しますけど。
(プログラムを入力するのは面倒ではなくてもフローチャートを書くのは面倒
という人もいますので。)
ご回答有難う御座います。
>比較的小さいものはフローチャートを書かずに組ながら考えます。
これでしたら良く理解できます。
>出来上がってからちゃんとしたフォローチャートを残しますけど。
後でプログラムを見直す時や、特に製作者以外が見る時はフローチャートが無いと理解するのに大変だろうと考えた次第です。
No.7
- 回答日時:
私もこの十年、書く書かないで変化を感じていますので一言言わせてください。
6800,8080からアセンブラを始めてH8,PIC,SH4,Basic,C,C++,Delphiと今でも現役ですが低位な言語ほどフローは重要と思っています。
アセンブラならほぼ一対一でフロー通りに打ち込めばバグは殆ど無いレベルが可能。 フローをいい加減にすると単純なバグ取りで大幅に時間がかかると思います。
Cでは経験によりライブラリが貯まりますのでそれにより機能ブロックで書くことが多くなりました。
WindowsアプリではユーザーIFは仕様書に近いレベルとしハードアクセスやシーケンス、時分割動作などは仕組みに納得がいくまで紙で表現してからコーティングしています。
25年前のアセンブラ、コンパイル時間と比較すると相当な差がありますがその分作業も増えていますのでやはり一言で説明できないような処理をフローなど書かないでいきなり打ち込んでいくのは複雑なシステムになるほど危険度が高くなるでしょう。
部下や学生に指導する機会があったときは「わからなくなったら紙に書きなさい」と言っています。
脳内思考で見渡せないときは既に能力のオーバーフローBitが立っていますのでブロック図やシーケンスチャート見直すことで道が開けてくると思っています。
ですから言語やシステムによる違いがあると思いますが教育や業務であるなら間違いなく何が目的か理解できるようなソース以外の表現が必要と思います。
ご回答有難う御座います。
>6800,8080からアセンブラを始めて
懐かしいCPUです。私はZ80をよく使ってハード設計をしていました。一緒に仕事をしてましたソフト屋さんからフロチャートが大事だと何度も聞いた記憶があります。
>脳内思考で見渡せないときは既に能力のオーバーフローBitが立っていますのでブロック図やシーケンスチャート見直すことで道が開けてくると思っています。
私も同じ考えです。
No.6
- 回答日時:
#5です。
規模が小さければ、モジュール単位で、
何をしているか、またI/Fの詳細など
書けば、こと足りると思います。
言語の知識と、ある程度の設計書があれば、
ディーテールフローがなくても、別の人が
メンテするのも、可能と思われます。
------------------
先日のニュースで、金融系企業で現行のシステム
をメンテナンスしようとしたところ、現在のSE、
PGでは、当時の設計書が理解できないため、現
行のシステムに変る新しいシステム開発に着手し
たと言っていました。
No.5
- 回答日時:
いまは、現場を離れたSEです。
お客様と契約する際、納品物を明記します。
その中で、フローがあれば、当然書きますし、
フロー作成の時間もスケジューリングし、契約
見積りを立てます。
お客様によっては、機能仕様書・外部設計書(
モジュール構成)・内部設計書(詳細設計書)・
ソースコードのレビューを要求されるケースも
あります。
また、ソフト業界では、ISOを取得するところ
も、増えたため、品質管理の一環としても、ドキ
ュメントの作成フェーズは、重要視されてきてい
と思います。
ご回答有難う御座います。
>その中で、フローがあれば、当然書きますし、
お書きになるのですね。
過去の発言を調べてみますと書く人書かない人とも沢山いらっしゃいます。書かない人は規模が小さいかフローチャートに代わる資料が有ると言う事でしょうか。
No.4
- 回答日時:
言語に関わらず、ソースコードと1対1になっているような詳細なフローチャートは書かないですね。
機能単位でのフローは書きますが。
あと、家にいてPCが手もとにない時にふとアイデアが浮かんだりすると裏紙にグリグリ書いて形にする、というのもあります。
いずれにせよフルには書かないです。
理由は、
1、実装速度
2、プログラマとコーダが同一人物であること(=僕なんですが:笑)
3、メンテナンスも同一人物であること
といったところです。
要するに後の事を考慮できるほど金額的にも納期的にも余裕が無い場合が多い、って事かな。トホホ…
ただ、コーディングと同じレベル(やスピード)でフローチャートが書けるならやった方が絶対いいと思います。
机上でロジックが完成してあとは打ち込むだけ…。
素晴らしい。僕もそうありたいです。
ご回答有難う御座います。
>言語に関わらず、ソースコードと1対1になっているような詳細なフローチャートは書かないですね。
機能単位でのフローは書きますが。
これは私もそのようにしています。
>3、メンテナンスも同一人物であること
時間が経ちますとどんどん記憶が薄れていきますのでフローチャートを書かない人は後で大変ではないかと思ったのですが大丈夫なのでしょうか。
No.2
- 回答日時:
最近はCOBOLとSQLを使っている、一般的なソフト開発者です。
ホストの経験、PL/I、VBS等あります。最近フローを書いた記憶がありません。要件定義から始まって機能設計書を書くまでの段階で、機能をバラバラにしてしまい、一つ一つのモジュールをフローを書くまでもないくらいの単機能にしてしまいますから。
フローを書かないと分からないようなモジュールを新人に渡しても、どんな物が出来てくるか分かりませんしね、テストもケースばかり増えて効率悪いです。
今の現場ではあまりフローは書きませんよ。
ご回答有難う御座います。
>最近フローを書いた記憶がありません。要件定義から始まって機能設計書を書くまでの段階で、
何時ぐらいから書かなくなったのでしょうか。
製作者以外の人が全体のプログラムの内容を理解するのに要件定義、機能設計書があれば大丈夫と言う事でしょか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 【フローチャートの書き方について】 勤務年数と勤務場所を入力し,給与額を表示するフローチャートを作成 2 2022/10/04 12:11
- その他(開発・運用・管理) 基本設計の業務フローと、詳細設計のフローチャートの違いは ? 1 2022/07/22 18:42
- C言語・C++・C# プログラムの時、フローチャートはどうなりますか?図でお願いします。 int main(void) { 1 2022/10/01 22:45
- その他(パソコン・スマホ・電化製品) 腕時計の設定の仕方について 5 2022/08/21 13:40
- その他(形式科学) 5×5を求める処理のフローチャートどうやって書けばいいか教えてくださいm(_ _)m 2 2022/04/18 22:39
- 人事・法務・広報 入社時の扶養状況確認方法 1 2023/02/09 17:52
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- その他(ソフトウェア) 簡単な絵が描けるソフト(wordに挿入) 3 2022/05/20 22:16
- IT・エンジニアリング FORTRAN、COBOL、C、Java、C++とか誰が作ったのですか?言語習い使いまた出て、キリが 4 2023/05/06 23:11
- その他(コンピューター・テクノロジー) 半導体製造装置は韓国や台湾の設計に 合う 半導体製造装置を作らなければならないけど。 複雑になればな 5 2023/08/10 16:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ものづくりに向いているプログ...
-
電化製品って何言語?
-
OSはどんなコンピューター言語...
-
割り込みベクターをC言語で書...
-
おすすめのプログラミング言語...
-
これらのプログラミングで使う...
-
エクセルVBAのIf,Then 構...
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
ライン数とステップ数の違いは?
-
03分22秒36のような時間の単位...
-
verilog 符号付加減算(最上位...
-
ビットシフトってどんな時使うの?
-
文字参照は10進数と16進数では...
-
PICでパルス数をカウントする方法
-
浮動小数点演算と固定小数点演...
-
VC6でIDEでソース部分のアセン...
-
visualbasic のコード中で 100...
-
小数点の引き算が不正確
-
CPUのビット数と、メモリ(主記...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ものづくりに向いているプログ...
-
電化製品って何言語?
-
昔のゲーム製作に使用する言語...
-
アセンブリ言語からC言語への変...
-
コンピュータ言語とプログラミ...
-
パチンコやスロットについて
-
割り込みベクターをC言語で書...
-
コンパイラーとアセンブラの違い
-
プログラミングを突き詰めて考...
-
Windowsはいったい何言語で書か...
-
アセンブリ言語を学ぶことは意...
-
各行のあるカラムのデータを抽...
-
フローチャートを書く書かない
-
今はマシン語は使わないんですか?
-
瞳孔に合わせて動くパソコン。...
-
パソコンについて詳しくなりたい
-
これらのプログラミングで使う...
-
0xffffとは?
-
エクセルVBAのIf,Then 構...
-
8ビットのデータの、先頭ビット...
おすすめ情報