development lifecycles

Better Software Magazine Articles

An Introduction to Scala

Scala is a programming language that blends functional and object-oriented language features. Scala programs run on the Java Virtual Machine and can easily interact with Java code. Learn how Scala can yield concise, safe, and compatible code and how you can start learning Scala on your own.

Daniel Wellman's picture Daniel Wellman
Copeland on Weinberg

Lee Copeland and Jerry Weinberg have crossed paths—both on page and in person—many times over the years. Here, Lee reflects on some of those meetings and their valuable lessons.
 

Lee Copeland's picture Lee Copeland
License to Open Source

Open source is widespread and growing in many software development organizations. While there's no purchase cost, the code does come with license obligations. Understanding open source from an intellectual property perspective can help avoid downstream legal.

Kamal Hassin
Slicing Requirements for Agile Success

Agile teams need to analyze product requirements in enough detail to build, test, and deliver the right requirements in short time frames. For the many teams that struggle to define "just enough, just in time” requirements, here's help.

Crowdsourced Testing of Mobile Applications

With new mobile applications for Blackberry, iPhone, and Android battling for media attention and consumer dollars, the pressure to get applications built, tested, and launched has never been greater. Getting high-quality apps to market quickly can make or break a product or company. However, the testing methods that work for Web and desktop apps (e.g., in-house QA, outsourcing, emulators/simulators, and beta testers) do not meet the extreme testing needs of mobile apps. Companies must test across many handset makers and models, wireless carriers, operating systems, browsers, and locations. This calls for a new approach-crowdsourcing. Doron Reuveni provides insight into the growing trend of crowdsourced testing for mobile applications and addresses both the benefits and challenges of this new testing model.

Doron Reuveni, uTest
Taming Bug Reports and Defects: The Agile Way

Software defects bug everyone. If your organization is like most and you have a large queue of defects waiting to be fixed, this session is for you. It's probably not realistic to think we'll get around to fixing all of these bugs; so, we need to consider another approach. Lisa Crispin explains how agile teams address defects and how you can apply an agile approach to defects whether or not your development approach is "agile." Explore with Lisa ways to deal with a giant pile-or database-of old bug reports and which of the many, available defect tracking systems to consider-if you need one at all. See examples of alternatives to traditional bug reporting and how to shift your team's mindset toward preventing bugs in the first place. Get new ideas for taming your backlog of defects and discover ways your team can work together to minimize or eliminate bug reports all together.

Lisa Crispin, ePlan Services, Inc.
Web Security Testing with Ruby

To ensure the quality and safety of Web applications, security testing is a necessity. So, how do you cover all the different threats-SQL injection, cross-site scripting, buffer overflow, and others? James Knowlton explains how Ruby combined with Watir-both freely available-makes a great toolset for testing Web application security. Testing many common security vulnerabilities requires posting data to a Web server via a client, exactly what Watir does. The Ruby side of Watir, a full-function programming language, provides the tools for querying the database, checking audit logs, and other test-related processing. For example, you can use Ruby to generate random data or large datasets to throw at a Web application. James describes common security attacks and demonstrates step-by-step examples of testing these attack types with Ruby and Watir.

James Knowlton, McAfee, Inc.
Keys to a Successful Beta Testing Program

Your company is ready to launch its new product. How will it perform under real-world conditions? Will it meet the needs and expectations of the users? Will it operate on all the platforms and configurations for which it was designed? With the future of the product, your company, and perhaps your job depending on the answers, beta testing is a great way to maximize your chances of success. Beta testing provides empirical metrics that prove or disprove that your product will meet clients’ expectations, providing you with input for necessary course corrections in the product. Rob Swoboda explains the process of beta testing as well as the key concepts needed to plan, execute, and evaluate a successful beta testing effort. Rob shares his insights into the practices he employs to design and manage high-priority beta test efforts and offers you the keys to succeed in your own beta test program.

Rob Swoboda, HomeShore Solutions
The Power of Risk

Erik Boelen starts his risk-based testing where most others stop. Too often, risk-based test strategies are defined in the initial test plan and are never looked at or used again. Erik explores how a dynamic, living risk-based testing strategy gives testers a vital tool to manage and control testing activities and identify the infrastructure they need to perform these activities. Find out how to use your risk-based testing strategy as a tool for negotiations among the different stakeholders. Take on the important role of risk mediator for all of the parties in the project. The risk-based test strategy is a tool you can use to defend testing’s need for time and resources, especially when late delivery is possible. Use your risk-based strategy to drive and manage exploratory testing sessions.

Erik Boelen, QA Consult Services
Creating the Right Environment for Mobile Applications Testing

Is your organization releasing applications that target multiple mobile devices, platforms, or browsers? If so, you have faced-or soon will face-the challenge of choosing and setting up a test environment for these devices and platforms. Nat Couture shows how to develop a cost-effective application test environment to mitigate the risks associated with deploying mobile applications. He shares his latest research on mobile devices, mobile platforms, and mobile browser usage, and explains in detail what you need to consider when choosing a test environment. Learn how to select a winning combination of device-specific simulation, platform-specific simulation, and browser-specific simulation-coupled with tests on the actual devices. Build a mobile device testing program that reduces cost, increases coverage, and helps achieve the level of confidence you need to release mobile applications into production.

Nat Couture, Professional Quality Assurance Ltd.

Pages

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.