FuzzyTrade

MQL5プログラミング研究会の案内を目的としています。MQL5プログラミングミングをやさしく解説。要求工学から開発プロセスまで、オブジェクト指向の小さなプログラミングから説明。

MQL5プログラミングの要求分析のまとめ記事--------要求分析(bool)抽出01


要求分析(bool)抽出01
1.ゴール要求
(1)スクリプトで1回きりの計算をする。
(2)計算はbool型にする。
2.シナリオ要求
(1)trueのときcorrectを表示。
(2)falseのときerrorを表示。

正しい
void OnStart() 
  { 
   bool a=true; 
   bool b=true;
   bool c;
   c=!(a&&b);
   if(c){Print("correct");}
   else {Print("error");}   
  }
  
正しい
void OnStart() 
  { 
   bool a=true; 
   bool b=true;
   bool c;
   c=!(a||b);
   if(c){Print("correct");}
   else {Print("error");}   
  }
  

MyFuzzyTrade


間違い
void OnStart() 
  { 
   bool a=true; 
   bool b=true;
   bool c;
   c=(a&b);
   if(c){Print("correct");}
   else {Print("error");}   
  }

要求分析(bool)抽出02
1.アンチモデル要求
(1)コンパイルはエラー、ワーニングなし。
(2)計算結果は正しい。
(3)a&bの計算はandビット演算で論理積演算でない。

間違い
void OnStart() 
  { 
   bool a=true; 
   bool b=true;
   bool c;
   c=(a|b);
   if(c){Print("correct");}
   else {Print("error");}   
  }