Book Image

PHP Team Development

By : Samisa Abeysinghe
Book Image

PHP Team Development

By: Samisa Abeysinghe

Overview of this book

Given the nature of the business environment today, organizations that want to build value-added enterprise PHP applications need a team of PHP people rather than an individual. You've got a team! What next? Customizing such applications to meet with organizational objectives and maintaining these applications over time can be quite a tedious task for your team with so many people involved. In this book, you will explore how you can break up complex PHP projects into simple sub-parts that multiple team members can work on. The book highlights the use of the MVC pattern for separating concerns in the application and agile principles to deliver code that works. You will learn to blend the simplicity and power of PHP with evolving software engineering principles and tools to easily develop code that is easy to maintain. With this book in hand, you know how to avoid getting muddled up while working in a team and achieve success on your project with effective team work. Organizations choose PHP as the preferred language for complex web applications because it is battle tested, hardened over time, and proven to work. Thus, chances of the software project you are involved with being PHP-based, are very high. Soon, you will need to explore the technical as well as non-technical aspects that are important to achieve success in PHP team projects of this kind. This book starts by explaining the need for teams working on complex software projects. You learn how you can divide the complexity of PHP projects with the help of the MVC pattern and the use of frameworks. It then discusses the need for a process and how you can choose the right process. It teaches you how to use agile principles to deliver working software for customers, and how to make sure that the team collaborates effectively. Towards the end, the book emphasizes continuous improvement in process and product as well as the people involved. You learn how to ensure that your team is open to change and user feedback, and has the right mindset about quality and other project-related aspects.
Table of Contents (13 chapters)

Summary


In this chapter, we discussed why we need teams to work on software projects, and in particular, on PHP software projects. Along with the evolving real world requirements, the PHP software too needs to evolve, thus they become complex over time.

Since PHP is being used for complex enterprise systems nowadays, we need help from the software engineering principles to deal with the PHP projects. However, given the power and simplicity of PHP, we can choose the rigour process to suite our needs.

Separation of concerns helps us deal with complex projects, dividing the problem into smaller, more manageable parts. Dividing the system based on cross-cutting concerns help teams to deal with complexities easier.

Continuous integration, use of patterns and using the right process, help achieve team success with any software project. For PHP, MVC is the most used pattern. Given the power and simplicity of the PHP programming language, we can leverage the agile process values for PHP projects.

Source control tools, issue tracking tools, continuous builds, and tools that help with proper team communication such as Wikis, forums, mailing lists, and instant messaging chat rooms can be used to improve your team PHP project success.

In the next chapter, we will explore the MVC pattern in more detail and discuss how we can ensure a team can get involved with the MVC pattern in a PHP software project.