Pragmatic Refactoring with Domain-Driven Design

Code: Craft-refactor
Category: Patterns & Craftsmanship
Format: 50% lecture / 50% workshop
Duration: 3 days
Target audience: developers
Enrollment: Groups, companies
Venue: Client's office.

Refactorings like “Extract Method”, “Replace If with Guardian” or “Extract Object” improve the readability, but don’t rescue projects, where the model is fundamentally broken.

How to perform a refactor which looks like replacing an airplane’s engine? Of course, while flying. This workshop shows a handful of categorized typical problems gathered thanks to years of dealing with software on production, doing architectural audits and consulting in plenty of domains.

This is not yet another workshop where we go through a catalogue of typical code smells and ways of getting rid of those. During the coding exercises, we will analyze architectural problems which cannot be solved using standard refactoring techniques. We will take into account the fact that our software cannot afford a 3-month-long “rewriting” pause. Attendees will see a map that helps them navigate and solve architecture problems. Each problems is solved pragmatically, backed up with good engineering practices, Domain-Driven Design and rollback possibility.

We cover ways of communicating the technical debts to the business, soft skills that help us communicate the need of refactoring to people who we need to convince. We will talk about how to collect important business metrics which build a common understanding between IT and business stakeholders.

After the workshop, you will be ready to identify and repair architectural flaws and code problems using Domain-Driven Design, analyzing the history of your project, analyzing the business metrics, code stability, Test-Driven Development, object-oriented and functional programming, modularization and many more.

This workshop can last from 3 up to 5 days. The 4th and the 5th day can be dedicated to a fresh product, where we start from scratch, model and implement a green-field project, using the knowledge gathered within the first 3 days in the legacy context.

Alternatively, this can be applied as a series of consulting meetings, using your codebase.

Training Program

The content of our program can be customised during pre-training analysis.

  1. Common problems
  2. Proven Refactoring Path
  3. Continuous refactoring
  4. Refactoring for the sake of a new function
  5. Deployment
  6. Use of Domain-Driven Design


Download PDF

Trainers

Meet the experts who will conduct your training.

Contact us for a free consultation.

Firstname and lastname:
Company:
E-mail:
Phone:
Subject:
Message:

If you prefer direct contact then you can always call.

Iwona Sobótka

Training coordinator


I agree to the processing of my personal data in accordance with the Law on the Protection of Personal Data in connection with sending a request via the contact form.

Providing the data is voluntary but necessary to process the query. I have been informed that I have the right to access my data, the possibility of correcting them, demanding stopping their processing.

The administrator of personal data is Bottega IT Minds, ul. Jana Sawy 2, 20-632 Lublin, Poland.


The information clausule