Currently I am working on the design for the new features we are adding to our application suite. Requirements had been collected for a certain feature the users want. However I could not decipher the requirements. Neither could the requirements team. They pretty much wrote down what the users said without understanding the details. So I scheduled a meeting with the users to pick their brain on exactly what they were looking for. At the meeting I started to ask probing questions. I was started to get a little feel for what we needed. Another developer piped up that he knew exactly what the customer wanted, and had even started a preliminary design. He told me to come see him for the details.
This caught me by surprise. The other developer works for another company. He does some of the back end work for our project. I know him to be a thorough type of guy. So I trusted his understanding of the problem. I scheduled a time to get with this developer to find out what he knows. When the time came to finally meet him, he had a one page document with a lot of details. He had sketched up a mock user interface. He also had designed a database table to store the data. I asked him a few questions about the data types. Then I was ready to go produce the real design document for the client side applications.
One of the things that our users like to see in design documents are user interface mock ups. I wanted to oblige them for this specific change. The mock up from the developer I met showed a spreadsheet. So I planned to put a spreadsheet in my user interface prototype. My first instinct was to show a list control in report mode. It ended up looking like a spreadsheet. But then I wondered whether it would be easy for a developer to allow and track the user input from the cells. The requirements also called for some cells to be removed. This seemed a little much for the standard Microsoft list control.
It was getting late and I needed to stick to the schedule. So I decided to go with the simplest design that would allow the least experienced developer to code up. Therefore I created a dialog prototype which had a bunch of edit controls lined up in a table format. They look fine when aligned correctly. Edit control gave me ultimate flexibility in layout and customization. And I figure any developer should be able to work with an edit control.
Backtrack Linux - Backtrack is a Linux distribution based off Ubuntu. It is used for penetration testing and forensics. The distro was a combination of WHAX and Auditor. It...