- A document about Semat Governance
Q: The goals are lofty, but they are only goals. Before going public, shouldn’t you have waited until you had some actual solutions to show?
A: Lots of people have excellent ideas, but no one holds the whole truth. The only way to solve a problem of this magnitude is through a community effort that identifies the problem precisely and leads to widely agreed solutions. That’s why we are starting with a statement of objectives and encouraging comments from a wide range of experts.
Q: Why the emphasis on signatories?
A: The people who have agreed to sign the Call for Action have, each in his or her own way, had an effect on the world of software development. Their participation is essential to the visibility of the project, in particular with large companies, and to its success.
Q: There is little visible consensus among these signatories. How will you get them to agree on a common approach?
A: By its very nature this is indeed a group made of people with strong views. But they realize the importance of coming to a kernel of widely-agreed elements, solid enough to address the core problems and extensible enough to accommodate the diversity of requirements, usage contexts and technologies. The first step is to develop a joint vision statement that will serve as a blueprint for the rest of the effort.
Q: Now that there’s a Call for Action signed by an impressive group of people, will the real work start?
A: Yes, the hard part lies ahead. The hardest part will be to get everyone moving forward without compromising ourselves to death, and without anyone giving up because his or her pet idea is not the key driver. We think that with perseverance, creativity and diplomacy we will be successful.
Q: There are plenty of approaches to software engineering discipline and methodologies. We don’t need a revolution, we need wide acceptance of my theory!
A: A number of people have superb theories, sometimes backed by successful experiments; no doubt yours is one of them. Unfortunately, no single approach has garnered broad acceptance in industry and academia. Like other engineering fields, ours needs a common framework with which everyone agrees. We hope you will contribute your ideas.
Q: How is SEMAT different from other earlier efforts, such as, the IEEE Computer Society SWEBOK (Software Engineering Body of Knowledge) or the various standard curricula in software engineering?
A: SEMAT recognizes the significance of SWEBOK and other earlier efforts; it will build on them. SEMAT is, however, free from the constraints that affected them. They reflected the state of the art and had to integrate recognized “best practices” into a global “body of knowledge”, whether or not these practices were compatible with each other. SEMAT must result in a coherent method and theory ensemble, which, like any successful design, will have to include some ideas and exclude others.
In addition, SEMAT is more ambitious. Unlike earlier efforts, SEMAT includes among its aims the development of a sound and general theory for software engineering.
Q: The call for action talks about “a kernel of widely-agreed elements, extensible for specific uses”. This sounds very much like a unified methodology. Is it?
A: No, we are not looking for a single methodology. But we do seek to identify “universals” of software development: universal problems and universally recognized solution elements. For example, every project has a process and products, and these products must always include, in the end, executables. Every project must do some form of analysis, of design, of implementation, of verification. Other universals include roles: analyst, developer, QA engineer. The SEMAT effort should identify these universals, both in the problem space and in the solution space. This will make it easier not only to recognize solved problems and reuse recognized solutions (theories and practices), but also to compose solutions and, where none exist, develop new ones.
Q: Why would we succeed where so many have failed?
A: We believe that the industry is tired of fads, wary of empty talk about methods and process, and ready for a change We also see that the chasm between industry and academia is being questioned, with (for example) many practices that originated in industry having found their way into standard university curricula, and some advanced research finding its way into actual projects (initially in mission-critical systems, but with potential for much wider spreading).
For these hopes to be realized, the community — industry and research — must join forces. While the amount of work that remains is huge, the momentum already created by the SEMAT initiative, over the course of just a few weeks, shows that this prospect is achievable. We hope you will share our enthusiasm.