1. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 1 Boost your productivity for free Maciej Majchrzak
/ @majchrzak_m
2. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 2 Open source in AEM Adobe Experience Manager:
Apache Sling Apache Felix Apache Jackrabbit Oak ... Community
?
3. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 3 The Project Chocolate Company Marketing
Platform
4. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 4 Project Scope Multi-channel, multi-lingual
website built on Adobe Experience Manager Integration with internal
news platform (dynamic content) Non-functional testing Platform
set-up Deployment Maintenance
5. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 5 Meet your team!
6. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 6 Development Challenge #1 Team: Getting up to
speed Upskilling inexperienced
7. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 7 Development ACS AEM Samples
http://adobe-consulting-services.github.io/acs-aem-samples/
8. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 8 ACS AEM Samples Your benefits: Easily accessible
training Code references and guidelines Suitable for beginners and
more advanced
9. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 9 Development Challenge #2 Code: Organization /
structure Separation of concerns Reusablility Simplicity
Readability + testability = maintainability
10. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 10 Development Framework Neba http://neba.io Slice
http://cognifide.github.io/slice
11. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 11 Neba Your benefits: Power of Spring Spring MVC
apps with ease Integrations Dependency injection Advanced mapping
of Sling resources into Java objects Easily testable and clean
code
12. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 12 Neba
13. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 13 Slice Your benefits: Lightweight and powerful
dependency injection Easily testable and maintainable code Improved
code design and re-use Advanced mapping of Sling resources into
Java objects
14. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 14 Slice
15. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 15 Development Challenge #3 Dynamic content: How to
include dynamic content (component) on a page? How to cache pages
with dynamic content?
16. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 16 Development Dynamic Content Sling Dynamic
Include http://cognifide.github.io/sling-dynamic-include
17. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 17 Sling Dynamic Include Your benefits: Dont bother
dynamic components anymore Significantly reduced implementation
effort Very simple configuration Fast and efficient solution for
pages with dynamic fragments
18. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 18 Dispatcher optimization Also check: Dispatcher
Flush Rules
http://adobe-consulting-services.github.io/acs-aem-commons/features/dispatcher-flush-rules.html
19. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 19 Development Challenge #4 Quality: How we are
sure that it does what it should? How to run tests automatically?
How to run test often?
20. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 20 Development Functional Testing Prosper
https://github.com/Citytechinc/prosper
21. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 21 Prosper Your benefits: Lightweight integration
tests increased value Quick execution Can be run often Powerful yet
easy to write and read BDD-style Simplified maintenance of tests
Combine with Jacoco/Cobertura for test coverage
22. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 22 Prosper
23. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 23 Go Live?
24. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 24 Go Live Challenge #5 AEM setup: User, groups and
permissions Authorable error pages Domains and content mappings
Sitemaps ...
25. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 25 Go Live User, Groups & Permissions ACTool
http://github.com/Netcentric/accesscontroltool
26. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 26 ACTool Your benefits: No need for clicking and
manual ACL application You can share them across multiple
environments with ease You can version config files in source
repository
27. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 27 Other tools Authorable error pages: Error Page
Handler
http://adobe-consulting-services.github.io/acs-aem-commons/features/errorpagehandler.html
Sitemaps: Simple Sitemap generator
http://adobe-consulting-services.github.io/acs-aem-commons/features/simple-sitemap.html
Domains and content mappings: Carty
http://cognifide.github.io/carty
28. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 28 Go Live Challenge #6 Security & Performance
(load) tests How are we sure that our AEM instance is secure? How
do we know we can handle assumed traffic?
29. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 29 Go Live Security Testing SecureCQ
https://github.com/Cognifide/SecureCQ
30. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 30 SecureCQ Your benefits: Security audit before
go-live Easy to extend by project-specific tests Easy to run
https://github.com/adobe-marketing-cloud/
cq-java-securecq-maven-plugin
31. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 31 Go Live Performance Testing No AEM-specific
tools Other tools: JMeter (http://jmeter.apache.org/) The Grinder
(http://grinder.sourceforge.net/)
32. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 32 Go Live!
33. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 33 Maintenance Challenge #7 Functional Changes:
Content manipulation after changing application behaviour
34. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 34 Maintenance Content Manipulation AEM Groovy
Console https://github.com/Citytechinc/cq-groovy-console
35. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 35 AEM Groovy Console Your benefits: Run arbitrary
Groovy code on AEM instance: Migrate content with ease Extensible
Debug with ease
36. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 36 Maintenance Challenge #8 Debugging How to
reproduce a bug safely? Moving content from one environment to
another
37. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 37 Maintenance Content Sync Grabbit
https://github.com/TWCable/grabbit
38. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 38 Grabbit Your benefits: Synchronize large
repositories efficiently No need to worry about storage space and
network latency Frequent content synchronization (live
staging)
39. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 39 AEM Open Source World
40. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 40 Contribute Its Your Turn!
41. The future of digital marketing. London, Pozna, New York.
02/07/2015 Page 41 Question? Answer!