Sybase Software Asset Management 2.0, to be more precise. This is the new software licensing mechanism, based on FlexNET, that now governs a good portion of the Sybase product catalog. It has been in use with ASE and PowerDesigner for some time, and will eventually cover IQ and SUP as well. SySAM support was introduced into PowerBuilder as of 11.0, and it now governs all installed copies of PowerBuilder and InfoMaker. Prior releases of PowerBuilder and PowerDesigner relied on the “honor system” of license enforcement. To paraphrase a famous movie quote, “it’s not cheating unless you get caught, and if you’re not cheating, you’re not trying”. Software companies that don’t enforce their licensing terms won’t be in business for long.

So like it or not, SySAM is here to stay…

Anyone that is considering an upgrade to 11.x from 10.x release or earlier will have to understand the ramifications of SySAM license management. The good news is, it’s fairly simple once you understand the basics. The Help file and product documentation cover the ins and outs of SySAM in exhaustive detail. This post is just going to cover the basics.

Decide on a license model

There are two basic license models available with PowerBuilder’s implementation of SySAM. These are “served” and “unserved”. Let’s start by describing the unserved model first, since it’s easier to understand.

With an unserved model, each workstation receives an .LIC file that is generated specifically for that machine. The Sybase Software Product Download Center website is where you go to create these files. An .LIC file can be generated based on the MAC address of the network card or the serial number of the harddrive, so collect this information before you logon to the SPDC website. When you install PowerBuilder, it will ask whether you’re using a Served or Unserved license, and if you answer “unserved”, it will prompt you for this .LIC file. You can also apply the .LIC file after installation by going to Tools > Update License…

A served model means that a SySAM server process has been installed and is running somewhere on the network. This process hosts the actual licenses and serves them up whenever a development workstation connects. When using the SPDC for a served model, you are not prompted for individual MAC addresses or hard drive serial numbers – just the number of authorized licenses that you’ve purchased. The SPDC generates a single .LIC file that gets loaded into the SySAM server. When you install PB on the workstation and say “Served license”, you’re prompted for the IP address (or DNS name) of the server running SySAM. As each workstation connects, they decrement the available license count until it is exhausted.

Now, one might infer that if you’re running a served model, and don’t have access to the SySAM server when starting PB, you’d be denied access… Well, yes and no! SySAM allows a “grace period” for each workstation, which allows you to run disconnected from SySAM for up to 30 days before PB won’t start. Once you re-authenticate to the SySAM server, PB gets unlocked again.

It’s pretty clear that a served license model would benefit larger installations, because it saves someone the hassle of collecting all the MAC addresses of the development workstations. Smaller shops will probably lean toward standalone “unserved” models, so that nobody has to tend to the SySAM server process.

Other random things to consider

Alternate Use licenses
SySAM allows you to generate a second, “alternate use” license for each purchased license of PB. This can be used for a home workstation or a dedicated “build machine”. The theory here is that a user should be allowed to work from home (or any other second machine) without requiring a second license to be purchased – you can’t be in two places at once! And if you’ve dedicated a single machine for nothing but the deployment process (i.e., no active development work is being done on it), that’s perfectly acceptable for an alternate use license.

Citrix MetaFrame or Remote Desktop development
In this architecture, PB is installed on one single machine, and the developers connect to it and run Virtual sessions. Development shops that use this architecture MUST use the served model. The standalone unserved license model is not supported for Citrix or RDP users. Now, this statement only applies to running the PowerBuilder IDE. Deployed PB applications can still be run via Citrix or RDP without licensing implications.

Can I change from Served to Unserved (or vice-versa)??Yes. This is done at the SPDC website. All you do is “check in” the existing license file and generate new ones with the new parameters. However, if you’re doing a lot of checkins and generations, expect a call from your Sales Rep to find out the reasons why. PowerBuilder does not support a “floating” license model, and a big volume of checkin/regenerate activity is a clear indication of someone trying to get away with something fishy…

The bottom line is this: Sybase has a right, and in fact a duty, to enforce its licensing terms. SySAM is an effective tool to do just that. It may be a bit of a headache initially, but once it’s set up, you usually don’t have to bother with it again. It really is in everyone’s best interests.