<div dir="ltr"><div><div><i>A software project has been completed and the software solution has been running successfully for a few months. Simon is collecting all the documentation that was created during the project. In one of the documents he notices this statement: &#39;When executed, the program must occupy no more than 10 MB of main memory.&#39;</i></div>

<div><i>During which stage of the problem-solving methodology was this statement most probably written?</i></div><div><i>A. design</i></div><div><i>B. analysis</i></div><div><i>C. evaluation</i></div><div><i>D. development</i></div>

</div><div><br></div>A student wrote asking why I said &#39;analysis&#39; (because it&#39;s a non-functional requirement) rather than &#39;design&#39; (because it&#39;s an evaluation criterion.)<div><br></div><div>This made me think...</div>

<div><br></div><div>How <b>do</b> you tell the difference between a solution&#39;s non-functional requirement (e.g. &#39;it must be easy to use&#39;) and an evaluation criterion (e.g. &#39;Is it easy to use?&#39;)  </div>

<div><br></div><div>Surely one depends on the other... and one is produced during analysis, the other during design.</div><div><br></div><div>The question does not give any clue about when the statement was written. The fact that the statement was <b>noticed </b>after implementation does not mean it was intended to apply to the evaluation phase of the PSM. </div>

<div><br></div><div>It could just as easily have been written during analysis in the SRS&#39;s solution requirements and meant to be formally tested at the end of development. </div><div><br></div><div>I still believe the answer is analysis, because as a non-functional requirement its success of failure can be tested immediately during development (does it run in 10M RAM?) whereas an evaluation criterion would usually be evaluated over time (e.g. costs/reliability over several months.)</div>

<div><br></div><div>I believe a non-functional requirement is more a measure of &#39;Is the solution working properly?&#39; (ie. determined during testing... i.e. it&#39;s a functional requirement... i.e. it was written in the analysis phase) rather than &#39;Is it meeting the organisational goals that led to its creation?&#39; (i.e. determined during evaluation... i.e. it&#39;s an evaluation criterion... i.e. it was written in the design phase.)</div>

<div><br></div><div>Has the question shot itself in the foot?</div><div><br></div><div>Ideas?</div><div><br><div dir="ltr">--<div>Mark Kelly</div><div>mark AT vceit DOT com</div><div><a href="http://vceit.com" target="_blank">http://vceit.com</a></div>

<div><br></div><div><span style="color:rgb(0,0,0);font-family:verdana,arial,helvetica,sans-serif;background-color:rgb(253,253,255)"><font size="1">Day 19, I have successfully conditioned my master to smile and write in his book every time I drool.- Pavlov&#39;s Dog</font></span><br>

</div><div><br></div></div>
</div></div>