Differentiating SpeeDEV from traditional software project management tools…
Trying to compare SpeeDEV with other products will not be fair to the competitive products since SpeeDEV offers an integrated solution, whereas individual competitive software focuses on one particular functionality, viz. defect tracking, requirement management, etc. In addition, even if we try to compare SpeeDEV with competing software feature by feature, it will always become a moving target as products leapfrog each other by adding new features. However, as far as the other tool vendors--small and very big--are concerned, there are distinct philosophical differences between SpeeDEV and any of these vendors. This unique philosophy drives SpeeDEV through a very distinct path different from other vendors, and all the features and functionality are geared towards this vision. The following are the main philosophical differences:
Process Philosophy: SpeeDEV believes that the core of the software development project is a process -- any process -- appropriate for an organization. This philosophy immediately makes us different from the traditional ‘Bunch-of-tools’ (BOT) vendors who offer various tools independent of any single cohesive process. It is also illustrative to learn the history of these tools; in most cases, the various tools are added to their offerings by acquiring smaller tool vendors. This has made each tool independent of the other with forced file-format compatibility in the name of integration. Some of the bigger vendors also offer their own branded process, assuming that they know what is good for organization sizes and project sizes from 5 to 500. Typically, these very expensive branded process tools lead organizations to process-phobia after spending million of dollars and many months by virtue of their heavy methodological bias. By contrast, SpeeDEV has a single process oriented vision and tools are added to this core process from the ground-up, as necessary tools for the process, not as an after-thought.
Price Philosophy: SpeeDEV believes that software engineering tools should be so competitively priced that even the smallest development houses can afford, use, and get benefit out of SpeeDEV. This again sharply contrasts our philosophy with the traditional BOT vendors. Typically, the industry convention is to make the prices so high that unless you have a NASA or DOD project you cannot afford or justify these tools. Even some of the bigger vendors take pride in proclaiming that they do not serve the little guys, since their online offering starts with a price point of almost a million dollars per year.
Availability Philosophy: SpeeDEV believes that every participant in a software project should be part of a process and hence have access to the process management tools like SpeeDEV, without the boundaries of time and space, or the headaches associated with client installation. This, apparently, the BOT vendors do not want. Firstly, their tools have a very distinct ‘project manager centric’ approach, which is not very useful for the other participants, especially the non-technical ones. Secondly, their bloated client software is to be installed on the local desktops for any access, which becomes too much of an overhead for an occasional user. Thirdly, whenever there is a web-based client, it is so crippled in functionality that you can do only some very rudimentary operations. SpeeDEV ‘stake-holder centric’ paradigm allows 100% functionality using the browser, requiring no client software installation and being available anywhere, anytime.
Customization Philosophy: SpeeDEV believes that you know your business better than anybody else. Which also means that we have provided extensive customization and extension of SpeeDEV at your fingertips that can be done online. SpeeDEV customization includes co-branding the user interface with your name, your colours and your logo, for your customers and employees, at your price. (Ask any of the BOT vendors whether they can customize their tools’ interfaces with your name, logo and colour at an affordable price.)
The following are frequently asked questions about SpeeDEV’s unique approach towards software development process management and how it is different from some of the existing products and services:
We already use Microsoft Project or some other project management package. Why should we use SpeeDEV?
There is no overlap between typical Project Scheduling software like Microsoft Project and SpeeDEV. You may continue to use this software to do your project scheduling and attach the project files in the SpeeDEV project for sharing with others. SpeeDEV provides all the other components (e.g. Requirement Management, Issue management, Timesheet) which are not included in these project management software.
How is SpeeDEV different from standard Project Management Software?
A project management software is used for the following: Given a list of tasks, a successor/ predecessor relationships among them, a list of resources (mostly people) and assignment of resources to different tasks, you can schedule the tasks based on some other parameters, e.g. whether you would like to start the project from a particular date or end the project on a particular date. The project management software uses the well-known Pert/ CPM analysis method to do the scheduling. In the last few decades project management has become a standard practice in all sorts of projects. Unfortunately, for a software project, the typical project management scheduling process becomes inadequate for several reasons:
Project Management Software assumes that you have a list of tasks. The question is where do you get these tasks? SpeeDEV generates the tasks from Requirements, Issues, Testing and different modules. SpeeDEV knows about different phases of a software project. To Project management software there is no difference between a software project and a kitchen renovation project.
In a Project Management software, when a resource is assigned to a task, you already know whom to assign to that task, and it is the project manager who needs to do that. But, again, in real project if every task assignment has to go through the project manager every day, then the project manager’s only work will be nothing but, well, assigning tasks. In SpeeDEV the tasks are assigned to a person by virtue of an issue or requirement going through its dynamic lifecycle. Which means that if the reviewer reviews an issue and determines that it is to be fixed, it is the reviewer who passes it to the next person--the developer--to fix it. In the process, the reviewer’s task gets closed (finished) and a new task is created and automatically assigned to the developer. Similarly, when the Issue is fixed, the developer forwards the Issue to the next person who is the tester. Again SpeeDEV will close developer's task and will create a new task for the tester. Here the project manager is not involved in the actual assignment process though at any time he can see the status of the whole project or even see the status of individual task assignments for each resource person.
Ideally, whenever a task is created and assigned to a particular resource (person), a new schedule should be generated. In reality, everyday, every resource person generates and closes (finishes) several tasks as he/she plays different roles in different projects. Just for example, an Issue, as it is submitted, reviewed, fixed, tested, QA assured and closed, goes through several tasks for several persons in a very short period of time, sometimes even in a single day. Now visualize this similar process is happening for hundreds of issues, hundreds of Requirements and Testing items. Standard Project Management software will not be able to handle these quick changes in large amounts of information because it is not meant to do so. SpeeDEV is designed ground up to accept this as the core business process of software projects and handles them smoothly. As a matter of fact, in a real project, very rarely is a project schedule produced on daily basis, so project management software is realistically used only during the milestones.
Resource assignment is another area where users of Project Management software face a serious problem. When a brand new project is starting, assuming that a group of resource persons have the same kind of skill set and are interchangeable with each other, it is easy to assign tasks to any resource person, almost at random. But, as the project moves on, each resource person becomes experienced in particular areas of the project (modules in SpeeDEV), and subsequent task assignment becomes very specific to the resources involved in the task's area of interest. Using Project Management software, it becomes more and more difficult to determine which task to assign to whom since the granularity of information for each task is not very high. As a matter of fact, at some stage the Project Manager needs to keep another document (either a spreadsheet or Word document) just to keep track of the resource’s area of expertise. SpeeDEV allows the whole resource assignment process to become very streamlined, even automated, by using Rules. In SpeeDEV, a project can be divided into a number of modules. Each module can be seen as a functional area that is being covered by a set of resources throughout the lifespan of the project. SpeeDEV also allows user-defined roles for a project. Say a project has three roles: 'Project Manager', 'Developer' and 'Tester'. Using SpeeDEV, you may assign different resources for different roles at the project level, at each of the module levels, and even, if you wish, at each of the Issue or Requirement levels. Which means that when the developer is forwarding his fixed Issue to the 'Tester' for testing, he need not even know which resource person is actually working as a tester for his module. SpeeDEV determines from the role assignments who the 'Tester' is, and assigns the next task to him/her. Now compare this to manual assignment of each task to a particular person who will be best suitable for that job and do this manual assignment hundreds of times in a typical day. Also think of the consequences of assigning a wrong resource to a task. At best you will waste some time in discovering this mistake and reassigning to the right person. At worst, if the discovery is too late, some serious harm to the project will have occurred.
Lastly, SpeeDEV does not replace Project Management software. On the contrary, SpeeDEV compliments Project Management software for day-to-day management of your software project. Project Management software will continue to be used frequently at the start of each phase of the project to the initial estimate of that phase. But on a day-to-day basis, you will need SpeeDEV for managing the complete lifecycle of your software project.
We are already using a bug tracking software. Isn’t SpeeDEV the same thing?
NO. One of the many components within SpeeDEV is speedIssue, which is also used for bug or defect tracking. But speedIssue is much more than a bug/defect tracking system. The typical usage of speedIssue starts even before a single line of code is written, to track various issues in a project which may include Business Issues, Legal Issues, Contractual Issues, Hardware/ Network environment Issues. speedIssue also contains a completely threaded discussion feature for individual issues to enable a fully collaborative resolution of each. Being integrated with other components in SpeeDEV, speedIssue becomes a seamless component in the full lifecycle process of the project.
How is SpeeDEV different from Professional Service Application (PSA) software?
A PSA is for Time-tracking, Billing and Accounting for the consultants in a Professional Service Organization. Actually SpeeDEV has no overlap with a PSA software. We will be happy to integrate SpeeDEV with any PSA software your organization may be using.
How is SpeeDEV different from Product Lifecycle Automation (PLA) software?
A PLA software is a generic tool for managing product development. Software Product is just another product for this software. That’s good when you are developing a product other than software. But if your business is software development then you are tied up with a generic tool that is not designed and developed for software development only. Also, if your software project involves not ‘Product’ development but, say, Software Maintenance, Customization, Integration or Custom Application development, a PLA will not help you a lot. Since a PLA’s thrust is more on Product sales and marketing, the tools and process necessary for software development is typically overlooked.
Among the existing commercially available products, there is no 100% web-based PLA today. Actually most of the PLAs are desktop applications with dial-up connectivity for remote access and later synchronization. This yesterday’s technology is not suitable especially if you have multi location projects, or even if you have team members tele-commuting.
In comparison to PLAs, SpeeDEV is specifically designed for the requirements of software development. All its features are geared towards the
development and deployment of software, not sales and marketing. However, as a part of many software product development projects, SpeeDEV is ideal for facilitating collaboration among the Sales, Marketing and Product Management personnel.
There are collaborative software development sites available, e.g. SourceForge and Collabnet. How is SpeeDEV different from them?
The only overlap SpeeDEV has with them is the speedIssue (Issue management system). Some of the salient features of SpeeDEV missing from these tools are:
SpeeDEV has three more components integrated with speedIssue: speedReq (for Requirement Management), speedTask (for Task management) speedProcess (for Workflow and Process Management). The integration is very tight, not merely at the file level. For example, you can actually create a Traceability relation between a requirement and an issue so that if the requirement is changed, the related issue is flagged for 'Impact Analysis'. This allows all your information, files, and attachments to be in a single framework and you don’t have to search for information in a plethora of emails, word documents and sticky notes.
SpeeDEV covers the complete life-cycle starting from a very high level requirement (e.g. “the chairman said we should be on the Internet") to the functional requirement, the testing requirements and the lifecycle, consisting of the design, development, testing, acceptance and closure of each requirement. This is a completely different way to look at the requirements as opposed to the traditional requirement packages whose only purpose in life is to create a nicely formatted 'Requirement Document'. They cannot answer the question, “what happens to these requirements after the document is created? ” (This aspect is possibly explained better in a demo.)
Also, SpeeDEV can be customized with respect to:
Customizing all list items (e.g. Status, Items Types, Modules etc.)
Adding unlimited custom fields and custom data types
Creating your own Roles for defining a process
Creating your own Implicit and Explicit rules for the process
SpeeDEV allows you to automate the development process which will relieve the project manager from the mundane, routine work of generating tasks from the requirements and issues and assigning them to different project members. Actually, once the process is defined, it is automatic. (This can be explained better in a demo.)
The template capability of SpeeDEV will allow you to start with a industry best practice process, customize it and save them as company best practice for future use. This will standardize the process and let everybody use it independent of the size of the project.
SpeeDEV is ready for distributed international users with date formats and individual and project time zones. These are small details but can save you some heartburn on a real project.
These tools are a very important part of the open source movement but, with all due respect, they are not meant for the complex corporate software development process management.
There are a few groupware-based software development products available. How is SpeeDEV different from them?
Groupware like Lotus Notes/ Domino are best suited for creating in-house application for small groups. But they are not very suitable for implementing a completely Web-based Enterprise Class Application. The reason for this is the severe scalability and lack of architectural flexibility problem. As a matter of fact in today's industry, there are very few robust, reliable and scalable Web based Enterprise application runs on groupware. Most if not all of them runs on Relational Database. Due to the choice of platform, these applications lack in flexibility, extensibility and, of course, scalability.
There are a few collaborative products/ services in the market, and a few of them are even free. How is SpeeDEV different from them?
Software development is a serious business and you need serious software. Most of the collaborative tools and all of the free tools available are not meant for software projects. They are low-end generic services for small collaborative task tracking. So, if you are planning an Office party or a PTA meeting, and you need a project organizer, then these generic tools are sufficient. By comparison, SpeeDEV provides industry-strength ProcessFlow automation software on the browser, destroying the myth that it is not possible to deliver desktop application-like interactivity and features on the web. SpeeDEV is also very focused on providing only the highest quality software life-cycle management software. It should NOT be confused with those offered in B2B IT Exchanges.
Is not 'Integrated Software' an overused term? How are the different components integrated in SpeeDEV, and why does this make it different?
Integration of different software belonging to the same company or family of products can be achieved at different levels. Typically, in the software engineering tool industry, most of the integration is only at the file format level, i.e. one application can read and sometime write files in a format that is readable by other applications. In very few cases, can two applications even run together with data copy and paste facility using the Windows clipboard.
Firstly, SpeeDEV is not just an integration of different tools but a single environment that has different applications as components. SpeeDEV has brought integration to a completely new level. Here’s why:
Being a very thin client application (running on a Browser), it does not need any heavy-duty client machines to load and run multiple applications simultaneously.
Each application within SpeeDEV is equivalent to a module in a traditional sense; sharing security, project and user architecture of the complete system. The integration is so tight that there are several screens (or pages) where users are interacting with multiple modules simultaneously. One such example is the Traceability feature between the different components, Requirement, Issues & Testing. It would be IMPOSSIBLE to determine how altering one Requirement affects a seemingly unrelated Issue and how that in turn affects a seemingly unrelated Test, unless you use SpeeDEV. However, until this is addressed, your application is not guaranteed to work correctly. There is no commercially available product today other than SpeeDEV that can do this.
This level of integration provides a seamless consistency in the user interface and has the same look and feel across the board.
But I need to use only one component, is it not overkill to have all the other components integrated together?
In spite of its tight integration, each component can be used in a completely stand-alone fashion, independent of the others. So, if you need to use only one component, go ahead and use it -- don’t even pay attention to the others. That’s partly why the menu is designed in a tree structure. If you don’t need some feature, just remove them from your or other users’ menu by SpeeDEV’s ‘Menu Customization’ functionality. Since client resources are independent of the number of components used, you need not bother with the existence of the other modules in the system.
Our project uses Java/ C/ VB/ Cobol/ Lisp/ Fortran/ Perl on Linux/ Solaris/ NT/ VMS/ AIX using Servlet/ COM/ CORBA/ SOAP technology. Can SpeeDEV be used for my project?
SpeeDEV is independent of any aspect of the project you would like to manage. It is independent of the hardware platform, OS, programming language, technology (whether legacy or cutting edge) or the application domain. By identifying the critical common needs of any software project SpeeDEV remains independent of the technology it is used for.
Our software project life cycle uses the Waterfall/ Spiral/ Rapid Prototyping/ Adaptive model. Can SpeeDEV be used for my project?
SpeeDEV does not assume any particular model for the software lifecycle. You may use it and customize it for any well-established model or even create your own. SpeeDEV provides features without which it will be difficult to manage projects following some of the models. For example, the flexibility of marking selected Requirement items for base-lining and creating base line Requirements will allow different portions of the project to be in different phases. This is typical of a project following either the Rapid Prototyping or the Adaptive model.
Many of our projects are related to Software Maintenance rather than Software Development. Can SpeeDEV help?
SpeeDEV does not assume any particular type of process. The components, particularly speedIssue and speedProcess, can be used to develop a process for Software Maintenance as much as they can be used for a Software Development Process.
I am new to software project management -- is not SpeeDEV too complex a software for a novice?
One of the great values of SpeeDEV is its content. The system-defined Project Templates have built-in Best Practices. It is like providing you the best Bar-B-Q grill with extensive recipes for creating some of the most delicious dishes, even if you are not a master chef. You can start your project using one of these Templates and evolve it by customizing it to your own style and liking. After successfully executing a few projects you may want to save it as a Template and create a company standard.