Attend a User Group

Home » Atlassian Forums » Software » Confluence



Permlink Replies: 2 - Pages: 1 - Last Post: Jan 12, 2009 1:20 PM Last Post By: Ellen Feaheny [...
Giles Parnell

Posts: 38
Registered: 09/10/02
Using Confluence / Jira in a Software Development Environment
Posted: Dec 13, 2005 6:51 PM
Click to report abuse...   Click to reply to this thread Reply
This thread relates very closely to the following: http://forums.atlassian.com/thread.jspa?threadID=9317&tstart=0

I thought i'd create a new thread for my discussion, as it is not limited to XP, and hence may have a wider audience.

Using Confluence and Jira to enable our software development process is something we have been focused on doing for about the past year and a half now. A little history of what we do: Our company, 7irene (www.7irene.com) has been focused in the Component Based Development (CBD) space for around 8 years now. We have a very strong focus on process and method ('Urgggghh' - I hear the XP guys spit ;)) For us: Process is Key. The way / method in which we build systems is crucial. Having been involved in both XP and RUP style projects we are aware that both styles have their shortcomings and there is a need for a something between the two. I want to keep this post quite specific to how we use Confluence and Jira to support our process  without going into too much detail of what out process actually covers.

How we use Jira:

Weve taken Jira out the box and provided a set of customized workflows that facilitate our Software Development Life Cycle (SDLC). Our process, which can be thought of as a light instantiation of RUP, defines things like
  • Features, mapping through to
  • Use Cases
  • Risks
  • Change Requests
  • Questions and Answers
  • Etc&

In Jira we have created workflows for all of the above  and more. Similar to the Atlassian guys, Jira is where we initially create and store everything related to our project. This means that each and everything in our project is tracked using Jira. The details of project artifacts are later added in Confluence. Typically a Project Manager will be responsible for ensuring resources all have enough / not too much workload assigned to them. Features get added to Jira, they move through their workflow, and typically get linked to Use Cases (UCs) once analysed. These are all assigned to individuals with additional tasks being creating as need be. Weve found Jira perfect for recording things like risks and change requests  again customized workflows were used. A huge bonus of having all our Features and UCs in Jira is that ALL requirements are accounted for  nothing is lost or slips through the cracks. No more does the dreaded cry of a Project Manager ring out in the ninth hour : Arrrrhhhhhhh, that feature should have been in that release!

Customizing the inbuilt notification scheme of Jira gives us the control we needed when deciding on how much information gets sent out to various users (yes&Jira does rock!)

Obviously we use Jira to record bugs, and with the Fixed version field we get the great road map feature. However, we have had a bit of problem in trying to use the Jira road map feature for things like Features and UCs. Typically these things dont quite fit with the concept of having a Fixed Version. Features and UCs are never really fixed  rather they are planned for a certain timebox and then worked on. Sometimes Features and UCs are not completed in their designated timebox, in which case they need to be moved into a later timebox. Various new custom fields had to be created to handle the concepts of Timeboxes and Milestones. It also means we lose out on some of the kewl reporting capabilities of Jira when producing the release notes, but were tackling that problem with some custom reports. Enough Jira detail for now.

How we use Confluence:

We use Confluence to store the actual detail of almost everything in a particular project  right down to the level of things like whos making the coffee tomorrow :). We create all our UC details in confluence and the other artifacts that make up a Software Requirements are captured or collated in confluence too. Model diagrams are stored in a SCS (Subversion in our case), and then linked into confluence using WebDav. This means we have an incredibly powerful ability to show developers absolutely everything theyd ever need to see for a particular UC on one single page. Weve found this to be a very powerful concept. Using some of Dave Petersons macros has made things like page real-estate so much better&. (Cheers Dave  your work is excellent!) The linking capabilities of confluence make this environment almost perfect for us.

UC summaries captured in Jira are then linked directly to the confluence page that stores all the UCs details. Charles mentioned that the Atlassian guys are using a Confluence Page picker thing  to link Jira issues to actual confluence pages. We have something very similar, although slightly cruder - We have a custom field in Jira called Software Requirements Homepage, which is a text field, and we simply cut and paste the URL of the confluence page into this field once the confluence page starts getting details added to it. Simple, but effective.

We make extensive use of templates having them for as many repetitive tasks as possible:
  • Creating UCs
  • Creating UC home page summaries
  • Creating meetings
  • Creating server / database / environment pages

Providing a detailed structure for a project to use - out the box, gives people the benefit of having structure to the way they work. Tasks can easily repeated and information can always be found. Initially some people may feel restricted in having to conform to a structured confluence site - but after a while the benefits are clearly seen, and we've had really happy project teams working across geographically distributed location.

Right, so now I have rambled....

As i mentioned, we've been working on things for a while now, and I cant cover everything in a single post. Probably the best thing to do, if any are interested, is to have a look at our demo site:

http://archetype.7irene.com/portal/display/APD/Portal+Perspectives

You can log onto this demo site using : clientuser / clientuser as credentials.

The site is not really something we usually exposed to people without some form of consultancy around our process first. However, seeing as its the confluence community, Im sure youll see how things work soon enough. Anyway, Im more interested in showing you guys the Jira / confluence collaboration. Ill be more than happy to chat to anyone in more detail off line.

A few pointers on the demo site:
1. The confluence portion is what we call our Portal product.
  • It is made up of perspectives  essentially one perspective for each role in a project that we keep context sensitive information about.
  • Each perspective contains information about a particular role. A How To so to speak on a specific role.
  • There is common information across each perspective weve taken the view that information is global, and should be shared across a project
  • In each perspective the main points of interest will possibly be the decks and cards on the left - showing all the workflow products that have been assigned to specific users.
  • The right hand cards show content that is specific to:
    • The perspective you are currently in, and
    • A common view of the project.
  • The Software Requirements home page will be of interest to the developer peps as its got all the artifacts grouped together in one place&. So a single point of contact for a developer.

The Use case model, and use case itself

The type model

The component interactions

The component spec architectures

There is also a link taking the user straight to the jira entry so they can see any discussions that have been happening around the Jira entry itself.

  • With regard to how we structure our confluence spaces  we are making use of the Reusable Asset Spec to define and organize our project artifacts. Essentially artifacts are grouped into:
    • Things that are reusable  Assets. These consist of most of our archetype content assist information, and
    • Things that are not reusable  project artifacts. These include project plans, meeting information.

The spec has just been adopted by the OMG, and you can check out more info on it here: http://www.flashline.com/ras/ras.jsp?sid=1132709233868-1123631142-101

  • As I said before, it may appear confusing at first, and ideally someone should really guide you through the various portions of the product. For now the demo site will have to do.

2. The Jira portion is what we call our Workflow product. The default dashboard has been customized for each user, and will have a different look and feel per role. The clientuser logon is a very simplified view on the product.

3. We are playing around with the look and feel of demo site at the moment  hoping to make it a more intuitive experience for project members. One of the things you may notice is that on specific Perspectives, the performance may be a bit slow. This is because currently there are loads of filters being loaded into this single page. We may decide to move these filters off onto another page so that each perspective page loads quicker.

Have a look and please feel free to let me know your thoughts  you should be able to add comments to all the confluence pages&. So go wild 

Regards
Giles Parnell
Mike Cannon-Bro...
Re: [CONF-user] Using Confluence / Jira in a Software Development Environment
Posted: Dec 14, 2005 3:55 PM    global.in_response_to.tooltip in response to: Giles Parnell
Click to report abuse...   Click to reply to this thread Reply
Giles,

Wow - thanks for the details overview, I for one found it fascinating!
One of the best things about this job is seeing all the great things
creative people do with your products.

(One of the worst things is seeing that and then realising the 20
things you could do to make things better - and adding those 20 to the
list of 1000 in your head. Need more time!)

The new linker plugin might well be very useful for you - it's
certainly a lot more intuitive than the vanilla text field:

http://confluence.atlassian.com/display/JIRAEXT/JIRA+Linker+Plugin

Also I see you're using the deck plugins a lot, but from some of your
pages you can see that the 'load flash' is very large and annoying.
I'm not sure I have any solutions here but you might want to make sure
the Adaptivist guys see it so that they have a concrete example to fix
from.

Well done!

m

On 12/14/05, forums@atlassian.com <forums@atlassian.com> wrote:
This thread relates very closely to the following: http://forums.atlassian.com/thread.jspa?threadID=9317&tstart=0

I thought i'd create a new thread for my discussion, as it is not limited to XP, and hence may have a wider audience.

Using Confluence and Jira to enable our software development process is something we have been focused on doing for about the past year and a half now. A little history of what we do: Our company, 7irene (www.7irene.com) has been focused in the Component Based Development (CBD) space for around 8 years now. We have a very strong focus on process and method ('Urgggghh' - I hear the XP guys spit ;)) For us: Process is Key. The way / method in which we build systems is crucial. Having been involved in both XP and RUP style projects we are aware that both styles have their shortcomings and there is a need for a something between the two. I want to keep this post quite specific to how we use Confluence and Jira to support our process ? without going into too much detail of what out process actually covers.

How we use Jira:


We've taken Jira out the box and provided a set of customized workflows that facilitate our Software Development Life Cycle (SDLC). Our process, which can be thought of as a light instantiation of RUP, defines things like
  • Features, mapping through to
  • Use Cases
  • Risks
  • Change Requests
  • Questions and Answers
  • Etc?

In Jira we have created workflows for all of the above ? and more. Similar to the Atlassian guys, Jira is where we initially create and store everything related to our project. This means that each and everything in our project is tracked using Jira. The details of project artifacts are later added in Confluence. Typically a Project Manager will be responsible for ensuring resources all have enough / not too much workload assigned to them. Features get added to Jira, they move through their workflow, and typically get linked to Use Cases (UC's) once analysed. These are all assigned to individuals with additional tasks being creating as need be. We've found Jira perfect for recording things like risks and change requests ? again customized workflows were used. A huge bonus of having all our Features and UC's in Jira is that ALL requirements are accounted for ? nothing is lost or slips through the cracks. No more does the dreaded cry of a Project Manager ring out in the ninth !
hour : 'Arrrrhhhhhhh, that feature should have been in that release!'

Customizing the inbuilt notification scheme of Jira gives us the control we needed when deciding on how much information gets sent out to various users (yes?Jira does rock!)

Obviously we use Jira to record bugs, and with the 'Fixed version' field we get the great road map feature. However, we have had a bit of problem in trying to use the Jira road map feature for things like Features and UC's. Typically these things don't quite fit with the concept of having a 'Fixed Version'. Features and UC's are never really fixed ? rather they are planned for a certain 'timebox' and then worked on. Sometimes Features and UC's are not completed in their designated timebox, in which case they need to be moved into a later timebox. Various new custom fields had to be created to handle the concepts of 'Timeboxes' and 'Milestones'. It also means we lose out on some of the kewl reporting capabilities of Jira when producing the release notes, but we're tackling that problem with some custom reports. Enough Jira detail for now.

How we use Confluence:


We use Confluence to store the actual detail of almost everything in a particular project ? right down to the level of things like who's making the coffee tomorrow :). We create all our UC details in confluence and the other artifacts that make up a Software Requirements are captured or collated in confluence too. Model diagrams are stored in a SCS (Subversion in our case), and then linked into confluence using WebDav. This means we have an incredibly powerful ability to show developers absolutely everything they'd ever need to see for a particular UC on one single page. We've found this to be a very powerful concept. Using some of Dave Peterson's macros' has made things like page real-estate so much better?. (Cheers Dave ? your work is excellent!) The linking capabilities of confluence make this environment almost perfect for us.

UC summaries captured in Jira are then linked directly to the confluence page that stores all the UC's details. Charles mentioned that the Atlassian guys are using a 'Confluence Page picker' thing ? to link Jira issues to actual confluence pages. We have something very similar, although slightly cruder - We have a custom field in Jira called 'Software Requirements Homepage', which is a text field, and we simply cut and paste the URL of the confluence page into this field once the confluence page starts getting details added to it. Simple, but effective.

We make extensive use of templates having them for as many repetitive tasks as possible:

  • Creating UC's
  • Creating UC home page summaries
  • Creating meetings
  • Creating server / database / environment pages

Providing a detailed structure for a project to use - out the box, gives people the benefit of having structure to the way they work. Tasks can easily repeated and information can always be found. Initially some people may feel restricted in having to conform to a structured confluence site - but after a while the benefits are clearly seen, and we've had really happy project teams working across geographically distributed location.

Right, so now I have rambled....

As i mentioned, we've been working on things for a while now, and I can't cover everything in a single post. Probably the best thing to do, if any are interested, is to have a look at our demo site:

http://archetype.7irene.com/portal/display/APD/Portal+Perspectives

You can log onto this demo site using : clientuser / clientuser as credentials.

The site is not really something we usually exposed to people without some form of consultancy around our process first. However, seeing as it's the confluence community, I'm sure you'll see how things work soon enough. Anyway, I'm more interested in showing you guys the Jira / confluence collaboration. I'll be more than happy to chat to anyone in more detail off line.

A few pointers on the demo site:
1. The confluence portion is what we call our 'Portal' product.

  • It is made up of perspectives ? essentially one perspective for each role in a project that we keep context sensitive information about.
  • Each perspective contains information about a particular role. A 'How To' so to speak on a specific role.
  • There is common information across each perspective ?we've taken the view that information is global, and should be shared across a project
  • In each perspective the main points of interest will possibly be the decks and cards on the left - showing all the workflow products that have been assigned to specific users.
  • The right hand cards show content that is specific to:
    • The perspective you are currently in, and
    • A common view of the project.
  • The Software Requirements home page will be of interest to the developer peps as it's got all the artifacts grouped together in one place?. So a single point of contact for a developer.

The Use case model, and use case itself

The type model

The component interactions

The component spec architectures

There is also a link taking the user straight to the jira entry so they can see any discussions that have been happening around the Jira entry itself.

  • With regard to how we structure our confluence spaces ? we are making use of the 'Reusable Asset Spec' to define and organize our project artifacts. Essentially artifacts are grouped into:
    • Things that are reusable ? Assets. These consist of most of our archetype content assist information, and
    • Things that are not reusable ? project artifacts. These include project plans, meeting information.

The spec has just been adopted by the OMG, and you can check out more info on it here: http://www.flashline.com/ras/ras.jsp?sid=1132709233868-1123631142-101

  • As I said before, it may appear confusing at first, and ideally someone should really guide you through the various portions of the product. For now the demo site will have to do.

2. The Jira portion is what we call our 'Workflow' product. The default dashboard has been customized for each user, and will have a different look and feel per role. The clientuser logon is a very simplified view on the product.

3. We are playing around with the look and feel of demo site at the moment ? hoping to make it a more intuitive experience for project members. One of the things you may notice is that on specific Perspectives, the performance may be a bit slow. This is because currently there are loads of filters being loaded into this single page. We may decide to move these filters off onto another page ?so that each perspective page loads quicker.

Have a look and please feel free to let me know your thoughts ? you should be able to add comments to all the confluence pages?. So go wild 

Regards
Giles Parnell
--
Post by GilesParnell - online at:
http://forums.atlassian.com/thread.jspa?forumID=96&threadID=9372
-

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
confluence-user details available at:
http://www.atlassian.com/software/confluence/mailinglist.jsp
~
Unsubscribing:
To unsubscribe yourself from the list, send an email to confluence-user-request@lists.atlassian.com (not confluence-user@lists.atlassian.com) containing the line (in the body of the message):
unsubscribe
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

--
ATLASSIAN - http://www.atlassian.com
-

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
confluence-user details available at:
http://www.atlassian.com/software/confluence/mailinglist.jsp
~
Unsubscribing:
To unsubscribe yourself from the list, send an email to confluence-user-request@lists.atlassian.com (not confluence-user@lists.atlassian.com) containing the line (in the body of the message):
unsubscribe
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Ellen Feaheny [...

Posts: 126
Registered: 11/03/08
Re: Using Confluence / Jira in a Software Development Environment
Posted: Jan 12, 2009 1:20 PM    global.in_response_to.tooltip in response to: Giles Parnell
Click to report abuse...   Click to reply to this thread Reply
Wow! Incredible post..

Let's un-bury this post that I just found tucked deep in the forums.

I actually think the Dec 2005 date makes it even more valuable of a case study/story, because Confluence and JIRA have come many miles since then.

Impressive post Giles - if you are still out there, it'd be interesting to have a Jan 2009 update, if you'd like to add to this? Again - very cool post!

Best Regards,

Ellen Feaheny
Clifftop, Inc
Legend
Genius: 1000 - 10000 pts
Expert: 500 - 999 pts
Guide: 250 - 499 pts
Enthusiast: 50 - 249 pts
Newbie: 5 - 49 pts
Atlassian Employee
Atlassian Partner
Helpful Answer (5 pts)
Correct Answer (10 pts)

Point your RSS reader here for a feed of the latest messages in all forums