At Your Service

Creating a service-oriented Software Engineering Team within your organization
Better Software Magazine
Volume-Issue: 
2001-03
Summary:

A light and effective process with a service-oriented philosophy is key to meeting your organization's needs. Here are eight simple steps for creating a software engineering team that will turn customers into fans.

Introducing new software engineering practices to any organization can be a challenge, even in the best of times. I don't want to break something that works, and I have to ensure that high-quality solutions are developed. I want to ensure that any process I have added or changed has improved productivity measurably.

If your job is to create, build, enhance, promote, reorganize, or re-energize a software engineering or quality assurance team, you need a light and effective process with a service-oriented philosophy. This will help you enhance productivity, encourage best practice, and achieve excellence without overburdening folks with overwhelming bureaucracy.

A light and effective process ensures that teams consistently develop software on time, on quality, and on budget-without stifling creativity or scaring away the good developers and product managers. A light process is one that can be implemented painlessly with a minimal additional effort by those using it. An effective process is one that has visible short-term results. A truly effective process will demonstrate value to the user quickly and naturally; its users don't have to have degrees in data analysis to understand that they're more productive thanks to using it.

If your job involves software quality assurance, testing, development, or product management, this article will give you food for thought. You may discover some ways you can simplify your daily workflow and be more productive at your job. We'll take a look at the basic practical steps required to create, from scratch, a service-oriented Software Engineering Team (SET) or quality assurance group within your organization.

This method is applicable to many different organizations. Broadly speaking, I would classify these organizations as being (a) new to software development, (b) experienced in software development but new to software quality assurance, or (c) experienced in software development, with some testing but with no formal quality assurance or software engineering process in place.

Note that you may opt to implement these concepts outside of the confines of software engineering or quality assurance teams-depending on the priorities of the day and the existing team structures. Formal inspections, for example, could be implemented outside of software engineering.

Eight Steps Toward a Service Model
With several customers I have started to approach the introduction of software engineering using a simple service model, in which software engineering services are offered to existing projects to improve their productivity and help them consistently deliver quality products.

To succeed in business today, having satisfied customers is just not good enough-and the same holds true when you're an internal service provider. Your internal customers must be truly excited about your service offering; they must be "raving fans." (The term will be familiar to people who have read Ken Blanchard and Sheldon Bowles' customer service how-to book by the same name.) Enthusiastic customers are your best advertising, attesting to the value and quality provided by your product and services.

Here is a summary of the steps I recommend you follow in order to set up an effective SET in your own organization, in a way that will inspire raving fans of your own:

  1. Define which services you want to offer 
  2. Discover which services your internal customers really need 
  3. Adjust service offering based on real needs 
  4. Establish core SET services
    • requirement flow
    • bug flow
    • formal inspections
       
  5. Deliver above and beyond expectations 
  6. Add services incrementally 
  7. Get feedback from your internal customers 
  8. Involve people in all process improvements

At an absolute bare minimum, for my least technical customers, I insist on implementing a requirement flow and bug flow process. For those organizations, we leave out the steps dealing with formal inspections and more advanced

File: 
AttachmentSize
At Your Service82.65 KB

About the author

Robert Sabourin's picture
Robert Sabourin

Rob Sabourin has more than twenty-five years of management experience, leading teams of software development professionals. A well-respected member of the software engineering community, Robert has managed, trained, mentored, and coached hundreds of top professionals in the field. He frequently speaks at conferences and writes on software engineering, SQA, testing, management, and internationalization. The author of I am a Bug!, the popular software testing children’s book, Robert is an adjunct professor of Software Engineering at McGill University.

Upcoming Events