|
Business Analysis in Offshore Projects - Part 1
I work with many groups who have adopted some form of a development process involving outsourcing or offshoring the technical development. When these organizations have elected a linear, waterfall software development process, the business and technical requirements must be identified and articulated as completely as possible up-front in the project, and intensively scrubbed for clarity so they can be understood and implemented by persons whose native language is not English, whose work culture differs from that of the U.S., and who may not share our American in-your-face willingness to push back when a specification is incomplete or contradictory. Just a few of the challenges experienced in offshored projects are:
Many of these challenges properly fall into the jurisdiction of Project Management, but for the BA or BSA the challenges of offshoring are more challenges of degree rather than challenges of kind:
First - You Are a Writer In all cases, when you as a BA or BSA produce a written specification, focus first on the accuracy of what you are specifying - and then think carefully about how much precision to include in your specification. When there is uncertainty about what you are specifying, any attempt to be over-precise will be ill-advised, but you can always be accurate in what you specify. Being too precise early in a project is just as dangerous and costly as not being precise enough by the end of a project. The foremost guideline I can offer any BA or BSA writing specifications for offshore development is this: you must first think of yourself as a writer - and as a business or technical specifier second. This guideline is always true, but it has special nuances in offshore situations. Even if your specification is absolutely perfect in its content and domain knowledge, if your reader cannot understand the syntax or semantics of your words then your specification is a failure. You are writing for an audience, not for yourself. And your audience is probably "foreign" to some of your language. In my university days I owned a zippy little MGB sports car. I learned auto mechanics on this car, yet I was initially confounded by the car's British Repair Manual. It referenced "wings", which to me were the front fenders, and a "bonnet" which was the engine-compartment hood, and then there was the references to the "boot" - the trunk lid. The Manual authors wrote perfectly for a British reader, but not for me. You may not have owned an MGB, but you have probably purchased a product made in Japan or China with an Owner's Manual written in some cryptic semblance of English. We too often submit our offshore groups to this confusion, and quite unnecessarily. But what if you are not really a good writer? How can you improve the clarity of your specifications? Three suggestions:
Quantity Delivered vs. Quality Obtained Last year I spoke with an internationally-known consultant who had visited one of the very large IT shops in India. While on a tour of the facility, this consultant asked his guide, "What does your organization really do with those huge specifications you receive from American companies?" His guide pointed out a young man working in a corner cubicle and politely replied, "Our schedules are really too tight to read all of those specifications, so Ashok rewrites them to a size we can manage. If we miss a requirement or misinterpret a need, we will be asked to redo it." True story. But what should this mean to us? It strongly suggests that even if you and your team are very good writers, creating larger and more precise specifications may not be the right approach. One blog respondent notes "Many development managers feel that they can "throw the requirements" over seas and expect magic." I have worked with two organizations that overcame this "throw the requirements" attitude. Both brought at least one key representative from the offshore group to their location here in the U.S. One group was using a Russian development team, and the other a European team. Both organizations produce specifications, some quite large. But the quality obtained is from the interactions of the key representative with the American BAs or BSAs, and any local developers and architects. Since this representative comes from, and understands, the development group's culture and native language(s), not only are major misunderstandings avoided, but many of the more numerous minor misunderstandings are circumvented as well. The BAs and BSAs can interact both indirectly and directly with the offshore teams to assure accuracy of understanding, and increasing precision as the project unfolds. Next month I will offer some very specific ideas for BAs and BSAs to specify business requirements, user requirements, and technical requirements for an offshore project. And all of these suggestions will improve your specification for in-house communication as well. Have a productive month, Gary K. Evans |
Subscribe to our newsletter! Send an email to You will find all prior About Evanetics Evanetics provides on-site consulting, training, and assessments for teams and management in Business Analysis, Object-Oriented Modeling with UML, Project Definition, Iterative process, RUP, Agile principles and practices. Phone: 803-781-7628
Evanetics is an Endorsed Education Provider (EEP) for the International Institute of Business Analysis Does Project Size Matter? Should the size of a project determine what specifications you produce, or the tasks you perform in completing that project? In my experience this is a standard criterion used, but I believe this decision deserves some scrutiny. In a size-motivated organization, large projects are expected to produce the most tasks and artifacts, and small projects the least. Right away, one asks "How do I quantify absolute size of a project, or even relative size between projects?" I have never heard a convincing answer. I have heard size determined by budget, project duration, number of persons on the project staff - even number of lines of code (how can we know this before the project starts?). Rather than a quantitative calculus, I have found a much more fruitful approach characterizing a project's tasks and the number of artifacts needed to be dictated by the qualitative criteria. Namely, is it:
A new project can be large, medium or small in size, as can an enhancement release. Consider that you are beginning a brand-new project with only 4 people on the project. It is new, so you will probably need a Charter, a Vision and Scope specification, some catalog of features, business requirements, technical goals and constraints, perhaps UML analysis and design diagrams, and so on. Many or all of these will be needed in some form whether the new project has 4 or 40 people. Consider you are embarking on an enhancement release for an existing, deployed project. You already have the Charter, the Vision and Scope docs, and the other major specifications from the initial deployment. For this enhancement, you need to specify only the changes or enhancements. All new docs and diagrams are not necessary: you need only specify what is being added - the deltas. Again, this enhancement effort could involve 4 or 40 people. Bugfix releases are often limited in size and effort, but not always. Still, no one writes new functional specifications or Vision docs for bugfixes. A simple 3x3 matrix illustrates the dependence of project artifacts and tasks on project type more than project size:
Does project size have influence on the range of tasks and number of supporting artifacts? Yes, but project size is a secondary factor. Project type is the primary factor, and the project type directly constrains the project tasks. UML Aggrevation Aggregation and Composition each represent whole-part relationships. How to choose easily between them? Use Aggregation to indicate:
Use Composition to indicate:
|
|||||||||||||||||||
|
Published by: Evanetics, Inc.13 Stonebriar Road Columbia, SC 29212 803-781-7628 Copyright (C) 2009 Evanetics, Inc. All rights reserved. www.evanetics.com |
||||||||||||||||||||