Игорь Бондаренко (Neklo) - Организация процесса...

Preview:

Citation preview

Igor Bondarenko

Process organization of the Magento modules development.

About Myself

• 10 years in IT• 2 years in Magento

Development• Head of Business

Development in Neklo

What would I talking about?

• How to choose an idea• Selecting a tools• How to prepare a team• Development processes• Advises to developers• QA and Testing• How to release an extension

Assign choosing of ideas to the business development team

After choosing the idea, calculate the economic feasibility of extension development

Do NOT delegate choosing of the idea to developer

The idea is chosen, it's time to start developing. But before you start designing, you must define the tools

Self-developed tools

• Mageinstall• Cloud VM Server• “Custom Store”• QA Test Scripts

Available for all tools

• VCS• Developer Toolbar• Log Popup• Turn Developer Mode On• Setup Issue Tracker

Formation of the team. Use narrowly skilled professionals.

Working with a team of 2 or more people

• Select Team lead• Split Magento Versions• Tasks decomposition• Assign tasks to skilled person

Team of one developer

• Start working with minor Magento versions• Develop extension sequentially:

• Backend• Admin part• Frontend

How to provide compatibility with third-party extensions?

What should developers team do?

• Use integration through events• Do not use Rewrite• Use frontend integration life

hacks:• Layout substitution• JS Injection

What should QA team do?

• Test on “working” Magento• Test compatibility with top

rated extensions• Do NOT test compatibility with

all of extensions

• Code Review• Use Code Style• Pair Programming

Testing of extensions

Key points of testing process

• Stop development until the end of first QA iteration

• Switch project during first iteration of testing

• Starting from the second iteration of testing start to work in parallel with the QA team

Test Automation

• Tests should be written by QA Team

• Don’t use complex frameworks:

• Short-term activity• Skilled QA• Negative ROI

What to use for test automation?

Use Selenium IDE or SpiderTest:•Powerful test recorder•Testers should not have programming skills•Developers could use any programming language•Lightweight scripts•Easy to attach scripts to defects•Free tools

Ready for release?But don’t you forgot nothing?

Forgot to test readiness for loading in Magento Connect

• Build a package• First load and wait for

approve, then promote• Test installation file per

file

Key success factors

• Perform business analysis• Using high-quality and thoughtful

tools• Using narrowly skilled

professionals• Don’t forgot testing

Thank you for attention!

Skype: igor.bondarenko1E-mail: igor.bondarenko@neklo.com