Wednesday, September 28, 2005

Random thoughts

It feels like I haven't posted to my blog in ages, so I decided to post some random thoughts running through my mind. Here we go ...

The company I work for is ramping up their software development procedures. We are aiming for CMMI compliance. This is very much a welcome change. Ever since a course in college on software engineering, I have been very interested in software development processes, with a particular interest in emphasizing and enforcing requirements. Our process model is one that I forgot about: the V model. Most of my work in university was using the waterfall model, but with a number of years in the field, I recognize that the waterfall model is not very practical (a quote I remember from somewhere goes something like, "In theory, there is no difference between theory and practice, but in practice there is"). I definitely now believe in practical use of a software process that allows for iterative development. However, I always like to fall back to my waterfall model and continually modify it with ideas I encounter in other process models. The following is a very basic outline of the process model I like to follow for my personal projects:
  1. Requirements
  2. Test Generation
  3. Design
  4. Implementation
  5. Testing
  6. Delivery
This is a fairly basic outline, and maybe I will post details on each in future posts. It is probably similar to other models, but one thing I do emphasize here is the Test Generation phase immediately after requirements. In my observations, I notice that Test Generation (or writing test cases) doesn't happen until after Implementation and right before Testing ("OK, we are ready to test. What do we test? Let's write some test cases to go by"). At least in this case, a list of test cases is written out and kept to go by in future testing (regression testing). But, what I am getting at is that if Test Generation occurs right after Requirements and correlate directly to the requirements that are written, I think that Testing will be more fruitful.

First, I propose heavy use of use cases during the Requirements phase. Each use case has a main success scenario and extensions. If a test case is written for the main success scenario and a test case is written for each extension, there should be excellent coverage. If someone tests something that is not prescribed by a test case generated from the requirements and complains something is wrong, then the requirements are wrong! The exception case that was tested and complained about should be addressed in the requirements.

-----

A new album from one of my favorite bands King's X was recently released called Ogre Tones. I haven't managed to purchase it yet but I am definitely looking forward to it! I also see they are starting a new tour up, and I hope that they come to Atlanta.

-----

Another release I am looking forward to is WWE's Wrestlemania Anthology DVD set. It comes out on November 1. I used to be an avid wrestling fan, but my interest waned soon after I entered college. My high school friends (Nicolas Tergeoglou, Shane Hayes, and Kris McWhite) and I would always get together during our high school days for about every pay-per-view for not only WWF, but WCW as well. When I got to college, I continued watching occasionally and now I rarely watch. However, I still go back to the oldie shows every now and then and relive the memories. With Wrestlemania, Wrestlemania X was about the last one that I watched on PPV and had much interest in. I am definitely looking forward to this set not only to catch up on the last ten years, but also to relive the first ten on DVD as I have not watched them in some time.

-----

Well, the fall season of TV is kicking off with a bang and I have a couple of shows to catch tonight. They are about to start, so I will sign off for now.

Wednesday, September 14, 2005

John Roberts

For some reason, I love finding interesting things on CSPAN to watch late at night. Maybe it is just because I am bored and there is nothing else on TV, but nevertheless, some things are interesting -- particularly those shows where senators grill people, in this case John Roberts.

I was watching it last night and the prevailing word was stare decisis. I remembered hearing this word in my political science class and from context I reminded myself that it meant relying on previous decisions for cases before you. I am questioning myself as to whether I believe in this principle. On the one hand, I agree with it because of the reliability and consistency of the court decisions. On the other hand, if court decisions are based on the constitution being a living document, then cannot court decisions be "living decisions"? Isn't it a question of whether the times change and so must court decisions? Certainly the other line of questioning comes into play here about some things decidable at face value versus others must take into account the facts, but what about the times? To what effect do they play in relation to stare decisis?

The other thing I want to comment on is this line of questioning about not only using "domestic stare decisis" but "foreign stare dicisis" as well; that is, using decisions from foreign courts as basis for domestic court battles. What a bunch of crap! Roberts certainly handled this line of questioning well, but the one common sense answer was not spoken. If the purpose of the United States Supreme Court is to interpret the (American) law (judicial branch), how in the world could a foreign court based on foreign law even remotely have a possibility of involvement?

And one final comment: I am very much in favor separation of powers meaning that the judicial branch should not in any way shape or form legislate. True, there are some aspects of the Constitution that are open for debate an interpretation, but isn't there a difference between interpretation of current law and legislation? The argument may be made that by interpreting vague phrases in the constitution, the judical branch is thereby legislating, but I am arguing that the process must be much more careful here.

Anyone have any thoughts out there?

Homepage updated

I just updated my homepage to have a better format (read: no frames) so maybe search engines will pick it up better. Check it out here.

Monday, September 12, 2005

Learning Japanese

My latest "on the side" learning effort is learning Japanese, and of particular interest, is learning the writing aspect of it. It looks like there is a lot to memorize, and I am starting with the Hiragana alphabet. The best site I have found on the Internet so far for memorization is The Japanese Page (Learn Hiragana), for strokes and actually writing the characters is Japanese Writing Tutor, and a handy chart at Free Japanese Lessons.

It looks like memorizing Hiragana and Katakana will be straightforward, but Kanji on the other hand ...

Tuesday, September 06, 2005

Pig tail and beef stew, Scotch bonnet, and Scoville scale

So I am helping to cook dinner and the menu for tonight is pig tail and beef stew. One of the secret ingredients is a Scotch bonnet pepper and I was told that the trick is to put it in the stew near the end and let the aroma seep into the meat but without letting the pepper pop.

I had never heard of a Scotch bonnet, so I looked it up on Wikipedia and found out some more interesting things. First of all, there is an official scale called the Scoville Scale that measures the hotness of a pepper. Secondly, the weakest Scotch bonnet is more than ten times hotter than the strongest Jalapeno.

Well, I am being called for dinner, so I am off to eat my pig tail and beef stew. Yummmm ...