Atom feed

27 February, 2007 / Web Services API in TargetProcess 2.3

We've almost finished web services API implementation for TP 2.3 release. It looks quite powerful and provides huge integration capabilities. With web services API you may do almost anything: add, edit and delete new entities, retrieve entities and even execute custom queries based on HQL (Hibernate Query Language). Of course you need to know HQL syntax (close to SQL in fact) and understand TargetProcess domain model to create complex queries. So we share entities description, class diagrams and NHibernate mapping files. You may check Web Services Developers Guide (PDF - 0.4M) for details.

Here are some examples that shows web services abilities.

Add new bug into TargetProcess.

BugServiceWse bugService = new BugServiceWse();
TpPolicy.ApplyAutheticationTicket(bugService, "admin", "admin");

BugDTO bug = new BugDTO();
bug.Name = "New bug";
bug.CreateDate = DateTime.Today;
bug.Description = "Bug Description";
bug.ProjectID = 1;
            
int bugId = bugService.Create(bug);

Console.WriteLine(bugId);

Add comment to existing user story.

UserStoryServiceWse service = new UserStoryServiceWse();
TpServicePolicy.ApplyAutheticationTicket(service, "admin", "admin");
int storyId = 98;

CommentDTO comment = new CommentDTO();
comment.Description = "New Comment";

int commId = service.AddCommentToUserStory(storyId , comment);

Exampe with complex HQL query. Select all user stories assigned to user

string userName = "admin";
string userPassword = "admin";
UserStoryServiceWse userStoryService = new UserStoryServiceWse();
TpServicePolicy.ApplyAutheticationTicket(
userStoryService, userName, userPassword);

string hqlAssignedUserStoryQuery =
@"from UserStory as us where us.UserStoryID in 
       (select team.Assignable.AssignableID from Team as team 
            where team.User.UserID = ? 
            and team.Actor = us.EntityState.Actor 
            and team.Assignable.AssignableID = us.UserStoryID)";
UserStoryDTO[] stories = userStoryService.Retrieve(
hqlAssignedUserStoryQuery, new object[] {users[0].UserID});

Labels: , ,

25 January, 2007 / TargetProcess: What's Next?

With TP 2.2 release general project management and QA areas will be covered quite good in TargetProcess. Of course there are many, many things to improve and we will work on continuous improvements through iterations, however we have a new strategic goal — company wide operations support. In general there will be four areas that will be supported in TP 2.3 and TP 2.4:

  1. Peoples management (in traditional PM science it is called Resources Management, but we don't want to use term 'resources' when working with people)
  2. Integration needs (public Web Services API)
  3. Programs management
  4. Custom process needs (terminology support)

In TP 2.3 we will focus on first and second areas, while in TP 2.4 on third and fourth.

Peoples management

There are several questions that top managers (who are in charge for allocations) asks quite often:

  • Who will be available for upcoming project?
  • When developer A will be free for upcoming project?
  • Who is overloaded?
  • Who can be re-allocated without huge negative impact on project?

We hope that TargetProcess will provide answers on all these questions (or information that will be used to ask proper person). If you feel that you need something like that and have specific requirements, leave your comments.

Integration

Public API is a must-have for any life-cycle management system. There are so many third-party tools, in-house applications and data import/export needs. Such integration can't be done without public API.

Labels: , ,

 

We are developing new version of TargetProcess and blogging about our progress.

TP 2.0 online demo
TP 2.0 quick tour