Saturday, October 06, 2007

We all are familiar with the SDLC process and the role reviews play in helping ensure that the final product is of good quality and is able to meet the system requirements. Reviews are of many kinds ranging from code reviews, test plan reviews, design reviews to performance reviews, audit reviews etc. Let us focus for the moment on design reviews. Typically in the software design phase, the design team receives the requirements in the form of the BRD, the FS or whatever name your organization has chosed to call the inputs. They then proceed to model the application using the tools available like Rational Rose, visio etc. The end result is a set of diagrams and maybe some code which is handed over to the development team for coding. One of the important artifacts that the quality team insists on is the traceability matrix which helps them to verify if all the requirements mentioned in the BRD, FS etc have been covered. But how to we ensure coverage throughout the SDLC process. Did the design team cover everything. If they did, then did the development team leave out something. Did the test cases cover every part of the system and was every functionality tested thoroughly. Thus it becomes essential that the coverage report exists for the design and development phases atleast. The traceability matrix is generally used for checking coverage after the development phase and before the release of the product. There is no real template to document the design coverage other than a set of checklists. You might have come across checklists that contain questions like:

1. Have all mandatory diagrams (Use Case, Class, Collaboration, Sequence, Deployment and Component diagrams) been included?
2. Have symbols and notations been used consistently?
3. Have all assumptions and dependencies been explicitly stated? Are these realistic and reasonable?
Use Cases – Every user interaction with the system must be documented as an Use Case and should be supplemented by an Use Case Diagram.
4. Define the use cases for all the possible interactions of actors with the system.
Activity diagrams - It must address all the requirements specified by the use case. (Activity diagram ensure that the data flow is as per the use case.
5. Describe the internal behavior of an operation pictorially
6. Depict activities that can occur in parallel. The discovery of activities that can occur in parallel will help us to build processes that are more efficient.
7. Help to identify activities whose responsibility belongs elsewhere
8. Allow the discovery of common functionality within a system
9. Show the dependencies, which can be easily identified during the behavior change of the system.
10. Define appropriate relationships between classes. Appropriate design patterns should be used while designing the system. The performance parameters should be taken into account during this process.

and so on

But how do we evaluate a design from an architecture perspective. How do we know that the present design would meet the peak maximum load of a 100,000 concurrent users. Would the system use the same resources irrespective of whether there are 50 users or 500 users. Would the system be able to withstand a DoS attack. Would it allow other applications running on the machine access to some resources or hog all the resources itself. How do you answer such questions by looking at a set of diagrams. Well looks like this others have thought of this before and arrived at some mechanisms to solve this problem.
The methodology is called the Software Architecture Analysis method (SAAM) and relies on a scenario based approach to evaluating software architecture against a set of quality attributes. Some of the main quality attributes include scalability, reliability, security, interoperability etc. In an SAAM evaluation, scenarios representing the quality attributes of the system are developed, prioritized,
and analyzed against the architectural approaches chosen for the system. The results of the analysis are then expressed as risks, sensitivity points, and tradeoffs.
After the scenario generation meeting(s), the refined scenarios are converted
into architectural test cases that the architecture team analyzes against the system architecture. This analysis The architectural test case development and analysis often takes place over an extended period of time (perhaps months) before the architecture team presents the results of the analysis to the stakeholders. This way the software architecture/design can be arrived at as a set of metrics that reveal how the architecture/design measures up against a set of quality attributes.

For more details regarding SAAM and software architecure evaluation can be found at
http://www.sei.cmu.edu/architecture/pub_by_topic.html#evaluation

Thursday, October 04, 2007

Twenty-20に 世界 コ-フお 勝利 した いんと゛の 選手に おめて゛とう こさ゛います

わたしは 来週の さいこ゛に エゲレスへ しゅっちょうに
行きます.
しゅっちょうの し゛かんは に週間く゛らい あるそて゛す
わたしは この 前に エゲレスへ いった ことか゛ ありません

エゲレスは たへん きれいそ て゛す エゲレスは この こ゛ろ たへん さむらし て゛す
そして 冬服は たくさん 持って いかわなけれは゛ なりません. チヤンナイは たへん
あついのて゛ 冬服は 要ないた ます゛ エゲレスの いろいろな ところお
旅行する つもり て゛したか゛て゛も し゛かんか゛ ないから いくのお やめます

この しゅっちょうは エゲレスに ある 有名な 銀行 LTSBの コルフ゜レト ヘ゛ンキンク フルマウレクお (CBF) 分解
するのためて゛す わたしは LTSBの セステマの テクニカル イスヘ゜クトは 分解 します
コル ヘ゛ンキンに ついて 知て いないと この 仕事は て゛きません
In a spineless display of courage, the Indian government is silent on the pro-democracy movement in neighbouring Burma. By their silence they have proven that they do not care for human rigts, democracy etc which they themselves claim to uphold so often. They have failed to practice what they preached and have thoroughly let down a neighboring country that desperately needs its help to free itself from a military junta that has ruled dictatorially for over 40 years. Its sad to hear external affairs minister saying that sanctions should be the last resort when national and international expectations are that India would do much more than that. If sanctions are the last resort, then what's the first, invite the leader of the junta for a state dinner with the president. India has by its silence expressed its solidarity with the wrong side of the struggle and not where it should rightly be, with the peace loving people of Myanmar. It is imperative that India stirs out of its lethargy and do its utmost to free the burmese people from the clutches of the dictators and let the burmese people choose the person that they want to lead them. The freeing of activist leader Aug suu kyee would be the first step to take towards achieving that end.

Tuesday, September 11, 2007

It is a day after the 6th anniversary of the sep 11 terror attacks on the WTC. Six years ago, on this day, me and my friend stood watching the towers collapse just a few hundred metres away from ground zero. We were on our way to work when we saw the fire in the first tower and were told that we could not go to work. The first plane had already struck but the magnitude of the attack was not yet known. To me it looked like a small plane had maybe crashed due to pilot error. Then a little while later the second plane struck amidst a thunderous noise and the second tower was engulfed in a ball of flame. The first tower came down in a heap and the second one followed soon after resulting in a cloud of smoke and dust several storeys high.
The smoke cloud hung over the financial district for the next 2 days not dispersing and serving as a constant reminder of the events the previous day. It was hard to believe that in the place where the twin towers stood earlier, there now was a void. Our workplace was in the World Financial center which was just over 18 storeys tall. A part of the tunnel under the river had collapsed rendering commuting difficult. The impact from the collapsing towers was believed to have compromised the integrity of other structures around it such as Goldman Sachs, WFC etc. We learnt that it was a terrorist attack from the clerk at the hotel we were staying at.
I was at the time working with the Repo trading desk of Merrill Lynch, New York. While the emergency response teams were involved in relief and rescue work, the repo support team was frantically trying to restore the trading platform back into operation. The newyork stock exchange was temporarily out of operation (for a day or 2, if I remember right) after the disaster but trading soon began. The repo desk too was back in operation although with a few days old data. In fact, they would have been back up much earlier had not they been prevented from entering their offices to fetch some backup tapes for fear that the WFC building might collapse. The repo desk operated out of their office on the new jersey side in the immediate aftermath. The repo support team worked day and night to restore systems to operating state. Not an easy task by any standard. The same was the case wherever systems had shutdown or gone offline owing to the terror strikes and it was the triumph of human spirit that could be seen all around in the few weeks following that eventful day.

Thursday, September 06, 2007

Some time ago, I had blogged about a stite that allowed you to clip portions of webpages. Well looks like that was not the only one website that allowed you to do that. Here's another one and this guy goes far beyond just clipping and has a range of products in the area of social annotation, bookmarking etc. The link is here.
There's tons of social networking sites. Well, here's another one. perfspot. Make sure you check out the perfNights section. It's hot.

Wednesday, September 05, 2007

I finally installed ubuntu on my desktop. I got the Ubuntu 7.04 Feisty Fawn CD and installed it on one partition. First impression - "great". I don't have the complete software but the desktop itself looks good. Ubuntu imports your windows profiles while installing under a userid you provide (defaults to windows id). The files should be available if you login with that id, I think though I haven't checked myself.

Tuesday, September 04, 2007

One of the things that are part of my plans for preparing for the JLPT test is to watch japanese movies. Last week, I brought home the movie "The hidden fortress" directed by Akiro kurosawa. I was hoping to be able to follow the japanese in the movie but after a few minutes it became clear that was not going to be possible. The movie was made in 1958 and following present day japanese is hard enough.
The movie itself was quite interesting and had me tied to the TV set for the entire duration of the movie. The plot is very simple one, that of taking a displaced princess to safety across enemy territory. The person given this responsibility is the commander who does a brilliant job of it. In this he is aided by 2 peasants and another girl they see on the way. Finally when they are caught and to be executed, they are saved by another samurai whose life the commander spared earlier. The first half is full of suspense and the latter half has a bit of action as the commander takes on the enemy. The peasants serve as the comic relief. Quiet a well-made movie. Not much grandeur even though a princess is involved. The hidden fortress is a secluded fortress in a valley and hidden from view where the princess stays temporarily till she leaves for safer territory. When they are caught and about to be executed, the princess says that she's ready to die since she's seen the world now and talks about the folk song she heard enroute. She then launches into a rendering of the song herself. A nice poignant touch from the director.
Here's something for cricket lovers. At present, there's not much support for cricket in Joomla CMS. It is possible to embed a widget inside a joomla component quite easily and see the scores etc. However that would mean leaving what you are doing and visiting the component with the widget every once in a while. Joomla supports modules which are floating areas that can be displayed along the sides of other components. So even if you are writing a blog, contributing to a forum or browing the classifieds, you can still know what the score is.
I created a small module that displays the current score and the teams playing. The module fetches the rss feed from http://www.cricinfo.org and displays in a module. The cricinfo site only gives the total score and does not provide individual scores as part of the feed. For that matter, none of the sites do. If you know of a site that does provide such a feed, please let me know. The feed should refresh frequently enough, at least once every minute. Anything more is a plus.
Back from Mumbai, I decided to go in for the level 2 of JLPT (japanese Language Proficiency Test). I had completed level 3 2 years ago and had forgotten most of what I studied including how to speak. Little did I realize that Level 2 was an altogether different proposition than Level 3 at that time. Since it was august already, most japanese language tutors have refused to coach me for the test. Here's a small prelude so you could know what is involves. Level 2 requires that you know over 5000 words vocabulary and are able to read over 500 kanji apart from the level 3 Kanjis. A real tall order indeed. Gotta go. It's cram time.
I took a deep interest in php based CMS and I was hoping to build a web 2.0 site. My search led me to Joomla, a php based CMS. My earlier experience to CMS was with 'PostNuke', another PHP based CMS and quite mature with a lot of features. What PostNuke didn't have or I didn't see was that the look and feel was not that good. Joomla comes with a lot of cool templates to make your site look like a web 2.0 site and giving you the benefits of a CMS at the same time. Joomla was so good that I got quite involved in it and started developing components, templates and such. For an example of a component that I developed (in fact it is an enhancement of an already existing component) you can visit http://www.omkaragifts.info/joomla/download.php
The component is a EventList component that allows you to add upcoming Events to your site. The problem with the current EventList component was that the venue of the event had to be added first by the site administrator before an event can be added. I wanted a way where users could add events themselves. Also there was no way to feature the events and there was a chance good events would be missed in the crowd. So I added a mechanism to feature events at the top of other events. As always, the component is free and open source and is available at the above link. There's also some templates that I developed that I have made available. Though not free, they are nominally priced and available at the above link.

Thursday, August 23, 2007

I was at the mall and I didn't know "The Transformers" had been released. So when someone offered me a ticket, I grabbed it and went inside. I had no idea what "The transformers" meant or who they were. All I knew was that it was a video game that had been made into a movie, just like 'Tomb raider and resident evil'. It wasn't until the chopper started morphing into a robot that I realized what "transformers" meant. The movie is directed by 'Michael Bay', the director of other movies like The rock and The island. A director known for making action packed films, you can look forward to some rollicking action. Since the movie is about robots and there are almost 7 or 8, they raise quite a racket and the visuals become hard to follow. The sequence in the character Sam's residence with the robots outside requires special mention though. The climax is another riot and you are glad its over when the movie ends.