TYPO3 5.0 The Business Case

41
Gimme Five! The road to TYPO3 5.0 „Phoenix“ TYPO3 5.0 - The Business Case PRINCIPIA PHOENIX TYPO3 Conference 21.09.2007, Karlsruhe / Germany

description

n this presentation we looked at the architecture and explain it’s structure from a practical point of view: - what are the features and benefits of this design for developers, administrators and users - how to explain this architecture to prospective and existing clients - how it compares to previous TYPO3 versions and competing products. The presentation ends with a number of application scenarios.

Transcript of TYPO3 5.0 The Business Case

Page 1: TYPO3 5.0 The Business Case

Gimme Five!The road to TYPO3 5.0 „Phoenix“

TYPO3 5.0 - The Business CasePRINCIPIA PHOENIXTYPO3 Conference 21.09.2007, Karlsruhe / Germany

Page 2: TYPO3 5.0 The Business Case

Inspiring people toshare

Your itineraryThe way to here

Guiding principles

Example projects

Key success factors

Next steps

Page 3: TYPO3 5.0 The Business Case

Inspiring people toshare

the way to here

Page 4: TYPO3 5.0 The Business Case

Inspiring people toshare

What's wrong?TYPO3 4.x‘s architecture is reaching it‘s limit

Content management got more important and professional and with it the challenges have changed

Customers demand more for less (and rightly so)

Software around TYPO3 has moved on

TYPO3 needs to define the standard (like it did in the past) to maintain the lead

The Way To Here

Page 5: TYPO3 5.0 The Business Case

Gimme Five!The road to TYPO3 5.0 „Phoenix“

Born in the Ketchup Mountains

Plan

Momentum

Idea

The Way To Here

Page 6: TYPO3 5.0 The Business Case

Inspiring people toshare

Mission „Ease of Use“From the becoming of the TYPO3 Association to building of a brand, everything we have thought, said and done was meant to bring us here:

to the birth of a new era

to prove that Open Source projects can re-invent themselves

Welcome to Phoenix, the rebirth principle incarnate

The Way To Here

Page 7: TYPO3 5.0 The Business Case

Inspiring people toshare

guiding principles

Page 8: TYPO3 5.0 The Business Case

Inspiring people toshare

Why Principles Matterwith principles we are referring to the conventions and techniques used by TYPO3 5.0

we don‘t build buildings – design decisions can be changed most of the time

refactoring is already an important partof the daily 5.0 development

code changes, principles prevail

Guiding Principles

Page 9: TYPO3 5.0 The Business Case

Inspiring people toshare

TYPO3's Principles

meet real world needs

configuration over development

modularity through Extensions (TER)

... inspiring people to share.

Guiding Principles

Page 10: TYPO3 5.0 The Business Case

Inspiring people toshare

TYPO3's Principles

anticipate real world needs

convention over configuration

modularity everywhere

... inspiring people to share.

Guiding Principles

centralize concerns

efficient development

human readable code

Page 11: TYPO3 5.0 The Business Case

Inspiring people toshare

5 Development MethodsWork where it matters (DDD)

Work where it belongs to (DRY)

No chaos, ever (TDD)

No bad surprises (CI)

Innovation built-in (DI, AOP, GUI)

Guiding Principles

Domain Driven Design

Don't Repeat Yourself

Test Driven Development

ContinuousIntegration Dependency Injection

Aspect Orient ProgrammingGraphical User Interface

Page 12: TYPO3 5.0 The Business Case

Inspiring people toshare

Why focus on Domains?

More time in development is spent on infrastructure instead of user interfaces and business logic.

To hell with this!

Page 13: TYPO3 5.0 The Business Case

Inspiring people toshare

Domain Driven DesignA domain is the activity or business of the user

Domain Driven Design is about

focussing on the domain and domain logic

accurately mapping the domain concepts to software

forming a ubiquitous language among the project members

Page 14: TYPO3 5.0 The Business Case

Inspiring people toshare

Ubiquitous languageThe common vocabulary is an important prerequisitefor successful collaboration

Use the same words for discussion, modeling, developmentand documentation

Page 15: TYPO3 5.0 The Business Case

Inspiring people toshare

Phone Book Domain Model

Page 16: TYPO3 5.0 The Business Case

Inspiring people toshare

More phone book actionsshow phone book entries

check if user may delete phone book entry

export phone book entries

log phone book actions

Page 17: TYPO3 5.0 The Business Case

Inspiring people toshare

More phone book actionsshow phone book entries

check if user may delete phone book entry

export phone book entries

log phone book actions✘ not in the domain of a phone book

Page 18: TYPO3 5.0 The Business Case

Inspiring people toshare

Layered Architecture

Presentation

Domain

Data source

Application Logic (Service Layer)

Domain Model (Domain Layer)

View

Controller

Data Mapper (part of Content Repository)

Data Source Abstraction

Page 19: TYPO3 5.0 The Business Case

Inspiring people toshare

Layered Architecture

Presentation

Domain

Data source

Application Logic (Service Layer)

Domain Model (Domain Layer)

View

Controller

Data Mapper (part of Content Repository)

Data Source Abstraction

Page 20: TYPO3 5.0 The Business Case

Inspiring people toshare

Domain-Driven Design„Cancel the reservation for Mr. Sarkosh“

$person = $partyRepository->findByLastName(‘Sarkosh‘);$reservation = $reservationRepository->findByPerson($person);$reservation->cancel();

Page 21: TYPO3 5.0 The Business Case

Inspiring people toshare

Why Centralize Concerns ?TYPO3 4.x leaves critical concerns and tedious redundant functions to be re-done with every extension.

Burn baby, burn.

Page 22: TYPO3 5.0 The Business Case

Inspiring people toshare

Aspect Oriented ProgrammingAOP is a programming paradigm

complements OOP by separating concerns to improve modularization

OOP modularizes concerns: methods, classes, packages

AOP addresses cross-cutting concerns

Page 23: TYPO3 5.0 The Business Case

Inspiring people toshare

Cross-cutting concerns

Presentation

Domain

Data source

Page 24: TYPO3 5.0 The Business Case

Inspiring people toshare

Cross-cutting concerns

Presentation

Domain

Data source

The concerns

live here

Page 25: TYPO3 5.0 The Business Case

Inspiring people toshare

Cross-cutting concerns

Phone BookDomain Model

Security

Logging

Page 26: TYPO3 5.0 The Business Case

Inspiring people toshare

example projects

Page 27: TYPO3 5.0 The Business Case

Inspiring people toshare

Example ProjectsEvery piece of logic added to a software system makes the next relaunch inch a little closer and threatens the relationship between the service provider and the customer.

Make it feel the heat!

Page 28: TYPO3 5.0 The Business Case

Inspiring people toshare

Regular WebsiteProject phases today:

1. specification and design

2. production

3. adaption

4. support

=> the project‘s progress increasingly limits the adaptive range of the customer and the consultancy.

Example Projects

Functional Range

project progress in time

Page 29: TYPO3 5.0 The Business Case

Inspiring people toshare

Regular Website with 5.0project phases then:

1. specification and design

2. prototype implementation

3. adaption and iterative development

4. support and iterative development

=> „extreme programming“ becomes a business model for the interaction between customer and service provider fostering long-term relationships.

Example Projects

Functional Range

project progress in time

Page 30: TYPO3 5.0 The Business Case

Inspiring people toshare

TYPO3 as a frameworkproject phases now:

1. initial spec and design

2. development, beginning with the data model (!)

3. adaption

4. start all-over...

=> finite loop: changing business objectives collide with the initial data model and business logic

Example Projects

Amount of Code

project progress in time

Page 31: TYPO3 5.0 The Business Case

Inspiring people toshare

TYPO3 as a frameworkproject phases with 5.0:

1. initial spec and design

2. initial development of fundamentalbusiness logic domains

3. adaption-as-you-work „surgically“ addressing business logic largely unhindered by infrastructure.

=> infinite loop: changing business objectives address existing and create new domains of business logic representated in the system.

„high speed, low drag“- principle keeps the troops mobile.

Example Projects

Amount of Code

project progress in time

Page 32: TYPO3 5.0 The Business Case

Inspiring people toshare

key success factors

Page 33: TYPO3 5.0 The Business Case

Inspiring people toshare

Key Success FactorsTYPO3 5.0 consists of two parts:

a framework ready to empower business logic

a CMS setting the next standard

TYPO3 5.0 will complete the „ease of use“-mission, thus „enabling people to communicate“.

Made from the same steel, but sharper, lighter and quicker.

Key Success Factors

Page 34: TYPO3 5.0 The Business Case

Inspiring people toshare

3 Value-creating Principles

VIVID: Vitality in Domains (instead of dead db‘s)

SAFE: Centralized Intelligence Architecture

CLEAN: Look Ma, no chaos

Key Success Factors

Page 35: TYPO3 5.0 The Business Case

Inspiring people toshare

Use Phoenix...to empower a content-driven consultancy

to focus on designing and improving business logic

to create more flexible and therefore long-lasting software solutions to business problems

to empower executive strategy without restraining tactics

to thrive on long-term customer relationships

Key Success Factors

Page 36: TYPO3 5.0 The Business Case

Inspiring people toshare

Key Success Factorsbetter return on investment by making development more efficient

securing investments by extending the life-expectancy of systems

making content more versatile and portable through TYPO3 CR

enabling safer software through centralized security

fostering consistency and thereby vendor-independence... by principle

Page 37: TYPO3 5.0 The Business Case

Inspiring people toshare

next steps

Page 38: TYPO3 5.0 The Business Case

Inspiring people toshare

Mission ObjectivesPhase 0: „Preparation“ of Stakeholdersmuster ideas, ressources and people to plan and prepare the campaign.

Phase 1: „ Winning Hearts and Minds“ of Developerswinning those at the heart of TYPO3‘s success: developers everywhere.

Phase 2: „Making the Wave...“ for Consultanciesmake them work together and create a thriving feedback-production loop.

Phase 3: „and Surfing it“ alltogether!take an active role in the adaption of existing extensions' functions into 5.0-compatible extensions..

Proposal for market introduction

Page 39: TYPO3 5.0 The Business Case

Inspiring people toshare

Phases of FlightPhase 0: „Boarding“:join the Phoenix Marketing Team (to be founded today)

Phase 1: „System Check“early adaption of the 5.0 framework for research projects to learn and adapt the principles.

Phase 2: „Take-Off“push for the design and production of the CMS package based on lessons learned by the 4.x versions.

Phase 3: „ Landing“take an active role in the adaption of existing extensions' functions into 5.0-compatible extensions.

Proposal for market introduction

Page 40: TYPO3 5.0 The Business Case

Inspiring people toshare

What about the roadmap?

When will it be released?

Here is what our press rep has to say!

Page 41: TYPO3 5.0 The Business Case

Gimme Five!The road to TYPO3 5.0 „Phoenix“

burning to rock content management (again)