Jana Herwig

Not a pipeline, but a graph: software development in the KiWi/Sun usecase

Josef Holy‘s report this morning about the status quo in the KiWi usecase conducted in collaboration with Sun microsystem presented us with an interesting contrast. While the point of departure in the Logica usecase was a conceptual model of knowledge that is shaped by CMMI, Josef made the point that software development in an open source project follows quite different rules: “The lack of formal processes IS the process”, said Josef, characterizing the collaboration in the NetBeans development environment which (as reported earlier) has about 200 Sun developers working on it, in addition to thousands of external contributors and hundreds of thousands of active users. Correcting his own presentation regarding the development process from May ’08 he said: “We shouldn’t think of a production pipeline here, but of a graph.”

Roles in a Software ProjectWithin Sun (or any software development project), one can draw a distinction between three groups of people working on a software project, depending upon the intensity of interaction and impact they have on the project: First of all, you have the planners, designers, developers and testers who interact intensely and whose work strongly affects the actual product. Secondly, you have people like the documentation writers who describe a software, but who do not shape it. And thirdly, there are people who translate the work of the second level to different markets or target groups, e.g. people working in localization.

A first important decision to be made was: Who to involve in the KiWi usecase? As the KiWi approach is decisively informed by the wiki philosophy, it only made sense that the designers, rather than the developers, should participate. Designers need to have access to various repositories of information, for instance user interface specifications, requirements descriptions, usability reports, marketing intelligence data, etc. And, to a much greater extent than is the case with developers, their work relies primarily on the written word, in the form of definition and documentation. And that makes them ideal candidates in the KiWi-Wiki usecase.

P.S: Yes, we all know that documentation is also a crucial part of the work of developers – yet we also know that the world has seen a lot of software developments that went undocumented;-)

Zemanta Pixie
Jana Herwig

Conceptualizing knowledge with CMMI: the KiWi/Logica usecase

Peter Axel NielsenPeter Axel Nielsen, a researcher from Aalborg University who is working on the Logica usecase, started his report by giving us an overview of CMMI, a process improvement approach that is being used by Logica and that is thus going to be of eminent importance for the KiWi/Logica usecase.

CMMI stands for Capability Maturity Model® Integration, and, according to its inventors, “helps integrate traditionally separate organizational functions, set process improvement goals and priorities, provide guidance for quality processes, and provide a point of reference for appraising current processes.” CMMI was created by the Carnegie Mellon Software Engineering Institute, and has been adopted worldwide.

CMMI provides a framework for a 5-step path towards maturity in software process improvement – a path that can be expected to take years and which demands a company’s full commitment. Peter drew our attention to a volume, fresh from the printing press, which he edited together with Karlheinz Kautz: Software Process & Knowledge. Beyond Conventional Software Process Improvement.*) The volume contains an interesting CMMI case study, “The Road to High Maturity. How the first Danish company reached CMMI level 5 in 100 months,” in which the authors emphasize that software process improvement, in essence, is “an organizational change process, that is, the processes in an organization, and the behaviour and interaction of people, groups, projects and, in fact, the whole organization.” Some of the benefits reported by the participants in the case study were: reduction of overtime, increased satisfaction of employees, increased opportunities to delegate as a result of formal definitions of roles and greater ease to move between projects.

Switching to CMMI brings with it the benefits of a well-defined, ready to use conceptual model of knowledge – this is, of course, an invaluable asset when it comes to defining the requirements of the KiWi system, which is going to be used as a wiki-based, semantically enhanced knowledge management system for IT project management in the Logica usecase.

*) Peter Axel Nielsen, Karlheinz Kautz (eds.): Software Process & Knowledge. Beyond Conventional Software Process Improvement. Software Innovation Publisher. Aalborg. 2008. ISBN 978-87-992586-0-4 See also: website of the symposium on Software Process & Knowledge that preceeded the publication.

Zemanta Pixie