|By Neil Ross||
|October 4, 2001 12:00 AM EDT||
Keeping a development project organized and on point is a common issue that Web designers and application developers alike often struggle with.
Managing your development team, their tasks, and the multiple versions of files they're working with are problems that many of us find ourselves scratching our heads over.
With the introduction of Site-spring, Macromedia joins the crusade to bring a little bit of sanity to our day and to help streamline the Web site design and application development processes.
Core Sitespring Management Concepts
Sitespring is an application de-signed to help manage Web development projects. It does this, in part, by fostering communication about that project within the de-velopment team and with the client. We all know that communication within the development team is vital to project success. For this reason Sitespring creates a personal home page for each team member that consists of a My Projects module, a My Tasks module, a My Discussions module, and a My Reports module.
Sitespring allows administrators, project managers, and Web developers to create projects, assign and organize tasks and team members, and participate in project-oriented discussion threads. Each project has its own Project Homepage within Sitespring, and any team member assigned to that project has access to vital project information. Each project consists of project details regarding client information as well as a list of tasks, discussions, team members, and project folders.
Sitespring has a browser-based user interface so it can be accessed from anywhere on your network or from the Web by any registered Sitespring user. Users can log in to their Sitespring home page using their Sitespring username and password.
Sitespring Manages Projects
A Web shop often has several proj- ects going simultaneously. In the past there's always been a question about which project management tool is best suited to help make sense of all of the things going on in these types of projects. Sitespring, which fits into this niche, can make an immediate difference.
With so many development proj-ects running at once, chances are that each team member is working on more than one. Some developers experience problems when they try to shift their focus from one project to another or try to keep track of task and project responsibilities. Commenting within your templates or Web pages helps to alleviate some of this "downtime," but that's another subject altogether.
The My Projects module is used to identify which projects each team member is assigned to. It allows you to see not only which projects you're assigned to, but which have the highest priority along with their current status.
If you click on one of your projects, you'll be able to see a description of the project and project details including all of the team members assigned to that project, project tasks and task status, all project discussions, and more. Each of the project tasks listed shows its own priority status, the name of the individual it's assigned to, and the due dates.
Sitespring also allows for the import and export of project information. A Microsoft Project project plan can be imported into Sitespring. You can also export project or task information in MPX format for Microsoft Project or in comma-separated values (CSV) format for more in-depth tracking and project reporting.
Sitespring Manages Tasks
The ability to track tasks across the full life of a project would be a helpful thing for project managers. So, to ensure that team members know exactly what they're doing and that project managers can stay current with project progress, Sitespring allows for the creation and assignment of tasks. Each project may consist of a number of tasks, each assigned to one or more team members.
Any member of the team is allowed to create and assign tasks. Each task is assigned to a specific team member so that accountability is established. If more than one team member needs to work on a task, that task can be cloned and the second instance assigned to the other team member. Each task is added to the project task list and to the My Tasks module on the assigned team member's home page.
One of the deliverables of most projects is an estimation of time. An estimated time to completion can be assigned to each task. When the task is completed, the actual time should be entered to help project managers determine the efficiency of the project team. Since each task is listed on the project page, its progress and status can be monitored by the team, providing incentive for team members.
Because all tasks related to a project are available to every proj-ect team member, the entire team can monitor task and project progress. This feature also allows them to stay informed regarding what will next appear on their plate.
Sitespring easily integrates its task management features with extensions for Dreamweaver and Dream-weaver UltraDev. The Sitespring Task Panel allows you to log in to Sitespring and to view all projects and tasks that you have open. You can access all of your files, but you can also edit your tasks within the Sitespring Task Panel and refresh for those edits to take effect.
Sitespring Manages Communication
Communication is the key to making sure that all members of the team know where they're supposed to be and when, what task is pushing its deadline, or even that they need to call a client contact. Sitespring works to ensure that the lines of communication are always wide open.
The My Tasks module is one of the ways that Sitespring enhances communication. But Sitespring also keeps you up to date on the ongoing discussion issues by presenting project-centered discussions on your project page. Built just like any other threaded discussion application, Sitespring lets you know what topics are being discussed, who started the thread, and how active it is.
Sitespring also ensures, via e-mail, that you're informed about your assignments. On the setup side you have to tell Sitespring what SMTP server to use, the SMTP port, and so on. The e-mail notification features, task assignment, and project discussions make the project team members more accountable for meeting deadlines and encourage them to keep in touch with each other.
Sitespring also provides for client communication through a project site that allows them to contribute files containing source material to the project. Clients can also view drafts of the work being performed, which keeps them up to date on their project's status.
Because Sitespring 1.0 lacks a project calendar, the Discussions section of the Projects page becomes a great place to post meeting notes, reminders, and directions to after-hours team-building activities.
Sitespring Manages Files
One very cool feature of Sitespring is its transparent versioning. Each project is set up in a shared project folder that Sitespring monitors. Any file that's modified within that shared folder will be versioned. The best thing about this feature is that you as the developer don't have to change your routine. You don't have to open a file to edit through the Sitespring explorer, but can use your same old methods of opening with ColdFusion Studio, Dreamweaver, or Ultradev.
It's as simple as creating a share for access to those folders and enabling File Versioning within Sitespring's Shared Folder Management. Any ongoing changes or updates to files within that share will be tracked by Sitespring's version management. What happens is this: when you enable file versioning for a share, Sitespring automatically creates a "_revisions" folder in the root directory of that share. Then, as you modify and save a file, Sitespring will save the old version of that file to the _revisions folder. A sequential number will be appended to each version of the file so that you can easily step back to the version that you want to restore. If the latest version of a page or application template isn't the greatest, this feature makes it easy to revert to the preferred version.
You can also take a look at the revision history of a file by accessing it through Sitespring's File Explorer. Within the Explorer you can clean up the revision history and clear out any obsolete revision files.
Another helpful feature for developers is the ability to link specific files to tasks. This assures that the file that's updated is the file that was intended.
I recently read Hal Helms's CFDJ article "A Script for Teamwork" (Volume 3, issue 7). Hal talked about his experiences on a "distributed team." Sitespring could have alleviated some of the issues Hal recounted by fostering communication between team members and project managers and allowing client interaction. That interaction and communication helps keep everyone on task and on track.
Though Sitespring is neither a framework nor a development methodology, it's definitely a tool that fits into the concept of development via methodology, task assignment, and version management. In the same issue of CFDJ, Sarge, an old buddy from my Allaire consulting days, discussed the benefits of frameworks and methodologies, and of team specialists, in "Optimal Development Environment: Working Together in CF." Sarge's assertion that "there's no substitute..." for specialists within your development team is supported by Sitespring's task-oriented approach to dividing up project responsibility and accountability.
Because Sitespring is a Web-based application and runs on your development environment, the project development files are accessible through your Web browser wherever you are. There's no check-in/checkout feature, but the task assignment and transparent versioning are great for remote developers. Remember, you can also access your project files by setting up a ColdFusion RDS mapping.
Okay, so where does ColdFusion fit into all of this? The best answer: anywhere. Sitespring and its "Project Sites" are run on Macromedia's JRun server. Thus, when a client interacts with the Project Site or when a development team member logs on to the Sitespring desktop, he or she is using a JRun application that's delivered in JSP pages.
Your Sitespring project folders can be made up of any number of file types. Create a folder in Windows Explorer or by opening up that proj-ect's directory. Your site templates are created within Sitespring's Projects folder rather than under the normal Web root (usually C:\InetPub\WWW Root\projectname).
ColdFusion doesn't interact with the Sitespring product, but as an application developer you'll appreciate the ability to assign and track development tasks and to interact with team members and clients. Many of ColdFusion's most popular development methodologies take a modular approach that encourages developers to work on independent blocks of code that can then be plugged in to the rest of the application.
The Future of Sitespring
The future of Macromedia seems bright, even in such an uncertain market. Many of us were really excited when we heard about the merger of Allaire and Macromedia simply because the upside of the mixture of the front-end and back-end technologies would lead to a more integrated design and development process. With the addition of Sitespring, we have a way to track and manage the activities that are involved in our projects on both sides of the process.
When I asked how Sitespring works into Macromedia's long-term strategy, Macromedia officials said, "We see Sitespring as a product that can help bring together the diverse workflow of all of the team members involved in delivering incredible Web applications. As such, you can expect us to improve the workflow between the tools themselves (e.g., how Flash and CF and Java and graphics folks tools interact) as well as with Sitespring as a common team production management platform."
That said, I think we can look for improvements to some of theŠhow did I put it?..."clunky" features of Sitespring, and the addition of some features that didn't make it into version 1.0. Like the much-needed project calendar.
I went into the writing of this article not knowing much about Macromedia Sitespring. I'd heard a bit of the hype, but had been too busy with a development project to stop and look at the product. After a period of some weeks I've become a believer. Yeah, it's only a version 1.0 product, but the potential is definitely there. I realize how useful a product like Sitespring could have been on several past projects, and how much time I could have saved through its version control and discussion features.
I've heard people in my office who've tried Sitespring say things like, "I can see where it might be good for a large development project, but it's not a good solution for the type of work we do around here." Au contraire, mon ami! Whether you're developing a brochure-ware type of Web site or a full-blown enterprise application or doing ad hoc updates to various files on an existing Web site, Sitespring can help.
To Macromedia's credit, Sitespring is built so you don't have to be a technical genius to figure it out. It takes advantage of an easy-to-use browser interface for almost all its interaction with project files, team members, and clients. Sitespring's inline help and Flash tutorials are a great place to start learning more about this product and how you can use it to your advantage.
- Where Are RIA Technologies Headed in 2008?
- The Next Programming Models, RIAs and Composite Applications
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Constructing an Application with Flash Forms from the Ground Up
- Building a Zip Code Proximity Search with ColdFusion
- Personal Branding Checklist
- CFEclipse: The Developer's IDE, Eclipse For ColdFusion
- Has the Technology Bounceback Begun?
- Adobe Flex 2: Advanced DataGrid
- i-Technology Viewpoint: We Need Not More Frameworks, But Better Programmers
- Web Services Using ColdFusion and Apache CXF
- Passing Parameters to Flex That Works