" /> Status for Andrew DeFaria: January 22, 2006 - January 28, 2006 Archives

« January 15, 2006 - January 21, 2006 | Main | January 29, 2006 - February 4, 2006 »

January 27, 2006

MobMM email

  • Implemented Email notifications in MobMM

January 26, 2006

More MobMM Progress

  • Separated MobMM to its own Schema Repository
  • Renamed MobileCom -> MobMM
  • Removed Visibility from submission form
  • I've created all Modules and all Submodules but linked only some of them. A lot are owned by Vinod. Try entering a defect with a module of Display Manager and you should see Owner set to "node". Change that to OLG and it should switch to cswilson.
  • Created users as defined above. Gave admin privileges to my userid
  • Created Administrators, Managers and Users groups. My userid and admin are in all three groups. Jean, your user is in the Manager and Users group. Other users are just in the Users group.
  • Gave Dynamic List Admin privileges to Jean and Vinod. This means that you can add/change/delete entries in dynamic lists (Select Edit: Named Lists to manage dynamic lists such as Software_Version)
  • Populated Dynamic lists
  • Created Public Queries for Defects, Modules, Submodules and Module-Submodule Cross Reference.
  • Changes some drop downs to be bigger.

More MobMM Progress

I have separated the MobMM design from the old PQA Schema Repository. By being in it's own schema repository MobMM now has a separate, distinct set of user accounts. You really don't want PQA users being able to log into your database. This separation required essentially replicating all of my work over into this new schema repository.

The Schema Repository is called MobMM_Schema. The administrative user for the database is MobMM_Admin with a password of ru4real. Normally nobody sees this username except people who are using MS/SQL Enterprise Manager to create databases or using the CQDesigner to create schemas, user databases, etc. IOW Jean, you wouldn't be using this user account but Ray and others will need that info.

There is, by default, and "admin" user that you can use to log into CQDesigner or Clearquest Client. Its password is also ru4real. Again, Jean, I don't think that you would be using this user account either, rather a CQDesigner would use it.

As we have a new user account database I had to create some users. There's admin and I made myself a user (adefaria). I also made user accounts for you Jean (jfan - password jfan - you can log in and change that - I would suggest your Windows domain password but that's just me) as well as the Module owners of Vinod Prasad (username: node; password: node), Rick Howarth (rhowarth:rhowarth), Chris Wilson (cswilson:cswilson) and Bhupesh Khawa (bhupesh:bhupesh).

Work Performed

  • Separated MobMM to its own Schema Repository
  • Renamed MobileCom -> MobMM
  • Removed Visibility from submission form
  • I've created all Modules and all Submodules but linked only some of them. A lot are owned by Vinod. Try entering a defect with a module of Display Manager and you should see Owner set to "node". Change that to OLG and it should switch to cswilson.
  • Created users as defined above. Gave admin privileges to my userid
  • Created Administrators, Managers and Users groups. My userid and admin are in all three groups. Jean, your user is in the Manager and Users group. Other users are just in the Users group.
  • Gave Dynamic List Admin privileges to Jean and Vinod. This means that you can add/change/delete entries in dynamic lists (Select Edit: Named Lists to manage dynamic lists such as Software_Version)
  • Populated Dynamic lists
  • Created Public Queries for Defects, Modules, Submodules and Module-Submodule Cross Reference.
  • Changes some drop downs to be bigger.

Jean, to access this new schema repository from the CQ Web login as usual but make sure to select the Schema Repository of MobMM.

Issues

  • Still don't know what to do with CC. I remember that this is for an arbitrary list of email addresses however when and how are they used? IOW when is email sent? When a defect changes state? Which states? IOW if a defect is entered it's in an Assigned state. If it gets resolved then I suspect that's when email is sent. Similarly when verified. What about when deferred? etc. Is the real purpose of CC to allow for separate distinct lists of people to alert via email? I need to read up more on the Email package that Clearquest offers and see if it can do all of this for us in a more standard and already debugger manner.
  • Changeset: This should be made a larger field, perhaps on the Management tab because I would think that it will contain file/revision information in a multiline tabular format. I suspect that the editing of this field will be only done from the yet to be written Perforce -> Clearquest connector... IOW will Clearquest users be able to modify that field through Clearquest Client or Clearquest Web?
  • Testcase ID & Testplan Version: Any info on what these are or should be? Just text strings? When are they entered in the transition of states...

January 25, 2006

MobileMultimedia Release

  • Completed a pass of MoblleMultimedia and handed off to Jean for a quick review and input to the next release in the design cycle

Trail version of MobMM

I've been working feverishly on your Clearquest database and have made some good progress. Following the Open Source motto of Release Early, Release Often I would like to have you take a look at what I have so far. Many things work. Some things have yet to be implemented. Play with it. Pay particular attention to stepping through the states and which fields are available for editing on the various tabs at various stages through the state transition matrix.

For now you can access this through http://p4test/cqweb/login then login as guest:guest and set the DB to MM. This is a test/play database so feel free to add, change or delete defects and other records.

Things that work

The following things I have working:

  1. Module/Submodule: In order to implement this I needed 3 stateless records. One is the Module record which contains the module name, owner and a description field (use description for anything you'd like). Another stateless record is the Submodule record. Here we have only Submodule name and description. To tie these two things together I have a ModSub_XRef stateless record. It has a drop down for Modules (referencing the Module stateless record - IOW if you don't see a module name in the drop down then that's because you haven't added a record for it in the Module stateless record). Similarly there's a Submodule drop down (referencing the Submodule stateless record). The purpose of this ModSub_XRef stateless record is to tie together a module with a set of submodule(s). These two fields are concatenated together separated with a ":" to form the ModSub field which is set as the unique key for the record (Currently this ModSub field is shown when creating a ModSub_XRef record but eventually it will be hidden). Setting up modules and submodules then tying them together will be a setup kind of a thing. You may need to occasionally set up a new submodule or module and make the ModSub_XRef record to tie things together.

    The result is when you enter a defect you toggle the Module drop down and the Submodule gets populated correctly. Additionally you'll see that the Owner field gets set to Module.Owner automatically.

  2. Assigned Date: Gets automatically set to the current date
  3. Visibility: Gets set to "Broadcom Only" - no other values are available yet and this field is essentially read only at this time.
  4. Notes: If you change the state of an Assigned defect to Resolved you'll need to fill out the Resolved tab. When the Resolved Note gets changed it is populated into the Notes field in the Notes tab. Similarly if you go to Verified, the Verified Notes field also populates the Notes field. If either Resolved Notes or Verified Notes are not yet specified then Note will say so.
  5. Audit Log: Has been taken from PQA and implemented. As fields are changed the Audit Log is updated.
  6. Time From <state> to <state>: On the Management tab there are the Time From... Assigned -> Resolve and Assigned -> Verified. When a defect goes to Resolved then the former is set. When a defect goes to Verified then the later is set. Time is in days. (Please note that it is possible to later modify the defect and change the Resolved Date. In such cases these Time From fields are not recalculated. Additionally there are currently no checks to insure that Verified_Date > Resolved_Date, for example).

Things not yet working

There are several things I have not yet implemented in this design. These are:

  1. CC: Although present in the Submission tab the CC list currently does nothing
  2. Changeset: Listed on the Resolution tab Changeset is just a short string right now. I believe we need a multiline string down the road. This field is supposed to be filled in by a hook from CVS (IIRC) that will record the files and revisions. Ray you might want to look at what I did in SCM/cvsbin/cvsism and adapt it to Jean's Clearquest database. You can look at SCM/cq/pqamerge for examples of how to update Clearquest databases through Perl.
  3. Other Notes: Entering data here does not update the Notes field above it (yet).
  4. Testcase ID & Testplan Version: Currently do nothing.
  5. Duplicate IDs, Related IDs and Notes: On the Broadcom Notes tab also do nothing yet. The whole issue of how to hand Duplicate and Related IDs has not been designed. I think we should look into how IBM/Rational handles duplicates in it's default package and use that as well as change it to handle related ids too.

Again, look for whatever you see as wrong: Process flow, spelling errors, alignment, move a field to a different form, add a field, whatever and let me know. You're input will be used for the next rendition of this.

You may want to eventually install Clearquest Client on your machine. You can follow the instructions at Installing 2003.06.15. Those instructions were for PQA but installing Clearquest is the same for everybody. Do not continue on to the instructions for setting up your profile - the profile is specific to the different projects. I'll have to get a profile file set up for you later.

January 24, 2006

PQA Email issue/Mobile Multimedia

  • Contacted Rational regarding PQA email problem
  • Changed Mobile Multimedia to set default owner, assigned date
  • Fixed MM to handle Module/Submodule relationships

PQA Email Problem

Turns out there is a known problem with email sent date that is patched in 2003.06.15. Problem is that the server is 2002.05.20! Waiting for the patch so we can patch p4test and 2003.06.15 clients. Luckily the new server is in so we should set that up with the patched 2003.06.15. John Luu will do that.

Mobile Multimedia

Got most of the submission form working. Managed to get the Module/Submodule and ModSub_Xref working. Still some more to do...

January 23, 2006

More CQ Web Email Problems (GetSMTPHost)

  • Implemented and tested GetSMTPHost

Actually I was on vacation but still trying to work on the problem. Sorry but the ski cabin in Vermont didn't have Internet access...

We are very sensitive to the critical nature of this bug. Here's what I found out on Friday.

I've implemented a solution to option #2 and have tested it. However, the way it works is to use ipconfig to get the IP address of the current machine then nslookup to change that to a hostname. After that I've found that nbu-cqweb is actually known as nt-irva-1521.broadcom.com. So I have it hard coded to return an SMTP host of mms.broadcom.com if it's running on nt-irva-1521.broadcom.com otherwise return smtphost.broadcom.com. There are a couple of things I don't like about this solution:

  1. Hard coding of machine names. Will nbu-cqweb always be known as nt-irva-1521.broadcom.com? Also, such a fix will break if we implement a new web server for you which will presumably have a different machine name...
  2. I'm not sure how this works in the context of CQ Web as opposed to CQ Client. It seems to work on p4test's Web Server.
  3. I've only addressed the Submit notify action. Turns out there are other notify actions (e.g. Assign, Resolve, Verify) which are still using the older PAINET object. I would have thought that all of the email sending would be done through one routine but it turns out the code was essentially duplicated in many places. (Note PAINET is an object that IBM/Rational cooked up for CQ only). I have not changed these and I would assume that they are as likely as Submit to send email with a send date of 2001. Again, we've never determined why the old code stopped working correctly.

I have this fix ready to go but I'll wait for your OK before applying it to production.