[pmwiki-users] [Off-Topic] Use of PmWiki for Requirements Modeling

Marc Cooper gmane at auxbuss.com
Wed Jun 28 14:08:46 CDT 2006


Bellave Jayaram said...
>
> Apologies for being slightly off topic but I am looking for any
> published examples, case studies etc. about the use of PmWiki in
> the realm of Software Engineering, especially
> for Requirements Modeling. What I mean is that in software
> projects, it is common to have lots of requirements which
> may be captured using one or the other of commercial tools
> which are all good at what they do but are not as flexible
> as wikis for collaboration. I will mention two things that
> a wiki could be used for:
> 
> Structured requirements model: Capturing requirements using
> wikifarms, fields, groups, subgroups, categories guided by
> some sort of a structure (e.g. architectural requirements,
> modal requirements, use case scenarios).

Wikis are very good at unstructured data/pages, of course, but PmWiki 
seems also to be good at creating relationships between pages, not only 
via hyperlinks, but also through categories and other devious mechanisms 
that folk create for themselves.

The difficulty - if you can call it that - in setting up structured 
pages in PmWiki is that you have to do the relationship legwork 
yourself. That's a small price, imo, for the flexibility it affords.

That said, there is nothing - but time - to stop someone creating their 
own relationship mechanism - and it doesn't necessarily involve PHP 
coding; sometimes use of what is already there is enough.

For example, I have created structured menus by including, such as:

    >>display=none<<
    Categories: [[!MarcHeadings]]
    >><<

then auto-generating the menus with pagelist. I can go as many 
"hierarchical" levels as I wish, but in reality, all there is are pages 
in a group [1].

My point, though, is that this has created a relationship with which you 
can "do stuff". You can take categories quite a long way, in fact.

> Connection to design-oriented model elements: Linking
> classes of requirements (for e.g., each class having a
> wikipage) and classes of design (again, each class having
> one wikipage).

> Perhaps someone else has some ideas or already implemented
> something?

I suspect that much is already there, it's more a case of defining your 
requirements ;-) and deciding how best to implement it in PmWiki.

That sounded a bit trite. What I mean is that you can define the 
relationships between the types of pages that you require, then find 
ways to encode that, perhaps via markup. Keep pagelist in mind for auto 
generating lists (related items), viz link, trail and wildcards. You can 
also use forms for data input that generate the relationships 
information, if you like.

I'm sure others will have much better ideas than me, as I'm pretty new 
to PmWiki myself, but I've found it remarkably straightforward to create 
diverse, and quite complex. applications already.

And it's fun... if it were written in Ruby it might be heaven :-)

-- 
Best,
Marc

[1] Actually, what I have is:
    (:if !group site :)
    (:include {$Group}.sidebar:) (:if:)
in Site.SideBar and then
    (:pagelist link=Category.MarcHeadings fmt=#title order=title:)
in the {$Group}.SideBar





More information about the pmwiki-users mailing list