http://www.developer.com/

Back to article

Anatomy of a Software Development Role: Subject Matter Expert


April 12, 2005

In Cracking the Code: Breaking Down the Software Development Roles I gave you the 50,000 foot view of the human side of the software development industry and the various roles involved. Here and in the articles to follow I will provide you with details on each of the key roles.

The role of the subject matter expert (SME) isn't so much a role that the core information technology person plays normally, however, the role is an important part of the development process. Sometimes subject matter experts are business owners or business users. In most cases they are most often called "Client" Or "user". Figure 1 give you an idea of where the subject matter expert fits into the bigger picture of an organization.

SMEs are the people in the process who provide the information on what needs to be built. They serve in the most important role in the development process - despite not being a part of the permanent development team.

Without the subject matter expert there would be no need and therefore no development.



Figure 1: Click here for a larger image.

What is a Subject Matter Expert?

Subject matter experts really fall into a few categories. The first category is the business owner who initiates the development process. For internal development this might be the manager who is sponsoring the project. For external development projects it might be the customer paying the bills. For software development companies the SMEs are most often the users of the software who understand what the product is supposed to do the most or at the very least what the product is expected to do.

SMEs provide all of the raw material for the development process this includes the requirements for the system and how it will be used. Their input describes the problem or the opportunity that the software solution will ultimately solve.

Who is a Subject Matter Expert?

SMEs are perhaps the most broadly described part of the development process. Because they can come from all walks of life, all levels of awareness of the software development process, and all levels of interest, trying to describe them is a futile process.

The most defining characteristic of a SME is the fact that, with few exceptions, they won't understand the software development process. They are not a reoccurring part of the process and therefore they won't have experience with what is happening-nor should they. This lack of understanding regarding the process is not a critical limitation, because the SMEs will work with a Functional Analyst who will guide them through the process. It is the FA's job to understand the information that the SME has to share and to guide them through understanding how the process will work.

What Isn't in Their toolbox?

Unlike most roles, which bring extra skills to the table, the SME removes some of the inherent skills that other members of the team possess.

As a part of a development team, here are some skills that you should be careful to avoid assuming a SME has:

  • Don't assume that the SME will clearly communicate what they know. Most people aren't good at clearly organizing their thoughts on a topic and communicating them in detail. The expectation that the SME can turn on a faucet and start spewing out information in a way that the rest of the team can understand it is unrealistic. Set expectations should be that they wouldn't be able to simply drop their knowledge directly into a document or even into a discussion. It should be expected that things will be left out, some processes may be misunderstood, and that an individual's idea of current priorities might not match that of the company.
  • Don't assume that an SME will understand models Architects, Development Leads, Functional Analysts, and other members of the team often develop fancy diagrams to describe complex program structures. These structures are readable because the development team has learned how to read them over time. The SME may or may not be able to read technical diagram. Because they are largely outside the development process, they shouldn't be expected to read such documents. Another way to think about this is to think about it is to think about reading a blueprint for a building. While the basic structure may be understandable from a blue print, not everyone will be able to fully understand the meaning of all the lines and numbers on the document.
  • Don't assume that a SME understand or can use defect logging and tracking systems. Some SMEs won't have the skills to even track the discrepancies from what they want. They'll need help getting their knowledge into the systems used to drive the software development process.
  • Don't assume that a single SME has all the answers. Each person has their own perspective SMEs are no exception. You may need to work with dozens of SMEs to reach a single consensus based on the amount of knowledge the SME has, the scope of the solution you're trying to create and the lack of consensus in the industry or organization.

Where's the Role Heading Anyway?

There will always be a need for subject matter experts - particularly those who can clearly articulate the needs the organization faces. Although SME is not the primary role that an Information Technology person typically fills it's one that can be a great asset for an organization.

If a SME shows particularly good skills at articulating the business needs then perhaps there's the opportunity to take a part-time or full-time role as a functional analyst (FA). The functional analyst's job is to create clear, precise communication and to support the SME role. This combination makes it a natural path for those SMEs who become hooked on the software development process and want to be more involved.

Of course, the path is not paved in gold. The SME will need to focus on being able to document details, extract information from other SMEs, pay attention to the details, and in general become a more integrated member of the software development process. SMEs who want to make the leap to being a functional analyst will have to accept a greater level of process and technical knowledge while leveraging their familiarity with being an SME and the struggles that a SME has in working through the process.

What Makes a Subject Matter Expert Stand Out?

Being a subject matter expert isn't a career in the same kind of way that being a developer is a career. In most of the roles in the development process the core learning is around the skills and technologies of developing software. The SME is instead developing a deep understanding of a process, an industry, and in some cases an organization. The SME's value is their unique understanding of the problem that the development process is designed to solve or at least help resolve. In this way a SME is focused on being the thought leader and expert for a small set of information.

SMEs stand out from the crowd when they deliver industry presentations that call attention to their complete understanding of how the industry - or one part of the industry works. This process requires a willingness to get in front of large groups to speak and the drive to develop presentation skills that are very good.

In addition SMEs can cause themselves to stand out by writing articles for trade or industry journals. Writing an article is great in itself because it requires a certain level of clarity around the topic being written about. However, the real power is in being published in an industry magazine because there is an implied branding for the kind of quality of person who writes articles magazines. This can be immensely powerful in making you stand out from the crowd.

In a less public way the SME can stand out from the crowd by learning how to interact with different personalities to develop a network of relationships in the organization or industry that they are working in. It is rare for an SME to clearly understand the challenges faced by the producer for the organization, the sales department, the executive staff, and all of the other various departments. The more that an SME understands about the operation and hurdles facing the organization the more valuable they are in their organization and as an SME.

The Good, The Bad, and the Ugly

The Subject Matter Expert role in the software development lifecycle has its ups and downs just like every other role within the process. Here are a few examples of what's good about the role and a few items to watch out for:

  • Good: The role in the project is generally short lived. Projects tend to come and go
  • Good: Subject matter experts are a generally well-respected and necessary part of the project.
  • Good: Subject matter experts have a chance to interact with numerous people at all levels within an organization. This is often great exposure for being noticed within an organization.
  • Bad: Since software development isn't the primary process of an SME most feel a bit like a fish out of water.
  • Bad: Although generally bright intelligent people the rest of the software development team may have trouble understanding the business that a SME is describing since they've not been a part of it. An SME may have to explain things from a couple of points of view for it to be fully understood.
  • Ugly: Participating in a software development process may require more time than you're used to.
  • Ugly: SMEs may have to interact with geeks and bear through discussions on topics that won't ever help them in their daily jobs.

Conclusion

The subject matter expert is the genesis of the software development process and can be an invaluable member of the team. Because their involvement in the software development process is short lived there is a role to guide them through the process. That role, the functional analyst, is also the next step up for a SME who's looking to become more involved in the often chaotic process that is software development.

About the Author

Robert Bogue, MCSE (NT4/W2K), MCSA:Security, A+, Network+, Server+, I-Net+, IT Project+, E-Biz+, CDIA+ has contributed to more than 100 book projects and numerous other publishing projects. He writes on topics from networking and certification to Microsoft applications and business needs. Robert is a strategic consultant for Crowe Chizek in Indianapolis. Some of Robert's more recent books are Mobilize Yourself!: The Microsoft Guide to Mobile Technology, Server+ Training Kit, and MCSA Training Guide (70-218): Managing a Windows 2000 Network. He was honored to become a Microsoft MVP for Microsoft Windows Server - Networking . You can reach Robert at Robert.Bogue@CroweChizek.com

Sitemap | Contact Us

Thanks for your registration, follow us on our social networks to keep up-to-date