Preface:
This article is mainly about lean agile outsourcing development. Why should we discard "overly-heavy documents" and change to "Visual Kanban" to effectively integrate different enterprises, can software outsourcing personnel located in different office areas complete high-quality delivery together efficiently?
This article:
The IT department of an enterprise outsourced the product system to different enterprises. One of the biggest challenges faced by developers and testers located in different office areas is: the quality and efficiency of version delivery often fail to meet the expectations and requirements of business departments in enterprises?
The main reason for this same life is that"Excessive documentation"?
The IT department and outsourcing personnel of an enterprise may be unfamiliar with the business or system of the enterprise's IT department due to their different positions, the requirement analysis and design personnel of the enterprise IT department must submit dozens or even hundreds of pages of requirements/design specifications to outsourced development and testing personnel, will outsourced developers and testers start related development and testing?
This seemingly necessary and taken for granted should be the requirement analysis/design specifications delivered by the enterprise IT department, which often results in the enterprise IT department, one of the main reasons for the dramatic decline in version delivery efficiency and quality? The root cause is:
1. requirements/design specifications for dozens or even hundreds of pages will cause a lot of unnecessary Waiting Time:
It usually takes 1-3 months for enterprise IT department requirement analysis/design engineers to write requirement/design specifications. Does some versions take longer?
During this period of one month or even several months, outsourcing developers and testers only have to wait "?
However, it is impossible to get the understanding and understanding of the business department in the enterprise? The version delivery date will not be extended due to the "wait" of this section?
That is to say, the development and testing time of outsourcing personnel will be "COMPRESSED" due to the "wait". For example: originally in the entire version, should there be three months for development and testing, but it is compressed into only two weeks?
When the development and testing time of outsourcing staff is compressed, outsourcing staff will have no choice but to deliver their jobs first, as for "quality "..... What should I do if I get caught?
2. The requirement/design specifications for dozens or even hundreds of pages are actually very poor in readability and guidance:
Verification has been obtained from many projects, and dozens or even hundreds of pages of requirements/design specifications only make outsourcing personnel who are not familiar with the business or system of the enterprise IT department, do you even better understand your needs?
3. dozens or even hundreds of pages of requirements/Design Specifications often make outsourcing staff passive and overprotect themselves:
Outsourcing personnel only develop and test the content of requirement/design specifications, and are not willing to take the initiative to think about it. What should they do? In order to truly meet user requirements?
When outsourcing personnel have lost their willingness and ability to think actively, can version delivery efficiency and quality be lowered as expected?
Therefore, we should look at product software outsourcing from another perspective .....
"In the face of software outsourcing developers and testers from different enterprises and offices, the first and most important task is to establish an efficient information transfer mechanism instead of a document ?"
This efficient information transmission mechanism must meet the following requirements:
1. Simple:
Can be easily built and used in any work environment?
How can we hide and encapsulate complicated and difficult theories? So that anyone can easily get started directly?
2. Visualization:
Visualized presentation of information during the product software development cycle, including: requirement analysis, architecture design, test cases, and other information?
3. team collaboration:
Can the IT department of an enterprise fully and directly cooperate with outsourcing personnel located in different office areas of different enterprises?
I use"Panel"In lean agile outsourcing development, how to construct an efficient information transmission mechanism?
I designed a "Panel" with characteristics as the latitude, including:
1. Requirement dashboard:Enable the enterprise IT department and outsourcing team to visually identify the basic scenarios of features, expand the scenarios, abnormal scenarios and quality attributes?
2. Architecture dashboard:Integrate the architectural entity types and architectural design processes required to design rest Oriented Architecture (ROA) into the dashboard? So that enterprise IT departments and outsourcing teams can collaborate more easily and directly to jointly design the Web APIs required for features?
3.Test Case panel:The variation points that make the test results different between the latitude and the latitude will be integrated into the dashboard? So that the enterprise IT department and outsourcing team can jointly and objectively identify the test cases required for the characteristics?
Conclusion:
Requirement dashboard, architecture dashboard, and test case dashboard have been used in many types of projects to enable the enterprise IT department and outsourcing team to efficiently transmit information? So that the items to be confirmed, risks, and the best design and test scheme in the project can be identified as soon as possible? Therefore, the project development efficiency and quality are greatly improved?
In subsequent articles, we will further detail the requirement dashboard, architecture dashboard, and test case dashboard?
Lean agile outsourcing development-Information Delivery