Day 050 - Project counters/health and source code management

Yesterday I said I would do some further investigation of source code management, but first there are a few dashboard points I missed yesterday, including the ability to:

  • use live data in your windows while testing
  • toggle the use of a programming charter (I have mixed feelings about charters, trending steadily towards "dislike")
  • have all windows but the active window grayed out as a visual indicator they are not available (Dim Disabled Windows)
  • specify the languages your app supports (although you'll still have to create the alternate text for each language)
  • apply a different skin (visual design) to your app
  • include support for user-created reports and queries

Counters

There are some interesting counters on the dashboard, including:

  • bugs
  • tasks
  • requests
  • messages
  • business rules

Of these, bugs, requests and messages rules can all be supplied by the customers (via the ? menu), if you configure your applications and your development environment to support this. If your users are on your network and can access the development server then their inputs can go directly into the project database. If the users are outside your network you can configure your apps to send bugs, requests and business rules via email; you'll also have to configure WinDev to receive those emails. 

There's an option to configure the dashboard, via the context menu. I had a bit of trouble with this at first as the context menu isn't available everywhere on the dashboard, just mainly in dead space where there aren't any other controls. 

You can specify values for what WinDev calls Quality Points:

Source Code Management

I've already covered some of the SCM issues, but I think it's worthwhile going through the basic process of using source control. 

Source control has at least two benefits: maintaining a history of changes and managing access by multiple developers to the same source. 

Even if you're the only developer in your shop, being able to go back and look at previous versions of your code can be invaluable, especially when you realize you need to undo some change because the cure was worse than the illness. If you're using SCM, WinDev can show you any two versions of your code side by side:

If you have more than one developer working on a project, SCM lets you manage access by only letting one developer at a time make changes to any given program element. If you try to modify something you don't have checked out WinDev will make you check it out first, and if you check it out with exclusive rights then anyone else wanting to modify that code will have to wait until you've checked your work in again. 

When you check in a change you have the opportunity to add comments, mark tasks or incidents affected by the change, and send messages to other developers. 

I thought I'd add a task to see how tasks related to checkins. I found a Tasks button up on the main toolbar and from the tasks list I created a new task:

Now when I went to check out my code I saw the task in the list, and I had the option to associate my work with the task and mark the task as completed. I could also keep the element checked out in case I still had more work to do. 

I'm not quite following the tutorial here, just exploring as I go. I'll get back to the tutorial tomorrow, somewhere around page 418. 

One other thought - I haven't yet seen what if any task scheduling capabilities are built into WinDev. I'm particularly interested in how adaptable the WD project management features are to agile/lean practices. So if you've done any related work, please post a comment!