The following tutorials have been cancelled due to low registration numbers:
- T1. "What Every Requirements Engineer Needs to Know About Starting a Business", Alan Davis and David Callele
- T2. "Get involved, get prepared: Tutorial for requirements analysis, conversation and documentation aligned to the IREB e.V. body of knowledge", Rainer Grau and Kim Lauenroth
- T3. "Defining Security Requirements Using Security Patterns", Eduardo Fernandez
T1. What Every Requirements Engineer Needs to Know About Starting a BusinessInstructors: Alan Davis and David Callele
These days it seems that everybody wants to get rich by starting a new company. And because just about anybody can create a "software product" with relatively little training and money, software companies have become the most likely goal. Requirements engineering researchers are typical: they build a new requirements tool in a research setting, and dream about the possibilities of it serving as the basis for a new start-up company. However, the building of the product (whether in software or any other medium) is (a) definitely the easiest, (b) usually the least expensive and (c) certainly the least risky part of any commercial endeavor.
Thousands of people trained in computer science and software engineering invent new "killer applications." They believe that if they just had a chance to build it, customers would flock by the millions to buy it. Unfortunately, this never (or at least rarely) happens. The media feeds this frenzy - letting us know all about the individuals who have become millionaires overnight in companies like Facebook, Groupon, and Instagram. But just like the lottery, we don't hear about the millions of people who fail. Unlike the lottery, success in starting software-based and requirements-based companies is not just about luck; it is about skill and knowledge. You already know about requirements engineering and product development. This course will introduce you to what you need to know about business so you can succeed in a software-based entrepreneurial endeavor.
This course will explore the secrets of starting and running a software startup, emphasizing the marketing, financing, team membership, intellectual property protection, (a little on product development) and corporate organizational issues surrounding such companies. A few detailed case studies will be provided and participants will have an opportunity to debate the various decisions made by the corporate decision-makers.
Alan Davis trained as a computer scientist (Computer Science, University of Illinois at Urbana-Champaign), but much of his career has been devoted to business management. Currently a professor of business strategy and entrepreneurship at the University of Colorado (Colorado Springs), he has spent half his career in industry and half in academe. His industrial experience includes President, CEO and Board positions at firms as diverse as Offtoa, Inc., Spiral Funds, Inc., Omni-Vista, Inc. and Requisite Inc. and is a current selection committee member for High Altitude Investors.
His academic experience includes Chair & Professor of Computer Science, George Mason University and numerous international positions including Atma Jaya University, Indonesia, Universidad Politecnica de Madrid, Spain and University of Technology, Australia.
Editor-in-Chief of IEEE Software, 1994-1998, Al has published 100+ articles in journals, conferences and trade press, and has lectured 600+ times in 28 countries. He is the author of 5 books on requirements and software development and is currently working on his sixth: Will Your New Start Up Make Money (WYNSUMM).
He is a co-founder of the IEEE International Conference on Requirements Engineering and has been a fellow of the IEEE since 1994. Find out more about Al at http://www.reqbib.com/adavis.
David Callele trained as an Electrical Engineer (B.Sc., University of Saskatchewan) and Computer Scientist (Ph.D., University of Saskatchewan) and much of his career has been focused on technology-based startups. He has started four firms of his own (Digital Systems Group, Inc. (CallerID integration with desktop computer systems), DSG Communications, Inc. (manufacturer of customer premise telecommunications equipment), Research Services (product definition, design and requirements consultancy) and Experience First Design Inc. (indie game studio)) and directly participated in the startup phase of two more (Far Vista Studios Inc. (first-person shooter games with betting) and Solido Design Automation Inc. (EDA tool supplier focused on high-dimensional simulation and data analytics applied to semiconductor design)). He has mentored dozens of other startups, was a faculty member at the University of Saskatchewan (Computer Science) and remains an Adjunct Faculty member. David is named as an inventor on seven independent inventions, covered by 9 patents in the USA and Canada. By day, David is Business Development Manager for the Saskatchewan laboratories of TRLabs, a technology acceleration consortia located in the Canadian Prairie Provinces. By night, David is also the Founder, President and Lead Game Designer at Experience First! Design Inc., an indie game studio based in Saskatoon, Saskatchewan (http://www.experiencefirstdesign.com).
T2. Get involved, get prepared: Tutorial for requirements analysis, conversation and documentation aligned to the IREB e.V. body of knowledgeInstructors: Rainer Grau and Kim Lauenroth
This tutorial addresses the post-graduate education for the job profile of a business analyst or requirements engineer. The goal is skill acquisition in requirements analysis, conversation and documentation as represented by the Certified Professional for Requirements Engineering, Foundation Level (CPRE-FL) syllabus of the International Requirements Engineering Board IREB e.V.
The tutorial is aligned to the chapters "Documentation of Requirements using Natural Language" and "Model-based Documentation of Requirements" of the CPRE-FL syllabus. The attendees will go through training units that prepare for the exam according these chapters. A training unit covers theory and exercises to apply the theory in the context of a case study. All exercises are based on a documented case study and will be run in small groups guided by the tutorial instructors.
Learning material is at hand in form of the educational book (ISBN: 9781933952819 ) aligned to the syllabus and the guidance of the workshop instructors. The tutorial instructors will support and guide the learning groups in developing the solution.
Rainer Grau has been working in IT for 22 years. His career steps are software engineer, software architect, project manager, requirements engineer, process consultant, instructor, coach, mentor, evangelist, supporter of the community. He is member of the Executive Management Board at Zühlke in the role as distinguished consultant. In addition to his job, he teaches Scrum, Lean Management, Requirements Engineering and Product Management at various universities, travels as a speaker at conferences, acts as 2nd Chairman of the International Requirements Engineering Board IREB and board member of the International Software Product Management Association, ISPMA.
Rainer Grau spends the remainder of his time with family, on racing or mountain bikes, and occasionally wind surfing, rock climbing or reading the latest novels by T.C. Boyle and Haruki Murakami.
Kim Lauenroth is Chief Requirements Engineer at adesso AG. He works at the interface between requirements and architecture and has over 10 years of experience in software and requirements engineering in different domains. He is supporting member of the International Requirements Engineering Board (IREB) and served in the program committees of several requirements engineering related conferences.
Kim Lauenroth received his PhD in the field of requirements engineering from the University of Duisburg-Essen and studied computer science, business administration and psychology at the University of Dortmund.
T3. Defining Security Requirements Using Security PatternsInstructor: Eduardo Fernandez
Patterns combine experience and known good practices to develop basic models that can be used to build new systems and to evaluate existing systems. Security patterns join the extensive knowledge accumulated about security with the structure provided by patterns to provide guidelines for secure system design and evaluation. We consider the structure and purpose of security patterns, show a variety of security patterns, and illustrate their use in defining security requirements. These patterns include among others Authentication, Authorization, Role-Based Access Control, Filtering, and Security Logger. We introduce the concept of Abstract Security Patterns to emphasize platform independence. We have built a catalog of over 70 security patterns. We introduce patterns in a conceptual way, relating them to their purposes and to the functional parts of the architecture. We show how to apply these patterns through a secure system development methodology. Example architectures include a financial system and a SCADA system. Patterns can be applied throughout the lifecycle and provide an ideal communication tool for the builders of the system. They are also useful to record design decisions. The patterns are shown using UML models and some examples are taken from my two books on security patterns. We compare our approach to other security patterns using a different template or focus.
Eduardo B. Fernandez (Eduardo Fernandez-Buglioni) is a professor in the Department of Computer Science and Engineering at Florida Atlantic University in Boca Raton, Florida. He has published numerous papers on authorization models, object-oriented analysis and design, and security patterns. He has written four books on these subjects, the most recent being a book on security patterns (another one is in preparation). He has lectured all over the world at both academic and industrial meetings. He has created and taught several graduate and undergraduate courses and industrial tutorials. His current interests include security patterns and cloud computing/web services security and fault tolerance. He holds a MS degree in Electrical Engineering from Purdue University and a Ph.D. in Computer Science from UCLA. He is a Senior Member of the IEEE, and a Member of ACM. He is an active consultant for industry, including assignments with IBM, Allied Signal, Motorola, Lucent, and others. More details can be found at http://www.cse.fau.edu/~ed.
T5. Contract-Driven Requirements EngineeringInstructor: Brian Berenbach
Requirements elicitation and management for contract-based projects is significantly more complex than for product or product line development. For example, many practitioners are unaware of the fact that the traditional "V" model for requirements tracing may not work where there is a legal contract describing project deliverables; nearly every aspect of requirements engineering is more challenging, from elicitation to risk analysis and compliance management. This half-day tutorial will describe in some detail contract issues that are typically not discussed in requirements texts and courses.
Brian Berenbach is a senior staff engineer with the Siemens Research Technology Center in Princeton, New Jersey. Mr. Berenbach is an ACM distinguished engineer. He has published widely on requirements engineering, and his book, "Software and Systems Requirements Engineering: In Practice" won a Prose finalist award for best Computing & Information Sciences text.
T6. Commitments in Requirements EngineeringInstructors: Amit Chopra and Munindar Singh
Increasingly, requirements engineering involves the development of sociotechnical systems, i.e., systems consisting of technical and social entities, the latter being autonomous parties such as people and organizations. The big change from traditional settings lies in considering social actors as residing within the system, which is no longer merely a technical artifact. Modeling social relationships precisely is essential to successfully engineering sociotechnical systems.
A commitment is a social relationship that is grounded in communication among actors. Informally, a commitment is of the form: agent x commits to agent y that if proposition p holds, then proposition q will hold. Over the years, commitments have become a leading way in which to model social relationships succinctly and formally. Commitments arise in all kinds of sociotechnical systems, ranging from well-known settings such as meeting scheduling, business processes, and health care but recast with explicit social actors to emerging settings such as emergency services and smart grids. In a recent keynote, John Mylopoulos dubbed commitments the "basic building block" for sociotechnical systems.
Notions resembling commitments show up in various guises in RE, including as intentional dependencies in iStar and as responsibilities in KAOS. However, behind these notions lie assumptions that in one way or another restrict their applicability to the modeling of sociotechnical systems. Commitments seek to capture the basic intuitions behind these varied notions, but without their liabilities.
This tutorial will introduce the conceptual and formal aspects of commitments and demonstrate the value of commitments in RE. Building upon commitments, it will introduce a novel conceptual ontology and approach for the engineering of sociotechnical systems.
This tutorial will benefit those interested in modeling sociotechnical systems; applying high-level modeling approaches such as iStar and KAOS; or capturing legal and policy requirements.
Amit K. Chopra is a Marie Curie Trentino Cofund postdoctoral fellow at the University of Trento. Starting October 2012, he will be a lecturer at Lancaster University. Amit's research interests include multiagent systems and the software engineering of sociotechnical systems, especially requirements modeling and architecture.
Munindar P. Singh is a Professor in Computer Science at North Carolina State University. His research interests include multiagent systems and software engineering with a special emphasis on the engineering of systems consisting of autonomous parties. Munindar is an IEEE Fellow, and a former Editor-in-Chief of IEEE Internet Computing. His current editorial service includes IEEE Internet Computing, Autonomous Agents and Multiagent Systems, Journal of Artificial Intelligence Research, and the ACM Transactions on Intelligent Systems and Technology.
Munindar has given 20 conference tutorials, including at AAMAS, CoopIS, ECAI, ICDCS, ICDE, ICSOC, IJCAI, OOPSLA, and WWW. He was general cochair of AAMAS 2005 and program cochair of CoopIS 1997, ICWS 2008, and several other events.