|
|
In-the-SPIN brings tips from our presenters and facilitators to help us apply the great things they've shared with us at our Boston SPIN meetings.
In This Issue:
Agile: No Converting Necessary by Damon Poole
Code Stability Metrics: Identifying Good and Bad Code by Fiona Dossin
Relationships: The REAL Goal of Networking by Marilyn Santiesteban
We hope you're enjoying our SPIN meetings. We've got a great line-up for the 2009/2010 year including Tim Lister and Ed Yourdon.
And we're always interested in your voice -- would you like to facilitate a roundtable?
Are you blogging about our meetings? Have ideas on how we can
improve? We're here for our members, so
drop us a line and let us know what you'd like from your SPIN.
 |
Agile: No Converting Necessary
by Damon Poole
What's your favorite flavor of ice cream? Most people prefer Vanilla,
but Chunky Monkey is pretty popular these days too. A lot of people
think Agile is like that -- the new flavor of the week; preferred by
cowboy coders and folks who take unprofessional shortcuts that won't
stand up over time.
|
But if you look deeper, you'll find that Agile is a discipline with a
whole body of knowledge behind it. Just look at the many books
written on Agile practices and I think you'll find many of its
practices are worthwhile in their own right.
You don't even have to be Agile to use them; most can be adapted to
traditional projects:
• Continuous Integration
• Unit Testing
• Backlog
• Time Boxing
• Daily Standups
|
• Refactoring
• Product Owners
• User Stories
• Collaborative Teams
• One Piece Flow |
|
|
Stay Connected
Connect with other members:
» LinkedIn Boston SPIN Group
» Twitter use #BostonSPIN
Got more to share?
Blog about our meetings and we'll link to you in In-the-Spin.
@ Email Us Your Blogs!
|
|
|
|
|
Each of these practices provides value in and of itself. But their
value gets magnified as you add more practices because each one makes
the others easier to do and reinforces their value. If you add in
ScrumMasters, short iterations, iteration demos and retrospectives,
you'll achieve critical mass, adding a whole new level of value.
You don't have to "convert" to Agile. The goal is to find new and
better ways of doing things, not being Agile. What would be the
point of adopting Agile if it was just a matter of
preference? That would be like me trying to convince you that
Chunky Monkey should be your new favorite flavor of ice cream. Instead,
consider trying some of the practices. Even if you don't call them
Agile. I bet you'll find that not only do you like some of them, but that
they provide significant benefits both for the business and for you
personally.
» View Damon's Presentation
» Read more of Damon's tips on his Do it Yourself Agile blog
|
|
|
Software Stability Metrics: How To Find "Good" Code and "Bad" Code (Roundtable) |
Code Stability Metrics: Identifying the Good and Bad Code in your Projects
by Fiona Dossin
The ability to identify Good vs. Bad code gives development
organizations valuable insight into the health of their code base.
Insights that can be used to evaluate software quality, determine
where additional resources may be needed, and identify potential risks
before they turn into problems:
- Good [Stable] Code works well and causes few issues.
- Bad [Unstable] Code can cause numerous project issues and eat up
valuable resources as it demands more and more time for fixes.
Code Stability Metrics examine two components to determine stability (or "goodness"):
Volatility
represents how much effort is required to maintain the
code. Common measurements include the number of check-ins or lines of
code changed. Tracking volatility helps us identify which parts of
our software require more development effort.
Quality
represents how well code is designed and written. Common
measurements include Cyclomatic Complexity,
conformance to coding standards/practices, and number
of bugs. Tracking quality allows us to see
if our quality is increasing or decreasing as our product evolves.
For example, we might chose # of Check-Ins (Volatility)
and Cyclomatic Complexity (Quality). Since a lower value is
preferable for both, we can compute a project-specific Stability
Score by multiplying the values together:
| File |
# Check-ins Last Month (Volatility) |
Cyclomatic Complexity (Quality) |
Stability Metric (Lower is Better) |
| Class A |
10 |
10 |
100 |
| Class B |
5 |
5 |
25 |
| Class C |
20 |
15 |
300 |
| Project Total |
|
|
425 |
Here, Class B is the most stable, Class C the least. So, we might
decide to focus on increasing the stability of C, which will in turn
improve our project's overall stability. As Class C's volatility
decreases, so too will the amount of development effort required to
maintain it.
Tracking stability metrics allows organizations to
identify problematic code before it becomes a real problem.
» Learn more about Stability and other Code Metrics on Fiona's blog
Relationships: The REAL Goal of Networking
by Marilyn Santiesteban
It's happened to all of us. We attend a networking event with the
goal of making new contacts. We talk to as many people as possible,
diligently gathering business cards. We mean to follow-up to build
these new relationships, but life intervenes.
A week later, we run across a stack of business cards and can't
even remember who was who, or which person we promised what to.
While we had the best intentions, potential connections too often
vanish before they have a chance to get started.
What can we do differently?
Set a Goal for Yourself.
Are you looking for leads in target companies? People in certain kinds
of positions? Three new leads? Be specific and strive to achieve it.
Ask for Business Cards.
Jot notes on the back to help your remember -- about the person, what
you talked about, and what you agreed to send them ("new to management, big ERP deployment, forward article on
metrics").
Give Out Your Own Business Cards.
Even if you're unemployed. List your name, contact info (no address),
LinkedIn URL, and your top three skills.
Follow Up Within 24 Hours.
This is the real secret. Send emails to everyone -- the folks who
sponsored the event, the speaker and everyone who gave you their card:
- Send thank you notes
- Send anything you said you would (or a note that you're working on it)
Expect that most people will respond promptly, but recognize that some
won't. Don't be discouraged! Wait a few days, and then send another note.
Frequency is key.
Relationships require nurturing. Make sure you keep in touch at least
monthly. One-shot contact rarely yields a sustainable connection.
Try it out at the next Boston SPIN meeting!
» View Marilyn's Presentation
» Meet up with other networkers in Marilyn's Create the Opportunity Network for job seekers
| |