Standard hours: The amount of work that a person with three years’ experience can accomplish in one hour. It is used to measure the granularity of modules.

Three core elements of project management: time, cost and quality. It is a case of having your cake and eating it too. Different phases have different emphases.

There are three basic competitive strategies: cost leading strategy, differentiation strategy and centralization strategy. Or to keep costs lower than competitors; Or to form a distinctive feature in enterprise products and services, so that customers feel that you provide more value than other competitors; Either the business is dedicated to serving a specific market segment, a specific product category, or a specific geographic area. The three strategic architectures are very different and require different resources and skills for successful implementation. To the strength of the company, will only “Zhuolu Zhongyuan”, not “a corner”, so centralization strategy at any stage will not choose.

Incremental market stage This stage of the core factor: fast (time), a day earlier can be more than a group of users. Quality is relative, to evaluate the quality of a product, there must be a reference. Most potential users have not been exposed to similar products (if any), so there is no reference point. Nature has no concept of quality. At this stage, there were a lot of stories to tell, so it was relatively easy to raise money, and the company did. Due to the current stock market stage, the planning is mainly incremental market stage.

The core element in the early stage of the stock market: good (quality). Competition has already begun, but there are many soft persimmons, and improving quality can make them better. There are not many stories to tell, financing is hard, but there are more users and margins are high, so the money is still good. In the guarantee of quality rolling soft persimmon, as fast as possible, so that you can pinch a few soft persimmon.

By extension, “good” becomes a differentiation strategy. There are five basic approaches to differentiation strategy: 1. Product differentiation. Mainly reflected in: form, characteristics, performance quality, consistency, durability, reliability, maintainability, style and design. 2. Service differentiation. 3. Differentiation of personnel. 4. Differentiation of marketing channels; 5. Differentiation of image.

The core factor at this stage: savings (cost). The soft persimmons were wiped out and an oligopoly was formed. Brand has been established, fast will damage the brand, and no benefit, so give up. In their respective areas of advantage, quality has been relatively perfect, it is difficult to make a breakthrough through quality. If some crazy guy starts a price war, we’re all for it. An oligopoly is almost always a madman.

Cost leadership strategy means that enterprises should strive to reduce costs to obtain competitive advantages on the premise of little difference in function and quality of products provided. If the previous stage, the quality is not good, you need to continue to pay attention to the quality, until the quality is satisfactory.

Maturity is set. Nothing matters. Either a monopoly has been formed or an oligopoly has reached a tacit understanding.

Organizational structure of R&D Department

Detailed design. Encoding. Responsibilities of Senior Development Engineer:

Responsible for detailed design and coding of core complex functions. Be responsible for troubleshooting BUG analysis and diagnosis. New guide, help new detailed design. Development Team leader:

Team task management: development workload assessment, development task allocation. Team production quality improvement: code review, development risk identification/reporting/coordination solution. Team productivity improvement: code template research and development and promotion, summary and promotion of best practices, automation research and development and promotion of production tools. Team professional ability improvement: recruitment interview, leadership review summary and improvement. Department Duty Officer:

Administration: leave, reimbursement, duty and so on. Report progress to department supervisor. Mediate conflicts between groups. If you refuse to mediate, report to the superior of the department. Cooperate with each group leader to complete the task. Department Manager:

Administration. Ensure that progress is completed on time. If it cannot be completed, report it to the department’s superior as soon as possible. Resolve departmental conflicts. If the problem cannot be resolved, report it to the superior of the department as soon as possible. Guide team leaders to complete tasks. No coding in principle, but code review to prevent employee fraud. If there are no common groups, people are temporarily tapped to complete the common content. Regarding the recruitment of development team leader, consider the technology, department manager consider the salary, technical manager (director) consider the skill distribution, age distribution, etc. Development team vacancy, apply to department manager. If the department has sufficient funds, apply to the technical manager (director) for recruitment, otherwise apply for loan.

The two-tier architecture r&d department consists of several departments, which in turn are composed of several working groups. The manager is responsible for the formal department. If the work is complicated, the duty officer can be set up. Department is too small, also set duty officer, no manager; There will be a duty officer in temporary departments. There is no limit to the working group personnel, and a team leader, if more than 10 people, a deputy team leader; More than 15 people, two deputy leaders, and so on. If a group of 3 (or less) students are on duty, no group leader is assigned. The duty officer and the duty student are completely temporary, and the deputy team leader is partially temporary.

In the incremental stage, some departments are divided according to the product line. The department in this stage is temporary, so the supervisor is the duty officer. If the product manager has good demand analysis ability and passing business ability, the product manager will be appointed. Otherwise: the team leader who is willing to be the duty officer takes turns. The purpose of this structure: fast, all tasks (including borrowed pre-sales, after-sales) can be solved within the department.

The inventory architecture is divided into departments by development language and groups by product. Convenient code check, training, summary to improve product quality. This stage: return the pre-sales and after-sales staff, slightly reduce the product manager, greatly increase the tester.

In the later period, we extracted the public development group of each language, established training institutions and established research and development center departments to reduce costs. Architect added to R&D center: the number of hours required to evaluate all tasks.

Specifications Each specification is summed up by a person who got out of a hole, and following the specification can dramatically reduce the chances of falling into a hole. The cost of complying with one specification is negligible; the cost of complying with all specifications is so great that a loss is inevitable. Better practice: count out the odds of various pits, and then build specifications for them.

It is recommended that problems found by code walkthroughs do not affect the evaluation of software engineers. Factors affecting assessment: the number of tasks completed (marked hours), the number of defects found by testers or users.

The current specification remains as it is, and if there is no specification, there is no specification temporarily. I collect defect feedback from users and testers, categorize the root causes, and prioritize the areas with the most defects or impact to establish specifications.

Specification from

Incremental stage

The early stage of the stock

The stock of the late

The nature of the

Case based (similar to Common law system)

Rule based (similar to civil law system)

The rule is the main, the case is the second

Can software developers communicate directly with customers

can

Can not be

Can not be

Could you work overtime

can

Can not be

casually

Problems reported by users and customers

As far as possible to modify

Transfer to product manager for decision

Please submit it to the product manager

The document

As little as possible

CMM3 localization

A simplified version CMM3

Bad code (fine for now, but high chance of causing problems)

allow

Don’t allow

Allow bad code with a low error rate

Attitude towards software outsourcing

advocate

As little as possible, unless the outsourcing company has the scarce talent we need. The odds are small.

The quality is acceptable, but the price is good.

 

 

 

 

Focus increment stage: focus on demand analysis personnel, cut down the weak demand, postpone the secondary demand and late demand, workload will be reduced by half to two-thirds; To know restraint, do something and do not do something, follow the demand, find the right eye. In the pre-inventory stage, focus on team leaders, especially test team leaders, who are the key to improving quality and reducing costs. In the later period of inventory, focus on the managers of all departments, especially the managers of r&d center, analysis, design, public library, training can be cross-language.

In the incremental phase, in-depth understanding of customer requirements can reduce requirement changes and rework during development. According to international best practice, improved projects should have at least 80% certainty of requirements before formal development, and breakthrough new products should have at least 50% certainty of requirements before development. The marketing and technical staff work together to define the product, reduce distortion in the information transfer process, reduce rework in the development process. Use cross-functional teams to save cycle time for development, testing, manufacturing, launch, etc. Prioritize and allocate resources for new product projects to ensure that important projects are prioritized. Subrequirements of large requirements are separated if they have different priorities. Use appropriate IT tools to improve development efficiency. For example: base and AutoCAD (or wang CAD) than direct development; Engine-based is better than developing from scratch. Code walk check. Use effective project management to manage development projects. Outsourcing. Stock early code walk check, in order to find problems in advance. Increase reviews to identify problems in advance. Training. Use appropriate IT tools to improve development efficiency. Use effective project management to manage development projects. Establish technology platform and common module. Studies have found that, on average, more than 40% of a new product development project is repetitive. Because it is passed the previous product test, so the quality is much higher. Outsource highly specialized work. Stock late software development manpower cost is the big head. Training, so that the skills of employees are well matched, which can reduce average wages. Establish technology platform and common module to shorten development cycle. Shorten not only development, or testing, after – sale. Code walk check. Use appropriate IT tools to improve development efficiency. Use effective project management to manage development projects. Use more quality, cheap outsourcing.