Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I recently started at a company and am working on statistical data analysis and data handling (market research). A lot of my tasks were previously done entirely by hand, so I created a few tools to automate much of my work.

My boss asked if I could go ahead and look for other automation-possibilities. I certainly have the time and skill, but I don't know how to find processes which would be good candidates to be automated.

I could ask co-workers, but most of them don't understand what is easy to automate and what isn't. I believe that there are processes for this sort of thing - but I don't know enough to start Googling.

What comes before requirements discovery and analysis?

How do I identify business processes that will be more efficient as automated tasks?

share|improve this question
add comment

5 Answers

In my experience, you really have to walk a mile in their shoes. Ask if you can help them do their job for a morning. Walk through everything they do. Ask questions about what they do in certain circumstances (it's usually the rarely-but-once-a-month stuff that makes it hard to automate). Then go back and put together a functional specification. Then walk them through the idea verbally and get their feedback. Having the discussion will bring up other ideas they didn't think about before. You might need one or two revisions.

That's the best way I've found. People rarely come to you with ideas because, as you said, they don't know what's easy and what's hard. However, once you do this a couple of times, they'll start to get a feel for it and they'll start to suggest small improvements, etc.

share|improve this answer
    
That sounds promising! Because we are a small team, that should be easily doable. –  Christian Sauer Feb 12 '13 at 14:52
add comment

It sounds like you're trying to elicit requirements.

There are many techniques for eliciting requirements, but I would suggest observation as a good method. Simply watch people perform their daily jobs and identify manual activities that are repetitive or frequently performed - these may make good candidates for automation. It will also help you better understand the business and the roles of various people.

If there are people who are willing and able to take the time, you may also couple interviewing with observation. Ask questions about what they are doing, why they are doing it, and if they have any complaints or problems with the current process. This may not always be possible if people are extremely busy or have tight deadlines, but you may be able to find some people willing to take a short break or have a working lunch.

share|improve this answer
    
Thank you, the link looks very good to me. We have a slow turn at the moment, (project work: we are finished but working on the next project hast not yet begun) so working with my team should not be a extreme burden. –  Christian Sauer Feb 12 '13 at 14:55
add comment

You should ask your colleagues about the processes they use on a daily basis, where they spend most of their time, or what they do that they wish they didn't have to do.

Don't ask them what they want automated because you'll be less likely to get good feedback.

share|improve this answer
add comment

Maybe write usecases for the most common tasks in your organisation and invite your boss (or someone else in the organisation) for an "interpretive review", were he/she reads the cases out loud and explains how he/she understands it (and whether he/she agrees). In my experience, when concrete descriptions of workflows is interpreted by an involved part, patterns and anomalies are recognized, and automatable processes can be identified.

share|improve this answer
    
I am not sure how this technique works? It seems to be a "validation" step after Thomas Owens or Whitlocks sugestions? –  Christian Sauer Feb 12 '13 at 14:54
    
I've been trying to find some English material on the subject - I would highly recommend Poul Staal Vinje's material on the subjects, but it only exists in Danish. - It is, I'm just suggesting the "how" (the review-technique Poul Staal Vinje calls "interpretative review"), I agree with Owens and Whitlock on the "what". –  Julian Feb 13 '13 at 9:24
add comment

If you are looking for projects with the greatest impact create a value stream map of some of your key processes (Google Lean manufacturing and value stream). You will quickly be able to identify bottlenecks in many of your processes. You may even notice that most or all of your processes have a common constraint (ie data has to be manually manipulated before it can be passed on to the next step of the process). This is where you can apply your VBA/.Net/Database skills.

If you are looking for small projects, just look at any task that takes a long time, is done repetitively and does not add a lot of value to the final product (ie people in the office will commonly say "It's not that it's difficult, it's just very manual." about these tasks).

If you are looking for more formalized approaches to identifying projects for process improvement, research Lean, Six Sigma and/or Theory of Constraints. All provide useful approaches and tools for process improvement.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.