We're about to go to Public Beta with our new product named Plum (Practical
Lightweight Universal Methodology) that addresses each of the issues you
mention, plus a ton more.

I put a little temporary info about it (and a RoboDemo link of the New Plum
Project Wizard at the bottom of the page) here:

http://www.productivityenhancement.com/plum/WhatPlumCanDo.cfm

We go into Public Beta on the 28th.  There will be more info available then.

Respectfully,

Adam Phillip Churvis
Member of Team Macromedia

Advanced Intensive Training:
* C# & ASP.NET for ColdFusion Developers
* ColdFusion MX Master Class
* Advanced Development with CFMX and SQL Server 2000
http://www.ColdFusionTraining.com

Download CommerceBlocks V2.1 and LoRCAT from
http://www.ProductivityEnhancement.com

The ColdFusion MX Bible is in bookstores now!
----- Original Message -----
From: "Chunshen (Don) Li" <[EMAIL PROTECTED]>
To: "CF-Talk" <[EMAIL PROTECTED]>
Sent: Sunday, September 19, 2004 8:24 PM
Subject: Web Application Development using Cold Fusion in a Team Environment
(Draft)

> This writing is an attempt to address some of the critical issues related
to database-driven web application development using Macromedia's Cold
Fusion scripting language in a team environment, it is by no means to cover
most aspects of Cold Fusion web application development and grammar in the
writing is less of a concern.
>
> It is this author's opinion that it essentially bogs down to three core
elements of a good understanding and knowledge of the Cold Fusion language,
design documentation with an agreed standard (at least guideline), team
spirit and prior experience or knowledge of the subject matter of a given
application or aptitude and interest in learning about the subject matter.
Each of these would be discussed in some detail below.
>
> The Cold Fusion scripting language
> This author is of the opinion that a developer's understanding and grasp
of the following areas of the language would determine his/her ability to
design and develop a Cold Fusion based web application to a large degree.
>
> Core Language
> Application framework setting
> Cfapplication etc.
>
> Various variable handling
> Variable scoping like application variable, session variable, locking like
what variables need to be locked and setting variable values etc.
>
> Flow control
> Like if else end if and the more powerful one of switch case end case end
switch;  cfexit, cfabort; cfloop, cfbreak etc.
>
> Interaction with Files on File System
> Tags like cffile and cfdirectory and their respective family.
>
> Code management, efficiency and re-use
> Like cfinclude, cfmodule, cfcomponent
>
> Data Input Manipulation
> Cfform family
>
> Mail
> Cfmail family, cfpop
>
> Visual Dimension/Presentation
> Cfgraph, cfchart and their respective family tags.
>
> Verity search technology tags
> Like cfsearch, cfindex, cfcollection etc.
>
> Debugging
> Cfdump
>
> DATA SETS MANIPULATION
> (cf functions)
> Selectively powerful ones like
> Array family like ArrayNew
> Structure family like StructCopy, duplicate
> List family like ListGetAt
> String manipulcation like Left, Mid, Right ...
> Just too many to list here .
>
> Database related tags
> Cfquery/cfoutput
> Btw, each team member is expected to have a good understanding of database
concepts and experience in the technology.
>
> More stuff like UDF .
>
>
> Agreed or Shared Standard or Development Methodology
> First and foremost, a design document must be created based on a full
understanding and analysis of requirements for the given application.
Preferably creating Use Case documentation as well. Tasks are clearly
identified and assigned to team members.  Task scheduling needs to take task
inter-dependency into consideration when applicable.  Each team member would
perform his/her work following the design documentation.  Now here comes the
standard, loosely speaking, I consider "standard" as a common language that
all the team members speak, but not some rigid rules that dictators force
people to follow.
>
> A standard could be like this:
> Application Framework
> That deals with application level stuff like data source, security, global
variables and settings for presentation part of the application like CSS.
>
> Application Segment/Component/Section Flow Control
> Be it index.cfm or main.cfm or whatever we name it, and segmented by
Cfswitch.
> This template may be called the main Program Flow Control.
> Security may also be implemented at this level in conjunction to that at
application level depending on the particular application.
>
> Templates/Scripts Placement / Web Document Directory Structure
> /appDir
>   /segA (segment A)
>   /segB (segment B)
>   /seg.
>
> /multimediaDir
> /qryDir
> /presDir or dspDir
>
> /cfInstallation/CustomTag/appTags/
>
> Commenting
> The standard or guideline needs to establish some common agreed commenting
practice like each template needs to include at least 3 things on top, that
is, What, Who and When.  What the template is for (function of the
template); who, who writes it and When, when it is written.  Maybe add Usage
as well.
>
> Team Spirit and Prior Experience Or Knowledge of The Subject Matter of a
Given Application or Aptitude and Interest in Learning about the Subject
Matter
>
> It may sounds less tangible, however, I think they are important to the
process as well.
>
> Another issue might be configuration management via version control, its
introduction into the process may add a measure of quality assurance.
>
> In sum, every team member is expected to know Cold Fusion very well, share
a common development methodology or practice, prior experience in the
subject matter of the application or an interest in learning about it and
last but not least team spirit.
>
> Your contribution/comments would be most welcome.
>
> Don Li
>
>
>
>
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings] [Donations and Support]

Reply via email to