development lifecycles

Conference Presentations

Service-Oriented Architecture - Exposed

Service-Oriented Architecture (SOA), incorporating methods for Web services to communicate dynamically, promises to significantly improve organizational operating efficiency, change the way companies conduct business, and even alter the competitive landscape. However, Service-Oriented Architecture is a strategy rather than an objective, and, like any strategy, it is of no value unless it is implemented. With illustrations from companies who today are using SOA to transform their organizations, Sharon Fay shares current practices for exposing Web services and XML to internal development teams, outsourced development, external trading partners, and customers. Learn why reuse is a key method for supporting integration of SOA implementations and how it is being accomplished. Take away a set of metrics that you can use to measure the level of SOA adoption, development productivity gains, and organizational agility.

Sharon Fay, Flashline, Inc.
eXtreme Architecture and Design for Test

eXtreme programming emphasizes test-first coding-you write the tests before writing the implementation code. You can apply the same approach in design when developing a complex system, including an architecture to support testing. To be successful, systems developed with agile methods must support a high level of testability and test automation. For large distributed systems, more sophisticated testing is needed to help determine which components may be contributing to failures. For such complex systems, you should architect the system for testing rather than add testing functionality as an afterthought. Ken Pugh presents a framework that employs polymorphic-style internal and external interface patterns to ease the work of testing and debugging. He also covers adding test-only functionality, test-only outputs, and test-only logging to interfaces.

Ken Pugh, Pugh-Killeen Associates
Build the "Right Software" to Delight Your Customer

Many companies have implemented quality programs such as CMM®, TQM, Six Sigma, etc., to improve requirements and software development. However, these initiatives often focus on building the software right-meeting quality expectations and specifications-but do not necessarily focus on building the right software-the right functionality at the right time and at the right cost from the customer's perspective. Unmesh Gundewar explains how EMC employed the Goal, Question, Metric (GQM) methodology to identify key measurements that ensure the "right software" is being developed. Learn how EMC applies the Six Sigma approach to drive these measurements into the organization and the resulting software. Move beyond the processes designed to get functional requirements and specifications right as Unmesh shares experiences, the challenges faced, and lessons learned from building the right software.

Unmesh Gundewar, EMC Corporation
Scrum - The Art of the Possible

Scrum is an agile, lightweight and team-based process to manage software and product development within iterative software development lifecycles. By wrapping around existing engineering practices such as XP or RUP, Scrum generates many benefits of agile development with the advantages of simple implementation. Properly understood and implemented, Scrum significantly increases productivity and facilitates adaptive, pragmatic systems development. Scrum is a proven way to improve communications, increase cooperation, and remove things that get in the way of delivering products. Brad Grant, a Certified ScrumMaster, shares his knowledge and experiences facilitating stakeholder involvement with Scrum and improving the engineering practices of development teams. Join Brad to discover the roles, practices, team dynamics, and metrics that make up Scrum projects, and find out if Scrum is right for your team.

Brad Grant, Charwick
Software Test Automation Spring 2003: Mission Made Possible: A Lightweight Test Automation Experience

Using a challenging client engagement as a case study, Rex Black shows you how he and a team of test engineers created an integrated, automated unit, component, and integration testing harness, and a lightweight process for using it. The test harness supported both static and dynamic testing of a product that ran on multiple platforms. The test process allowed system development teams spread across three continents to test their own units before checking them into the code repository, while the capture of the tests provided automated integration testing and component regression going forward. He'll also explain the tools available to build such a testing harness and why his team chose the ones they did.

  • Examine the benefits-and challenges-of implementing an integrated, automated component and integration testing process in a Java/EJB development environment
Rex Black, Rex Black Consulting Services, Inc.
Implementing an Enterprise Monitoring Solution: Testing and Operations Deliver Together

Achieving high levels of availability and scalability for large server environments is a challenge that impacts all aspects of application design, development, testing, deployment, and operations. In this presentation, Nancy Landau provides a real-world case study of a successful implementation of a multi-layered enterprise system that supports 600-plus servers in multiple sites. You'll see how a wide assortment of monitoring tools were integrated together to assess the health of server farms, the individual components within the environments, and the applications themselves. Learn how test engineers and operations staff work together to improve performance and reliability.

  • Discover how the team overcame process and tool challenges
  • Dissect the case study to determine what led to the project's success
Nancy Landau, Fidelity Information Services
Home-Brewed Test Automatioin: Approaches from Extreme Programming Projects

Projects that use eXtreme programming (XP) often do not use commercial GUI test tools, finding it more useful to build their own support for test automation. This session explains the strategies they've used, which can actually cross over to any project where developers take responsibility for building support for automated testing. The XP community has already made an impact on the tools and practices for unit testing in the wider development community. The instructor reviews the potential impact on customer-perspective testing.

  • Share experiences in building in-house GUI test tools
  • How and when to build and use test APIs
  • Open-source tools to support these approaches
Bret Pettichord, Pettichord Consulting
Smaller-Scale Web Sites Need Performance Testing Too!

Even a smaller-scale Web site requires careful planning and execution of performance tests. Making the critical decisions in a timely manner and identifying the performance goals are still prerequisites to a successful test. However, smaller sites don't necessarily have the resources required to do large-scale testing, so compromises have to be made. This requires good test planning. The instructor explains the testing of a small site looking to grow, as well as the successes and pitfalls of achieving reasonable goals.

  • Define the test objectives; what's reasonable?
  • Plan the test then utilize tools, choices, and tradeoffs effectively
  • Apply and understand the results
Dale Perry, Software Quality Engineering
Why Software Quality Assurance Practices Become Evil!

Are your organization's software quality assurance practices (SQA) working well? Would some developers even say they cause discomfort or are destructive? If so, maybe you are focusing too much on the processes and not enough on the underlying principles. Based on his 35 years of being involved in almost every aspect of the software development business from programmer to CEO, Greg Pope shares his eight principles for good software. You'll learn about a quantitative, risk-based approach to tailor these principles into appropriate practices. By employing a context-driven approach to select the right practices for each application and project, you'll go along way toward making customers and developers appreciate the value and benefits of SQA principles and practices.

  • Symptoms of "evil" SQA practices
  • Eight principles for good software development
Gregory Pope, Univ. of California / Lawrence Livermore National Laboritory
Fault Injection to Stress Test Windows Applications

Testing an application's robustness and tolerance for failures in its natural environment can be difficult or impossible. Developers and testers buy tool suites to simulate load, write programs that fill memory, and create large files on disk, all to determine the behavior of their application under test in a hostile and unpredictable environment. Herbert Thompson describes and demonstrates new, cutting edge methods for simulating stress that are more efficient and reliable than current industry practices. Using Windows Media Player and Winamp as examples, he demonstrates how new methods of fault injection can be used to simulate stress on Windows applications.

  • Runtime fault injection as a testing and assessment tool
  • Cutting edge stress-testing techniques
  • An in-depth case study on runtime fault injection
Herbert Thompson, Security Innovation

Pages

AgileConnection is a TechWell community.

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