BSC / ADP West 2011
 
SQE Home
 
 
 

Better Software Conference 2011
Concurrent Sessions

Go To:   Wednesday  |  Thursday






Concurrent Sessions for Wednesday, June 8, 2011 10:15 AM


BW1
 

Leading Projects & Teams
Reading the Tea Leaves: Predicting a Project’s Future
Payson Hall, Catalysis Group, Inc.


What clues from a project’s history and present status give us the best insight into its future? Realistically, can much be done to “fix” a project if the current signs aren’t promising? Or are most projects’ fate preordained? Payson Hall has participated in and reviewed hundreds of projects during his thirty-year career in software development. Without claiming mystical powers, Payson shares patterns of failing projects he’s observed on large and small software projects in both the public and private sectors. Then, he explores key leverage points for taking corrective actions to get things back on track quickly. You’ll discover ways to identify early “problem seeds” that can grow into larger issues over time. Take back a diagnostic framework—a systematic investigatory process—to help identify root causes of problems. Learn to read your project’s tea leaves and gain fresh insights into the steps you can take to positively influence your project’s future.

Learn more about Payson Hall

Payson Hall
       

 


BW2
 

Design & Code
Coding for Keeps: How to Write a Good Function
Chuck Allison, Utah Valley University 
 


Functions are the basic building blocks of computer systems. Object-oriented classes are a way of packaging functions with shared data. Inheritance and polymorphism essentially are all about finding the right function. It’s all about functions! Get the picture? Chuck Allison explains that functions come in many varieties: static functions, polymorphic functions, generic functions, nested functions, higher-order functions, generator (aka stream) functions, coroutines, function closures, delegates, etc. Functions can handle arguments in different ways: by value, by result, by reference, by sharing, and by need, to name a few. Do you know how and when to use which? Functions should also be resource-friendly and robust should something hit the proverbial fan. Are your functions error-safe? Reusable? Maintainable? Do you know—really know—how to write a function? Come join Chuck and find out.

Learn more about Chuck Allison

Chuck Allison
       

 


BW3
 

Cloud Computing
Cloud Computing: Everything I Wanted to Know But Was Afraid to Ask
Ed Laczynski, Datapipe


Cloud computing presents new opportunities for software teams to develop exciting products that scale faster and easier. At the same time, cloud computing offers new ways for developers to collaborate with and learn from their peers—both inside and outside their project team. Today though, the topic of cloud computing is shrouded with marketing hype, undefined interpretations, and a myriad of new offerings that can pose major challenges. To set the stage for successful cloud development, you must clearly understand the make-up and intricacies of the cloud computing ecosystem. Ed Laczynski provides an overview of all things “cloud” as it relates to software development and explores the opportunities to build and deploy new products and services. He describes the key platforms, infrastructure, and software offerings about which every software developer should know. Ed introduces new “meta” cloud platforms and infrastructure and highlights a variety of small though important software development enabling tools that are vital to successful cloud application development.

Learn more about
Ed Laczynski

Ed Laczynski
       

 


BW4
 

Special Topics
Mobile App Development: Choices and Decisions
Julian Harty, eBay 


You’re thinking of creating a mobile application to take advantage of the sky-rocketing potential of mobile phones and other smart devices. Serious and critical choices must be made. Which platforms and technologies do you support? Are web-based applications the best approach? What sort of testing will you need—from whom, when, and how much will it cost? Do you want to create applications that take advantage of the mobile platforms’ capabilities such as location-aware features? Since there are at least fifteen major platforms, including several that use disparate semi-proprietary programming languages, making the right decisions early is critical. Wrong decisions will result in wasted time, effort, and money and increase the likelihood of failure. Julian Harty, who's had practical experiences developing and testing multiple mobile applications on a mix of platforms since 2006, answers these questions, and more, on developing mobile applications. The material is based on a fun e-book he contributed to: Don't Panic—Mobile Developer's Guide to the Galaxy.

Learn more about
Julian Harty

Julian Harty
       

Concurrent Sessions for Wednesday, June 8, 2011 2:30 PM


BW5
 

Leading Projects & Teams
Teamwork Is an Individual Skill
Christopher Avery, Partnerworks, Inc. 
 


Are you in this situation? You share responsibility with others to get things done, and, although you are not in charge of them and they are not in charge of you, your individual performance, credibility, and perhaps even your paycheck depend on what you accomplish with them. Knowing how to get things done with others over whom you have no direct authority may be your greatest leverage for career success—and your success in developing high-value software. Christopher Avery shares his communication framework for building and leading cohesive, high-performance teams. You don’t need to be a smooth-talker or an extrovert to master this approach. The fundamental challenge is helping team members understand the differences between responsibility and accountability, and mastering the dynamics of everyone’s assuming shared responsibility for success. Being accountable for something doesn't necessarily mean sharing ownership—responsibility—when things go wrong. Teams that operate with shared responsibility have more confidence, get better results, and have more fun.

Learn more about Christopher Avery

Christopher Avery
       

 


BW6
 

Design & Code
Prefactoring: Extreme Abstraction, Extreme Separation, and Extreme Readability 
Ken Pugh, Net Objectives 
 


Developers often run into the same issues on every project. As the software is created, design problems start to creep in—causing maintenance releases with no new features, project delays, and worse. While some of these problems can be resolved by simple refactoring, others can be fixed only by a complex code restructuring effort. But you can avoid most these issues in the first place with prefactoring—using your experiences in previous projects and the experiences of others to help in early detection of common design errors and problems. Ken Pugh shares guidelines such as “When You’re Abstract, Be Abstract All the Way”, “If It’s a Collection, Make It a Collection”, “Consistency is Simplicity”, “Separate Policy from Implementation”, “Write Your Code So the Customer Can Read It”, and “It’s Easier to Lump a Splitter than to Split a Lumper.” Ken demonstrates specific examples of each guideline along with stories of projects where a guideline was not followed.

Learn more about Ken Pugh

Ken Pugh
       

 


BW7
 

Cloud Computing
Virtual Private Clouds: A Secure Approach for Testing in the Cloud
Prashant Suri, QA InfoTech
 


Using cloud computing resources to test software can significantly expand the universe of plausible test scenarios. With the power of the cloud, we now can simulate test loads of many thousands of concurrent users across hundreds of platform combinations. So, how can we provide a secure environment for cloud-based testing over the Internet? Or must we abandon the cloud and revert to testing behind the firewall? Prashant Suri has tackled this challenge using Virtual Private Clouds (VPCs) to secure data and transactions while replicating heavy user loads in geographically dispersed locations. Prashant explains how to include cloud resources as if they were simply another component of the in-house network. He shares case studies on test architecture solutions and performance testing using VPC so you can leverage secure cloud benefits in your work. Take back a novel approach for a seamless bridge between the existing IT infrastructure—firewalls, antivirus programs, Active Directory, etc.—and the cloud to extend supervision and security capabilities.

Learn more about
Prashant Suri

Prashant Suri
       

 


BW8
 

Special Topics
Improving Your CMMI® Organization through Lean and Agile Techniques
Paul McMahon, PEM Systems
 


The good news is that your organization has documented its processes and you’ve achieved a CMMI® rating. However, you are hearing complaints such as, “We need to increase our agility to respond more rapidly to customer needs” or “Why do our processes require work that adds little value to the product?” So, what can you do? Contrary to popular belief, the CMMI® and lean-agile techniques are not at odds—in fact, they complement each other. Paul McMahon explains how and why, and presents a wealth of proven techniques to improve your organization’s performance with lean-agile approaches and not jeopardize your CMMI® compliance. Learn specific agile and lean techniques that have helped others address the common process problems found in many organizations. Paul shares multiple case study experiences where his techniques have helped organizations achieve their performance goals within CMMI® guidelines. Use these techniques today to start improving your own organization’s performance.

® CMMI is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University

Learn more about Paul McMahon

Paul McMahon
       

Concurrent Sessions for Wednesday, June 8, 2011 4:00 PM


BW9
 

Leading Projects & Teams
Faltering Projects: Getting Them Back on Track
Johanna Rothman, Rothman Consulting Group, Inc.
 


Are you concerned that your project is in trouble? Perhaps the team has missed some deadlines. No one can show a demo. The testers are finding more defects that anyone expected. And, because you are starting to have delays, the stakeholders want more features in this release. You know that things are not hunky-dory with your project. Johanna Rothman first discusses the measurements you can take to evaluate progress—cumulative flow, fault feedback ratio, and defect trends. Next, she describes approaches she’s used to rescue projects—time-boxing, working by feature, using demos to demonstrate progress, and managing scope changes that can slow down your project. You’ll learn the options you have for getting the project back on track and keeping it there through this release and into the future. And because, ultimately, some projects can’t be saved, Johanna will help you to recognize the losers and discuss ways to gracefully cut your losses.

Learn more about
Johanna Rothman

Johanna Rothman
       

 


BW10
 

Design & Code
Avoiding Over and Under Design 
Alan Shalloway, Net Objectives
 


The question of how much design to do up-front on a project is an engaging one.  Too much design often results in overkill, complexity, and wasted work.  Too little design results in insufficient system structures that require rework, additional complexity, and wasted effort.  How can we know what the right balance is? Alan Shalloway shows how to use the advice from Design Patterns coupled with the attitude of not building what you don’t need from Agile. The trick is in discovering what you don’t know, how it may affect you, and then how to isolate these risks in your code in a simple manner. Alan describes the essence of emergent design – that is, starting with a simple design and letting it evolve as the requirements evolve.  He also demonstrates how to refactor to better designs and how this is different from refactoring bad code.

Learn more about
Alan Shalloway

       

 


BW11
 

Cloud Computing
Performance Testing in Cloud-based Environments
Alim Sharif, Ultimate Software Group
 


Cloud computing is changing the way we deploy, run, test, and maintain our applications. The dynamic nature of the cloud has created enthusiasm among IT professionals as organizations try to move away from their physical-based environments to take advantage of the power of the cloud. However, senior management is concerned about moving stable applications from existing environments and are demanding comprehensive performance tests and reliable results before they commit. Alim Sharif believes that, as a performance test manager or engineer, you should be able to plan, execute, and report performance, scalability, stability, and reliability to ensure that there are no surprises after moving your application to a cloud-based environment. Alim shares his learning, tips, and tricks to perform this testing in a cloud-based environment. He also shares his experience with five major cloud service providers and discusses how things did not go as smoothly as promised.

Learn more about Alim Sharif

Alim Sharif
       

 


BW12
 

Special Topics
Implementing a Security-focused Development Lifecycle
Cassio Goldschmidt, Symantec Corporation
 


Assaults against digital assets are unquestionably on the rise. If you create applications that handle valuable assets, your code WILL be attacked. In addition to lost revenue and productivity, the consequences of compromised systems can include loss of trust, a tarnished reputation, and legal problems. Much like quality assurance, it’s important to have a holistic approach to security that unifies people, process, and technology. Cassio Goldschmidt introduces defense techniques that measurably reduce the number and severity of software vulnerabilities. These include secure coding techniques, minimizing the use of unsafe functions, use of compiler and linker security options, and specialized static analysis tools. Enrich your development lifecycle with threat modeling, security code review, penetration testing, and vulnerability management. Join Cassio to explore real-world secure development lifecycle insights and leave with powerful new approaches to deliver the products your customers demand and deserve.

Learn more about Cassio Goldschmidt

Cassio Goldschmidt
       



Top of Page 

 
Send us Your Feedback