Better Software Summer 2017
Better Software Summer 2017
Better Software Summer 2017
10
Lessons Learned
in Cross-Platform
Development
YOU MAY NOT BE AGILE THINKING UPSIDE DOWN
10 things you must do to claim the Motivate your team to even greater
benefits of transitioning to agile levels of achievement
OCT. 16, 2017
ANAHEIM, CA
CLICK HERE FOR DETAILS
On the Cover
10 Lessons Learned
in Cross-Platform
IN SID E Development
Building an app for a single
platform is difficult, but designing,
implementing, and testing an
app targeting multiple operating
Volume 19, Issue 3
system platforms can be next to
SUMMER 2017
impossible. The secret balances
upfront design with customer
Features
24 30 38
The Power of Thinking Upside 10 Things You Must Do to How Technology Is Changing
Down Become Truly Agile the Way We Learn
Software developers can become Agile is not a state of doing; its a state Modern technologies like virtual reality,
bogged down trying to keep up with of being. Adopting business models on cloud-based systems, and measurement
agile process and procedures. Get better value and learning how to make teams of content have disrupted how we learn.
results by rethinking your approach to autonomous are both necessary steps Standards have evolved to improve how
balancing focus, agility, management, to reap the benefit of agility. learning material can be published to
and testing. by Paul E. McMahon by Jim Schiel any device. by Troy Tolle
Columns Departments
09 TECHNICALLY SPEAKING
45 CAREER DEVELOPMENT 06 Mark Your Calendar
Achieving Continuous
Improvement and Innovation
You Get What You Tolerate
Weve all worked with a talented
07 Editor's Note
in Software developer who can be a frustrating 08 Contributors
There is tremendous pressure on
software development teams to deliver
challenge to manage. First-time
managers may unknowingly encourage 12 Interview with an Expert
software faster, better, and cheaper.
Quality engineering with a focus on
bad behavior. There are several
innovative ways to resolve the situation.
43 TechWell Insights
innovation is the answer. by Mike Sowers by Andy Kaufman
47 Ad Index
Better Software magazine brings you the hands-on, knowledge-building information you need to run smarter projects and deliver better
products that win in the marketplace and positively affect the bottom line. Subscribe today at BetterSoftware.com or call 904.278.0524.
SQE TRAINING
A T E C H W E L L C O M P A N Y
Helping organizations worldwide improve their skills, practices,
and knowledge in software development and testing.
Aug. 711, 2017 Aug. 2931, 2017 Sept. 1214, 2017 Sept. 1921, 2017
Virtual Classroom Denver, CO Philadelphia, PA Boston, MA
Aug. 1517, 2017 Sept. 1214, 2017 Sept. 1214, 2017 Sept. 2628, 2017
Detroit, MI Atlanta, GA Tampa, FL Dallas, TX
Sept. 1215, 2017 Sept. 2629, 2017 Sept. 1214, 2017 Nov. 1416, 2017
Philadelphia, PA Dallas, TX Philadelphia, PA San Jose, CA
Conferences
Cutting-edge concepts, practical solutions, and todays most relevant topics.
events TechWell brings you face to face with the best speakers, networking, and ideas.
Both Better Software magazine and TechWell Corporation embrace the benefits of agile software
development. However, most of us have learned the hard way that being agile is never enough.
Ken Whitaker
That is why Im so impressed with Jim Schiels approach to agility in 10 Things You Must Do to
[email protected]
Become Truly Agile. And Paul McMahons The Power of Thinking Upside Down may be the
Twitter: @Software_Maniac
inspiration you need to motivate your team to greater levels of achievement.
The trend for online learning is augmenting, if not replacing, the traditional classroom. So how
exactly do cloud-based courseware solutions work? Troy Tolle, an early innovator in cloud-
based software development, explains it all in How Technology Is Changing the Way We Learn.
The market we serve demands software delivery to be faster, better, and cheaper. Mike Sowers
has some words of wisdom you wont want to miss in Achieving Continuous Improvement and
Innovation in Software. In every issue, we include an article on management or soft skills de-
velopment. What should you do when one employee impacts the effectiveness of an entire team?
Software managers are going to want to read Andy Kaufmans You Get What You Tolerate.
We value your feedback. Let us and our authors know what you think of the articles by leaving
FOLLOW US
your comments. I hope you enjoy reading this issue as much as we enjoy working with these
wonderful authors.
Dewey Hou has worked as a software engineer, project manager, and technical product manager prior to his
current role leading product development at TechSmith. Dewey works with teams to improve software devel-
opment practices in quality assurance, user experience design, technical documentation, project management,
and build/release engineering. You can contact Dewey at [email protected].
Andy Kaufman, the voice of the Institute for Leadership Excellence & Development, Inc., helps organizations
around the world improve their ability to deliver projects and lead teams. He has more than twenty-five years
of software development experience and is the author of three books. As the host of The People and Projects
Podcast, Andy provides insights that help listeners lead people to deliver projects. Andy can be reached at
[email protected].
Paul E. McMahon is principal consultant at PEM Systems, where he coaches teams on practical agility and
process maturity approaches. Paul released his fifth book, Its All Upside Down: What Ive Learned about Software
Development and Why It Seems Opposite to Everything I Was Taught. It should come as no surprise that his book,
like his Better Software article, includes true upside-down success stories. When he isnt coaching, you can find
Paul running (including the completion of twelve Boston Marathons). Reach Paul at [email protected].
Josiah Renaudin is a longtime freelancer in the tech industry and is now a web-content producer and writer
for TechWell, StickyMinds.com, and Better Software magazine. He wrote for popular video game journalism
websites like GameSpot, IGN, and Paste Magazine, and now acts as an editor for an indie project published
by Sony Santa Monica. Josiah has been immersed in games since he was young, but more than anything, he
enjoys covering the tech industry at large. Contact Josiah at [email protected].
With more than thirty-two years of experience, Jim Schiel has worked in software development in highly regu-
lated industries. Jim transitioned Siemens Medical, an organization of more than a thousand developers, from
waterfall to agile practices. The author of several books, including Enterprise-Scale Agile Software Development,
he helps transform organizations worldwide to improve development productivity and product quality. Reach
Jim at [email protected].
Mike Sowers has more than twenty-five years of practical experience as a quality and test leader of internation-
ally distributed test teams across multiple industries. He is a senior consultant who works with large and small
organizations to improve their software development, testing, and delivery approaches. He has worked with com-
panies including Fidelity Investments, PepsiCo, FedEx, Southwest Airlines, Wells Fargo, and Lockheed to improve
software quality, reduce time to market, and decrease costs. Reach Mike at [email protected].
Troy Tolle is a leading visionary and champion of cloud computing, used in redefining the future of learning.
After leaving academia, Troy cofounded Infinity Learning Solutions and built its DigitalChalk flagship product.
As a thought leader in enterprise technology, he is frequently called upon by cloud providers for technical
guidance. Troy speaks at both public and private gatherings on various topics including education, cloud com-
puting, and leadership. Contact Troy at [email protected].
Achieving Continuous
Improvement and
Innovation in Software
THERE ARE SEVEN KEY TIPS AND TECHNIQUES THAT CAN MAKE A HUGE DIFFERENCE IN
YOUR SOFTWARE DEVELOPMENT TEAMS EFFICIENCY.
by Mike Sowers | [email protected]
There is no end to the challenges we face in delivering better Delivering Software Faster, Better, Cheaper
quality software quickly to market at reasonable costs. We must Here are seven approaches that should be the catalyst for bet-
secure a firm understanding of user needs, select the appropriate ter, faster, and cheaper software development. None are to be tak-
technical design, and develop and test its functionalityall while en in isolation but knitted together, as appropriate.
addressing stated and implied nonfunctional characteristics, striv- Automate with intention: How do we produce better cars
ing to develop the right code, employing the latest stable technolo- more quickly? We automate many parts of the design and manu-
gy, and supporting products that work on multiple platforms. The facturing processes. During a TechWell STAR software testing con-
process depends on retaining the best team with the technical skill ference keynote, industry technology analyst Theresa Lanowitz
sets necessary to get it all done. suggested that the next opportunity in delivering better software
is automating across the entire lifecycle. I interpret this to mean
Getting Software Done Right not just a random, uncoordinated approach to automation, but an
My belief is that getting software done right is a societal re- orchestrated, integrated, and end-to-end automation approach.
quirement. [1] The deployment of software has reached utility sta- The opportunities for automation span the entire value chain.
tuswe rely on it just as we rely on water All components associated with DevOps
and electricity. Yet many of the organiza- allow us to better manage risk and accel-
tions I work with at conference events, in erate features to market.
One day, maybe well be
training sessions, and during mentoring Employ modeling and prototyping:
and coaching engagements continue to
able to just think about A picture is worth many user stories. Pro-
struggle to deliver software with the right some new software totypes are an excellent way to encourage
functionality, the right level of quality, at capability and a machine feedback to determine whether features
the right time, and at the right cost. will develop, test, and meet user needs. Collaborative modeling
Weve made some great progress
deploy it for us. tools, such as sticky notes, and comput-
evolving our design, development, test- er-aided tools, such as mind maps, UML,
ing, and delivery methods. These include: design patterns, business process model-
Improving technical skill sets ing, and agile model-driven development
Employing new or improved programming languages (AMDD), help the entire team and the stakeholders become aligned.
Creating new integrated development environments Embrace continuous quality engineering: Delivering better
Implementing testing tools (both commercial and open source) software with less rework demands built-in quality engineering
Using DevOps approaches, including virtualization, continu- practices at every step. Continuous improvement advocates us-
ous integration, and continuous deployment ing the plan-do-check-act cycle. Creating the tests before the code
is created in test-driven development is a beneficial approach
But even with these successes, I think there are ways the soft- to ensuring continuous quality. The same is true for acceptance
ware community can more consistently develop and deliver func- test-driven development, behavior-driven development, explor-
tionally sufficient software to our users quickly and cost-effectively. atory testing, and continuous testing.
Beginning with product design, the team should always incor- Drive innovation: Most computer hardware provides the abil-
porate quality engineering practices. The whole team benefits by ity to self-test and report diagnostics. Using tools like JUnit, tests
emphasizing quality from concept to delivery. can be created for software components, much like the basic input/
Leverage business intelligence: The more information we output system does when a PC powers up. Martin Fowler calls this
have, the better decisions we make. There is plenty of information simultaneously building a bug detector while developing soft-
available about development practices and the products created ware. [2] Extending this concept a bit further, how about software
using these approaches as business intelligence capabilities ma- smartbots constantly checking the health of computer services, ap-
ture. Pulling integrated information from multiple data sources plications, and systems?
encourages a data-driven culture, resulting in better decisions. Another opportunity to innovate is with automatic program-
Further, we have more information available on usage patterns, ming. Rather than a developer programming a computer with a
user experiences, application stability, and application perfor- specific set of instructions, machine learning offers a paradigm
mance operating in a variety of environments. shift, with the computer iteratively learning from data without be-
Think packaging, reuse, and integration: As product lines ing explicitly programmed to do so.
mature, strategies such as consolidation, reuse, repurposing, and
higher levels of integration allow producers to remain competitive. The Real Winner Is Software Development
Wrapping up software in a complete file system with everything it Efficiency
needs to run ensures that it will always run the same, regardless Using any one of these approaches is beneficial, but taking
of the environment. advantage of more than one provides more opportunity for im-
Containers allow us to do just that, helping us isolate our code provement.
from the operating environment. Repurposing proven code in- Lets assume user experience is being monitored and analyzed
creases productivity, improves quality, and reduces development in production on each software feature of an enterprise software
time. The aggregation of features, applications, or subsystems may app. We could leverage feature usage data to determine the prior-
expand functionality, improve reliability, and drive down mainte- ity of those features that should be enhanced first, or which auto-
nance costs, similar in scale to what the chip industry has achieved mated acceptance tests to run during our work in process release.
in increasing hardware component densities. One day, maybe well be able to just think about some new software
Implement decomposition and virtualization: Decomposing capability and a machine will develop, test, and deploy it for us.
an application into small components encourages a more modu- Until then, these approaches can help accelerate your journey
lar design that should allow multiple teams to work more inde- in delivering faster, better, and cheaper software.
pendently and smaller services to be more easily refactored. Em-
ulating the behavior of components still under development lets
others continue with development and testing.
C L I C K F O R T H I S S TO R Y ' S
REFERENCES
WA N T E D ! A F E W G R E AT W R I T E R S
TechWell is always looking for authors interested in getting their
thoughts published in Better Software, a leading online magazine focused
on the software development/IT industry. If you are interested in writing
articles on one of the following topics, please contact me directly:
Ken Whitaker
Editor, Better Software magazine | [email protected]
cordItemIndex(1));
It is unfair in some regards When youre doing manual We have to have tools to be
that people are picking testing, youre becoming a able to procure our data in an
on testing again, but by bottleneck, and then youre automated fashion that can be
embracing it, you really have an getting squeezed and pushed. hooked into our pipeline.
opportunity to be the driving
force at your company for this
[DevOps] movement.
Testers have the opportunity to, instead of being at the tail end of a
process, to be there from the very beginning.
me
$600 off*
ur N a
Yo Delegate Benefit from a
custom week
of learning and
discovery through
all aspects of the
development
lifecycle with:
Comprehensive
tutorials
Exceptional
concurrent
sessions
Inspiring keynotes
Pre-conference
Orlando, FL
classes
Networking
do
Hilton Orlan ista
activities
V
Lake Buena
The Expo
And more
OM
.T E C H W E L L .C
BSCEAST
YES.
HELLO, REAL WORLD In the real world, you dont have the luxury of choosing between
innovation and scale. That's why leading enterprises like Cisco,
Salesforce, Barclays and Amazon rely on qTest by QASymphony.
qTest helps hundreds of companies across the globe test smarter,
test seamlessly and test at scale. Finally, a testing solution built for
the real world.
These screen captures are a sample of many more you can view Cross-platform development is a nonstarter if the project
on our website. [1] doesnt make business sense.
As you can see, the same program can look different on a com-
puter running macOS versus a PC running Windows, and this pres- LESSON 2: ADD GUIDING PRINCIPLES TO
ents challenges for a development team Most software companies YOUR BUSINESS PLAN
dedicate separate teams to work on each target operating system Once you have the green light to develop apps for a new plat-
platforms. This can be quite costly and isnt the most efficient ap- form, how similar should the apps be? In my experience, it is not
proach. After many twists and turns during the latest release of practical to require all features and functionality to be identical on
our Camtasia app, several lessons emerged in the areas of busi- both platforms. There are always exceptions, so you better identi-
ness, users, technology, people, and process. fy some guidelines. Without guiding principles, development costs
Id like to share some of what Ive learned in developing soft- and timelines can quickly get out of control.
ware applications for Windows and on macOS. By defining requirements from a business perspective, you can
usually predict cross-platform business outcomes. Start by identi-
Multiplatform Benefits fying the areas of the app that require platform parity. Separate
Higher percentage of macOS users in future target market these areas into priority levels, as shown in table 2.
segments It is hard work to vet feature requirementsand even more so
Project interoperability is becoming the norm with work groups on two platforms.
in corporate environments
License model can be simplified, allowing users to run either The User Experience Influence
version (Windows or macOS)
Multiplatform support is a competitive advantage in the market- LESSON 3: LEVERAGE MULTIPLE
place PLATFORMS TO TEST PROTOTYPES
Reduce training costs for organizations Understanding user needs is critical to software development.
It is essential to come up with a user interface (UI) design that
Table 1: Identification of cross-platform business benefits
meets users needs on both platforms.
Our first version of Camtasia for macOS came years after the You are dependent on the release schedule of a third-party tool-
first Windows version. As a result, it would not achieve parity from kit for critical bug fixes and support for new features. We found it
the start. We took advantage of this fact and created an entirely frustrating to attempt to leverage new platform-specific features.
new design for macOS. Our goal was to make a better product, giv- For example, Windows Presentation Foundation (WPF) would not
en years of lessons learned from the Windows version. This ap- have been available with a third-party toolkit.
proach allows your development team and customers to discover What should have been a positive ended up putting us at a
what works best. competitive and market disadvantage. In the end, we decided to
Take advantage of the fact that you have two platform sand- abandon the UI toolkit.
boxes to play in, and test UI designs. The design could leapfrog Of course, these issues may not apply to your situation. But for
ahead on macOS and gain validation before incorporating changes us, native platform development for the UI became necessary.
on the Windows side. But introduce changes strategically, as exist-
ing customers find it difficult to accept drastic changes to the UI. LESSON 5: BE PRODUCT-CENTRIC INSTEAD
Internally, platform biases will be another significant factor OF PLATFORM-SPECIFIC
during UI design debates. This phased delivery approach takes Balancing platform-specific conventions and platform indepen-
time, and upper management and your customers must recognize dence has its challenges. It doesnt pay to develop a platform-inde-
that cross-platform parity isnt going to happen overnight. pendent app that is viewed as not usable or inconsistent to what a
Test out designs on one platform to help resolve these disputes Windows or macOS user expects.
and arrive at the best cross-platform design. When weighing your options in cross-platform development,
enumerate the differences that will be problematic for the apps
LESSON 4: PROCEED WITH CAUTION USING ability to be platform-independent (see table 3).
CROSS-PLATFORM UI TOOLKITS
Using a cross-platform UI toolkit seems like a no-brainer. How-
ever, the promise of write-once-run-anywhere comes at a cost.
We learned about some issues only after moving ahead with
one such toolkit. A few of the downsides included suboptimal user
experience, decreased development velocity, poor performance,
and inability to leverage the latest platform innovations. Using a
toolkit might have been great for our developers, but these nega-
tives would not have been accepted by our customers. If our macOS
app doesnt appeal to the Mac users, theyll use something else.
Creating a superior user experience was central to our custom-
er value proposition. The UI toolkit didnt deliver the look or feel
that we wanted. It also didnt provide the level of performance
needed by a video-editing app. There was an issue not only with
learning the toolkit but also with finding developers experienced
in programming with that toolkit.
As a result, development velocity slowed dramatically. The
learning curve was just too great. To compound the issue, devel-
opers still had to work with the details of the native Windows or
macOS platforms.
Selecting the Best Technology Consequently, compiler syntax issues often result in writing
Selecting the right tools for the job is another factor in a suc- more complex shared code. During development, we ran into com-
cessful cross-platform product development effort. Optimal choic- piler interoperability issues that we had to work around.
es enable great possibilities, while suboptimal ones create techni- In order for the unmanaged C++ code to talk with the managed
cal debt that hinders your development. C# runtime under Windows, there was a need for an interop layer.
Writing the interop layer slowed down developers and introduced
LESSON 6: SELECT A CROSS-PLATFORM performance issues that should have been identified sooner in our
LANGUAGE THAT FITS YOUR SITUATION development cycle.
Choosing a cross-platform programming language is key. It
is an essential practice to maximize the amount of code you can Language selection depends on
share between different platforms. Language selection depends on
business needs, the type of app, capabilities the language must pro-
business needs, the type of app,
vide, existing codebase, and your development teams skills. capabilities the language must
Our app manipulates large multimedia files and requires
low-level system access to hardware and the graphics processing
provide, existing codebase, and
unit (GPU) in order to achieve a high degree of performance. your development teams skills.
Due to our UI requirements, we knew our app would use
cross-platform code and platform-specific code. The team also was Fortunately, we were able to focus developers specifically on
already very familiar with C++, so given these factors, it become this issue and were able to build out our interop layer and tools.
our cross-platform language of choice. There are no such interoperability issues between C++ and Objec-
Cross-platform code must take a least common denominator tive-C on macOS.
Technical product
Owns decisions on fea-
NEWSLETTERS
Product lead ture backlog priority and
manager
requirements FOR EVERY NEED!
Owns decisions on
Senior software implementation. Each
Technical lead
engineer platform should have a Want the latest and greatest content
technical lead
delivered to your inbox? We have a
Owns decisions on team
Delivery lead Project manager
process and schedule newsletter for you!
Owns decisions on the
UX lead Senior UX designer overall user experience
across both platforms
Adopting Lessons Learned And, last but not least, TechWell Insights
Your experience in cross-platform development will probably features the latest stories from conference
be dramatically different from mine, but these lessons should hold speakers, SQE Training partners, and
true for any project. I wish you luck as you embark on your jour-
other industry voices.
ney in developing for multiple platforms.
[email protected]
Visit AgileConnection.com, CMCrossroads.com,
C L I C K F O R T H I S S TO R Y ' S
REFERENCES StickyMinds.com, or TechWell.com to sign up
for our newsletters.
Tricentis Tosca
Its different. It works. Well prove it.
FREEL
TRIA tricentis.com/better-software
THE POWER
OF THINKING
UPSIDE DOWN
Paul E.
McMahon
WEVE RESERVED
YOUR SEAT
L e a r n M o r e : h t t p s : //we l l .t c /s c 1 7 b s m
10 Things You Must
Do to Become
Truly Agile
BY Jim Schiel
bit.ly/GET-SECRETS
perfectomobile.com
Perfecting Software STATIC &
DYNAMIC
ANALYSIS
API, LOAD,
PERFORMANCE, &
The importance of software testing and error prevention has
risen dramatically, paralleling the continued escalation of SECURITY TESTING
software complexity. Parasoft provides developers with the
tools and infrastructure necessary to test early and regularly,
ensuring quality throughout the software development
lifecycle.
VIRTUALIZATION
NO ORDINARY
SOFTWARE
TESTER
ilovesoftwaretesting
O W
H HNOLO G G Y
C
T HANGIN E
E
SI C WAY W
H
T RNE
LEA
BY TROY TOLLE
t is not news that the internet has changed how we operate is true with corporate training. Most companies still distribute
in our daily lives. We stream our shows instead of watching manuals and rely on on-the-job or apprenticeship models for train-
them in real time. We carry the power of the internet in our ing, with no ability to formally track and measure the effectiveness
pockets. We can subscribe to thousands of software-as-a-service of these methods.
(SaaS) offerings to help us with running our businesses, automat- Thanks to new developments in software, measuring learn-
ing our homes, and finding our next meals to cook. Our profes- ing in the education space is shifting away from more traditional
sional and personal lives are inundated with technology, and it has methods. Training built on classroom lectures with a single grade
radically changed how we socialize and conduct business. for a course is being replaced with a more experiential approach
However, one area where technology seems to lag is in educa- to education and the measurement of what a person learned. This
tion. We still rely on traditional models of higher education with new technology is making learning accessible in real time on a
full curriculums, transcripts, and grade point averages. The same wide variety of devices.
The blocks themselves are linked together using cryptographic based on technology advances is opening new doors to experience
algorithms, meaning it would be nearly impossible for the data in learning in different ways, track it more precisely, and evaluate its
the blocks to be modified or forged. Rsums and learning experi- effectiveness.
ences could be instantly validated while still preserving privacy.
[email protected]
BRING THE TRAINING TO YOU For more than twenty-five years, TechWell
has helped thousands of organizations
Software Tester CertificationFoundation Level
reach their goal of producing high-value
Mastering Test Design and high-quality software. As part of
Agile Tester Certification TechWells top-ranked lineup of expert
Agile Test AutomationICAgile resources for software professionals, SQE
Integrating Test with a DevOps Approach Trainings On-Site training offers your team
Mobile Application Testing the kind of change that can only come
And More! from working one-on-one with a seasoned
expert. We are the industrys best resource
60+ ON-SITE COURSES to help organizations meet their software
testing, development, management, and
40 7
requirements training needs.
9 4
DEVELOPMENT
at your location allows you to tailor the
experience to the specific needs of your
REQUIREMENTS organization and expand the number of
AND TESTING
COURSES TOOLS COURSES people that can be trained. You and your
team can focus on the most relevant
17
AGILE
2
SECURITY
material, discuss proprietary issues with
complete confidentiality, and ensure
everyone is on the same page when
COURSES COURSES
implementing new practices and processes.
I F YO U H AV E 6 O R M O R E T O T R A I N , C O N S I D E R O N - S I T E T R A I N I N G
SQETRAINING.COM/ON-SITE
TECHWELL INSIGHTS
Featuring fresh news and insightful stories about topics important to you, TechWell Insights is the place to go for what is
happening in the software industry today. TechWells passionate industry professionals curate new stories every weekday
to keep you up to date on the latest in development, testing, business analysis, project management, agile, DevOps, and
more. The following is a sample of some of the great content youll find. Visit TechWell.com for the full stories and more!
Finding the Bottlenecks in the Agile and Think Small: Break Down User Stories for
DevOps Delivery Cycle Agile Success
By Tanya Kravtsov By Mitch Goldstein
To achieve incremental software development and continuous The entire agile team needs to be involved in a continuous process
feedback, you need to eliminate the tasks that create bottlenecks, which of identifying ways to simplify work, right up until a story is complete.
hinder the flow of development. A chain is no stronger than its weakest Smaller stories ensure that development work is rapid and trackable.
link, and identifying these weak links is a critical step toward achiev- Mitch Goldstein details how to focus on breaking stories down into a
ing agility and increasing efficiency. more estimable, digestible size.
Read More
Keeping Your Software Testing Abilities Test Your Data Quality to Increase the
Relevant Today, Tomorrow, and Beyond Return on Your QA Investment
By Sunil Sehgal By Shauna Ayers
Development and product teams have embraced agile and DevOps. With the high volume of data coming into your organization, its
What can testers do to keep up with their development peers? Here important that it be complete, correct, and timely. But considering the
are some ideas about what testers can learn, what skills we can add, velocity at which this data is moving, how do you measure its current
and what processes we can start doing in order to continue delivering quality? You must be able to test it wherever it sits still enough to be
quality today, tomorrow, and further into the future. viewable, without altering it.
7 Good Project Management Practices for Building for the Internet of Things Is
Replacing a Legacy System GreatJust Keep Security in Mind
By Payson Hall By Chris Poulin
When you need to replace a legacy system quickly, its tempting to The Internet of Things gives us opportunities to transform every-
set aside good project management practices and push forward reck- day life into frictionless interactions between humans and machines.
lessly. But doing so results in delays, cost overrun, and organization- However, that also means the technological attack surface is every-
al chaos. Take time to understand the problem, plan and estimate the thing. Makers learning how to build IoT devices must also learn how to
solution, and set up your project for success. build safe, secure, and compliant devices.
The Difference between Managers and What You Should Consider to Make the
Leaders Best Use of Your Collected Data
By Steve Berczuk By Catherine Cruz Agosto
You often hear managers referred to as leaders, but the two terms We live in a world where data is constantly being recorded. In
are not synonymous. Managers can be leaders, but not always, and software, determining the timing of when to use that data is critical to
there are people who dont have formal management positions who making the most of the information. You should take into account data
are leaders. Understanding the difference can help people in both freshness, the data-gathering processes and any dependencies between
rolesand their team membersbe more effective. them, and when to distribute information.
The incorrect
and he knew it. He also knew he was the only person who deeply un-
derstood some critical modules of the software we were developing.
However, Sam struggled with emotional intelligence. He was of-
ten oblivious to how his words and negative actions impacted oth-
perception is that the
ers. If someone disagreed with him, he tended to write them off as lower performers on
your team may be
stupid, and he could easily lose his temper in meetings. He refused
to follow many of our internal processes because they were, in his
opinion, worthless. In short, team members and business stake-
holders trod lightly around Sam, hoping they wouldnt set him off.
lazy. It could be they
Managers put up with Sams belligerence over the years because have just gotten into
a rut and need to be
he was technically valuablewe couldnt afford to upset him or risk
losing him to a competitor. The company was dealing with a ticking
time bomb. After being passed from group to group, Sam landed in
my organization. I was the last remaining manager for Sam to work
challenged.
with, and I was a relatively inexperienced manager at that.
What was I to do with Sam?
Individual Performance
What We Tolerate Its easy to start tolerating lackluster performance. Engaged,
Several years ago I came across a quote that has had a lasting self-managed teams are a worthy aspiration, but over time, cer-
impression on me: You get what you tolerate. [1] It was used in tain team members consistently go above and beyond while others
the context of marriage relationships, but it applies to many areas barely carry their own weight.
of what we do as professionals. This is especially true for those of The incorrect perception is that the lower performers on your
us who lead teams that deliver software projects. team may be lazy. It could be they have just gotten into a rut and
Everyone, especially management, tolerated Sam. But the im- need to be challenged. It could be the low performers are sufficient-
pact of his behavior was disastrous to team members. Trust quick- ly competent but realized how compensation works at many orga-
ly eroded when the tsunami of Sams wrath crashed against some- nizationsthey can go above and beyond and get a 3 percent raise
one in his way. Beyond hurt feelings, it hindered productivity and while the person who barely performs receives a 2 percent raise.
led to increased attrition. Regardless, an objective analysis of your team would likely
This problem is not unique to software development teams. find that you are tolerating lower performance from some team
Sales-oriented organizations often tolerate destructive salesmen members.
as long as they make their numbers, and some organizations toler- How much does this matter? Researchers of team effectiveness
ate hopelessly demanding and abusive customers because of one examined the impact of team members who were deadbeats (de-
reason: We need the money. fined as withholders of effort), downers (who tend to express
So, what are you tolerating? In my work with software man- pessimism, anxiety, insecurity, and irritation), and jerks (who vi-
agers around the globe, I often see three areas where we get what olate interpersonal norms of respect). They concluded that tol-
we tolerate: erating only one of these negative people can bring down overall
Team member performance team performance by 30 percent to 40 percent. [2]
Conflict among team members The willing/able matrix shown in figure 1 can be used to help
Our own careers guide team members to maximum effectiveness.
person to blame: yourself. Rusts point is that until you take re-
sponsibility for where you are, you wont take responsibility for
improving your situation.
Confront Educate and encourage The best help Ive found for handling career tolerations is a
mentor. Its often too difficult to get the perspective we need on
our own. Regardless of how formal the relationship is, substantial
benefits come from having someone who can help assess who we
- Willing + are, where we would like to go, and how we can get there.
Figure 1: How to move from tolerating to improving
Your Next Move
The goal is for team members to operate in the upper-right The willing/able matrix helped me start a long overdue conver-
quadrant as fully able (competent and skilled) and willing (en- sation with Sam. I challenged him to find an opportunity to grow
gaged, motivated, and open to change). his influence at the organization and to improve the teams overall
Sam was fully able, in that he was clearly a talented developer. ability to deliver. When Sam pushed back and refused to change,
But he had a willing problem. This placed him in the upper-left this eventually led to a more difficult conversation. Sam was now
quadrant of the matrix. Folks in that quadrant need to be chal- confronted with the reality that if he didnt change, it would cost
lenged to move to the right. This can lead to the manager confront- him his job.
ing individuals if their performance doesnt improve. I wish I could report that Sams eyes were opened and he
changed his behavior. In the years since, I have seen problem em-
Conflict and Team Interactions ployees respond favorably to challenges and up their game. But
Beyond individual performance issues, we can also tolerate thats not how things ended for Sam. I took the step we had all
poorly managed conflict between team members. Teams inevita- avoided for too long, and Sam was asked to leave the company.
bly encounter conflict, and if youre a manager at all like me, you This resulted in Sam without a job and our team missing this high-
may not particularly look forward to dealing with it. Yet how your ly volatile but valued developer.
team deals with conflict can be a critical factor in how successfully That seems like a lose-lose ending, but its not the end of the
you deliver your projects. It can be a good thing and lead you to story.
better solutions, or it can be destructive, leading to reduced trust, How long do you think we missed Sam, whom we thought we
resentment, and attrition. couldnt live without? Not long. Team morale and productivity im-
Cognitive conflict is the beneficial sort of conflictthe type proved, and we were still able to complete projects. It turned out to
that wrestles with the ideas and approaches that lead to better out- be a positive experience for Sam, too. His wife happened to attend
comes. Cognitive conflict is also necessary, and if you dont have a class I was teaching years later. During a break, she told me that
some of it, you could be tolerating something just as insidious: arti- being let go was a terribly difficult time for him, but he could now
ficial harmony. Affective conflict, on the other hand, is when those say it was one of the best things that happened in his career. It was
interactions go over the line and get personal. Tolerate affective the jolt he needed to make some necessary changes in his life.
conflict, and its only a matter of time before youll see hits to inno- You are getting what you toleratewith your team and your
vation, quality, and overall team performance. career. Some of these results are benign and unworthy of further
Talk with your team about these types of conflict, and be alert thought. But others are holding you and your team back from max-
to situations where you begin tolerating affective conflict. imizing true potential. Its your responsibility to remove anything
impeding your team.
Impact to Career Progression What are you tolerating?
So, what are you tolerating in your career? Have you grown
strangely content working for an organization that treats you more
like a resource than a person? Are you tolerating a boss who mi-
cromanages you and shoots down ideas without reasonable con-
C L I C K F O R T H I S S TO R Y ' S
REFERENCES
BETTER SOFTWARE TechWell.com 46
C A N T AT T E N D A T E C H W E L L C O N F E R E N C E ?
SQE TrainingeLearning 36
publisher (TechWell Corporation). All rights reserved.
SQE TrainingOn-Site Training 42
No material in this publication may be reproduced in
STARCANADA 28
STARWEST 2 any form without permission. Reprints of individual
Tricentis 23
articles available. Call 904.278.0524 for details.
TurnKey 48
Plus, use our simple ROI Calculator to give you an indication of how much you
can save with TurnKey test automation.
turnkeysolutions.com/free-assessment/ | 844.428.4678