From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Prof. Jonathan P. Bowen ...
Thank you to the University of Waikato, Dept. of CS, New Zealand www.cs.waikato.ac.nz/~stever …  Steve Reeves  for the inv...
Abstract <ul><li>There once was a Z CoP. </li></ul><ul><li>The result was a BoK, don’t you see? </li></ul><ul><li>It start...
Overview <ul><li>Community of Practice (CoP)  – collection of people developing domain knowledge </li></ul><ul><li>Formal ...
Community of Practice (CoP) <ul><li>Social sciences concept </li></ul><ul><li>Wenger, E.:  Communities of Practice: Learni...
Various formal methods CoPs!
B community! <ul><li>A small B community in Bantry, southwest Ireland! </li></ul>
Fundamental Elements of a CoP <ul><li>Domain:  Common interest to be effective.  E.g., Z notation. </li></ul><ul><li>Commu...
Community development <ul><li>“ The art of  community development  is to use the synergy between  domain, community, and p...
Cultivating a CoP <ul><li>Design the CoP to evolve naturally.  Initially at Oxford, with a Masters and intensive Z courses...
3.  Welcome and allow different levels of participation . <ul><li>Bar </li></ul><ul><li>King </li></ul>
3.  Welcome and allow different levels of participation . <ul><li>Develop Z – researchers  </li></ul><ul><li>Learn Z – stu...
4. Develop both public and private CoP facilities . <ul><li>Z User Meeting, core of public event for Z (then ZB, now ABZ) ...
5. Focus on the value of the CoP . <ul><li>As well as the ZUM, academic and industrial courses: </li></ul><ul><li>Z Refere...
6. Combine familiarity and excitement within the CoP . <ul><li>As well as ZUM: </li></ul><ul><li>ZFORUM mailing list estab...
7. Find and nurture a regular rhythm for the CoP . <ul><li>Z User Meetings held at first annually, then (as ZB) on an 18-m...
Stages of Community Development <ul><li>Potential:  extant social and/or professional network needed to bootstrap a CoP.  ...
3. Maturing:  must be a move from establishing goals to first steps in realization. <ul><li>Establishment of ZUM in 1986, ...
4. Stewardship:  once CoP matured, momentum must be maintained with changes in personnel, etc. <ul><li>Establishment of th...
5. Transformation:  eventually CoP will naturally transmogrify into a new form or disappear. <ul><li>ZUM became: </li></ul...
Body of Knowledge <ul><li>“ All men by nature desire knowledge .” – Aristotle </li></ul><ul><li>A CoP can develop a  Body ...
IEEE SWEBOK <ul><li>SWEBOK: Guide to the Software Engineering Body of Knowledge . IEEE Computer Society (2004),  www.swebo...
IEEE/ACM SEEK <ul><li>Software Engineering Education Knowledge </li></ul><ul><li>Joint Task Force on Computing Curricula. ...
FMEK/FMBOK <ul><li>Suggestion: </li></ul><ul><li>Formal Methods Education Knowledge </li></ul><ul><li>Formal Methods Body ...
BoK in Z Names of entities and references to external items Entries and separate categories to provide structure
State and constraints BoK has entries, categories and references There are links between entries, entries and categories m...
Further constraints Links, categories, and citations must be valid Entries may have no links, categories , or citations
Further constraints Entries with no links to them are orphans Some references may be uncited
Further constraints All entries have links, citations, and categories, although some categories may not have entries All e...
Further constraints Self-links and self-categories should be disallowed More strongly, loops are not desirable in categories
Further constraints Top-level categories are not categorized All categories are used (i.e., they are not empty)
Further constraints If entries are not interlinked, it is questionable why they are needed More strongly, all entries may ...
Overall BoK All categories and entries  are interconnected from the top-level categories by traversing up and down the cat...
Conclusions & Future Work <ul><li>First time FM community has been considered in a CoP context </li></ul><ul><li>The Z com...
Alan Turing – 99 to 100 years <ul><li>Born on 23 June 1912 </li></ul><ul><li>Centenary events in Bletchley Park, Californi...
From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Prof. Jonathan P. Bowen ...
The End!
Upcoming SlideShare
Loading in …5
×

From a Community of Practice to a Body of Knowledge: A case study of the formal methods community

1,717 views

Published on

Speaker: Prof. Jonathan P. BOWEN, London South Bank University / University of Westminster / Museophile Limited United Kingdom

Date: Friday, 24 June 2011, FM 2011 Symposium, University of Limerick, Ireland

Abstract: A Body of Knowledge (BoK) is an ontology for a particular professional
domain. A Community of Practice (CoP) is the collection of people developing
such knowledge. In the paper we explore these concepts in the context
of the formal methods community in general and the Z notation community, as
has been supported by the Z User Group, in particular. The existing SWEBOK
Software Engineering Body of Knowledge is considered with respect to formal
methods and a high-level model for the possible structure of of a BoK is provided
using the Z notation.

Biography: Prof. Jonathan P. Bowen, FBCS, FRSA, is Chair of Museophile Limited, an IT consultancy company. He is also a Visiting Professor at University of Westminster since 2010 and an Emeritus Professor at London South Bank University since 2007. From 2007-2009, he was a Visiting Professor at the King's College London. In 2007, he was a visiting academic at University College London; in 2008, he was a visiting lecturer at Brunel University and during 2008-2009 he worked on a large industrial high integrity software engineering project using formal methods. Previously he was at the University of Reading, the Oxford University Computing Laboratory and Imperial College, London. He has been involved with the field of computing in both industry and academia since 1977, specializing in software engineering in general and formal methods in particular. In 2002, Bowen founded Museophile Limited with the original aim to help museums online. He is an enthusiastic contributor to Wikipedia in the area of museums and on computing topics. Bowen is a Fellow of the British Computer Society and of the Royal Society of Arts. He holds the Freedom of the Worshipful Company of Information Technologists and is a member of the ACM and IEEE. He has an MA degree in Engineering Science from Oxford University.

FM 2011 Symposium slides

Published in: Science, Education, Technology
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,717
On SlideShare
0
From Embeds
0
Number of Embeds
36
Actions
Shares
0
Downloads
19
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide
  • Speaker: Prof. Jonathan P. BOWEN, London South Bank University / University of Westminster / Museophile Limited United Kingdom Title: From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Date: Friday, 24 June 2011, FM 2011 Symposium, University of Limerick, Ireland Abstract: A Body of Knowledge (BoK) is an ontology for a particular professional domain. A Community of Practice (CoP) is the collection of people developing such knowledge. In the paper we explore these concepts in the context of the formal methods community in general and the Z notation community, as has been supported by the Z User Group, in particular. The existing SWEBOK Software Engineering Body of Knowledge is considered with respect to formal methods and a high-level model for the possible structure of of a BoK is provided using the Z notation. Biography: Prof. Jonathan P. Bowen, FBCS, FRSA, is Chair of Museophile Limited, an IT consultancy company. He is also a Visiting Professor at University of Westminster since 2010 and an Emeritus Professor at London South Bank University since 2007. From 2007-2009, he was a Visiting Professor at the King&apos;s College London. In 2007, he was a visiting academic at University College London; in 2008, he was a visiting lecturer at Brunel University and during 2008-2009 he worked on a large industrial high integrity software engineering project using formal methods. Previously he was at the University of Reading, the Oxford University Computing Laboratory and Imperial College, London. He has been involved with the field of computing in both industry and academia since 1977, specializing in software engineering in general and formal methods in particular. In 2002, Bowen founded Museophile Limited with the original aim to help museums online. He is an enthusiastic contributor to Wikipedia in the area of museums and on computing topics. Bowen is a Fellow of the British Computer Society and of the Royal Society of Arts. He holds the Freedom of the Worshipful Company of Information Technologists and is a member of the ACM and IEEE. He has an MA degree in Engineering Science from Oxford University.
  • Travel funding and expenses from the Department of Computer Science, University of Waikato to visit Hamilton, New Zealand.
  • Introductory limerick.
  • Abstract. A Body of Knowledge (BoK) is an ontology for a particular professional domain. A Community of Practice (CoP) is the collection of people developing such knowledge. In the paper we explore these concepts in the context of the formal methods community in general and the Z notation community, as has been supported by the Z User Group, in particular. The existing SWEBOK Software Engineering Body of Knowledge is considered with respect to formal methods and a high-level model for the possible structure of of a BoK is provided using the Z notation.
  • CoP books.
  • There are many different formal methods.
  • B community!
  • 1. Domain: A CoP must have a common intere methods st to be effective. All the participants in the group must be able to contribute in some way within this domain. Otherwise it is just a collection of people with no particular purpose. For example, the Z notation has formed the nucleus of a CoP in a formal context. 2. Community: A CoP also needs a group of people who are willing to engage with at least some others in the group, so ultimately the entire group is transitively connected as a single entity, from a global viewpoint. This aspect is critical to the effective development of knowledge. The group of people interested in the Z notation started at the Oxford University Computing Laboratory through the inspiration of Jean-Raymond Abrial in the late 1970s and early 1980s. It has gradually spread around the world since then. 3. Practice: The CoP must explore both existing knowledge and develop new knowledge, based on existing concepts, but expanded through actual application in a practical sense. This leads to a set of common approaches and shared standards in applying them. The Z notation is based on predicate logic and set theory, both very standard concepts in mathematics that were originally formulated a long time before the development of Z. Schema boxes were added to the mathematics for the convenient structuring of realistic specifications. Initially case studies were specified. More recently, Z has been used for major industrial software engineering projects of a significant scale where system integrity is an important factor.
  • “ The challenge of designing natural structures like communities of practice is creating an approach to design that redefines design itself” – Wenger et al. (2002)
  • 1. Design the CoP to evolve naturally: communities are naturally dynamic and the ability to adapt to the current needs of the CoP at different points in its development is important. In the case of Z, the initial community was largely based in Oxford. The Masters course at the Programming Research Group in Oxford included Z and intensive courses were also offered. 2. Create opportunities for open discussion: often an outsider can add value to the CoP by bringing in ideas that may not have evolved in the community if it was completely isolated. An annual Z User Meeting was established in 1986, initially in Oxford and later around the United Kingdom and then Europe. This aided the spread of Z nationally and then internationally.
  • 3. Welcome and allow different levels of participation: some people will be able to devote large amounts of time to the CoP, but a much larger number will be able to commit to a small but nevertheless useful contribution. The core Z research was initially at Oxford, but later other research centres such as the University of York in the UK and the University of Queensland in Australia developed significant Z experience and mademajor research contributions. Others taught Z in formalmethods courses within university degree programmes, without necessarily undertaking research. 4. Develop both public and private CoP facilities: public events are very useful for community building and smaller private interactive discussions are important to make the larger meetings more effective. The Z User Meeting, as previously mentioned, formed the core of public events for Z. This developed into the ZB Conference, with the related B-Method community, in 2000. These were important networking events for interaction between individuals too. It has now become the ABZ conference with the inclusion of ASM (Abstract State Machines) in 2008, Alloy in 2010, and VDM in 2012, held every two years.
  • 3. Welcome and allow different levels of participation: some people will be able to devote large amounts of time to the CoP, but a much larger number will be able to commit to a small but nevertheless useful contribution. The core Z research was initially at Oxford, but later other research centres such as the University of York in the UK and the University of Queensland in Australia developed significant Z experience and mademajor research contributions. Others taught Z in formalmethods courses within university degree programmes, without necessarily undertaking research. 4. Develop both public and private CoP facilities: public events are very useful for community building and smaller private interactive discussions are important to make the larger meetings more effective. The Z User Meeting, as previously mentioned, formed the core of public events for Z. This developed into the ZB Conference, with the related B-Method community, in 2000. These were important networking events for interaction between individuals too. It has now become the ABZ conference with the inclusion of ASM (Abstract State Machines) in 2008, Alloy in 2010, and VDM in 2012, held every two years.
  • 3. Welcome and allow different levels of participation: some people will be able to devote large amounts of time to the CoP, but a much larger number will be able to commit to a small but nevertheless useful contribution. The core Z research was initially at Oxford, but later other research centres such as the University of York in the UK and the University of Queensland in Australia developed significant Z experience and mademajor research contributions. Others taught Z in formalmethods courses within university degree programmes, without necessarily undertaking research. 4. Develop both public and private CoP facilities: public events are very useful for community building and smaller private interactive discussions are important to make the larger meetings more effective. The Z User Meeting, as previously mentioned, formed the core of public events for Z. This developed into the ZB Conference, with the related B-Method community, in 2000. These were important networking events for interaction between individuals too. It has now become the ABZ conference with the inclusion of ASM (Abstract State Machines) in 2008, Alloy in 2010, and VDM in 2012, held every two years.
  • 5. Focus on the value of the CoP: the value of a community may not be immediately obvious, but it should be nurtured explicitly by creating suitable events, activities, and relationships where the value can develop naturally. As well as the Z User Meetings, there were also academic and industrial courses, available to this day. A formal Z User Group (ZUG, http://zuser.org) was established in 1992 to act as a focus for Z activities, with finance raised through the Z User Meetings. The production of an ISO standard for Z occupied most of the 1990s, initially based on Spivey’s “ Z Reference Manual” (ZRM) [29], finally to appear in 2002 [19]. This formed the focus for the Community Z Tools (CZT) project that has produced a number of open source tools based on the Z standard (see http://czt.sourceforge.net).
  • 6. Combine familiarity and excitement within the CoP: participants should feel comfortable with the day-to-day environment provided by the community, but there should be additional events that provide a “buzz” to keep people involved. In addition to Z User Meetings, a ZFORUM mailing list was established in the 1980s, which was later linked to a specially created newsgroup, comp.specification.z, and is still available through Google Groups. A Z archive was established using FTP and email access at Oxford, later augmented by web-based information from 1994, including more general formal methods information, incorporated as part of the Virtual Library initiated by Tim Berners-Lee, the inventor of the web. The information is now accessible through a Formal Methods Wiki that can be updated online by the entire formal methods community under http://formalmethods.wikia.com.
  • 7. Find and nurture a regular rhythm for the CoP: there should be periodic events and milestones that provide a temporal structure to the community, providing participants with a sense of progress and achievement. The Z User Meetings were held at first annually, then on an 18 month cycle, and now a two year cycle.
  • 1. Potential: an extant social and/or professional network is needed to bootstrap a CoP and form a core of the community. An important aspect is for members to sense enough commonality so that they feel connected. Initially for Z, there was a group of people already interested in formal methods in general at Oxford. The seed of Z formed when Jean-Raymond Abrial visited the Programming Research Group in Oxford and found a group receptive to his ideas. 2. Coalescing: the CoP needs to combine a good understanding of existing knowledge with visualization for what is possible in the future. The value of sharing information must be appreciated by those involved. The group at Oxford were already expert in the underlying mathematics used by Z. They also had the vision of applying this to the specification of computer-based systems.
  • 3. Maturing: theremust be a move fromestablishing goals to the first steps in realizing these. The role of the CoP must be understood and defined in a wider context with relation to the domain areas. The establishment of the Z User Meetings in 1986, together with the Z FORUM electronic newsletter distributed via email around the same time, was seminal in providing a focus for wider Z-based activities. Gradually others interested in formal methods, both within the United Kingdom and around the world, gravitated towards Z, especially through attendance of the early Z User Meetings and communication via the newsletter. ZFORUM was initially edited from contributions via email, but later messages could be submitted directly by subscribers. The IBM CICS project in the 1980s provided an example of a real industrial project that used Z successfully. During the maturing phase, a Body of Knowledge (BoK) is gradually formed and implicitly agreed by the community, as least informally. In the case of Z, Spivey’s Z Reference Manual was issued as a de facto standard in 1988, with a second edition in 1992 and finally an online version in 2001.
  • Stewardship: once a CoP has matured, a momentum must be maintained with changes in personnel, etc. The knowledge of the CoP must remain relevant, up to date, and be of continuing benefit to the people involved. The establishment of the Z User Group in 1992 meant that Z had an organizational focus, with a constitution providing a chair, secretary, treasurer, and committee. Over the next decade, the ISO Z standard was produced [19]. This formalized the BoK related to Z developed by the community during the previous maturing phase. 5. Transformation: eventually a CoP will naturally transmogrify into some new form or disappear at the end of its useful lifetime. A formal institution may be established, several communities may form, it may become more social than professional, or the enthusiasm may die. After the production of the Z standard, the Community Z Tools project acted as a focus for open source Z tools based on the standard. The Z User Meeting became the ZB Conference and then the ABZ Conference, with a wider scope as research in Z contracted. The Z User Group became less active as conferences were organized and underwritten by the host institutions directly.While a Z community still exists, and significant industrial projects are still From a Community of Practice to a Body of Knowledge 313 using Z for high integrity applications, the focus of research and tool development has now moved to the B-Method and Event-B, together with Z-related languages and tools such as Alloy.
  • Stewardship: once a CoP has matured, a momentum must be maintained with changes in personnel, etc. The knowledge of the CoP must remain relevant, up to date, and be of continuing benefit to the people involved. The establishment of the Z User Group in 1992 meant that Z had an organizational focus, with a constitution providing a chair, secretary, treasurer, and committee. Over the next decade, the ISO Z standard was produced [19]. This formalized the BoK related to Z developed by the community during the previous maturing phase. 5. Transformation: eventually a CoP will naturally transmogrify into some new form or disappear at the end of its useful lifetime. A formal institution may be established, several communities may form, it may become more social than professional, or the enthusiasm may die. After the production of the Z standard, the Community Z Tools project acted as a focus for open source Z tools based on the standard. The Z User Meeting became the ZB Conference and then the ABZ Conference, with a wider scope as research in Z contracted. The Z User Group became less active as conferences were organized and underwritten by the host institutions directly.While a Z community still exists, and significant industrial projects are still From a Community of Practice to a Body of Knowledge 313 using Z for high integrity applications, the focus of research and tool development has now moved to the B-Method and Event-B, together with Z-related languages and tools such as Alloy.
  • A Community of Practice (CoP) typically develops a Body of Knowledge (BoK) as part of the development of a mature CoP during the maturing and stewardship phased mentioned in the previous section. A BoK provides a set of concepts, terms, activities, etc., that are useful or essential in a particular professional domain. A BoK is typically formulated by a relevant professional association and there are a number of examples in existence, including SWEBOK.
  • IEEE SWEBOK introduction.
  • IEEE/ACM SEEK introduction.
  • FMEK/FMBOK introduction.
  • A example BoK specified using the Z notation.
  • State and constraints.
  • Constraints.
  • Constraints.
  • Constraints.
  • Constraints.
  • Constraints.
  • Constraints.
  • Specification of the overall BoK.
  • Conclusions and future work.
  • Alan Turing centenary.
  • Speaker: Prof. Jonathan P. BOWEN, London South Bank University / University of Westminster / Museophile Limited United Kingdom Title: From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Date: Friday, 24 June 2011, FM 2011 Symposium, University of Limerick, Ireland Abstract: A Body of Knowledge (BoK) is an ontology for a particular professional domain. A Community of Practice (CoP) is the collection of people developing such knowledge. In the paper we explore these concepts in the context of the formal methods community in general and the Z notation community, as has been supported by the Z User Group, in particular. The existing SWEBOK Software Engineering Body of Knowledge is considered with respect to formal methods and a high-level model for the possible structure of of a BoK is provided using the Z notation. Biography: Prof. Jonathan P. Bowen, FBCS, FRSA, is Chair of Museophile Limited, an IT consultancy company. He is also a Visiting Professor at University of Westminster since 2010 and an Emeritus Professor at London South Bank University since 2007. From 2007-2009, he was a Visiting Professor at the King&apos;s College London. In 2007, he was a visiting academic at University College London; in 2008, he was a visiting lecturer at Brunel University and during 2008-2009 he worked on a large industrial high integrity software engineering project using formal methods. Previously he was at the University of Reading, the Oxford University Computing Laboratory and Imperial College, London. He has been involved with the field of computing in both industry and academia since 1977, specializing in software engineering in general and formal methods in particular. In 2002, Bowen founded Museophile Limited with the original aim to help museums online. He is an enthusiastic contributor to Wikipedia in the area of museums and on computing topics. Bowen is a Fellow of the British Computer Society and of the Royal Society of Arts. He holds the Freedom of the Worshipful Company of Information Technologists and is a member of the ACM and IEEE. He has an MA degree in Engineering Science from Oxford University.
  • The end!
  • From a Community of Practice to a Body of Knowledge: A case study of the formal methods community

    1. 1. From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Prof. Jonathan P. Bowen Museophile Limited London South Bank University University of Westminster www.jpbowen.com [email_address]
    2. 2. Thank you to the University of Waikato, Dept. of CS, New Zealand www.cs.waikato.ac.nz/~stever … Steve Reeves for the invitation, funding, and collaboration in November 2010 … Mark Utting for my office … Cimbale for endless espresso!
    3. 3. Abstract <ul><li>There once was a Z CoP. </li></ul><ul><li>The result was a BoK, don’t you see? </li></ul><ul><li>It started with ZUG </li></ul><ul><li>And then there was BUG, </li></ul><ul><li>A true FM community. </li></ul>
    4. 4. Overview <ul><li>Community of Practice (CoP) – collection of people developing domain knowledge </li></ul><ul><li>Formal methods community – Z User Group </li></ul><ul><li>Body of Knowledge (BoK) – ontology for a particular professional domain </li></ul><ul><li>Software Engineering Body of Knowledge (SWEBOK) – ACM/IEEE </li></ul><ul><li>Z specification of a BOK – FMBoK </li></ul>
    5. 5. Community of Practice (CoP) <ul><li>Social sciences concept </li></ul><ul><li>Wenger, E.: Communities of Practice: Learning, Meaning, and Identity . Cambridge University Press, Cambridge (1998) </li></ul><ul><li>Wenger, E., McDermott, R.A., Snyder, W.: Cultivating Communities of Practice: A guide to managing knowledge . Harvard Business School Press, Boston (2002) </li></ul>
    6. 6. Various formal methods CoPs!
    7. 7. B community! <ul><li>A small B community in Bantry, southwest Ireland! </li></ul>
    8. 8. Fundamental Elements of a CoP <ul><li>Domain: Common interest to be effective. E.g., Z notation. </li></ul><ul><li>Community: Group of people willing to engage with others. Z started at Oxford University, then Z User Group. </li></ul><ul><li>Practice: Explore existing and develop new knowledge. Z is discrete maths, with schema boxes and extra operators for large specs. </li></ul>
    9. 9. Community development <ul><li>“ The art of community development is to use the synergy between domain, community, and practice to help a community evolve and fulfil its potential.” – Wenger et al. (2002) </li></ul>
    10. 10. Cultivating a CoP <ul><li>Design the CoP to evolve naturally. Initially at Oxford, with a Masters and intensive Z courses, later at UK and then internationally. </li></ul><ul><li>Create opportunities for open discussion . Annual Z User Meeting established in 1986, initially in Oxford, later around UK/Europe. Also Z FORUM. </li></ul>
    11. 11. 3. Welcome and allow different levels of participation . <ul><li>Bar </li></ul><ul><li>King </li></ul>
    12. 12. 3. Welcome and allow different levels of participation . <ul><li>Develop Z – researchers </li></ul><ul><li>Learn Z – students </li></ul><ul><li>Use Z – industry </li></ul><ul><li>Read Z – testers, implementers </li></ul><ul><li>Write Z – specifiers </li></ul><ul><li>Appreciate Z – managers </li></ul>
    13. 13. 4. Develop both public and private CoP facilities . <ul><li>Z User Meeting, core of public event for Z (then ZB, now ABZ) </li></ul><ul><li>Z web information </li></ul><ul><li>Z books </li></ul><ul><li>Z standard </li></ul><ul><li>Z courses </li></ul>
    14. 14. 5. Focus on the value of the CoP . <ul><li>As well as the ZUM, academic and industrial courses: </li></ul><ul><li>Z Reference Manual (ZRM) from 1989 </li></ul><ul><li>Z User Group ( www.zuser.org ) from 1992 </li></ul><ul><li>ISO/IEC 13568:2002 standard for Z in 2002 </li></ul><ul><li>Community Z Tools (CZT) initiative ( czt.sourceforge.net ) </li></ul>
    15. 15. 6. Combine familiarity and excitement within the CoP . <ul><li>As well as ZUM: </li></ul><ul><li>ZFORUM mailing list established in 1980s </li></ul><ul><ul><li>then linked to comp.specification.z newsgroup (now on Google Groups) </li></ul></ul><ul><li>Z archive established using FTP/email access at Oxford </li></ul><ul><ul><li>later web-based from 1994 </li></ul></ul><ul><ul><li>now on a Formal Methods Wiki under formalmethods.wikia.com </li></ul></ul>
    16. 16. 7. Find and nurture a regular rhythm for the CoP . <ul><li>Z User Meetings held at first annually, then (as ZB) on an 18-month cycle, and now (as ABZ) a two-year cycle. </li></ul><ul><li>“ The challenge of designing natural structures like communities of practice is creating an approach to design that redefines design itself” – Wenger et al. (2002) </li></ul>
    17. 17. Stages of Community Development <ul><li>Potential: extant social and/or professional network needed to bootstrap a CoP. Initially for Z, there was a group of people already interested in formal methods in general at Oxford. </li></ul><ul><li>Coalescing: needs to combine good understanding of existing knowledge with what is possible in the future. Oxford group already expert in underlying maths used by Z. with a vision of computer-based system specification. </li></ul>
    18. 18. 3. Maturing: must be a move from establishing goals to first steps in realization. <ul><li>Establishment of ZUM in 1986, together with Z FORUM electronic newsletter seminal in providing a focus. </li></ul><ul><li>IBM CICS project (1980s) provided an example of a real industrial project. </li></ul><ul><li>Spivey’s Z Reference Manual provided a de facto standard (1988, 2 nd ed. In 1992, online in 2001). </li></ul>
    19. 19. 4. Stewardship: once CoP matured, momentum must be maintained with changes in personnel, etc. <ul><li>Establishment of the Z User Group (1992) </li></ul><ul><ul><li>organizational focus </li></ul></ul><ul><li>ISO Z standard (2002) </li></ul><ul><ul><li>formalization, basis for Z BoK? </li></ul></ul><ul><li>Community Z Tools project (2000s) </li></ul><ul><ul><li>open source Z tools </li></ul></ul>
    20. 20. 5. Transformation: eventually CoP will naturally transmogrify into a new form or disappear. <ul><li>ZUM became: </li></ul><ul><li>International Conference of Z Users (1995) </li></ul><ul><ul><li>first outside UK in Berlin (1997) </li></ul></ul><ul><li>ZB conference (2000) </li></ul><ul><li>ABZ conference (2008) </li></ul><ul><li>Movement to B-Method, Event-B, Alloy </li></ul>
    21. 21. Body of Knowledge <ul><li>“ All men by nature desire knowledge .” – Aristotle </li></ul><ul><li>A CoP can develop a Body of Knowledge (BoK) </li></ul><ul><li>A BoK provides concepts, terms, activities, useful/essential in a professional domain </li></ul><ul><li>Typically produced by a professional association </li></ul><ul><li>Used for certification and education or training </li></ul><ul><li>“ The only source of knowledge is experience.” </li></ul><ul><li>– Albert Einstein </li></ul>
    22. 22. IEEE SWEBOK <ul><li>SWEBOK: Guide to the Software Engineering Body of Knowledge . IEEE Computer Society (2004), www.swebok.org </li></ul><ul><li>Intended to cover knowledge after four years of practice </li></ul><ul><li>Does not cover non-software engineering knowledge a software engineer should have </li></ul>
    23. 23. IEEE/ACM SEEK <ul><li>Software Engineering Education Knowledge </li></ul><ul><li>Joint Task Force on Computing Curricula. Software Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering. Computing Curricula Series, IEEE CS/ACM sites.computer.org/ccse/SE2004Volume.pdf </li></ul>
    24. 24. FMEK/FMBOK <ul><li>Suggestion: </li></ul><ul><li>Formal Methods Education Knowledge </li></ul><ul><li>Formal Methods Body of Knowledge </li></ul><ul><li>Balance of theory and practice an issue </li></ul><ul><li>Abstraction, modelling, information organization and representation, management of change (cf. SEEK) </li></ul>
    25. 25. BoK in Z Names of entities and references to external items Entries and separate categories to provide structure
    26. 26. State and constraints BoK has entries, categories and references There are links between entries, entries and categories may be categorized, and entries may include citations
    27. 27. Further constraints Links, categories, and citations must be valid Entries may have no links, categories , or citations
    28. 28. Further constraints Entries with no links to them are orphans Some references may be uncited
    29. 29. Further constraints All entries have links, citations, and categories, although some categories may not have entries All entries are linked, all categories are used, and all refs are cited
    30. 30. Further constraints Self-links and self-categories should be disallowed More strongly, loops are not desirable in categories
    31. 31. Further constraints Top-level categories are not categorized All categories are used (i.e., they are not empty)
    32. 32. Further constraints If entries are not interlinked, it is questionable why they are needed More strongly, all entries may be linked in both directions
    33. 33. Overall BoK All categories and entries are interconnected from the top-level categories by traversing up and down the categories Further desirable properties can be added as constraints
    34. 34. Conclusions & Future Work <ul><li>First time FM community has been considered in a CoP context </li></ul><ul><li>The Z community is at the last CoP stage </li></ul><ul><li>A success since communities can fail before this </li></ul><ul><li>Newer FM communities could learn from this </li></ul><ul><li>FMEK/FMBOK could be proposed “formally” </li></ul><ul><li>Z (or similar) could be used to formalize a BoK framework </li></ul>
    35. 35. Alan Turing – 99 to 100 years <ul><li>Born on 23 June 1912 </li></ul><ul><li>Centenary events in Bletchley Park, California, Cambridge, Manchester, Oxford </li></ul><ul><li>Sat-Sun 23-24 June 2012 at Department of Continuing Education, Oxford </li></ul><ul><li>Cliff Jones, Samson Abramsky, Martin Campbell-Kelly, Andrew Hodges, Jack Copeland, etc. </li></ul>Turing sculpture by Stephen Kettle www.stephenkettle.co.uk
    36. 36. From a Community of Practice to a Body of Knowledge: A case study of the formal methods community Prof. Jonathan P. Bowen Museophile Limited London South Bank University University of Westminster www.jpbowen.com [email_address]
    37. 37. The End!

    ×