Developer Ignite Scott Cate Versioning
Upcoming SlideShare
Loading in...5
×
 

Developer Ignite Scott Cate Versioning

on

  • 903 views

5 minutes, 20 slides, 15 seconds each.

5 minutes, 20 slides, 15 seconds each.

Things to think about with your commercial software version numbers.

Statistics

Views

Total Views
903
Views on SlideShare
900
Embed Views
3

Actions

Likes
1
Downloads
3
Comments
1

1 Embed 3

http://www.slideshare.net 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • I just replaced the original presentation. This one is the same content - with larger font sizes, and a few typo corrections.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Developer Ignite Scott Cate Versioning Developer Ignite Scott Cate Versioning Presentation Transcript

  • Software Versioning Scott Cate July 22, 2009 6:30 – 7:30 Developer Ignite
  • Software Versioning • Assembly Versions • File Versions • Build Versions • SSCM Labels @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • ZIP • MSI • Installable package / Manifest • Should be Labeled or Named – With matching Version number @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Ability to Recreate Assets – Let’s you go back in time – Fix Bugs – Merge into new version @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • All version should be unique • Versions should be forward moving @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Should be Text/String Sortable – How and why is 21 < 3? – 03 is less than 21, but if 03 turns into 3 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Avoid Manual Version Numbering – Easy to forget – Human error – Can’t really be done in sync with SCCM Labels – Just isn’t realistic @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Should be using Automated Build – And build server should have a labeler – This is the magic that ties it all together @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Just a Number? • Lots of Options • W.X.Y.Z is general format • Most agree W is Major Version – Major Version usually is defined as …. – Is not Backward COMPAT – Has Public API Changes • Source: http://stackoverflow.com/questions/121795 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • W.X.Y.Z is general format • Most agree X is Minor Version – With One of more Feature Enhancements – No Breaking Changes – Possible Bug Fix Roll up • Source: http://stackoverflow.com/questions/12179 5 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • W.X.Y.Z is general format • Most agree Y is …. – Internal Structure Changes – Bug Fixes – No Feature or API Changes – No Functional Impact • Source: http://stackoverflow.com/questions/12179 5 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • W.X.Y.Z is general format • No one agrees on Z – Popular Build Number – Used for RC, RTW, RTM, Framework Versions – Something dreamed up by a team member, that has left, and no one really knows why, it’s just always been something – Blank – only use a W.X.Y version number – In House / Public (Odd / Even) • Source: http://stackoverflow.com/questions/121795 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Just a Number? • Or an encoded “Something” • We think the date is useful – And we use the Build Time – Merged with the Major / Minor Version – Easy to Reference • Forward • And • Backwards • (Never run out of options) • (Easy to code against) @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Major Version – Tied to year – Tied to Major Milestones – Tied to Major (New??) feature enhancements – Possible breaking Changes – Public API Changes @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Minor Version – Tied to bug fid / hot fix – Tied to major feature enhancements @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Year / Month / Day – When was the software Built? – What Label can the software be found in Source Control? • Important!! – SCCM Should Label your repository with the Version number @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Major.Year.[MINOR] WWDD.HHMM • 1.2009.1 – This part is pretty easy @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Major.Year.[MINOR]WWD.HHMM • 1.2009.125 – ISO Week # 01-52 – Week 25, of 2009 – Proceeded by Minor Version for Sorting @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Major.Year.[MINOR]WWD.HHMM • 1.2009.1255 – ISO Day# 1-7 (Monday == 1, Sunday == 7) – Day 5 (Friday) of Week 25, of 2009 – All builds on same day == 1.2009.1255 @ScottCate / ScottCate.com Developer Ignite
  • Software Versioning • Major.Year.[MINOR]WWD.HHMM • 1.2009.1255.HHMM – HH = 01-24 Hour for Time of Build – MM = 00-59 Minute for Time of Build @ScottCate / ScottCate.com Developer Ignite