paperclippy: (Default)
At work I'm looking into options for new application lifecycle management tools, so I thought I'd post and see what everyone else uses at their companies. Here's kind of a list of the various items that I mean when I say application lifecycle management:

  • requirements/user needs
  • design documentation
  • task lists
  • project scheduling
  • risk and hazard analysis
  • implementation/source control
  • issue tracking
  • testing
  • traceability

Right now, we are using IBM (Telelogic) DOORS for requirements management, and we have our test cases listed in DOORS as well so we can trace them to the requirements. DOORS is functional, but extremely difficult to use. Our design documentation is all in Word documents. Our task lists and project scheduling are done in a combination of Microsoft Project and Excel spreadsheets. Risk and hazard analysis is a Word document with references to requirement numbers from DOORS. We use StarTeam for source control and issue tracking (but I'm told we will be migrating to TFS soon). We use MS-Test, CPPUnit, and TestComplete for automated testing. We use Documentum for storing all of the "official" documents (which means we have to export everything from DOORS, and put together test reports when we run tests to load into Documentum).

What we WANT is something that will integrate all of this stuff together. We want to trace requirements to design to risks to tasks to code to tests, with issue tracking that can refer to any of those elements, all in one place. We want to be able to run our automated and manual tests and have the system automagically create a test summary report. We want to be able to link together change request review meeting minutes to the change requests.

So what do you all use at your jobs? What have you used at previous jobs? Any opinions about them? Do any of you work in highly regulated environments like mine where if you don't have good traceability and documentation the FDA will come down on you?

WPF fail

Aug. 10th, 2009 11:02 am
paperclippy: (grr)
According to Reflector, ComboBox has the following code in it:

private static void OnMouseButtonDown(object sender, MouseButtonEventArgs e)
    ComboBox box = (ComboBox) sender;
    if (!box.IsContextMenuOpen && !box.IsKeyboardFocusWithin)
    e.Handled = true;
    if ((Mouse.Captured == box) && (e.OriginalSource == box))

What does this mean? It means that even if you derive your own ComboBox, you will never receive any MouseDown events. Ever. Unless you hook up a handler to view Handled events.

The result is that if you have a combo box inside a ListBoxItem using a DataTemplate, clicking on the combo box will not select the item in the list, whereas clicking anywhere else in the row will select the item. This is incredibly stupid, and is the cause of a bug for me, since my context menu for the ListBoxItem operates off of the selected items in the list, and you can get into a situation where you open a context menu by right-clicking on the combo box while nothing is selected, and the context menu doesn't know what to display.

WPF, why did you do something so ridiculous? This is kind of like how you have to derive your own ListBox if you want multiselect drag/drop to work. How did this not occur to them?
paperclippy: (grr)
I can't believe that I have to wait for SP1 to be released in order for multiselection and drag/drop in a list box to work right. That is so incredibly stupid. Who tested this stuff? What made them think that if I select a bunch of items and want to drag the whole group, I have to hold down the control key while selecting the last item and instead of clicking on it start the drag then?

The worst part is that all the fixes to this that I've found online result in breaking another part of my app. Arrrrrrrrrrrgh. Apparently it will be fixed in SP1, which is out in beta right now, but I need to wait for an official version.
paperclippy: (huh?)
"Beckman Coulter Acquires Rights to Hepatitis C Virus."

(in case anyone's wondering, this is public information, I'm not sharing anything secret)
paperclippy: (Default)
I'm thinking of asking my boss if they have the budget to send me to this year's Grace Hopper Conference. I think some of you have gone before -- do you think it is educational and worthwhile? If there is no value career-wise I doubt my company will pay for me to go, but if there is value they might send me and potentially the other two female software developers . . . Are any of you planning on going this year?
paperclippy: (grr)
It really bugs me that I have spent most of the day working on some changes through the VS 2008 forms designer, and in the middle of it, VS decides to go nuts. Sometimes I can get my designer open again by cleaning, closing and reopening vs, running, then opening the designer, but as soon as I compile it again it dies again.

Words I never want to read again: "The designer loader did not provide a root component but has not indicated why" and "Exception of type 'System.ComponentModel.Design.ExceptionCollection was thrown."

All I need to do is add a couple buttons, but my skillz are not l33t enough to know the exact xy coordinates they should be at and sizes so I can do it manually in the designer.cs file.
paperclippy: (grr)
Don't make your resume 5 pages long unless you've been in the industry for like 20 years at several jobs and have lots of experience.

I just read through a 5-page resume for a new grad. Holy moly. She could have fit the same information on two pages with better formatting, and could have had a one page resume if she didn't include all sorts of irrelevant stuff. For example, you don't need to list every single class you took in college and every project you did for every class. You also don't need to list internships you were offered but didn't take.

Hopefully this person's general skills are better than her resume-writing skills.
paperclippy: (giraffes)
As some of you know, I have been totally stuck with no idea what to do all week, and so I've accomplished nothing but buying plane tickets to Shanghai.

Well, today, my original plan was to screw around until 10, then go to Kinko's to FedEx my visa stuff, and stop by Urban Outfitters which had a 50% off sale going on (they open at 10, that's why I was going to wait). However, I was up early and already read LJ and all my other usual websites, so I had nothing to do. I figured, okay, I'll test my code to see if this one little thing is correct, having finally thought of a way to test it. Well, during the course of this, I realized two things: (1) the minimization function, since it is minimizing instead of maximizing, is negating my gradients, which are not supposed to be negated. Solved by putting in three negative signs. (2) The minimization function is taking only the second returned value of the function as the gradient, instead of the second, third, and fourth, so it was taking the gradient wrt one parameter and applying it to all three parameters. Oops. Fixed by changing [L dg dI ds] to [L grad] and grad = [dg dI ds].

I still don't think it works, but I can't believe I managed to miss that stuff before. I guess taking a week and a half off from working on this code really helped.


paperclippy: (Default)

April 2017

161718 19202122


RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 28th, 2017 08:37 am
Powered by Dreamwidth Studios