Browse Prior Art Database

Method of obtaining the prioritized list of detailed tasks by using two prioritized lists for component-based software development Disclosure Number: IPCOM000021860D
Original Publication Date: 2004-Feb-13
Included in the Prior Art Database: 2004-Feb-13
Document File: 9 page(s) / 701K

Publishing Venue



Generally, to plan a software development schedule, the tasks that should be done for each component to realize the requirements in the software need to be predefined. If there are some dependencies among the components, the order of developing the components must be considered as well as the order of implementing the tasks. This means that detailed tasks having information about both components and tasks need to be predefined to make an actual schedule. These detailed tasks would be used not only in the planning phase but also in the iterative development phases. this is because most software development projects involve situations where it is necessary to redefine tasks or to reschedule the plan on the basis of updated assumptions. This article discloses a method which can quickly provide detailed tasks by using two prioritized lists. One of them is the ordered list of components and the other is the ordered list of predefined tasks. This approach is advantageous for a project which adopts a common architecture that is using advanced technology. This is because that a new architecture may be adopted by the project in the future as well as the current architecture. This approach is also advantageous for a project which provides a lot of components having strong dependencies on each other.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 41% of the total text.

Page 1 of 9

Method of obtaining the prioritized list of detailed tasks by using two prioritized lists for component-based software development


Component-based software development

It is especially advantageous for business component software which has the following characteristics :

It consists of a lot of components which are made on the basis of a common architecture or shared design patterns. The components have a lot of dependencies on each other.


These days, to overcome the complicated problems accompanying the development of large software system and to deliver the software to the marketplace quickly, component-based software development is used for enterprise software development. Such component-based software is generally made on the basis of a common architecture or using shared design patterns.

On the other hand, technology standards including common architectures and design patterns are evolving rapidly, so enterprise software development may need to start before the basic system architecture is finalized. In other words, the project manager or project leader of such a software development project needs to plan a development schedule while considering the changing technology.

Here are the steps to plan a schedule both for developing each component and for implementing the features.

First, the detailed tasks, each of which consists of a component and a feature, need to be defined. This is because a worker should know which component he is owning and what should be made. The detailed task is also the minimum unit which can bind a work item and a worker. Second, many attributes such as start date, duration, dependencies on other tasks, etc., are added to each detailed task. Third, resources, i.e. workers, are assigned to these tasks. Finally, balancing the resource allocations for each task will be considered if necessary.

Thus, planning a schedule is to perform a series of processes.

Technology standards are evolving and they may transform the system architecture of software which is currently under development. The system architecture may need additional features on the basis of new technology standards, and as a result, the dependencies among components may change .


Page 2 of 9

In addition, and iterative development method is generally adopted by such development projects. Iterative development phases may also cause the development team to add addtional features.

Here is a list of items which may cause additional features by their changing during the development period.

Specifications of technology standard, e.g. EJB Middleware architecture, e.g. application server, RDB System architecture of the product Users' requirements, e.g. features of their new business logic, performance improvements

Problem to be solved)

Even In the planning phase, the dependencies of components may be different for the development phases listed below. implementing features in components preparing test programs for each component execu...