|
|
|
|
 |
|

Today’s organizations depend on software applications for their business success—and survival. When applications fail, businesses are severely damaged—revenue losses in the millions, key data stolen, brands and reputations damaged. Security vulnerabilities impact consumer trust and result in violations of customer privacy or customer lawsuits. Often the root cause of these dire consequences is an information and communication gap between development and corporate management. Simply stated, business executives often do not know the first thing about how software is built, tested, or maintained. They often refuse to approve the time and resources necessary to ship a product with acceptable quality and security. Likewise, development teams often do not know the first thing about business and cannot adequately justify their needs to business. Join Jeffery Payne as he discusses how senior executives think about software and some approaches that software development managers can use to effectively communicate to executive management their needs regarding software risks, the real costs of software quality, the software ROI, and the role software security should play in business decisions.
Jeffery E. Payne is CEO and cofounder of Cigital. Under his direction, Cigital has become the leader in software security and software quality solutions, helping clients mitigate the business risks associated with failed software by building quality and security into their software. Jeff is a recognized software expert and advises Fortune 500 companies nationwide about the business risks of software failure. He frequently testifies before Congress on issues of national importance, such as intellectual property rights, cyber-terrorism, and software quality. Jeffery is on the board of advisors of the Institute for Infrastructure and Information Assurance and for Graduate Studies in Arts and Sciences at the College of William and Mary. He holds a BS and MS in Computer Science from Allegheny College and the College of William and Mary respectively.
|
|
 |
|
 |
|

 The difference between gamblers and many software managers is that gamblers know there is a good chance they will lose a bet. An intelligent blackjack player can expect to win 45-49 percent of the time; software project success rates have only recently passed the 33 percent mark. Payson Hall argues that a key to project success is improving our ability to identify and manage risks—technology risks, project risks, business risks, and more. Although risk management is an increasingly popular topic in the executive suite, talk alone does not mitigate software risks. Is risk management a fad or a discipline? How does risk affect real project outcomes? Is it worth the investment? What does effective risk management look like? Join Payson Hall as he presents practical strategies for identifying and managing real-world software risks. Learn to identify threats to your projects’ success and practical strategies to mitigate those risks. Take back simple risk management strategies you can use to identify, analyze, and prioritize risks.
A systems engineer and project management consultant, Payson Hall is a founding member of Catalysis Group, Inc. Formally trained as a software engineer and computer scientist, Payson has performed and consulted on a variety of hardware and software systems integration projects in both the public and private sectors throughout North America and Europe during his twenty-five year professional career. He has been a featured speaker on topics of systems integration, project management, and risk management. His rare combination of IT project management experience and communication skills have made Payson a valued member of many project review and project oversight teams. Payson is a frequent contributor to StickyMinds.com and Better Software magazine.
|
|
 |
|
 |
|

In the software business, poor product design can lead to frustration and wasted time for our customers. Although we can ignore "usability" and "good design" without negatively impacting the initial success of a product, sales and customer satisfaction will suffer in the long run. Usability is a topic that has been discussed at great length, but many of the accepted design conventions either lack explanations of where and how to apply them, or they are entirely untrue. Sanjeev Verma explains how to ignore usability and save valuable time during the design phase of a product and apply it where it really counts—on new feature development. Kendra Yourtee offers proven practices that she has used in her daily routines to improve the usability of products as they are updated. She discusses simple ways to “test” designs against real data before the software is complete. Kendra presents six key ideas that you can use at any stage in the product development cycle to help design better products and applications.
Sanjeev Verma, a software developer for four years, is happy as long as he gets to solve interesting problems and write cool features. Sanjeev graduated from Rice University in 2002, worked as a Software Developer at National Instruments for four years, and now works on Windows Virtualization at Microsoft.
Kendra Yourtee has been a User Interface (UI) Project Manager for three years and was previously a UI tester. She knows firsthand what happens when users can't use products—they take their business elsewhere. Kendra graduated from Boston University with a double degree in computer science and mathematics but found her real passion was for customer-centered UI design. At Microsoft she has worked as a UX program manager designing simple solutions for complex problems.
|
|
 |
|
 |
|

The operational structure of many organizations fails to support their software development teams. Continuously creating and reforming teams, isolating development from the organization, lack of participation by customers, and rapid task switching cause huge amounts of waste in development. Although agile development practices have made great strides in the last ten years, they have largely ignored the issue of the structure of the organization. “Lean Thinking” is the shorthand phrase for the paradigm, thought processes, and principles that Toyota follows in producing high quality cars at low cost—with a faster development cycle than their competitors. Software development is not exactly like manufacturing, but the principles of Lean Thinking—optimizing the whole, eliminating waste, and respecting people—apply equally well to software development. Alan Shalloway illustrates how the principles and tools of Lean Thinking can be used both inside and outside your team. Teams can use Lean to focus on quickly creating business value in a sustainable process. Organizations can use Lean Thinking to restructure themselves to ensure that software development teams operate efficiently.
Alan Shalloway is the founder and CEO of Net Objectives. With more than thirty-five years of software industry experience, Alan is an industry thought leader, trainer, and coach in the areas of Lean Software Development, the Lean-Agile Connection, Scrum, and using Design Patterns in agile environments. A popular speaker at conferences worldwide as well as a trainer/coach, Alan is the primary author of Design Patterns Explained: A New Perspective on Object-Oriented Design and is currently co-authoring three other books in the software development area. A certified ScrumMaster, Alan has a Masters in Computer Science from M.I.T.
|
|
 |
|
 |
|

As always, the snake oil bandwagons are circling your organization. But unlike snake oil, a purported health supplement of old, modern organizations bet their success on technologies with often equally dubious claims. Did your organization jump on the CORBA bandwagon? It’s now dead. How about outsourcing? Have you discovered all the hidden costs and quality problems yet? Perhaps you were mesmerized by Extreme Programming—a fading religion that once had many believers but few actual practitioners. There are many other software religions with many practitioners but few real believers. Do you use sound business judgment in choosing your technologies and methodologies? Or do you choose it because you heard an impassioned presentation by a noted expert? Ungrounded choices based on testimonials place us squarely back in the days when snake oil salesmen crisscrossed the land. Today’s bandwagons include CMMI®, AJAX, RUP, SOA, and Agile. Will they advance our industry? How can you know? Jim Coplien believes our industry advances through effective systems thinking, introspection, good decisions, hard work, courage, and initiative. Jim endorses these old fashioned basics and challenges you to use them in making your technology decisions.
James Coplien is a Senior Agile Coach and Software Architect at Nordija A/S in Copenhagen. He is the author of several books on C++ and software design and is co-author of Organizational Patterns of Agile Software Development. He has helped lay the foundations of object oriented design, software patterns, and agile software development. His current endeavors include consulting on software architecture and organizational structure, agile readiness assessments, software usability consulting and training, and research into patterns for highly dynamic systems. He has never designed a programming language and has never created a methodology.
|
|
 |
| |
|
|
|