13.09.2016 Views

PHP and MySQL Web Development 4th Ed-tqw-_darksiderg

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

536 Chapter 25 Using <strong>PHP</strong> <strong>and</strong> <strong>MySQL</strong> for Large Projects<br />

Applying Software Engineering to <strong>Web</strong><br />

<strong>Development</strong><br />

As you probably already know, software engineering is the application of a systematic,<br />

quantifiable approach to software development.That is, it is the application of engineering<br />

principles to software development.<br />

Software engineering is also an approach that is noticeably lacking in many web projects<br />

for two main reasons.The first reason is that web development is often managed in<br />

the same way as the development of written reports. It is an exercise in document structure,<br />

graphic design, <strong>and</strong> production.This is a document-oriented paradigm.This<br />

approach is all well <strong>and</strong> good for static sites of small to medium size, but as the amount<br />

of dynamic content in websites is increased to the level in which the websites offer services<br />

rather than documents, this paradigm no longer fits. Many people do not think to<br />

use software engineering practices for a web project at all.<br />

The second reason software engineering practices are not used is that web application<br />

development is different from normal application development in many ways.<br />

Developers deal with much shorter lead times, a constant pressure to have the site built<br />

now. Software engineering is all about performing tasks in an orderly, planned manner<br />

<strong>and</strong> spending time on planning.With web projects, often the perception is that you don’t<br />

have the time to plan.<br />

When you fail to plan web projects, you end up with the same problems you do<br />

when you fail to plan any software project: buggy applications, missed deadlines, <strong>and</strong><br />

unreadable code.<br />

The trick, then, is in finding the parts of software engineering that work in this new<br />

discipline of web application development <strong>and</strong> discarding the parts that don’t.<br />

Planning <strong>and</strong> Running a <strong>Web</strong> Application<br />

Project<br />

There is no best methodology or project life cycle for web projects.There are, however,<br />

a number of things you should consider doing for your project.We list them here <strong>and</strong><br />

discuss some of them in more detail in the following sections.These considerations are<br />

in a specific order, but you don’t have to follow this order if it doesn’t suit your project.<br />

The emphasis here is on being aware of the issues <strong>and</strong> choosing techniques that will<br />

work for you.<br />

n<br />

n<br />

Before you begin, think about what you are trying to build.Think about the goal.<br />

Think about who is going to use your web application—that is, your targeted<br />

audience. Many technically perfect web projects fail because nobody checked<br />

whether users were interested in such an application.<br />

Try to break down your application into components.What parts or process steps<br />

does your application have? How will each of those components work? How will<br />

they fit together? Drawing up scenarios, storyboards, or even use cases can be useful<br />

for figuring out this step.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!