php software design process

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • pdt256

    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

  • WindAndWaves

    #2
    Re: php software design process


    "pdt256" <jamie@shsu.edu > wrote in message news:1107215151 .205828.82810@z 14g2000cwz.goog legroups.com...[color=blue]
    > 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
    >[/color]

    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


    Comment

    • Martin Meng

      #3
      Re: php software design process

      WindAndWaves wrote:[color=blue]
      > "pdt256" <jamie@shsu.edu > wrote in message news:1107215151 .205828.82810@z 14g2000cwz.goog legroups.com...
      >[color=green]
      >>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
      >>[/color]
      >
      >
      > 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
      >
      >[/color]

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



      --

      Junxter Ad Network

      Comment

      • Peter Fox

        #4
        Re: php software design process

        Following on from pdt256's message. . .[color=blue]
        >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...[/color]

        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
        peterfox@eminen t.demon.co.uk.n ot.this.bit.no. html
        2 Tees Close, Witham, Essex.
        Gravity beer in Essex <http://www.eminent.dem on.co.uk>

        Comment

        • Chung Leong

          #5
          Re: php software design process


          "Peter Fox" <peterfox@emine nt.demon.co.uk. not.this.bit.no .html> wrote in
          message news:v93OMKA0x7 $BFwRt@eminent. demon.co.uk...[color=blue]
          > Following on from pdt256's message. . .[color=green]
          > >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...[/color]
          >
          > 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.
          >[/color]

          Should the first step be determining what your requirements are?


          Comment

          • Amir Khawaja

            #6
            Re: php software design process

            pdt256 wrote:[color=blue]
            > 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
            >[/color]

            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

            Comment

            • Benny Hill

              #7
              Re: php software design process

              pdt256 wrote:
              [color=blue]
              > 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
              >[/color]

              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

              Comment

              • Thomas Rose

                #8
                Re: php software design process

                pdt256 wrote:[color=blue]
                > 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
                >[/color]

                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

                Comment

                • Peter Fox

                  #9
                  Re: php software design process

                  Following on from Chung Leong's message. . .[color=blue]
                  >
                  >Should the first step be determining what your requirements are?
                  >[/color]
                  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
                  peterfox@eminen t.demon.co.uk.n ot.this.bit.no. html
                  2 Tees Close, Witham, Essex.
                  Gravity beer in Essex <http://www.eminent.dem on.co.uk>

                  Comment

                  • Chung Leong

                    #10
                    Re: php software design process


                    "Peter Fox" <peterfox@emine nt.demon.co.uk. not.this.bit.no .html> wrote in
                    message news:DfEASLAtmL ACFwDA@eminent. demon.co.uk...[color=blue]
                    > Following on from Chung Leong's message. . .[color=green]
                    > >
                    > >Should the first step be determining what your requirements are?
                    > >[/color]
                    > 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.[/color]

                    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.


                    Comment

                    • WindAndWaves

                      #11
                      Re: php software design process


                      "Benny Hill" <benny_hill3.yo ur_rose_colored _glasses@yahoo. com> wrote in message news:KK6Md.1439 9$C24.2892@attb i_s52...[color=blue]
                      > pdt256 wrote:
                      >[color=green]
                      > > 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
                      > >[/color]
                      >
                      > 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[/color]

                      Does anyone know of any other programs like that - i.e. general script editors that give a bit of syntax highlighting, edit/replace,
                      etc...?


                      Comment

                      • Geoff Berrow

                        #12
                        Re: php software design process

                        I noticed that Message-ID: <O0hMd.14406$mo 2.1123949@news. xtra.co.nz>
                        from WindAndWaves contained the following:
                        [color=blue]
                        >Does anyone know of any other programs like that - i.e. general script editors that give a bit of syntax highlighting, edit/replace,
                        >etc...?[/color]

                        Notepad2 rocks.



                        --
                        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/

                        Comment

                        • Peter Fox

                          #13
                          Re: php software design process

                          Following on from Chung Leong's message. . .[color=blue]
                          >
                          >"Peter Fox" <peterfox@emine nt.demon.co.uk. not.this.bit.no .html> wrote in
                          >message news:DfEASLAtmL ACFwDA@eminent. demon.co.uk...[color=green]
                          >> Following on from Chung Leong's message. . .[color=darkred]
                          >> >
                          >> >Should the first step be determining what your requirements are?
                          >> >[/color]
                          >> 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.[/color]
                          >
                          >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.
                          >
                          >[/color]
                          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
                          peterfox@eminen t.demon.co.uk.n ot.this.bit.no. html
                          2 Tees Close, Witham, Essex.
                          Gravity beer in Essex <http://www.eminent.dem on.co.uk>

                          Comment

                          • WindAndWaves

                            #14
                            Re: php software design process


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

                            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!


                            Comment

                            • Geoff Berrow

                              #15
                              Re: php software design process

                              I noticed that Message-ID: <YeAMd.14733$mo 2.1150246@news. xtra.co.nz>
                              from WindAndWaves contained the following:
                              [color=blue]
                              >
                              >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![/color]

                              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/

                              Comment

                              Working...