23
DDD Part 2 Modelling Qiscus

Ddd part 2 modelling qiscus

Embed Size (px)

Citation preview

Page 1: Ddd part 2   modelling qiscus

DDD Part 2

Modelling Qiscus

Page 2: Ddd part 2   modelling qiscus

Me

twitter : https://twitter.com/_hiraq

facebook: https://www.facebook.com/hiraq

linkedin: http://id.linkedin.com/in/hiraq

Backend Dev @Qiscus

Page 3: Ddd part 2   modelling qiscus

Agenda

1. Why I Learn DDD

2. How i learn (googling) DDD ~ References

3. How i implement DDD

4. Modelling Qiscus

5. Quotes

~ end

Page 4: Ddd part 2   modelling qiscus

Disclaimer

1. DDD ~ No stop learning

2. DDD ~ Many ways

3. @Angga bro ~ Dosen Pembimbing

Page 5: Ddd part 2   modelling qiscus

1. Why I Learn DDD

What is Geek?

“Understand, creates & fixes really cool stuff”

~ GeekHierarchy

Page 6: Ddd part 2   modelling qiscus

Understand ?

“serious..”

vs

“sirius..”

Page 7: Ddd part 2   modelling qiscus

GeekHierarchy

Understand -> creates -> fixes

Page 8: Ddd part 2   modelling qiscus

DDD is about...

“how do we know and understand about

domain model…”

Page 9: Ddd part 2   modelling qiscus

Why I learn DDD ?

“to understand”

~ ASAP (As Simple As Possible)

Page 10: Ddd part 2   modelling qiscus

How I Learn (Googling) DDD

References:

1. Microsoft (MSDN)

2. http://culttt.com/

3. Github

4. @Angga

Page 11: Ddd part 2   modelling qiscus

How I Implement DDD

CORE INFRA APP

Page 12: Ddd part 2   modelling qiscus

Core

Describe domain & modelling

modelling rules:

1. No framework

2. No dependency library

3. PO*O (Plain Object * Object)

Page 13: Ddd part 2   modelling qiscus

Infra

Implement domain modelling with real solution /

library

Page 14: Ddd part 2   modelling qiscus

App

Include & manage core & infra inside

framework (or not framework)

Page 15: Ddd part 2   modelling qiscus

Benefits?

FREE TO TEST!

Page 16: Ddd part 2   modelling qiscus

Modelling Qiscus

READY?

Page 17: Ddd part 2   modelling qiscus

BeforeStart

“What you see is not what you get”https://github.com/hiraq/qiscus-model

Page 18: Ddd part 2   modelling qiscus

Describe Domain

Qiscus adalah aplikasi Entreprise Chat Room based. Ketika pertama kali login, per User akan

diredirect ke Dashboard. Di dalam Dashboard ini User bisa membuat Room mereka sendiri. Setiap

Room, bisa memiliki beberapa Topic.

Setiap Room memiliki Topic. Setiap Topic bisa banyak Message. Ketika seorang User mempublish

Message, maka seluruh User yang subscribe dengan Topic itu akan mendapatkan Notifikasi.

Page 19: Ddd part 2   modelling qiscus

Activity

Aktifitas User :

- Setelah login, User akan berada di Dashboard.

- Setelah berada dalam Dashboard, User bisa memilih Room.

- Setelah memilih Room, User bisa menambah Topic

- Setelah memiilh Topic, User bisa mengiirmkan Message

Aktifitas User dalam Room adalah :

- menambah Topic

Aktifitas User dalam Topic adalah :

- Chat. Mempublish message dalam setiap Topic di dalam Room

- Delete message

Page 20: Ddd part 2   modelling qiscus

Extract!!

Page 21: Ddd part 2   modelling qiscus

Show Me The Codes!!

Page 22: Ddd part 2   modelling qiscus

Quotes

“PHP aja bisa…” ~ @Angga

Page 23: Ddd part 2   modelling qiscus

~ end ~