473,391 Members | 1,396 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,391 software developers and data experts.

php software design process

Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI

Jul 17 '05 #1
14 2008

"pdt256" <ja***@shsu.edu> wrote in message news:11*********************@z14g2000cwz.googlegro ups.com...
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI


I just do it all myself - but even when you do it all yourself, good documentation is the key to success.

Sometimes I write the documentation first and that is actually really useful, because in that way you structure you creative process
a little...

- Nicolaas
Jul 17 '05 #2
WindAndWaves wrote:
"pdt256" <ja***@shsu.edu> wrote in message news:11*********************@z14g2000cwz.googlegro ups.com...
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI

I just do it all myself - but even when you do it all yourself, good documentation is the key to success.

Sometimes I write the documentation first and that is actually really useful, because in that way you structure you creative process
a little...

- Nicolaas


Schllossnagle's
"Advanced PHP Programming"
Talks all the issues you mentioned. I found it immensly helpful.

http://www.amazon.com/exec/obidos/tg...963222-5980167

--

Junxter Ad Network
http://www.junxter.com
Jul 17 '05 #3
Following on from pdt256's message. . .
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...


Good. My rates are extremely reasonable. I like clients who know (sort
of) what they want.

1. Identify the technologies and sub-technologies you intend using.
2. Investigate the reliability/limitations/complexity/stability of items
in 1.
3. Know where you'll get technical expertise on items in 1.

At this point you can do some of the following:
A. Prototype and proof-of-concept
B. Recruit or develop the necessary know-how
C. Design and refine
D. Cost
E. Build a final management plan
F. Specify
G. Outsource all or parts
H. Work out why it came in 3-times over budget and a year late[1]
Of direct relevance to comp.lang.php : Do not underestimate the critical
importance and effect of item 1. Part of this is the software
_architecture_ and style you'll be using. eg Is every screen the same
but with parameters...or a one-off...or something in between.
Home-built modules or 3rd-party components; simple belt-n-braces or
sophisticated multi-layer systems ... or something in between.

Building architects have a seven year course to qualify - Web builders
read the jacket of a book or two and spend the rest of their time
thinking of excuses. There's only a few people with the breadth and
depth of vision to do 1. and the skill to successfully apply new
solutions with only minor hiccups.
[1] 20 years ago the statistics were 3% of real time projects went as
planned and 50% were abandoned.

--
PETER FOX Not the same since the adhesive company came unstuck
pe******@eminent.demon.co.uk.not.this.bit.no.html
2 Tees Close, Witham, Essex.
Gravity beer in Essex <http://www.eminent.demon.co.uk>
Jul 17 '05 #4

"Peter Fox" <pe******@eminent.demon.co.uk.not.this.bit.no.html > wrote in
message news:v9**************@eminent.demon.co.uk...
Following on from pdt256's message. . .
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...


Good. My rates are extremely reasonable. I like clients who know (sort
of) what they want.

1. Identify the technologies and sub-technologies you intend using.
2. Investigate the reliability/limitations/complexity/stability of items
in 1.
3. Know where you'll get technical expertise on items in 1.

At this point you can do some of the following:
A. Prototype and proof-of-concept
B. Recruit or develop the necessary know-how
C. Design and refine
D. Cost
E. Build a final management plan
F. Specify
G. Outsource all or parts
H. Work out why it came in 3-times over budget and a year late[1]
Of direct relevance to comp.lang.php : Do not underestimate the critical
importance and effect of item 1. Part of this is the software
_architecture_ and style you'll be using. eg Is every screen the same
but with parameters...or a one-off...or something in between.
Home-built modules or 3rd-party components; simple belt-n-braces or
sophisticated multi-layer systems ... or something in between.

Building architects have a seven year course to qualify - Web builders
read the jacket of a book or two and spend the rest of their time
thinking of excuses. There's only a few people with the breadth and
depth of vision to do 1. and the skill to successfully apply new
solutions with only minor hiccups.
[1] 20 years ago the statistics were 3% of real time projects went as
planned and 50% were abandoned.


Should the first step be determining what your requirements are?
Jul 17 '05 #5
pdt256 wrote:
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI


From your questions, I think you are looking for a development
methodology to incorporate into your work environment. There are many
schools of thought on this subject matter. I would recommend that you
look into the Rational Unified Process (RUP) or any of the Agile
Methodologies like Extreme Programming (XP), SCRUM, etc. Look for books
published by Martin Fowler, Alistair Cockburn, and Craig Larman. I
won't name a specific book since you may want to explore this avenue
with an unbiased perspective.

Best regards,
Amir Khawaja.

--
Rules are written for those who lack the ability to truly reason,
But for those who can, the rules become nothing more than guidelines,
And live their lives governed not by rules but by reason.

- James McGuigan
Jul 17 '05 #6
pdt256 wrote:
Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI


Hi Jamie,

I know you aren't "...looking for arguments on the best cvs or ide..."
however if you haven't tried Visual SlickEdit (slickedit.com) I would
encourage you to do so. I believe they have a 30-day free trial and the
product is available on many different platforms.

I personally find it immensely valuable because I do equal amounts of
work in C++, PHP and Java. It's very, very nice to be able to use the
same development tool regardless of what language I'm using.

--
Benny
Jul 17 '05 #7
pdt256 wrote:
Would anyone out there like to explain their web based software design
process? I'm analyzing our current methods vs. other more productive
ways to handle project management, source code versioning, sftp, ssh,
debugging, testing, customer - programmer relationship (ex: new
features/requests), and development ide. I'm looking for more efficient
ways to produce reliable code, version it, test it, track bugs, and
implement. Things I'm looking for are the actual individual processes
it takes to get this job done.

Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI


There's a very general seven-stage process that I learnt a couple of
years ago; Analysis, Design, Development, Testing, Documentation,
Installation, Evaluation. Also look for things on the Systems
Development Life Cycle if you want a broader view.

Tom
Jul 17 '05 #8
Following on from Chung Leong's message. . .

Should the first step be determining what your requirements are?

You can if you like. But an overall solution will involve exploring
what can be done for the price / in the time / with the technology / as
part of a long term strategy.

Either the users have a very vague idea of what they want...
.... or a definite but misguided idea ...
.... or an impressive detailed specification which misses out fundamental
steps or makes unnecessary assumptions and insists on a rigidity of
solution which is unnecessary / expensive / broken etc.

So there is an iterative process from problem, investigation, then
through design to solution. This is what we engineers call
'engineering'.

Example:
Client : "We want you to build us a web site"
Builder : "Certainly sir. Here you are a snip at 5000.
Client : "Its not what we expected"
Builder : "Well what did you expect?"
Client : "Like our brochure"
Builder : "It's a different audience and different medium - of course it
will be different."
Client : "Oh. And we want our customers to order on-line."
Builder : "But you haven't got a back-end system for processing on-line
orders. And anyway - you don't want them to _order_ on-line you want
your sales people to get contact details on line to do a real selling
job."
Client : "Our competitors do it like that"
Builder : "So what? Business logic means you don't want to spend more
for less return. Perhaps they don't understand how to use the
technology."
Client : "This is more difficult than I thought."
Builder : "Why don't you ask me over a glass of beer what I think is
possible, practical and good for your business and the way you run it.
I will educate you on options if you tell me a bit more about your
business."
--
PETER FOX Not the same since the porcelain business went down the pan
pe******@eminent.demon.co.uk.not.this.bit.no.html
2 Tees Close, Witham, Essex.
Gravity beer in Essex <http://www.eminent.demon.co.uk>
Jul 17 '05 #9

"Peter Fox" <pe******@eminent.demon.co.uk.not.this.bit.no.html > wrote in
message news:Df**************@eminent.demon.co.uk...
Following on from Chung Leong's message. . .

Should the first step be determining what your requirements are?

You can if you like. But an overall solution will involve exploring
what can be done for the price / in the time / with the technology / as
part of a long term strategy.


Well, that's putting the cart in front of the donkey. You shouldn't even be
talking about solutions until you know precisely what the problem is.
Jul 17 '05 #10

"Benny Hill" <be***********************************@yahoo.com > wrote in message news:KK6Md.14399$C24.2892@attbi_s52...
pdt256 wrote:
Not looking for arguments on the best cvs or ide... just a good process
to follow in general. Something like.. should you test on an
independent development machine or your local workstation to combat
concurrent programming falacies? This isn't my first rodeo so I'm not
looking for simple answers unless they truly are simple...

-JI


Hi Jamie,

I know you aren't "...looking for arguments on the best cvs or ide..."
however if you haven't tried Visual SlickEdit (slickedit.com) I would
encourage you to do so. I believe they have a 30-day free trial and the
product is available on many different platforms.

I personally find it immensely valuable because I do equal amounts of
work in C++, PHP and Java. It's very, very nice to be able to use the
same development tool regardless of what language I'm using.

--
Benny


Does anyone know of any other programs like that - i.e. general script editors that give a bit of syntax highlighting, edit/replace,
etc...?
Jul 17 '05 #11
I noticed that Message-ID: <O0*********************@news.xtra.co.nz>
from WindAndWaves contained the following:
Does anyone know of any other programs like that - i.e. general script editors that give a bit of syntax highlighting, edit/replace,
etc...?


Notepad2 rocks.
http://www.flos-freeware.ch/notepad2.html
--
Geoff Berrow (put thecat out to email)
It's only Usenet, no one dies.
My opinions, not the committee's, mine.
Simple RFDs http://www.ckdog.co.uk/rfdmaker/
Jul 17 '05 #12
Following on from Chung Leong's message. . .

"Peter Fox" <pe******@eminent.demon.co.uk.not.this.bit.no.html > wrote in
message news:Df**************@eminent.demon.co.uk...
Following on from Chung Leong's message. . .
>
>Should the first step be determining what your requirements are?
>

You can if you like. But an overall solution will involve exploring
what can be done for the price / in the time / with the technology / as
part of a long term strategy.


Well, that's putting the cart in front of the donkey. You shouldn't even be
talking about solutions until you know precisely what the problem is.

Is the _wrong_ answer. You can't decouple what you want to do from what
technology can do for you. The majority of customers have a vague idea,
perhaps specifying some elements in detail and perhaps missing out other
vital matters completely of 'their problem'.

Here is an example I was involved with. A voluntary organisation
'needed an office' so it could take phone calls from the public. Mr.
Fox says "No you don't" you need 'people to be able to talk to somebody
on the phone'...
....which can be done by switching a number between volunteer's home
numbers with lots of benefits such as longer hours and weekends, an
insignificant cost and masses of flexibility.

You can't even contemplate the 'wandering phone' option unless you are
aware the technology exists. In the 'web' field things are changing
amazingly quickly with fashions, bright ideas, customer confidence and
so on changing all the time.

If all you ever want to do is put out fires or solve "problems" then
stick with they way you suggest. On the other hand if you want your
customers to take advantage of progress then they have to be educated
and encouraged to look for strategic opportunities to exploit
technology.

--
PETER FOX Not the same since the submarine business went under
pe******@eminent.demon.co.uk.not.this.bit.no.html
2 Tees Close, Witham, Essex.
Gravity beer in Essex <http://www.eminent.demon.co.uk>
Jul 17 '05 #13

"Geoff Berrow" <bl******@ckdog.co.uk> wrote in message
[.........]
Notepad2 rocks.
http://www.flos-freeware.ch/notepad2.html


Thank you for that, I immediately downloaded a copy. I love it, the only thing I do not like is that you only seem to be able to
open one window at the time and you can not do multiple file replacements. Otherwise, awesome!
Jul 17 '05 #14
I noticed that Message-ID: <Ye*********************@news.xtra.co.nz>
from WindAndWaves contained the following:

Thank you for that, I immediately downloaded a copy. I love it, the only thing I do not like is that you only seem to be able to
open one window at the time and you can not do multiple file replacements. Otherwise, awesome!


File >Launch> New/Empty window

For multiple find and replace, click the button to the right of the
binoculars.

Amazingly for such a small app, I find new things that it does every
day.
--
Geoff Berrow (put thecat out to email)
It's only Usenet, no one dies.
My opinions, not the committee's, mine.
Simple RFDs http://www.ckdog.co.uk/rfdmaker/
Jul 17 '05 #15

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

36
by: Andrea Griffini | last post by:
I did it. I proposed python as the main language for our next CAD/CAM software because I think that it has all the potential needed for it. I'm not sure yet if the decision will get through, but...
0
by: Dana Morris | last post by:
Call for Participation OMG's First Annual Software-Based Communications (SBC) Workshop: From Mobile to Agile Communications http://www.omg.org/news/meetings/SBC2004/call.htm September 13-16,...
102
by: Steve Johnson | last post by:
I'd like to hear thoughts on what books, in your opinion, are true classics in the field of software engineering. I read a lot on the topic - at least a book a month for many years. There are many...
4
by: Josh Golden | last post by:
i lead a small development team (based on some of my posts that might cause some people to choke themselves, but have no fear, i am NOT the lead developer, the people on my team are great - i'm...
0
by: datagrep | last post by:
>From solution design and offshore software development to outsourcing application support and improvement, Datagrep's offers a compelling alternative to minimize software development costs, and...
9
by: Xah Lee | last post by:
REQUIREMENTS FOR A VISUALIZATION SOFTWARE SYSTEM FOR 2010 Xah Lee, 2007-03-16 In this essay, i give a list of requirements that i think is necessary for a software system for creating...
2
by: alacmathew | last post by:
Hi everybody I am a project manager with a mid level software development company Some days back I came across a posting in a forum where a person otherwise a competent finance professional wanted to...
3
by: robtyketto | last post by:
Im a student and in preparation for a testIve been given the test questions (or thereabouts, they may be asked in different words or from another perspective). I've been told that they do not...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.