Archive for the ‘Tech Mash’ Category

Professional Scrum Master

March 23, 2012

Hi all.

Looking forward to attending the PSM course on Monday 26/03.
Shortly after I’ll be going for the exam.

I’ve been mostly working in a scrum environment since around 2007.
Now I’m looking at solidifying some of that experience and knowledge, and gaining a little more hopefully?

Here’s the outline.

Scrum.org has designed the Professional Scrum Master (PSM) program to have the utmost rigor. The program’s courses, assessments, and certifications give participants the knowledge they need to use Scrum effectively and the credentials they need to communicate this ability in the marketplace.

Audience

The audience of the PSM course includes those that help lead the software development process in an organization. PSM is specifically targeted at the role of the Scrum Master, but the lessons are applicable to anyone in a role that supports a software development team’s efficiency, effectiveness, and continual improvement.

The Course

The Professional Scrum Master course is the first significant update of the Certified ScrumMaster (CSM) course that Ken Schwaber first created in 2002. This course covers Scrum basics, including the framework, mechanics, and roles of Scrum. But it also teaches how to use Scrum to optimize value, productivity, and the total cost of ownership of software products. Students learn through instruction and team-based exercises, and they are challenged to think on their feet to better understand what to do when they return to their workplaces.

Scrum.org maintains a defined curriculum for the Professional Scrum Master courses and selects only the most qualified instructors to deliver them. Each instructor brings his or her individual experiences and areas of expertise to bear, but all students learn the same core course content. This improves their ability to pass the Professional Scrum Master assessments and apply Scrum in their workplaces.

The Professional Scrum Master course (previously known as the Scrum In Depth course) covers Scrum basics, including the framework, mechanics, and roles of Scrum. But it also teaches how to use Scrum how to optimize value, productivity, and the total cost of ownership of software products. Students learn through instruction and team-based exercises, and they are challenged to think on their feet to better understand what to do when they return to their workplaces.

The course curriculum covers:

  • Scrum Basics. What is Scrum and how has it evolved?
  • Scrum Theory. Why does Scrum work and what are its core principles? How are the Scrum principles different from those of more traditional software development approaches, and what is the impact?
  • Scrum Framework and Meetings. How Scrum theory is implemented using time-boxes, roles, rules, and artifacts. How can these be used most effectively and how can they fall apart?
  • Scrum and Change. Scrum is different: what does this mean to my project and my organization? How do I best adopt Scrum given the change that is expected?
  • Scrum and Total Cost of Ownership. A system isn’t just developed, it is also sustained, maintained and enhanced. How is the Total Cost of Ownership (TCO) of our systems or products measured and optimized?
  • Scrum Teams. Scrum Teams are self-organizing and cross-functional; this is different from traditional development groups. How do we start with Scrum teams and how do we ensure their success?
  • Scrum Planning. Plan a project and estimate its cost and completion date.
  • Predictability, Risk Management, and Reporting. Scrum is empirical. How can predictions be made, risk be controlled, and progress be tracked using Scrum.
  • Scaling Scrum. Scrum works great with one team. It also works better than anything else for projects or product releases that involve hundreds or thousands of globally dispersed team members. How is scaling best accomplished using Scrum?

Prerequisites

The Professional Scrum Master course is primarily targeted at those responsible for the successful use and/or rollout of Scrum in a project or enterprise. Attendees will be able to make the most of the class if they:

  • Have attended the Professional Scrum Foundations course
  • Understand the basics of project management.
  • Understand requirements and requirements decomposition.
  • Have been on or closely involved with a project that builds or enhances a product.
  • Have studied the Scrum Guide.
  • Have read one of the Scrum books.
  • Want to know more about how Scrum works, how to use it, and how to implement it in an organization.

Assessment and Certification

As a matter of principle, Scrum.org feels that certification should be available to all those who possess a particular level of knowledge — not only to those who have taken a class. As a result, they offer the option of Professional Scrum Master I and II assessments to the public — not only to those who have taken the Professional Scrum Master course. The Professional Scrum Master program features two assessments and two levels of certification.

Quick technology mash-up

January 30, 2011

I had a good friend visit from AU this weekend.
He’s the Technical Lead for Fairfax Media.
We got talking about lots of technologies.

I decided to do a little research on top of our discussions.
Following is a bit of a mash-up of the technologies we talked about.
Predominantly focused on low resource hardware and hand held devices.
Most of the detail is taken from other posts.


Code coverage

MSTest has a very handy tool that grabbed my attention and looked like it would be very useful for the unit tests we were writing at work.
Mentions in the above link that it’s a pain in the ass to set up.
Not so.
My friend has set this up for his company, and has had good success with the process.
It provides a visual interface of your code and how much of it is covered.
Also provides other views and useful statistics.
Could be good for where we are planning on going with unit testing at my work.
Visual Studio Ultimate and possibly Premium has this.
Here’s a quick overview of getting it set-up.

Then there’s TeamCity 6 which has dotCover included.

There is also NCover, but it’s not free.

Caching

Memcached
Free, light weight, high performance and open source.
If security is needed, must be provided on top.
Microsofts AppFabric previously known as Velocity… Microsofts answer to Memcached.
I’ve used AppFabric in a WCF project, but not for caching.
Plenty of info on the wiki.

SQLite

Serverless, open source.
Any process that wants to access the database, reads and writes directly from the database files on disk.
There is no intermediary server process.
Implements a database-wide multiple-readers-single-writer lock.
SQLite is transactional and fault tolerant.
More deployments of SQLite in use than any other SQL database engine.
Many low resource mobile devices using.
SQL Language used omiting a few features and adding a few of it’s own.
Support for most languages incl C/C++, C#
If you’re still using flat file databases on your mobile devices, I’d see this as an excellent replacement.

Nginx

Free, Open source, high-performance HTTP server, reverse proxy, load balancer, mail proxy server.
Written in C.
hosts nearly 7.5% of all domains.
http://nginx.org/en/
http://wiki.nginx.org/Main
Runs on most platforms.
Features.
Web hosting providers have reported 50,000 simultaneous connections using Nginx.
Examples.

nuget

A package repository.
I think nuget would be really helpful in consolidating all the dependencies on internal and/or external libraries.
Also providing a single repository for API’s supplied to clients.
Looks like TeamCity (build server) can deploy to a package repository.
Point your Visual Studio Package Manager at the package source rather than adding references from all over the place.

http://nuget.codeplex.com/
Overview
A couple of ways to find and install nuget packages

Using the Add Library Package reference dialogue box.
Using the Package Manager Console


Hosting Your Own NuGet packages
Creating and hosting packages
Hosting package feeds
Packaging your libraries