We speed up the process of developing complex projects. Without chaos and nerves

We learned from students who are accustomed to relying only on their own strengths about how to write a term paper and a diploma thesis of high quality.


Efforts will not go to waste

Ilya Mikhailov, 5th year student of the Faculty of Mechanics and Technology of BNTU:

– The topic of my diploma is “Influence of ultrafine additives on the structure and properties of gray cast iron”. The project was based term papers which he prepared during his studies. Classmates are less fortunate - they write work from scratch. There are no particular difficulties with the preparation of a thesis - I have always tried to do everything on my own. I pay more attention to the practical part. Its easy to write. Much depends on the supervisor. He helps a lot: he offers the necessary literature, points out errors and can suggest how to correct them. Now I'm a little "stuck" in the drawings. Any inaccuracy - and you have to redo everything. I hope my efforts will not be wasted, and the leader and the reviewer will be highly appreciated thesis.

Diploma from scratch Easily!

Irina Kutselai, 4th year student of the Faculty of Banking of PolesGU:

– Writing term papers on your own is not easy, because you don’t know where to start. I go to the library, take books on the topic, leaf through them, and only then a plan emerges in my head. But it is easy to defend - you know your research very well and are not afraid of additional questions. Each time I note for myself that knowledge is added, that I begin to better understand the topic. I spent a month on the first course, and wrote the last one in a week. Stayed up at night several times. But it's her own fault - you don't have to do everything at the last moment. I had no doubt that I would master the diploma. This is the same coursework, only larger in volume. My theme is: The financial analysis as a method of financial management of a business entity (based on the materials of JSC "Slutsk cheese-making plant)". I took up the job back in February, when I was undergraduate practice. And already in April two chapters were ready. With the third, however, things were more complicated. I had to study many articles by different authors, draw conclusions and apply them to my research. This week I plan to give the results of the work for review.

Need a clear plan

Ilya Lemets, master student of the Faculty of Philosophy and Social Sciences of the Belarusian State University:

- During my studies, I received only nines for coursework. The diploma was also highly appreciated. The teachers saw that it was not plagiarism. It took a lot of time, because of work and sports, I wrote everything at night. The first course took a lot of effort. I independently searched for sources, constantly bombarded my supervisor with questions. Closer to the defense, I panicked - there was a feeling that I would fail. But I gathered myself, calmed down, and in the end everything went well. Then I continued to write term papers on related topics, and they became part of my diploma. It was more difficult to work on it, but I clearly understood what needed to be done: pick up literature and estimate approximate chapters. Spend practical research and process it. Compose a title. Write the theoretical and practical parts, introduction, conclusion and conclusions by chapter. File a job. But when I handed it over to the department, all the indents and fonts flew. The teacher was sympathetic - he gave two hours to correct. I did everything.

The main thing is to correctly allocate time

Yana Shadrina, 4th year student of the Faculty of Economics and Business Management of VSTU:

- It is not an option to order a finished term paper or a thesis - the teacher sees everything perfectly. I wrote on my own. True, a lot of time was spent on the tables. They had to make somewhere around 25-30 pieces. You need to sit on each one, look for information, make calculations and conclusions. This is a rather painstaking task. The teachers gave us two months to complete the coursework. I immediately created a separate folder on the computer and began to slowly write chapters. I handed it over to the supervisor for verification, he pointed out inaccuracies. Unfortunately, there were many of them. With tears in her eyes, she redid everything. I always tried not to delay the delivery, and therefore fit into the allotted time. In the fourth year, the teacher proposed a topic for the diploma "Research and justification of ways to improve the financial performance of Vitraibyt OJSC." Several chapters from the last term paper were included in the project, which made my life much easier. There were no problems with the theoretical part, the enterprise helped with the analytical part - they issued documents with the necessary data. I took a week to write the first chapter, another one for the second. But be sure to take a break to rest. In fact, everything is not so difficult. I didn't even have to sit on my diploma at night. Better sleep well.

Get ready for summer

Mikhail Rebizov, graduatedland managementfaculty of BSAA in 2018:

Writing term papers has always been easy for me. During the semester for practical exercises made calculations, systematized them in tables. I checked all the numbers and only then wrote the text. This took about a week. The course students came in handy in the final year, when it was time to take up the diploma. Its theme was: "Peasant farming". It was interesting to work on the project. The farm that I studied is engaged in horse breeding. In the practical part, he counted the livestock, described what to feed, how much feed would be needed, where to get it, how to care for the animals. Received good experience. Used 30 sources to write the theoretical part. Starting from this year, my specialty (“land surveyor”) has been studying for six months less, and I had to start working on my diploma in the summer during my work experience.

Photo from the personal archive of the heroes.

For the successful application of a variety of Project Management tools, you need to determine which class the project belongs to, which you are working on.

The whole variety of projects can be classified according to a number of criteria:

    by scale;

    by complexity;

    on the quality of performance;

    by level of participants;

    in relation to the enterprise-customer;

    on the innovativeness of the idea.

Scale distinguish between small, medium and mega projects.

Small projects small in scale, simple and limited in scope. So, in American practice:

    capital investments: up to 10 million dollars;

    labor costs: up to 50 thousand man-hours.

Examples of typical small projects pilot plants, small (often in block-modular design) industrial enterprises, modernization of existing industries.

Small projects allow a number of simplifications in the design and implementation procedure, the formation of the project team (you can simply redistribute intellectual, labor and material resources for a short time). At the same time, the difficulty of correcting the mistakes made due to the lack of time to eliminate them requires a very careful definition of the volumetric characteristics of the project, the project participants and their methods of work, the project schedule and report forms, as well as the terms of the contract.

    appoint one manager (coordination should be carried out by one person);

    flexible organization of the project team, ensuring the interchangeability of its members;

    maximum simple form project schedule;

    clear knowledge of each team member of their tasks and scope of work;

    the launch of the facility should be carried out by the same engineers who started work on the project.

Megaprojects - these are targeted programs containing many interrelated projects united by a common goal, allocated resources and the time allotted for their implementation. Such programs can be international, state, national, regional (for example, the development of free economic zones, republics, small ethnic groups of the North, etc.), intersectoral (affecting the interests of several sectors of the economy), sectoral and mixed.

As a rule, programs are formed, supported and coordinated at the upper levels of government: state (interstate), republican, regional, municipal, etc. Megaprojects have a number of distinguishing features:

    high cost (about $1 billion or more);

    capital intensity - the need for financial resources in such projects, as a rule, requires non-traditional (equity, mixed) forms of financing, usually by a consortium of firms;

    labor intensity - 2 or more million man-hours for design, 20 or more million man-hours for construction;

    duration of implementation: 5 years or more;

    the need for the participation of other countries;

    remoteness of sales areas, and, consequently, additional costs for infrastructure;

    influence on the social and economic environment of the region and even the country as a whole.

The most characteristic examples of industry megaprojects - projects carried out in the fuel and energy complex, and, in particular, in the oil and gas industry. Thus, the systems of main pipelines that connected the oil and gas regions of the Far North with the center of the country, the western borders and large industrial regions were built in stages ("threads") for 2-3 years each. At the same time, the duration of such a project was on average 5-7 years, and the cost was more than 10-15 billion rubles.

Peculiarities megaprojects require consideration of a number of factors, namely:

    distribution of project elements among different performers and the need to coordinate their activities;

    the need to analyze the socio-economic environment of the region, the country as a whole, and possibly a number of countries participating in the project;

    the need to single out as an independent phase of the development of the concept of the project;

    development and continuous updating of the project plan;

    the need to perform the planning phase at all levels of plans: from strategic to operational, taking into account the probabilistic nature and risk of the project;

    the need to monitor the project with constant updating (updating) of all elements of the project plan;

    taking into account the uniqueness (uniqueness) of the megaproject.

By complexity distinguish simple projects, organizationally complex, technically complex, resource-complex and complex projects.

Complex projects imply the presence of technical, organizational or resource tasks, the solution of which involves non-trivial approaches and increased costs for their solution. Naturally, in practice there are “beveled” versions of complex projects with the predominant influence of any of the listed types of complexity - for example, the use of non-traditional construction technologies, a significant number of project participants, complex financing schemes, etc. - all this is the manifestation of the complexity of projects (Fig. 1.4.1.).

Fig.1.4.1. Determining the complexity of projects

By quality executions distinguish defect-free projects, high-quality projects and standard projects.

Standard projects are carried out in compliance with all applicable norms and rules (construction, legal, etc.).

High Quality Projects carried out with above-standard requirements for the quality of work performed.

Zero-defect projects increased quality is used as the dominant factor. Usually cost defect-free projects is very high and is measured in hundreds of millions and even billions of dollars, for example, nuclear power plants.

The specificity of this type of projects determines the requirements for it:

    general project plan, which combines design and estimate and construction and installation works;

    combined (with start-up) construction schedule;

    early start-up of individual production lines, which allows you to check and ensure the quality of all project systems in advance;

    use of a specially developed program for analyzing problems associated with the project, which allows them to be detected and eliminated in a timely manner;

    application of the most flexible project management system, which allows timely identification and elimination of problems.

By level of participants distinguish between international and domestic projects. domestic projects , in turn, can be broken down by the level of project participants: state, territorial or local project.

International projects usually differ in considerable complexity and: cost. They are also distinguished by an important role in the economy and politics of the countries for which they are developed.

The specifics of such projects are as follows:

    equipment and materials for such projects are usually purchased on the world market. Hence the increased requirements for the organization that makes purchases for the project;

    the level of preparation of such projects is usually higher than similar “in-house” projects, given, in particular, differences in legal and regulatory frameworks;

    the duration of the preparatory period for such projects is usually longer due to the complexity of organization and management;

    information support for international projects is always more efficient (and, accordingly, expensive) than for “domestic” projects.

Such projects are usually based on complementary relationships and partners' capabilities. Often, to solve the problems of such projects, joint ventures are created that bring together two or more participants to achieve some commercial goals under certain joint control. At the same time, each partner contributes and participates in the profits in a certain way.

In relation to the client company can be divided into internal and external projects.

Internal projects include assignment to the personnel working at the enterprise, the work connected with projects. Here, customers and performers belong to the same organization, and all work related to the implementation of the project, including the definition of project quality standards, is carried out exclusively by the authorities that are part of this organization. This means that there is a high degree of flexibility in relation to the elements of the received order. However, in complex cases, this can lead to the fact that external implementation of projects is doomed to failure, since such flexibility cannot be achieved legally. The following internal projects are possible, for example:

Quality improvement projects;

Projects related to logistics;

Establishment of a high-performance factory;

Updating the organizational structure;

Product development;

Production planning;

Introduction of products to new markets;

Introduction (computer-aided design/computer-aided manufacturing);

Cut product development time in half.

A completely different kind of work outside the enterprise, which is characterized by external customer or performer. Partners here develop working conditions on the basis of a legally reliable contract, the fulfillment of which is mandatory. With insufficiently clear legal definitions, this can lead to misunderstandings regarding the arrangements for the work to be performed.

This can lead to claims for damages that will slow down the progress of the project or otherwise adversely affect ongoing work. The importance attached to claims for damages is reflected in the so-called claimmanagement, engaged in the professional reflection of claims for reimbursement of financial costs put forward by one of the partners in the project.

According to the innovativeness of the idea A distinction is made between traditional and non-traditional projects.

The division of projects into traditional and non-traditional largely depends on how well the project idea is already known or how innovative it is. As traditional, or standard, projects can be considered many activities from the field of architecture. The following should be mentioned, for example, road construction projects, as well as any others that are close to the concept of standard. All of these projects have the opportunity to build on existing technology and planning for results.

To unconventional, that is, non-standard projects can be classified as activities that represent cooperation between enterprises. In addition, extremely large projects at the time of their first test should be called unconventional. An example is the Manhattan Engineering District Project, under which the atomic bomb was created in the United States in 1941. Space projects can also be included here. Traditional projects also require traditional methods of implementation, while non-traditional projects often require non-standard approaches. In case of success of an unconventional project, it is transferred to the category of traditional and becomes standard.

If already tested projects are carried out in other areas, while showing a high degree of innovation for the implementing party, then for the implementer such projects should also be considered as non-standard. In these cases, projects very often take over the functions "problem solver" or "pioneer" which are being reintroduced, despite the fact that their technology is widely known. Trying to get information directly from the experience of previous projects or to take it from the relevant literature is practically useless, since it is a significant change in the structure that requires time and a long-term implementation strategy at the site of the project itself. Non-traditional projects can also be exotic, and this happens when project management tries to invade areas in which until now it was practically not suspected of its existence. Such is the use of project management in art.

listen to a poem

1

read a poem

The project was difficult. He didn't succeed.
And an architect with a tense forehead
Counted, smoked, sighed and swore,
Leaning over a recalcitrant blueprint.

But suddenly there was a knock on the door. And the neighbor
The student who lived behind the wall
Alley brighter than her jacket
She said quickly, "Hello." And she entered.

She sighed, sat down in a chair, was silent,
Then she said, squinting from the fire:
- You are older, you are more experienced than me ...
I'm asking for advice... I'm coming to you straight from the ball...

We had an evening of song and spring,
And two students in this motley blizzard,
Not knowing, of course, about each other,
They told me they were in love.

But there is no x-ray for someone else's soul,
I value your opinion very much.
Who am I to believe? Give me advice.
Now I will tell you about each.

But, apparently, he did not accept the conversation:
Threw away the compasses, knocked over the ink
And, looking at her naive lakes,
He said angrily: - Nonsense and nonsense!

We are not in the market and not in the store!
Do you need advice? Here's my advice to you:
To both tomorrow answer "no!"
Then, that there is no feeling here at all!

But when you love seriously,
Understand for yourself if the hour strikes.
The soul will answer any question.
And he will notice and understand everything!

Having finished the speech confidently and weightily,
He was quite surprised when
She jumped up suddenly and blurted out sharply:
Will everyone notice? Nonsense and nonsense!

Slightly taken aback by these words,
He turned to fight back
But I met not naive lakes,
And a couple of evil, honed blades.

Will he understand? Did you just say so?
What if he has bad blood?
And if where people have love,
Is it just blueprints, beams and details?

Will he understand everything? And if he spat
That in someone's heart is either fire or trembling?
And if he is not a man - a drawing ?!
Dry dot! Soulless integral?!

For a moment he froze, nailed to the floor,
Then, looking down, he flared up for some reason.
She, sobbing, turned abruptly
And, slamming the door, she ran out.

The spring wind burst into the window
Buzzed, circled, rustled papers ...
And at the table "soulless integral",
Closing his eyes, smiling happily...

In practice, we often encounter the fact that the project manager wants to speed up the development process - he is not satisfied with the speed of delivery of new functionality. As a rule, such clients need complex products such as a hospital management system, a stock exchange trading system, banking systems, remote banking.

In such cases, you can connect a new team of specialists, establish processes in an existing one, or combine both. Let's take a look at the pros and cons of each approach. Let's make a reservation right away that the article deals with the development of large and complex projects (more than 10,000 hours).

Why you can not immediately connect new specialists

Often the easiest and most obvious way to increase the speed of development is to add new specialists or a team. It seems to the project manager that in this way it is possible to speed up the speed of delivery of business-value to end users. In practice, this does not always work out, especially when the processes in the project require processing. Let's give one example from our practice.

It was necessary to connect two teams to an existing developing project. The project has been developed for more than 4 years and contains a large number of subsystems (more than 20) with their common mechanisms and services. A complete regression required the participation of 5-7 QA engineers and about 4-6 working days. When entering the project and reaching the required level of problem solving, the teams encountered the following difficulties:

  • One part of the source codes of the system was under the control of the svn version control system, the other git. SVN used to be very popular, but it is not suitable for large team projects and frequent parallel changes. Therefore, before switching to git, part of the time was lost on merging, editing conflicts and other operations related to branching in svn.
  • There was an outdated instruction for deploying the environment, so the teams collected all kinds of pitfalls of this system, and they were able to start the first tasks only after 3-4 days.
  • Key Analysts, technical specialists were busy preparing the release, so it was impossible to quickly receive clarifying information on new tasks. The task setting was very top-level. This significantly slowed down the implementation of tasks.
  • The task workflow was complex, with teams initially stumbling over how to deal with a task throughout its life cycle.
  • At first, the client wanted to manage only with the help of his QA engineers, but they did not manage to fully and in the right time to test the new functionality of the connected development teams, due to the heavy load. So I had to work with overtime.
  • Code review was carried out in accordance with the principles and criteria established on the project. The criteria were not documented. Therefore, additional time was spent on correcting the comments.
The result of the above nuances are:
  • additional time costs that could be spent on solving business problems
  • slowing down the development of the entire system
  • or overtime.
Let's see how we can avoid this situation.

Process analysis

Before connecting new specialists, it is worth understanding how the team works - it is necessary to find and eliminate bottlenecks. Usually the PM takes care of this issue, since he is in charge of the project, and he is the one who wants to spend less effort on tracking processes.

Eliminating bottlenecks moves the project forward. For example, the time for a new specialist or a team of specialists to enter the project is reduced, the team's involvement in the project increases, the cost of an hour decreases due to the correct implementation of tasks the first time. If all bottlenecks are removed, the project manager will get as fast an increase in development speed as current practices and the context of the project allow. In general, all of this is good.

The analysis of "bottlenecks" is possible from two sides: from the side of top management/expert and from the side of the team. Let's analyze each option separately.

Third party experts. AT this approach, the work process is analyzed either by an external team of external experts, or by the project manager together with the team leader. With the latter, it is not certain what will happen - it is important that they can discard all the nuances of the project, otherwise the analysis will be meaningless.

An important condition is the support of the project management and readiness for changes.

Accordingly, the expert dives into the project and analyzes in detail the documentation, source code, database structure, manufacturing process(from analysis to release). Step by step work looks like this:

  1. The entire chain of work on the project is considered from beginning to end. The time of each process is measured.
  2. A Gantt chart is being built. The expert looks at which processes are running in parallel, which one after another.
  3. The expert thinks how to make each process more productive and less costly. As a rule, an expert intuitively understands in which places the greatest difficulties arise and begins to unwind them for possible modernization.

The advantages of this approach:

  • The work is analyzed by a person who is not involved in the project. He has a clear view of the processes, therefore, he can find those problems that are not visible to team members.
  • An expert, as an authority, is able to convince the team to accept changes in processes. Teams that work on a project for a long time do not strive for innovation. For them, this is a big stress, as they will have to re-learn. Moreover, such a reaction goes even to those changes that will help to work more efficiently.
  • Rapid implementation of solutions - from 2-15 days. It all depends on the global nature of changes and bureaucracy within the organization.
  • The project team adopts the experience of third-party experts. In the future, this will help to independently configure processes.
Minuses:
  • Experts need to spend a lot of time to understand the intricacies. A team can study the history of a project in a day, while an expert needs at least a week and a half.
    What to do with it: set goals for the analysis together with the project manager / team leader. Give the expert all the "introductory" project, do not hide the details.

    If the client is so loyal that he is ready to iteratively analyze the project, you need to take the opportunity and agree to such conditions. Subsequently, it will be possible to adjust the direction of the analysis after each iteration, focusing only on what is needed.

  • Some team members may not agree with the decision. Subsequently, they can sabotage the project, poorly fulfill the agreements, and this has a bad effect on the overall mood of the team.

    What to do with it: to discuss each decision together with the team, and not just put them in front of the fact.

    Ideal: the expert analyzes the processes on his own, and then discusses them with key people on the project. If there are contradictions, they discuss them. This will accumulate a mass of people loyal to the changes who will influence other team members. It will be possible to convince the most ardent skeptics.

From the side of the team. This approach can be called a retrospective, which is an integral part of scrum. The process looks like this:
  • The whole project team gathers
  • One of the participants takes on the role of facilitator (scrum-master). He makes sure that the conversation goes in a constructive way.
  • The team discusses their approaches to work. All aspects are considered: processes, writing code, setting tasks, etc. Then the pros and cons are highlighted.
  • At the general vote, they agree on changes: the pluses need to be fixed, the minuses should be eliminated.
  • After 3-4 weeks, the process is repeated. The team looks at the results, and if everyone is satisfied with everything, then the work continues.

Important conditions:

  1. Management support for any changes and innovations.
  2. Team cohesion and focus on improvement.
If the company culture does not encourage initiative, innovation, then a retrospective is not The best way rework processes. Team members will not go beyond their "swamp".

Pros of the approach:

  • Involvement of each participant in the discussion of the project.
  • The ability to identify all the positive aspects of the project and, if necessary, form them into a certain sample (best practice).
  • Team members share experiences with each other.
  • Gradual problem solving, ranging from those that slow down the team and the project the most, to small improvements.
Minuses:
  • There is a risk that only minor problems will be solved, and all the key ones will remain untouched.
    What to do with it: PM, team leader and facilitator should influence the team with their opinion through authority. Their task is to draw attention to important issues at the stage of discussion.
  • For major changes that require a lot of labor, additional time is required to be agreed with the management. At the same time, it is not a fact that the management will agree with the innovations.
    What to do with it: defending your point of view in front of management is the only solution.
  • If there is no constant training in the team (conferences, exchange of experience, trainings), then most likely the solutions achieved will be outdated and not so effective.
    What to do with it: constantly share experiences. Participate in specialized conferences, meetups, internal trainings. If it's about big company, then good option there will be demo days. At such events, teams show what results they have achieved in their work.
In most cases, you can get by with the adaptation and improvement of the processes described above. Even if it is initially clear that it is really possible to complete the project on time only by attracting new specialists / teams, we strongly recommend that you try to follow the steps above.

If, after eliminating the "bottlenecks", the project manager believes that the capacity has not reached the desired level, then new teams can be connected.

Preparing infrastructure for new teams

At this stage, it is worth carrying out preparatory work that will reduce the duration and cost of development, and help save the nerve cells of developers. Consider what the conditions should be:
  1. Tasks for the new team should be detailed. Each of them can be started without waiting - there is no dependence on current or future tasks. The areas of responsibility of each team are outlined.
    If it won't, then most of the new team will be idle or engaged in secondary tasks that have the least impact on the value of the product.
  2. The architecture of the project is "correct", i.e. divided into modules, subsystems, common components.

    If it won't, then you will not be able to connect a new command. The developers will work under the current team lead, but a person can effectively manage no more than 7-9 people. The team lead will be torn, and some team members will wait idle until they are given tasks.

    If it is not possible to highlight separate sections of the project code, but you need to move forward, then you can try to get around this limitation. The project should be divided into several parts through refactoring.

    Another option - after immersing two or three people in the project, give the new team more and more large business functions for development. So the teams will develop the project in isolation from each other, and due to the new team leader (a person who has immersed himself in the subtleties) will reduce the load on the main team leader.

  3. The work processes in the project are described in detail. For example, there is a workflow of a task, the execution of a task in the version control system is shown (practice shows that not everyone has a standard GitFlow), interaction between project participants is described.
    If it won't, then chaos will be created on the project. In this case, the project manager will deal only with "manual", emergency management.
  4. Shared components and modules have up-to-date, understandable documentation. There are unit and integration tests of the main parts. There is a clear description of the architecture of the entire project, common mechanisms and instructions on how to use them. If the above does not yet exist, then you need to add such tasks to the pool of technical debt to correct the situation.

    If it won't, then the risk of doing double work increases. Poor quality or duplicated source code will be written. In the future, this will lead to more costly support for the project. As a rule, connecting a new team implies the possible connection of several more teams. Accordingly, the time costs will be scaled by a multiple of the number of commands.

  5. Fixed rules for writing code - convention code, scripts for updating the database structure - migrations, general principles mandatory code review. Despite the strong similarities, surely each project has its own characteristics.
    If it won't, then the complexity and cost of further project support will increase many times over.
The above conditions allow you to connect new teams most effectively. The time it takes for a team to enter a project is noticeably reduced. The same thing happens with the labor costs for the support and development of the project.

How we connected an additional team to the project

We had a case when a project needed to urgently speed up the development process. Until the delivery of the next major version in commercial operation 2-3 months left. The project itself was a complex system that was developed by one team for 3-4 years.
First of all, we plunged into the context of the project itself. The result is the following picture of the bottlenecks of the project:
  1. There is no single precise information about how the features should be implemented. The list of tasks, bugs, improvements is outdated.
  2. There is no continuous integration, and development is carried out in two branches.
  3. The product testing process is not debugged. For example, QA engineers can find bugs that have already been fixed, which leads to additional labor costs.
  4. The base of test cases was in its infancy. Individual QA engineers started writing cases for themselves. Because of this, no one could give a definite assessment of the quality of the product and possible risks when a new version is released.
  5. The process of work, from setting to approval by the customer, is not documented. It was impossible to predict the exact composition of the features of the release, as well as other less significant items.

After the analysis, we created a plan to eliminate the items described above. Of course, the team did not immediately agree to the changes, but with the support of the management and the development of clear deadlines, we were able to persuade each member of the team.

We coordinated our actions with the key persons of the project: PM, team leader, lead analyst. Together, these three people represent a single command center on the customer's side. They additionally promote solutions and control their implementation in practice. Without such a management team it is impossible to coordinate the actions of more than three teams.

As a result, the following processes were implemented/optimized:

  1. We built communications between all members of the product team - developers, analysts, testers.
  2. Documented critical and complex functions for more transparent testing, elimination of defects, resolution of disputes, and subsequent work planning.
  3. Optimized development processes. Adopted WorkFlow and GitFlow project. Helped set up Continuous Integration and run autotests in automatic mode.
  4. Doubled the speed of assembling test benches.
  5. Organized the testing process. Implemented regression testing at the end of each iteration.
  6. Implemented an iteration planning process.
  7. Conducted load testing.
Based on the results of the first iteration, we prepared the infrastructure for connecting a new team. In parallel with this, two of our developers joined the current team to dive into the codebase. Then one of them became the team leader of the new team. In the second iteration, the two teams achieved the following results:
  • Commissioning after 3 months.
  • Fixed 70% of bugs
  • Implemented four major features
  • Optimized and increased 8 times the loading speed of some pages
  • Obtained accurate information about the quality of the entire product
  • Built RoadMap iterations
I think that one of the most important achievements this project is the joy of the client. He transparently represented the state of the project at any time, and the obligations to the business were fulfilled in full and on time.

Conclusion

There are two main ways to increase the speed of project development: eliminate bottlenecks and increase production capacity. In the first case, you can get a 30-40% increase in development speed, in the second 70-80%. The extra commands don't provide double the performance boost as more time is spent interacting between multiple commands.

The key success factors for expanding development teams are:

  • preparatory work,
  • streamlined processes,
  • the leader or member of the project team, who would promote and control the activities of the teams,
  • single command center.
There are 3 teams currently working on the project that we described earlier (one old and two new). The number of tasks performed has increased in 1.9 times.

Project management in IT is a topic that has been well studied for a long time, but in the “piggy bank” of every IT manager, of course, there are many examples of non-standard situations that require a special approach.
At a specialized business seminar held this spring, “ Integrated management projects” Aleksey Malyshkin, head of the UniCredit Bank’s IT project control department, who has been involved in project activities since 1993, shared his knowledge and experience in this area. accounted for about 70% of the total.

According to one of the Standish Group's Chaos Reports cited by Mr. Malyshkin, only 16% of projects meet deadlines and budgets, with an average of 188% over budget and 222% over deadlines. And only in 61% of projects, the goals and content remain unchanged. It is from this that the importance that organizations should attach to the task of project management follows.
Main sources of difficulty

As Aleksey Malyshkin said, most of the project's problems begin at the stage of its initiation. Most often, project managers believe that once they have drawn up its plan (no matter by what means - Microsoft Project, Primavera or Spider), so they have everything, including deadlines, resources, etc. However, no one usually knows how this project will be carried out.

Thus, project management should not begin with planning, but with initiation, when goals must be set and agreed with all stakeholders and all information necessary for competent planning must be collected. At this stage, it is necessary to study and document all the requirements for the course and result of the project, and the manager should become the center of his competence. In addition, the project manager, together with the sponsor, should definitely prepare the project charter, discuss it with interested persons and approve. The sponsor must then sign this charter, which gives the necessary authority to the manager and contains the initial basic information about the project, which will help to draw up its detailed plan.

Another source of project implementation problems, Mr. Malyshkin believes, is the lack of information from the management of the organization on an ongoing basis about the state (“as is”) and forecast (“as it should be”). project activities. It leads to fragmentation project implementation, so that top management is not able to manage the development and achievement of the company's strategic goals, as well as directly influence the work of several project management centers (IT service, business units). The result is insufficient coordination of projects at the level of business areas of the enterprise, the implementation of “related” projects or work in different departments without proper interaction, their completion later than planned, exceeding the planned budget and inadequate quality of results. (How in practice, for example, an increase in the complexity of the project, can be seen in the figure.)

One of the manifestations of this problem, according to Alexei Malyshkin, is the “fights” of project managers for key employees and the staff overload associated with this. Therefore, whenever possible, third-party companies with experience in this field should be involved in the implementation of the project. But there is one difficulty here: by outsourcing the solution of a particular task, the customer actually transfers his information to a competitive environment. There is a possibility that the outsourcing company, having implemented this task, will transform it into a proposal, which will subsequently enter the market.

There is a simple approach to avoid such a situation, Mr. Malyshkin believes. Its essence lies in the fact that one should not give the task to the side in full - but not more than 20%. True, then there is a difficulty with distribution the remaining 80% between other companies and the coordination of their work. Accordingly, a project manager with communication skills will be required here. with outsourcing firms.

The next source of difficulties is the lack of a clear understanding among the project managers whether everything is provided for its implementation, how it should be done, who does what, how much time is needed to solve all the tasks, how much money is needed, in what form the result will be obtained. The lack of such information complicates the ongoing monitoring of projects and the determination of justified needs for their timely fulfillment, which inevitably entails permanent transfer agreed deadlines.

For specific project executors, such a lack of information means frequent changes in priorities, work on the principle of “plugging holes” and in the “execution of instructions” mode, sometimes even non-core in terms of basic knowledge. Employees are often poorly aware of how the result of their work is related to other work on the project, as a result, they cannot monitor their activities and determine their own reasonable needs for the timely completion of assigned tasks. In particular, they have problems with clarifying information from their colleagues at a particular moment and in a certain amount, with a detailed breakdown of the work process into component tasks over time, with finding out who accepts the results of the work performed.

In general, according to Alexei Malyshkin, the issue of communications should be given special attention. Few companies in the project charter spell out in detail on what issue where to apply, how long it will take and what should be the result of this communication. Unfortunately, this is often forgotten: as practice shows, 60% of all communications take place orally, and only 40% have a fixed document as output. Although if the result is nowhere not fixed, then after some time he is simply can be forgotten, and then there will be a misunderstanding between the executors of the project and its customers. This is how simple projects become complex, Mr. Malyshkin noted.
Solution - corporate project management system

Aleksey Malyshkin believes that the introduction of corporate system project management (CPMS) or its improvement. Due to the fact that project reporting is presented in the system online and can be compared with the established practice, heads of departments and companies as a whole can receive the necessary and reliable information about problems, risks, delays in terms, cost overruns, lack of resources to make decisions on progress of work. In addition, KSUP provides optimization and improvement of the quality of planning through the use of a library of templates and typical structures previously completed successful projects.

In particular, the company has the opportunity to get an up-to-date and reliable picture (for example, two to six months ahead) of the implementation of individual projects and their entire portfolio, as well as the loading of human and material resources by departments. Creation of a corporate knowledge base (documents) on project management for use best practices, corporate templates, libraries, project documents, task metrics in new (subsequent) projects will help reduce labor costs and resources for carrying out activities to prepare the procedure for their initiation and manage them in accordance with quality plans.

For project participants, CPMS means the planned nature of work in a transparent schedule with the necessary and agreed detail, the adequacy of knowledge and work performed. Thanks to the detailed process of achieving the goal and a clear understanding of the relationship between the result of their work and other employees, they can easily control the completion of their tasks by deadlines, notify colleagues in advance about interaction according to the planned tasks, conduct ongoing monitoring of their own activities and determine the resource requirements for the timely implementation of project tasks. The result is the ability to manage the quality of their work and reduce the complexity of its execution.

From an organizational point of view, the implementation of the updated project approach should begin with the creation of a project department (department) subordinate to the company's management, Mr. Malyshkin noted. In addition, during the first six to nine months, a number of tasks should be completed aimed at restructuring project management.

First of all, information transparency of project activities should be ensured. To this end, it is necessary to implement about 80% of the scope of work in a short time, and spend the remaining 20% ​​of the time on the remaining 20% ​​(according to the Pareto rule). At the same time, it should be assumed that all the strategic goals of existing projects are either achieved with minimal deviations in results and deadlines, or are not achieved at all due to the postponement, or are no longer strategic goals.

Particular care must be taken in accounting for the project resources of the partner companies of the organization, which should be considered as their own. And since partner companies usually have their own work plans, they must be coordinated with the project plan as a whole, taking into account all available competencies, communication methods, etc.

The result of solving these problems, according to Alexei Malyshkin, should be the ability to manage projects, taking into account their mutual influence both in the short and long term, as well as improving the effectiveness of project activities with the help of KPI indicators.
KPI system in project management

From the point of view of Mr. Malyshkin, the KPI system should be considered not as a control lever, but as an indicator of its effectiveness, which can be used for targeted planning and control in the organization. This is a way of mutual agreement and measurement of efficiency on the part of several categories of people, as well as a way to introduce some single system coordinates for different employees working in different parts of the process.

Controlling plays a key role in the KPI system. systematic monitoring of the implementation of tasks with simultaneous analysis and adjustment work. It is carried out on the basis of compliance with established standards and regulations, constant regulation and monitoring as the most important task of management.

Thanks to such control, management can obtain information about how stable this or that process is and how predictable its development is. And instrumental control also allows you to determine how the changes made have affected the improvement of the process by constantly monitoring its output over time

In general, controlling provides information, analytical and methodological support for all the main management functions, such as planning, accounting, control, analysis and decision making. Or you can consider that this is planning by goals for the predictive management of a single project or the entire company.