-
Notifications
You must be signed in to change notification settings - Fork 0
/
_preparation.html
569 lines (569 loc) · 24.6 KB
/
_preparation.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.23">
<meta name="description" content="この文書は、モデリングツールにastah*を使って、ソフトウェアの開発にUMLを使う方法について学ぶチュートリアルです。">
<meta name="author" content="株式会社チェンジビジョン">
<title>モデルを使ってソフトウェアを開発しよう: UML初学者向けチュートリアル</title>
<link rel="stylesheet" href="css/mystyle.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/prettify.min.css">
<style>.toc-current{font-weight: bold;} .toc-root{font-family: "Open Sans","DejaVu Sans",sans-serif;
font-size: 0.9em;} #content{display: flex; flex-direction: column; flex: 1 1 auto;}
.nav-footer{text-align: center; margin-top: auto;}
.nav-footer > p > a {white-space: nowrap;}</style>
</head>
<body id="_preparation" class="book toc2 toc-left">
<div id="header">
<h1>モデルを使ってソフトウェアを開発しよう: UML初学者向けチュートリアル</h1>
<div class="details">
<span id="author" class="author">株式会社チェンジビジョン</span><br>
<span id="revnumber">バージョン html_0774,</span>
<span id="revdate">2024-05-22</span>
</div>
<div id="toc" class="toc2">
<div id="toctitle">目次</div>
<p><span class="toc-root"><a href="tut_uml_modeling_bs.html">モデルを使ってソフトウェアを開発しよう: UML初学者向けチュートリアル</a></span></p><ul class="sectlevel1">
<li><a href="_preface.html">はじめに</a>
</li>
<li><a href="_copyright.html">注意事項</a>
</li>
<li><a href="_preparation.html"><span class="toc-current">1 準備</span></a>
<ul class="sectlevel2">
<li><a href="_preparation.html#_モデリングツールを用意する">1.1 モデリングツールを用意する</a>
</li>
<li><a href="_preparation.html#_実装環境を用意する">1.2 実装環境を用意する</a>
</li>
<li><a href="_preparation.html#_演習用のプロジェクトを用意する">1.3 演習用のプロジェクトを用意する</a>
</li>
<li><a href="_preparation.html#_ボウリングのスコアのつけ方">1.4 ボウリングのスコアのつけ方</a>
</li>
</ul>
</li>
<li><a href="_structure_design.html">2 スコアシートの構造を調べる</a>
</li>
<li><a href="_model_to_code_design.html">3 モデルとコードの対応づけ</a>
</li>
<li><a href="_behavior_design.html">4 スコアやフレームの状態を調べる</a>
</li>
<li><a href="_program_test.html">5 できあがったプログラムを試す</a>
</li>
<li><a href="_summary.html">6 まとめ</a>
</li>
<li><a href="_other_diagrams.html">7 他の図、他の機能など</a>
</li>
<li><a href="_appendix-01.html">付録 A: モデルやプログラムの作成例</a>
</li>
<li><a href="_bibliography.html">参考文献</a>
</li>
</ul>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_preparation"><a class="anchor" href="#_preparation"></a>第1章 準備</h2>
<div class="sectionbody">
<div class="paragraph lead">
<p>このチュートリアルでは、モデリングツールとして astah* Professional を、実装にはRubyを使います。
最初に、演習に必要な環境を用意しましょう。</p>
</div>
<div class="sect2">
<h3 id="_モデリングツールを用意する"><a class="anchor" href="#_モデリングツールを用意する"></a>1.1 モデリングツールを用意する</h3>
<div class="paragraph">
<p>このチュートリアルで使用するモデリングツール astah* Professional を用意しましょう。</p>
</div>
<div class="paragraph">
<p>購入前に試用したい場合は、次のページを参照してください。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">astah*製品の評価手順</dt>
<dd>
<p><code><a href="https://astah.change-vision.com/ja/shopping/evaluate.html" class="bare">https://astah.change-vision.com/ja/shopping/evaluate.html</a></code></p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>購入する場合は、次のページを参照して、自分に合ったライセンスを選択してください。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">最適なライセンスを見つける</dt>
<dd>
<p><code><a href="https://astah.change-vision.com/ja/shopping/price.html" class="bare">https://astah.change-vision.com/ja/shopping/price.html</a></code></p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>いずれかの方法で、 astah* Professional を入手できたら、次のページを参照して、自分に合ったライセンスを登録してください。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">ライセンス登録方法</dt>
<dd>
<p><code><a href="https://astah.change-vision.com/ja/registry.html" class="bare">https://astah.change-vision.com/ja/registry.html</a></code></p>
</dd>
</dl>
</div>
</div>
<div class="sect2">
<h3 id="_実装環境を用意する"><a class="anchor" href="#_実装環境を用意する"></a>1.2 実装環境を用意する</h3>
<div class="paragraph">
<p>このチュートリアルでは、実装に Ruby を使います。執筆時点では 2.7.2 を使いました。</p>
</div>
<div class="paragraph">
<p>Ruby は、Windows、Mac、Linuxで動作するオープンソースの言語プログラミング言語です。
インストール方法は利用環境によって異なります。
詳しくは、Rubyの公式サイトの説明や、関連するウェブサイトの記事を参考にしてください。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">Rubyのインストール</dt>
<dd>
<p><code><a href="https://www.ruby-lang.org/ja/documentation/installation/" class="bare">https://www.ruby-lang.org/ja/documentation/installation/</a></code></p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>このチュートリアルでは、Rubyの高度な機能、規模の大きなライブラリやフレームワークは使いません。
ですが、Rubyについて多少の知識は必要になるでしょう。
Rubyになじみがない人は、公式サイトにある次のようなページを参考にするとよいでしょう。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">他言語からのRuby入門</dt>
<dd>
<p><code><a href="https://www.ruby-lang.org/ja/documentation/ruby-from-other-languages/" class="bare">https://www.ruby-lang.org/ja/documentation/ruby-from-other-languages/</a></code></p>
</dd>
<dt class="hdlist1">20分ではじめるRuby</dt>
<dd>
<p><code><a href="https://www.ruby-lang.org/ja/documentation/quickstart/" class="bare">https://www.ruby-lang.org/ja/documentation/quickstart/</a></code></p>
</dd>
</dl>
</div>
</div>
<div class="sect2">
<h3 id="_演習用のプロジェクトを用意する"><a class="anchor" href="#_演習用のプロジェクトを用意する"></a>1.3 演習用のプロジェクトを用意する</h3>
<div class="paragraph">
<p>業務やシステムを分析(あるいは設計)するときにUMLのモデル図を使う場合、モデリングの対象のいくつかの側面について、それぞれに向いた図を作成することが一般的です。</p>
</div>
<div class="paragraph">
<p>複数の図で表すのは、大きな問題ならば分割して小さな問題として捉えるほうが整理しやすいからです。
たとえば、システム全体の構造と、その内部のある構成要素の内部の構造を別の図に分けることができるでしょう。
また、関心事によって表すもの(モデルに残すものや削るもの)が変わるからです。
たとえば、あるシステムを設計するのに、構造を表すためにクラス図を使い、振舞いを表すのにシーケンス図やステートマシン図使うといったことです。</p>
</div>
<div class="paragraph">
<p>astah* でも、モデリングの対象に関連した複数の図をまとめて扱えるよう、ひとまとまりのファイルに保存します。astah* では、この複数の図のまとまりのことを「プロジェクト」と呼んでいます。</p>
</div>
<div class="sect3">
<h4 id="create_proj01"><a class="anchor" href="#create_proj01"></a>1.3.1 astah* のプロジェクトを作成する</h4>
<div class="paragraph">
<p>それでは、演習用に astah* のプロジェクトを用意しましょう。</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>astah* を起動する。</p>
</li>
<li>
<p>「ファイル」メニューから「プロジェクトの新規作成」を選択する( <a href="_preparation.html#create_project01">図 1.1</a> )。</p>
</li>
</ol>
</div>
<div id="create_project01" class="imageblock left">
<div class="content">
<img src="images/GSW-20220206-131611.png" alt="GSW 20220206 131611" width="75%">
</div>
<div class="title">図 1.1 新しいプロジェクトを作成する</div>
</div>
<div class="olist arabic">
<ol class="arabic" start="3">
<li>
<p>「no_title」という名前で新しいプロジェクトが作成される( <a href="_preparation.html#create_project02">図 1.2</a> )。</p>
</li>
</ol>
</div>
<div id="create_project02" class="imageblock left">
<div class="content">
<img src="images/GSW-20220206-131639.png" alt="GSW 20220206 131639" width="75%">
</div>
<div class="title">図 1.2 新しいプロジェクトが作成された</div>
</div>
</div>
<div class="sect3">
<h4 id="create_proj02"><a class="anchor" href="#create_proj02"></a>1.3.2 作成したプロジェクトを保存する</h4>
<div class="paragraph">
<p>新規プロジェクトを作成したら、最初に保存しておき、それからモデルの作成に入るようにするとよいでしょう。</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>「ファイル」メニューから「プロジェクトを保存」を選択する( <a href="_preparation.html#create_project03">図 1.3</a> )。</p>
</li>
</ol>
</div>
<div id="create_project03" class="imageblock left">
<div class="content">
<img src="images/GSW-20220206-131657.png" alt="GSW 20220206 131657" width="75%">
</div>
<div class="title">図 1.3 新しいプロジェクトを保存する</div>
</div>
<div class="olist arabic">
<ol class="arabic" start="2">
<li>
<p>「保存」ダイアログが開くので、プロジェクトの保存場所と保存するファイル名を指定する。</p>
<div class="ulist">
<ul>
<li>
<p>ここでは、保存場所として「デスクトップ」に「BowlingScore」フォルダーを作成した。</p>
</li>
<li>
<p>ファイル名に「bowling_score」を指定して保存した( <a href="_preparation.html#create_project04">図 1.4</a> )。</p>
</li>
</ul>
</div>
</li>
</ol>
</div>
<div id="create_project04" class="imageblock left">
<div class="content">
<img src="images/GSW-20220206-131840.png" alt="GSW 20220206 131840" width="75%">
</div>
<div class="title">図 1.4 ダイアログを操作してプロジェクトを保存する場所とプロジェクトファイル名を指定する</div>
</div>
<div class="olist arabic">
<ol class="arabic" start="3">
<li>
<p>保存すると、プロジェクトファイルにつけた名前が「構造ツリー」に反映される( <a href="_preparation.html#create_project05">図 1.5</a> )。</p>
</li>
</ol>
</div>
<div id="create_project05" class="imageblock left">
<div class="content">
<img src="images/GSW-20220206-131907.png" alt="GSW 20220206 131907" width="75%">
</div>
<div class="title">図 1.5 プロジェクトファイル名が、プロジェクト名に反映された</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="注記"></i>
</td>
<td class="content">
<div class="paragraph">
<p>astah* のプロジェクトの作り方についての詳しい説明は、機能ガイドの「プロジェクトの作成と利用」を参考にしてください。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">astah* 機能ガイド プロジェクトの作成と利用</dt>
<dd>
<p><code><a href="https://astah.change-vision.com/ja/manual/278-project-file.html" class="bare">https://astah.change-vision.com/ja/manual/278-project-file.html</a></code></p>
</dd>
</dl>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_ボウリングのスコアのつけ方"><a class="anchor" href="#_ボウリングのスコアのつけ方"></a>1.4 ボウリングのスコアのつけ方</h3>
<div class="paragraph">
<p>ボウリング場では、だいぶ前(1980年代の終りくらい)から、スコアを自動計算してディスプレイに表示するシステムが使われるようになっています。
自動化される前は、受付でスコアシートをもらって、自分たちでスコアを計算し、手書きでスコアをつけていました( <a href="_preparation.html#hand_scoring">図 1.6</a> )。</p>
</div>
<div id="hand_scoring" class="imageblock">
<div class="content">
<img src="images/hand_scoring.jpg" alt="hand scoring" width="50%">
</div>
<div class="title">図 1.6 手でスコアを記入している様子</div>
</div>
<div class="paragraph">
<p>ボウリングの規則とスコアのつけ方について、公益財団法人「全日本ボウリング協会」の「ボウリング競技規則」を参考に、まとめてみました。</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">公益財団法人「全日本ボウリング協会」のボウリング競技規則</dt>
<dd>
<p><code><a href="https://jbc-iwate.com/service/message/201012101.pdf" class="bare">https://jbc-iwate.com/service/message/201012101.pdf</a></code></p>
</dd>
</dl>
</div>
<div class="sect3">
<h4 id="_ボウリングスコアに使う記号"><a class="anchor" href="#_ボウリングスコアに使う記号"></a>1.4.1 ボウリングスコアに使う記号</h4>
<div class="paragraph">
<p>ボウリングスコアに使う記号と意味を <a href="_preparation.html#scoring_symbols">表 1.1</a> に示します。</p>
</div>
<table id="scoring_symbols" class="tableblock frame-all grid-all stretch">
<caption class="title">表 1.1 ボウリングスコアに使う記号と意味</caption>
<colgroup>
<col style="width: 8.8495%;">
<col style="width: 11.5044%;">
<col style="width: 79.6461%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-center valign-top">記号</th>
<th class="tableblock halign-left valign-top">名称</th>
<th class="tableblock halign-left valign-top">意味</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/strike.png" alt="strike" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ストライク</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1投目で10本全てを倒した場合。ストライクをだしたフレームの得点は、次の2投分を加算する。2回続いたら3フレーム目の1投目までを加算する。スコア欄は、それまでは空欄にしておく。ストライクが続くことを「ダブル」「トリプル(ターキー)」と呼ぶ。</p></td>
</tr>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/spare.png" alt="spare" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">スペア</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1投目で残ったピンを、2投目で全部倒した場合。次の1投分を加算する。スコア欄は、それまでは空欄にしておく。</p></td>
</tr>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/miss.png" alt="miss" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ミス</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">フレームの2投目でピンを1本も倒せなかった場合。2投目でガターに落ちても「G」の記号は使わずにこの記号を使う。そのフレームの得点は、1投目で倒したピン数になる。なお、1つのフレームで 2 回投球し、10本のピンを全部倒すことができなかった場合をエラーという。</p></td>
</tr>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/gutter.png" alt="gutter" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ガター</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1投目でレーンの両脇にある溝(ガター)にボールが落ちた場合。2投目はガターに落ちた場合も「ミス」として扱う。</p></td>
</tr>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/split.png" alt="split" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">スプリット</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">1投目で1番ピン(ヘッドピンともいう)と他のいくつかのピンが倒れ、2 本以上のピンが次のような状態に残った場合。スプリットの場合は、1投目のピン数を○で囲む。
(残っているピンの中間のピンが少なくとも1本倒れたとき。例えば7と9あるいは3と10。残っているピンのすぐ前のピンが少なくとも1本倒れたとき。例えば5と6。)</p></td>
</tr>
<tr>
<td class="tableblock halign-center valign-top"><div class="content"><div class="imageblock">
<div class="content">
<img src="images/foul.png" alt="foul" width="60">
</div>
</div>
<div class="ulist">
<ul>
</ul>
</div>
<div class="paragraph nav-footer">
<p></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ファウル</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ファウルラインを越えて投球されたという記号。1投目でファウルした場合、ピンを倒しても1投目のピン数は0になる。2投目は全ピンを立て直す。2投目でファウルした場合、ピンを倒しても2投目のピン数は0になる。第10フレームの3投目がファウルの場合、ピンを倒しても3投目のピン数は0になる。</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect3">
<h4 id="classic_scoring"><a class="anchor" href="#classic_scoring"></a>1.4.2 クラッシックスコアリング</h4>
<div class="paragraph">
<p>古くから使われていて、広く普及しているスコア計算方式です。</p>
</div>
<div class="sidebarblock">
<div class="content">
<div class="title">クラッシックスコアリングにおけるスコア計算の規定</div>
<div class="ulist">
<ul>
<li>
<p>ボウリングの1ゲームは、10 個のフレームをもって構成する。</p>
</li>
<li>
<p>競技者は、ストライクの場合を除き、それぞれのフレームで 2 回ずつ投球する。</p>
<div class="ulist">
<ul>
<li>
<p>ただし、第10フレームがストライクまたはスペアの場合、サービスフレームが追加される。</p>
</li>
<li>
<p>ストライクの場合は、サービスフレームで2回投球できる。</p>
</li>
<li>
<p>スペアの場合は、サービスフレームで1回投球できる。</p>
</li>
</ul>
</div>
</li>
<li>
<p>ゲームの成績は、10個のフレームの合計点によってこれを表す。</p>
<div class="ulist">
<ul>
<li>
<p>適正な投球によって倒されたピンの数をもって計算する。</p>
</li>
<li>
<p>適正に投球されたボールとは、競技者の持っているボールが、手から放れファウルラインを越えたものをいう。</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="imageblock">
<div class="content">
<img src="images/classic_score_sample.jpg" alt="classic score sample" width="100%">
</div>
<div class="title">図 1.7 スコアの例(クラッシクスコアリングの場合)</div>
</div>
</div>
<div class="sect3">
<h4 id="_カレントフレームスコアリング"><a class="anchor" href="#_カレントフレームスコアリング"></a>1.4.3 カレントフレームスコアリング</h4>
<div class="paragraph">
<p>2018年アジア競技大会で採用された新しいスコア計算方式です。</p>
</div>
<div class="sidebarblock">
<div class="content">
<div class="title">クラッシックスコアリングと異なる点</div>
<div class="ulist">
<ul>
<li>
<p>1投目によって10ピンすべてを倒した場合はストライクとなる。ストライクのとき、そのフレームの得点は30となる。</p>
</li>
<li>
<p>続けて2回ストライクの場合は、それぞれのストライクの得点は30となる。</p>
</li>
<li>
<p>1投目の後、残ったピンを2投目によって全部倒した場合は、スペアとなる。スペアのとき、そのフレームの得点は、1投目のピン数に10を加えた数となる。</p>
</li>
<li>
<p>第10フレームでストライクあるいはスペアをとった場合も、3投目はない。</p>
</li>
</ul>
</div>
</div>
</div>
<div class="imageblock">
<div class="content">
<img src="images/current_frame_score_sample.jpg" alt="current frame score sample" width="100%">
</div>
<div class="title">図 1.8 スコアの例(カレントフレームスコアリングの場合)</div>
</div>
<div class="sidebarblock">
<div class="content">
<div class="title">【豆知識】ボウリングの名前の由来</div>
<div class="verseblock">
<pre class="content">「ボウリングをすること」などを意味する「bowl」という英語は、ラテン語で「泡」や「瘤」を意味する「bulla」に由来する。一方、同じ綴りで食器や容器(ボウル)を意味する「bowl」や「球」を意味する「ball」は、ゲルマン語に由来し、本質的に異なる。</pre>
<div class="attribution">
— Wikipedia
</div>
</div>
</div>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="注記"></i>
</td>
<td class="content">
<div class="paragraph">
<p>ボーリングのハンディキャップは、参加者が普段プレーしているときのアベレージ(平均スコア)を基に、力量に応じて設定するそうです。
このチュートリアルでは、ハンディキャップは取り扱わないでおきます。</p>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
<div class="paragraph nav-footer">
<p>← Previous: <a href="_copyright.html">注意事項</a> | ↑ Up: <a href="tut_uml_modeling_bs.html">モデルを使ってソフトウェアを開発しよう: UML初学者向けチュートリアル</a> | Next: <a href="_structure_design.html">第2章</a> →</p>
</div>
</div>
<div id="footer">
<div id="footer-text">
バージョン html_0774<br>
最終更新 2023-06-09 17:35:10 +0900
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/run_prettify.min.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
messageStyle: "none",
tex2jax: {
inlineMath: [["\\(", "\\)"]],
displayMath: [["\\[", "\\]"]],
ignoreClass: "nostem|nolatexmath"
},
asciimath2jax: {
delimiters: [["\\$", "\\$"]],
ignoreClass: "nostem|noasciimath"
},
TeX: { equationNumbers: { autoNumber: "none" } }
})
MathJax.Hub.Register.StartupHook("AsciiMath Jax Ready", function () {
MathJax.InputJax.AsciiMath.postfilterHooks.Add(function (data, node) {
if ((node = data.script.parentNode) && (node = node.parentNode) && node.classList.contains("stemblock")) {
data.math.root.display = "block"
}
return data
})
})
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.9/MathJax.js?config=TeX-MML-AM_HTMLorMML"></script>
</body>
</html>