James D. Herbsleb
Carnegie Mellon University
On the Diminishing Prospects for an Engineering Discipline of Requirements
What do the following have in common? (1) describing the computation an electronic control unit should perform as it detects rotational speed from wheel speed sensors and adjusts hydraulic valves in order to prevent a car from skidding, (2) describing how access to data should be controlled in a hospital information system that maintains patient records and supports workflow, (3) describing the intended functionality of a unified messaging system for pre-teens, that will let them IM, twitter, e-mail and blog, respecting their privacy but providing an appropriate degree of parental control. To ask the right questions, gather the right information, end express an appropriate solution, one needs some expertise in automotive engineering, medical privacy concerns and regulations, and the delicate balance of freedom and control for adolescents. Other than the possibility that these problems might end
up on the task queue of a requirements engineer, it is a bit hard to imagine a single set of engineering principles or a single engineering approach that could inform them all. While my failure to imagine does not demonstrate impossibility, the point is that there are important forces at work here that may imply gathering clouds on the horizon of an engineering discipline of requirements. At an accelerating pace, more and more of life -- work, play, sociality, commerce -- is enacted through computers. What tools does it take to capture and express what we require of computers now and in the future, as our interactions with computing systems become ever more pervasive
James D. Herbsleb is a Professor of Computer Science and Director of the Software Industry Center at Carnegie Mellon University. His research interests lie primarily in the intersection of software engineering and computer-supported cooperative work, focusing on such areas as geographically-distributed development teams, open source software development, and more generally on coordination in software engineering. He holds a JD (1980) and a PhD in psychology (1984) from the University of Nebraska, and an MS in computer science (1991) from the University of Michigan.
After completing a post-doctoral fellowship at the University of Michigan, he moved to Carnegie Mellon’s Software Engineering Institute, where he led an effort to empirically validate the CMM for Software. He then joined the Software Production Research Department at Lucent Technologies, where he initiated and led the Bell Labs Collaboratory Project, which conducted empirical studies and designed collaborative technologies and practices for global software development. He is currently PI on two NSF-funded projects investigating various aspects of collaborative software engineering. His research interests are in geographically-distributed software engineering, open source software development, collaboration over distance, and tools and technologies that support coordination.
Cloud Computing: Engineering the Requirements for “Everything as a Service”
"Cloud computing" is an emerging model of service consumption and service delivery for IT-related capabilities. It heralds an evolution of business — no less influential than the era of e-business — in positive and negative ways. It's become a hot industry term that's been used in many contradictory ways. Overall, there are very real trends such as cloud platforms, elastic economies of scale, virtualization, service orientation and the Internet that have converged to sponsor a phenomenon that enables individuals and businesses to choose how they'll acquire or deliver IT services, with dramatically reduced emphasis on the constraints of traditional software and hardware licensing models. Services delivered through the "cloud" will foster an economy based on delivery and consumption of everything from storage to computation, to video, to finance deduction management. This presentation defines cloud computing, exposes potential risks and opportunities, and examines the requirements for the continuing evolution of business and technology.
Daryl is an internationally respected authority on Web services and Java. His advice and counsel on IT IT policies is sought by top leaders of major corporations and he is in demand as a keynote speaker. He has appeared on CNN Moneyline and is frequently quoted in such publications as The Wall Street Journal, The New York Times, BusinessWeek, and CNET.com
Daryl has more than 20 years of senior-level experience in the IT industry. With a deep technical background, he understands the strategic implications of complex technologies and can communicate easily to both business and technical people. In addition to being the lead analyst covering Sun Microsystems, Daryl is chief of the Gartner Fellows, a think tank to help ensure that Gartner remains on the leading edge of trends and ideas.
Daryl has advised government officials of South Africa, New South Wales and the Israeli army on strategies for implementing enterprise architecture.
Daryl serves as advisor to the Web Services Interoperability Group and the Eclipse Group, IBM's standard application development tool set .
University of Manchester
People, Machines and Domains: Bridging the Gulfs between Worlds
In this presentation I will take the conference theme and investigate it in two dimensions: first, looking at Requirements Engineering as a discipline of communication between users, designers, engineers and the diversity of stakeholders that we encounter in complex systems. Secondly, I will focus on the nascent RE theory that has developed from Michael Jackson’s concept of dependencies between the real world domain, the designed machine and requirements specification. The glue between the themes will be the application of linguistic theory, in particular Clark’s Common Ground theory of discourse, to both perspectives.
Linguistics has become prominent in RE in recent years primarily as a tool for analysing natural language texts for traceability, or requirements quality. I will take a wider view and examine RE as a discourse process between stakeholders, and apply Clark’s common ground to elucidate the nature of communication between people, via language, notations, artefacts, and all the techniques we use in RE. In doing so I hope to point out where future research might profitably be directed towards RE process improvement and importing lessons from CSCW (Computer Supported Collaborative Work). The perspective of common ground, I argue, is also a useful informal framework by which we can reflect on our current practice.
The second half on the presentation will migrate common ground to the machine-real world boundary and argue that requirements specification is not only a product of human-human discourse, but is itself a specification of a machine-human discourse. As computer systems become more intelligent, mobile and context aware, we need to specify the shared understanding held by computer systems about the world they inhabit. This adds a new perspective to requirements, which has been partly touched on in the debate about ‘architecture requirements’. I will explore how we need to expand our view of requirements into the internet world of machines that are aware of where they are, aware of us and each other, and may realise the Asimovian visions of self-aware reflection and learning in the not too distant future. The final twist in the tail will return to Clark’s common ground theory to speculate on the convergence of human-human and human-machine communication. Will the intermediary, the requirements engineer, become redundant?
Alistair Sutcliffe (MA Cantab- Natural Sciences, PhD Wales) is Professor of Systems Engineering, and Director of the HCI Research Centre, in the School of Informatics, University of Manchester, UK. Originally an ethologist, he has worked in the IT and finance industry, the civil service and City and Manchester Universities. His research spans software engineering, human computer interaction, cognitive and social science, with recent interests in scenario based design, methods for requirements engineering, analysis and modelling complex socio technical systems, visualisation and creative design. He is a leading authority on human factors in safety critical systems, requirements engineering and multimedia user interface design, has authored 6 books and 200+ publications on human computer interaction, requirements engineering, software and domain knowledge reuse. His recent books include: Multimedia and virtual reality: Designing multisensory user interfaces. Lawrence Erlbaum Associates (2003) User-Centred Requirements Engineering. Springer, (2002) and The Domain Theory: Patterns for knowledge and software reuse, Lawrence Erlbaum Associates (2002). He currently manages EPSRC projects ADVISES (E-science requirements analysis and visualisation) and ESRC/EPSRC Foresight project Developing Theory for Evolving Socio Technical Systems and was recently PI of EPSRC projects SIMP- Systems Integration for Major Projects, ISRE Immersive scenario based Requirements Engineering and CORK Corporate Knowledge Repository. He serves on the editorial boards of several journals in the software engineering and human computer interaction. He founded IFIP TC-13 Working Group 13.2 ‘Methodology for User Centred Design’, is editor of the ISO standard 14915, on Multimedia user interface design, co-chaired the ACM conference Designing Interactive Systems 2002 and is co-chair of IEEE Requirements Engineering conference in 2007. He was awarded the IFIP silver core in 1999, is a reviewer for EPSRC college, INRIA cognitive engineering projects 2002 & 2006, NSF Science of Design program and made recent plenary keynote presentations at IHM03, HCI05, and CAiSE06 conferences.
Forrester Research, Inc.
Delivering Business Value with Agile Approaches to Requirements
Agile development methods are becoming more popular. Everyone wants to be agile, delivering more frequently and being responsive to the business. However, Agile methods encourage a very different approach to requirements placing special emphasis on collaboration and informality over documentation and structure. Agile processes are built around the need for better requirements, whilst encouraging those requirements activities to be undertaken by a cross-functional team working closer with the business. Is there a role for requirements engineering? In this talk Dave West, senior analyst at Forrester research pulls together two separate threads of research on requirements and Agile processes, describing the state of both practices and how the ideas behind Agile methods can be used to improve traditional development approaches and the value of requirements in Agile approaches. Dave will argue that formality and discipline play just as important role with Agile methods as with traditional approaches and provide concrete recommendations on organizations can resolve the conflict and build a better requirements discipline.
Dave works with Application Development & Program Management professionals. He is a leading expert on software development process, Agile development, Lean thinking, process improvement, project management and requirements management. His interest in software modeling and application development led to his authoring the book Head First Object Oriented Analysis and Design. He also covers the area of product development and its relationship with software systems development.
Dave has more than 16 years of experience in technology working with both software vendors and end-user organizations. After university, he worked for a large financial organization in both traditional and object-oriented development, on both the mainframe and client/server platforms. Dave then moved to the software tools business, working as a consultant implementing new development processes and tools for numerous companies in Europe, America, and Canada. Moving from consulting to product development, he was responsible for the development of the Rational Unified Process (RUP), adding componentization, SPEMM, and support for Agile development. Taking that experience, he then ran the development of a series of industry solutions in support of financial services, product development, and government sectors. After leaving IBM/Rational, Dave moved into a consulting organization building and later ran Ivar Jacobson Consulting for North America. During that time he worked with clients implementing Agile processes, introducing process improvement, and improving the practices of those customers.
Dave earned B.A. in computing and business from Huddersfield University in the UK and a M.Sc. in computer science from Southbank University (UK).