Thursday, January 18, 2007
So I mailed the professor that teaches software testing about the
question on the study guide about "Equivalence Term Testing". He had
an answer he got from another student. It turns out that he is taking
the same Software Engineering exam and had notes on the question. So
I got my question answered. That brings me to the end of studying for
the Testing section of the exam. Assuming that the test does not go
off color like the question above I think that I will be able to
handle the area`s covered by the study guide.
As a side affect to contacting this professor I learned that he has a
study group. This study group meets on Sundays which works out for
me. I worked my way into the group. I hope that it turns out to be a
good experience. It is only one day a week and I have been studying
every day. I would not expect it to derail my plans.
It just so happens that I mailed him an answer to the section being
covered on Sunday. I think that that sealed the in for me into the
group.
Saturday, January 13, 2007
Have a wedding to attend this weekend and won`t get much study done.
I did get back and email from Cem Kaner. He is the author of the book
on testing that is recommended in the software engineering reading
list. In short he says that the question in the study guide has no
basis because the terms are to widely used or not used at all as in
the case of "Equivalence Term Testing". He suggested that I get local
(My University) meanings of the terms. That says that these terms are
not in his book. That says that I should look at the other paper
mentioned. I know that these terms are not in that paper. Therefore,
this question is designed for insiders. I don`t like that. More on
this later.
Thursday, January 11, 2007
I found the information about "Mutation Analysis" in the original
paper.
The paper is called "Hints on Test Data Selection: Help for the
Practicing". Programmer DeMillo, R.A. Lipton, R.J. Sayward, F.G.
This paper appears in: Computer Publication Date: April 1978 Volume:
11, Issue: 4 On page(s): 34- 41 ISSN: 0018-9162 Posted online:
2006-07-06 09:21:47.0
I checked our library and because it is from 1978 we do not have it
available. I put in a request for the paper but did not have a
library ID number even though I can view the online version with my
campus connect password. So I emailed the librarian asking for
direction. I hope that this has the information I need. Even though
I cannot read the actual paper yet. I wrote in my notes what I found
in wikipedia. It seems complete but I want a more authoritative
source. I really do believe that wikipedia has good data. I just
want to make sure that the colloquial usage of this term is the same as
the academic use of this term.
I also found a paper with a definition of "Random Testing". It is
different than my intuition. I did know about mapping of pseudo
random numbers across the input domain. What I did`t know about was
obtaining a reliability estimate by having the input distribution
being across the expect software usage distribution rather than the
entire domain of input. The expected software usage is call the
"operational profile".
The name of the paper is: "When only random testing will do."
International Symposium on Software Testing and Analysis archive
Proceedings of the 1st international workshop on Random testing table
of contents Portland, Maine SESSION: Session 1 table of contents
Pages: 1 - 9 Year of Publication: 2006 ISBN:1-59593-457-X
I have a definition of Basis Paths Testing from a government
publication called: "A Method to Determine a Basis Set of Paths to
Perform Program Testing."
J. Poole, "NISTIR 5737 A Method to Determine a Basis Set of Paths to
Perform Program Testing", Department of Commerce, November, 1995.
These have been much more help than the reading list. The reading
list does not have these exact terms. For instance on page 136 of the
book suggested in the reading list a section called "Random Inputs"
describes something like "Random Testing" but never says "Random Testing and does not talk about the "Operational Profile".
I have found stuff on "cyclomatic complexity" and "Equivalence
Partitioning" but still no "Equivalence Term Testing".
Tuesday, January 09, 2007
Still looking through the Software Testing Section of the reading list
and the associated sections of the pre-tests. I still have not found
parts of the questions in readily available literature. The literature
listed in the reading list does not address these terms either. I
have read the papers listed and looked at the glossary of the books
mentioned. I emailed the authors of the pieces of literature to make
sure that I am not missing something. I would suspect that context
does not necessarily clue you in to the meaning of the terms. See my
rant on the last post. It was easy to find a historical document
describing "cyclomatic complexity" at the SEI from the 70`s even though
the term was misspelled in the question on the sample test. Sample
tests are actually past tests given. I wonder if this misspelling was
on those tests also. Because of my learning disability and my
difficulty in reading I don`t often see misspellings. Not an issue
for me...maybe for someone else. The problem for me is when I read something
that is not there. So I look at this catch as a metric of how
meticulous I am being about these documents. I still cannot find
"basis paths", "Equivalence Term Testing" (not equivalence
partitioning), or "Random Testing". These are terms that I have an
intuitive notion about but don`t have a concrete place to look. This
makes me very uneasy. If the test writers are not going to use
common terms they could come up with anything on the test. If these
are historical and have some significance to the university I sure
cannot find them. I did find Equivalence partitioning (not the one I want "Equivalence Term Testing") and Mutation
Analysis in wikipedia. I wish I had a more concrete source.
Wikipedia has some very good documentation but they are still not
considered authoritative. Why are these terms not in the literature reading
list?
Sunday, January 07, 2007
I wrapped up the Metrics section of the reading list today. This
brings and end to looking through the question given on the test that
I found difficult to remember because of the way it was asked. I was
not clued into the author`s names. At any rate I moved on to software
testing. There are two pieces of literature mentioned in this
section. The 2 pieces are a book called "Testing Computer Software"
and a paper called "The Evaluation of Program-Based Software Test Data
Adequacy Criteria". The paper is obtainable only through the ACM
portal from the DePaul Library. If you have never used this before
you will need to use your campus connect password. I had to get the
paper for the section I just finished on Metrics using this method
also. In the current section of study Software Testing the exam has a
question that asks you to describe the weaknesses of three approaches
and then asks you to answer a few questions about a small algorithm.
It has been very frustrating to try and provide definitions for these
approaches. ``Mutation Analysis`` seems to be something easily found
but the other two, "Random Testing" and "Equivalence Term Testing",
are more difficult. It seems that the paper and the book don`t use
the exact terms as used in the test. In the test it even makes a note
to not confuse "Equivalence Term Testing" with "Equivalence
Partitioning". I find this very ugly. If you cannot find reference
to the exact term how do you know that you are describing what the
author of the test really wants? I have looked at the citations to
the paper mentioned and it has several. I looked at the ones that are
by the author. Since this paper is from June 1988 some of the
citations are not listed on the ACM portal or on the IEEE portal. So
I cannot even look back at what the author might have said in previous
papers... maybe using the terms mentioned. Looking in the book I find
that the terms are not in the glossary. I looked through a couple of
the sections and did not find them either. I guess my plan at this
point is to review the paper thoroughly. I will then browse the book
and try and get something. Looking into parts of the question may get
me through if this is one of the questions I have to answer on the
test because of avoidance of one of the others.
So, what in the hell is this supposed to teach me? Does the
frustration of the way this question is worded teach or "TEST"
anything. Why ask about a specific term if it is not the commonly
used term? Because, if it was common you would be able to find it in
many places, for instance you could google for it or find it in
Wikipedia. I think that this kind of question really points to a
problem in the way DePaul tests their PhD students. It is not that
someone won`t be able to pass the test it is that DePaul won`t be able
to test the people that they want for PhD`s.
Thursday, January 04, 2007
I have been looking at the paper `A Critique of Software Defect
Prediction Models`. This is a paper mentioned in the reading list. It
has been a good read. Since I was involved in the CMM effort at the
Bank of America I can see many of the mistakes made then by reading
this paper. Metrics about defect prediction are difficult. The
unknown relationship between defects and failures makes this problem a
pretty large one. The mistakes often made where ones I have seen
being done at the Bank of America. The ones mentioned in the paper
have all been done their. --the problems with `multivariate statistical
approach, problems of using size and complexity metrics as sole
predictors of defects, problems in statistical methodology and data
quality, and false claims about software decomposition and the
goldilock`s conjectures, are all problems exhibited in the Bank of
America`s software process defect predictions. `Management by Fact`
has a loose definition of the word `fact` in their process. At any
rate I understand because this stuff is hard.
One of the questions on the test is related to self experience with
these problems. I think that I have the ammunition. I will just need
to be ready to cover the right bullet points.
Tuesday, January 02, 2007
I have been eating to much. The holiday`s have kept me pretty
stuffed. I have been going though the metrics part of the software
engineering reading list. I have been through this part several
times. I am going through it a bit more deeply this time. I have
nearly read through the papers again an have been making notes along
the way. One of the questions I missed on the exams was related to
some author names in this section. I expect to be able to nail those
questions this time around. I have the link to the authors names now
in my memory. It should be easier to recall this information this
time. This part of the present studying always stinks because it is
painful for me to remember the memory of execution of the question on
the past test and match it to the studied information prior to today,
to late to exercise the previously learned information on the test
that has already passed. I have this 20-20 hindsight problem
frequently. The good part is new information gets linked in too.
Subscribe to:
Posts (Atom)