Fusion Tech - creating the best web solutions from your ideas powered by our experience

Development methodologies – read, go into and apply

The attention to the choice of software development methodology has increased recently: experience has shown that even small projects can hardly be successful without the right methodology, and today more and more developers, analysts and project managers are beginning to realize this. There are many methodologies, but everywhere we hear, read about Scrum, Kanban and Agile. And let's talk about their frames and the methods we hear less often, but they are also actively being introduced into projects and it is important to know about them. We’ve listed relevant methodologies, each of them may be useful to you. Let’s start:

Design thinking - a method of developing user-oriented products, services. The main object in this method is the user request. and only then the possibilities of technical implementation and economic opportunities. The same method in which creativity is superior to analytics.

Lean - another branch of a flexible methodology, which presumes the preservation of a high moral and functional state of developers. It’s expressed in:

  • Encouraging employees for successful work.
  • Changing current tasks only as necessary or at the request of the customer.
  • Strict implementation of the plan: everything that is beyond is considered a loss of time and resources.
  • Implementation of the general concept “Think broadly, do little, make mistakes quickly, learn fast.”

Six Sigma - a more structured version of Lean than Kanban. The ultimate goal of the project is the satisfied with the product quality customer and this quality can be achieved through a continuous process of improving all aspects of the project, based on a thorough analysis of the indicators. Sigma’s concept focuses on troubleshooting. For this there is a 5-step process, known as DMEDI:

  • The first stage is very similar to the early stages of other project management systems. It determines the content of the project, gathers information about the project premises, sets goals.
  • 6 Sigma is focused on the collection and analysis of quantitative data about the project. At this stage you can understand which indicators will determine the success of the project and what data needs to be collected and analyzed.
  • At the research stage, the project manager decides how the team can achieve its goals and fulfill all the requirements on time and within the budget. At this stage, it is very important for the project manager to think outside the box when solving problems.
  • Implementing plans and decisions made in previous steps. It is important to understand that at this stage a detailed plan is needed, which describes all the actions necessary to achieve the goals. Also, at this stage, project progress is measured.
  • A key step in the methodology. Its main objective is the long-term improvement of project implementation processes. This stage requires careful documentation of the lessons learned, analysis of the collected data and application of the knowledge gained both in projects and throughout the company as a whole.

Six Sigma is very similar to Kanban, only with established stages of the task implementation planning, setting goals and quality testing.

PDCA - Deming cycle - Edward Deming laid down two options for the management cycle: PDCA (plan / Plan - do / Do - check / Check - correct / Act) and PDSA (plan / Plan - do / Do - study / Study - correct / Act). Since the cycle has no end PDCA actions must be repeated again and again in order to ensure continuous improvement of the process.

Crystal Clear - a methodology created for small teams of 6-10 employees. It also supports the principles of agile development, but has a little more specificity. The main idea, which is contained in the name, is that each team is a set of people with different levels of knowledge, different skills and experience.

That is why there is no universal approach for software development, it should be determined in the process of communication within the group. Roles, tools, standards are also assigned there. Then the group is taken as a unit and the same issues are resolved one level higher until the hierarchy reaches the customer.

DSDM (Dynamic Systems Development Model) - the dynamic systems development model was developed in the UK in the mid-1990s and is an evolutionary development of rapid application development (RAD). The basic idea is standard: when planning it is impossible to understand all the intricacies of development at the very beginning, so the whole process is a research work.

DSDM also has a division into teams, in each of which there is an authorized person for making strategic decisions. All interested parties can participate in the process: users, developers, customers, managers. Testing is carried out throughout the life cycle.

FDD (Feature Driven Development) - a process for scalability and repeatability that encourages creativity and innovation. Here are its basic principles:

  • The development of each major project should be systematic.
  • The processes should be simple and elaborate.
  • The value and consistency of the process should be clear to every member of the team.

Short iterative development cycles are preferred. This reduces the number of errors and allows you to quickly increase functionality.

FDD regulates the time that should be spent on each of the processes. Organizational activities in the cycle should occupy no more than 23–25%, while 75–77% of the time should be spent on the direct development, assembly, and testing of functions.

JAD (Joint Application Development) - a methodology aimed at maximizing employment in end-user development. This happens through meetings and joint workshops. JAD was invented in the 1970s by IBM employees and is aimed at the business as a whole. However, over time, this concept began to be successfully applied to software development.

Unlike the Waterfall approach, JAD leads to reduced development time, greater customer satisfaction and cost savings in market research. On the other hand, this requires a large client sample and the need for developers to work not with the strict requirements of the TOR, but with a constantly changing opinion.

XP - Extreme programming - the ability to conduct development in an ever-changing environment. Here are a few signs:

  • A game of planning - at the beginning of the project there is only an approximate plan, after each iteration its clarity increases.
  • High frequency of releases - the new version of the product has minor changes compared to the previous one, but the release time is minimal.
  • Contact with the client - prompt response to comments and suggestions is necessary to meet the requirements of the final audience.
  • Refactoring. Improving code quality without compromising functionality.
  • Code standard. Either general rules are applied, or differences in design are not subjected to discussion or criticism.
  • Collective responsibility. Despite the fact that each member of the team performs his own site of work, all the team is responsible for the code as a whole.
Got a project in mind?
processing of personal data
You must accept agreement
You must accept captcha
Your letter has been sent