Archive for the 'Accelerated Change' Category

Software Development Lifecycle - which one do you choose, and why?

Having spend most of this afternoon racking my brains for some sort of holy grail of software development lifecycle that will ensure success in every possible scenario… I quickly remembered my Software Design lecturer words…

"If you can read, understand and interpret the ISO 12207 (International Standard of Software Lifecycle Processes) document then you are well on your way to being as confused about things as everyone else seems to be"

The document, unless you want to read all 18 pages of it, is basically an overview of what needs to happen in a Software Development Lifecycle… My favourite quote from it is:

"The standard is flexible and usable with: any life cycle model (such as, Waterfall, incremental, evolutionary, Spiral, or other); any software engineering method (object-oriented design, structured coding, top-down testing, or other); or any programming language (Ada, assembly, machine, or other). These are very much dependent upon the software project and state-of-the-technology, and their selection is left to the user of the standard."

Okay, so the joke is on me.. the document doesn’t really give me anything that I didn’t already know… As a software team leader or software project manager it is down to you to make the difficult decision as to which approach to adopt.

Right, so I reckon you can decide based on:

  1. Software Engineering Method (OO, Structured etc.)
  2. State-of-the-technology used on the project (e.g. workflow technologies, AJAX, C++)
  3. Past experience
  4. Company ethos
  5. Delivery timescale

1 and 2 are basically driven by your user and system requirements… as you can’t build what you want in any way you like, you need to pick a selection of technologies that can deliver your project in the required timescale… well, I guess you could do it any way you liked if it was a student project, or you had a ridiculously big budget, or if it was part of the project to work out the most effective solution in every conceivable technology.

3 only applies if you’ve ‘been there and got the T-shirt’… It wont give you much if all your projects have been run in the same way, as you don’t have the visibility of other methodologies… so more than likely you’ll adapt your current way of thinking and tweak it to improve efficiency. This is not necessarily a bad thing.

4 is more down to the organisation you work in… are there rigid corporate standards to adhere to? … do you have to talk to twenty people to get a slight change to policy approved? Can you really decide how you wish to develop your product? If you can… then if it all goes well, a hero you will become… I hate to think about the price of failure when a new development strategy is adopted.

5 is really important, and I think it is not really considered in enough detail… so you want to adopt a certain development strategy… how does this impact your development team, and more importantly your stakeholders… does your customer insist that you follow a certain strategy? are you tied down to a contract that means you cannot perform a true iterative approach?

Hmm… so all I’ve done so far is to help stir up the murky waters a little more.

Is change for the point of change a bad thing?

The development strategies (that for the purposes of this argument are the ones under consideration)

  1. Waterfall, and for those in a comedy mood: waterfall 2006 conference :-D
  2. Agile (e.g. Scrum, Lean etc.) … I’m also going to group iterative or incremental development into this category
  3. Automated Software Synthesis - you need ACM access to read the full article, but you can search for free results :-)

The waterfall model has many critics… many of the criticisms are valid, however don’t be too quick to ignore that it has to offer, if you know what you are building, and the requirements are 90% stable, then it might be exactly what you are looking for. In terms of fixed price contracts, I think that the waterfall model has a great deal to offer, the future can be planned, and progress can be measured in deliverables rather than other intangible means

Agile development is (IMHO) the new word for a structured, defined and industry standard of iterative or incremental software development. To be honest with you, if it wasn’t for the reading of Andrew Woodward’s blog, I wouldn’t have had the foggiest idea about what it could offer. I also cast eye over Hillel Glazer’s Agile CMMi blog… since my organisation is a CMMi level 3 operation now :-). Where to begin with Agile… well it is a daunting task for any PM for Software Team Lead to take in all the information I’ve just been though… and getting your development team to adopt a new way of thinking will just as daunting as the learning.

"Although there are some evidences that CMMI and Agile can coexist, the overall impression of people dealing with process improvement is that there are still important cultural differences between the two communities" - from CMMI: Less Hyped Than Agile but Equally Popular on devagile.com

Oh boy have you got an uphill battle if you, like me, are in a CMMi ordained organisation… or perhaps not, it depends on how you approach the change.

Automated Software Synthesis is something I had never considered until I utilised K2 [blackpearl] and K2 [blackpoint]. Essentially your design when using those particular technologies is a high level business process that you wish to implement. You can’t really go about doing a detailed UML model of how each of the classes in the system will work - because it engineers itself through the tools provided, be it K2 Studio or Visual Studio. Yes you can write your own code, but it forms a small part of your development if you can utilise the technology to your advantage. You still need to gather requirements though… which is really important! Other such examples include rapid application development tools that can write your code based on a detailed design… I’ve got no experience of these.

I’m still none the wiser, and the deadline looms in the distance… and upper management are after those darn estimates.

…. SpittingCAML



Learn from Microsoft and K2 how Nissan drive more productivity from SAP

I thought I’d share with you an exciting seminar from Microsoft/K2/Nissan and Dynamyx on how to leverage your SAP system.

It will be run on the 10th December 2008, Time: 14:00 – 17:30   Venue: Radisson Edwardian Hampshire (Leicester Square, London WC2H 7LH)

Unfortunately due to other commitments I wont be able to attend this seminar, however I will certainly recommend this to my colleagues and to people involved with business process management and enterprise resource planning. If your organisation uses SharePoint, BizTalk and SAP then you already have the foundations for providing an integrated and flexible system for process and resource management.

SAP - a leading enterprise resource planning system provider

Microsoft and K2 would like to invite you to an afternoon session of presentations and networking to help you further your SAP investment. After refreshments and a welcome from your hosts you will gain an insight into how Microsoft works closely with SAP and their future strategy as partners.

Marco Manuello, (Enterprise Technical Specialist - Microsoft) talks about the Microsoft Strategy for SAP integration.

Nissan - market leading car manufacturer

Nissan enhanced their productivity with workflow and SAP linking to enable updates, amends and automatic postings with limited user intervention.

Dynamyx - a leading Workflow/Enterprise Management/BPM solutions provider.

This session will be hosted by the Dynamyx Business analyst (Meyer Prinsloo), who will explain the business drivers and processes involved, the project manager sharing experiences gained in delivering the solution across the region, and the systems architect who will present details on how to achieve scalability when linking workflow to SAP.

The event will end with networking and drinks to wish you all the best of the season with the backdrop of the night time city view.

For more information and/or to register to attend this event call 0870 166 6628 or click here to register online.

Please let me know how things go if you attend….

Enjoy

SpittingCAML



Case Management: the K2 roadmap for accelerated business process management

An organisation’s information system is made up from the mental concepts and frameworks of the participants in the organisation, the data passed to and between the participants (processed along the road), and the resulting individual perceptions and understandings of the situations leading to individual actions. These actions are expected to lead to the fulfillment of shared goals.

Actions are geared towards goals using:

  • common understanding
  • good communication
  • common culture, languages and conventions
  • compatible frames of reference
  • common data and metadata

ogdenstriang
Figure 1: Ogden’s Triangle (1956) shows the relationship between data, information and what is going on in the real world.

Figure 1 highlights the obvious.. but it helps us to think about the way we store ‘data’ in our organisation. It is in the ability to ’symbolise’ information from raw data that affects the performance of the organisation to properly understand the real world.

Okay, so that’s the theory! How do we put that into our organisation? K2 have come up with a possible solution. It will ensure good communication, a common framework, and consistent metadata.

K2 refer to their solution as ‘Case Management’. To paraphrase the K2 literature in front of me:

Case management refers to a pattern of working for knowledge centric processes where skilled workers assess large amounts of related information typically a mixture of content (e.g. Documents, Images, physical evidence, records and data) which is used to make a series of discretionary decisions about next steps and associated outcomes. Such case processing typically involves interaction between individuals and organisations and can take place over days, weeks or even years.

Does it sound like your organisation fits that description? K2 suggest that 50% of the activity in most organisations is ‘case’ based. The word case could easily be replaced by the word ‘project’, ‘job’, ‘task’, ‘assignment’ or ‘issue’ to name a few.

vertical-filing-cabinet-1
Figure 2: Your organisation (a metaphor)

You store your information in a consistent way, whether it be in paper form in a filing cabinet, or electronically in a SharePoint document library or a record management tool.

longstoragefilecabinet
Figure 3: ‘Cases’, ‘Projects’ etc. in your organisation (another metaphor)

People in your organisation separate their thoughts and work processes into ‘Cases’ or ‘Projects’ etc. Progress is measured by tracking each ‘case’ or ‘project’ in the organisation. Metrics are kept to help predict future cases or projects. Governance means that their are strict rules on how information is stored. The CEO needs an overview of everything going on so he can keep the shareholders happy.

Okay, enough of the theory! What does this mean in technical terms? The K2 Case Management suite gives you:

  • A pre-configured portal (SharePoint),
  • A business process engine (K2 [blackpearl]),
  • Records management, by providing seamless communication with Record Centre, HP Trim, Meridio and many others
  • A supporting framework delivering:
    • A collaborative environment to access, implement, coordinate, monitor, report and evaluate end to end business processes, their instances, supporting documentation and records

So What? That sounds like SharePoint and K2 [BlackPearl] with a records management tool thrown in for good measure! Why can’t I just build that myself?!

Yes, that’s true… but there are a few good reasons why you should go for the K2 Case Management suite rather than building your own out of the building blocks.

K2 will be offering ‘accelerators’ to allow organisations to rapidly build their business process with a reduced need to bespoke the out of the box toolset. A capability to provide a ’single-point-of-truth’ for each ‘case’ in your system, even allowing you to surface data from LOB applications such as SAP and BizTalk.

image
Figure 4: A preview of how the the K2 case management suite will look 

These ‘accelerators’ will be available from K2 very soon. My organisation is intending to be one of the first businesses in the UK to utilise it. We hope to be participating in the beta programme. If you are interested in being a part of this, please contact your K2 sales representative, or raise a support ticket through the K2 support system.

References/Materials

A. Hitchcock, S. Leisegang. (2008). Solutions Portfolio Presentation. K2 (www.k2.com).

B. Sundgren, P. Martensson, M. Mahring & K. Nilsson (Eds.). (2003). Exploring Patterns in Information Management, Stockholm School of Economics.

J. Flanagan, T. Huang, P. Jones & S. Kasif. (1997). Human-Centered Systems: Information, Interactivity, and Intelligence, National Science Foundation.

Update: I’m now featured on ebizq.. how great is that :-D… Thanks Dennis Byron for the link back! See what he wrote here

I don’t work for K2, but I do use their technologies… but I guess I can be considered a microsoft junkie!… :-D




You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.