Project Proposal Distributed Project Management



Similar documents
Client/server is a network architecture that divides functions into client and server

Middleware Lou Somers

Module 17. Client-Server Software Development. Version 2 CSE IIT, Kharagpur

A Web-Based Real-Time Traffic Monitoring Scheme Using CORBA

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture

Web. Studio. Visual Studio. iseries. Studio. The universal development platform applied to corporate strategy. Adelia.

System types. Distributed systems

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

B. WEB APPLICATION ARCHITECTURE MODELS

Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications

What Is the Java TM 2 Platform, Enterprise Edition?

SOFTWARE TESTING TRAINING COURSES CONTENTS

LSKA 2010 Survey Report Job Scheduler

PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE

Layering a computing infrastructure. Middleware. The new infrastructure: middleware. Spanning layer. Middleware objectives. The new infrastructure

MIGRATING DESKTOP AND ROAMING ACCESS. Migrating Desktop and Roaming Access Whitepaper

How To Understand The Difference Between Business Process And Process Model In Java.Java.Org (Programming)

Distributed Objects and Components

GenericServ, a Generic Server for Web Application Development

Infrastructure that supports (distributed) componentbased application development

Virtual machine interface. Operating system. Physical machine interface

25 May Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy

Seamless Integration of Distributed Real Time Monitoring and Control Applications Utilising Emerging Technologies

TIBCO ActiveMatrix BusinessWorks Plug-in for TIBCO Managed File Transfer Software Installation

Distributed Systems Lecture 1 1

CORBA for Distributed Measurements

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Base One's Rich Client Architecture

Architecture Design For Web-based Application Systems. Instructor: Dr. Jerry Gao Class: CMPE296U

Version Overview. Business value

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat

PIE. Internal Structure

Sun Microsystems Inc. Java Transaction Service (JTS)

White Paper ClearSCADA Architecture

Distributed Systems Architectures

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

Star System Deitel & Associates, Inc. All rights reserved.

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Middleware- Driven Mobile Applications

The Service Availability Forum Specification for High Availability Middleware

How To Understand The Concept Of A Distributed System

zen Platform technical white paper

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation.

Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique

The EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.

HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS

Overview of CORBA 11.1 I NTRODUCTION TO CORBA Object services 11.5 New features in CORBA Summary

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

Virtual Credit Card Processing System

Elements of Advanced Java Programming

TimePictra Release 10.0

Service-Oriented Architecture: Analysis, the Keys to Success!

Sybase Unwired Platform 2.0

Enterprise Application Designs In Relation to ERP and SOA

A Framework of Model-Driven Web Application Testing

Distributed Network Management Using SNMP, Java, WWW and CORBA

Enterprise Application Integration

Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server

How To Use Ibm Tivoli Composite Application Manager For Response Time Tracking

Heterogeneous Tools for Heterogeneous Network Management with WBEM

Building Java Servlets with Oracle JDeveloper

Web Services. Copyright 2011 Srdjan Komazec

Page 1. Overview of System Architecture

BI Requirements Checklist

Table of Contents. Introduction...9. Installation Program Tour The Program Components...10 Main Program Features...11

Installation Guide NetIQ AppManager

Software: Systems and Application Software

elearning Content Management Middleware

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

Full-scale Online Event Ticketing System The Design and Implementation

A Modular Approach to Teaching Mobile APPS Development

Sage Intergy 6.10 Architecture Guide

Integration of DB oriented CAD systems with Product Lifecycle Management

Data Integration Checklist

MIDDLEWARE 1. Figure 1: Middleware Layer in Context

AdminToys Suite. Installation & Setup Guide

Architecture of the CORBA Component Model CORBA 3.0

About Network Data Collector

White Paper on CLOUD COMPUTING

The Enterprise Service Bus

An Oracle White Paper June Integration Technologies for Primavera Solutions

Client/Server Computing Distributed Processing, Client/Server, and Clusters

The Efficiency Analysis of the Object Oriented Realization of the Client-Server Systems Based on the CORBA Standard 1

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

Network Station - Thin Client Computing - Overview

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Middleware for Heterogeneous and Distributed Information Systems

ANSYS EKM Overview. What is EKM?

Transcription:

Proposal Distributed Management by Passakon Prathombutr Ashok Emani CS551 Fall 2001 CSTP UMKC 1

Contents Introduction...3 Goal and Objectives...4 Overall goal... 4 Specific objectives... 4 Significance... 4 Background...5 General Plan of Work...6 Requirement... 6 Design of activities to be undertaken... 6 Description of methods and procedures... 8 Technologies and Tools... 10 Time table for project completion... 11 Bibliography...12 2

Introduction A major factor in the successful launch of the company is the early implementation of quality project management. Today project management software provides a variety of "views" of project data, including Gantt charts and Critical Path Networks and is particularly strong in resource modeling, tracking and scheduling. However, traditional project management tools are still based upon a single -user model of planning. For example the MS model is a project management tool that a single general contractor makes decisions and changes then somehow notif ies the people involved. The notification is done by a simple note corresponding to each task. If the users in the group want to share the schedule, they can do so by exchanging a print out or uploading the schedule onto the web page or simply use a primitive email. The main problem is that users are distributed while the recourses are standalone and those notification methods are not integrated well to the project management tool. In another aspect, if the management groups spread over geographic distances with multiple centers of control and multiple software environments. Not only the users that are distributed but also the projects themselves. The projects may be located in different departments, different cities. Then the communication and coordination become key issues for project success. There are several solutions to communicate among distributed components. But what is the best solution to deploy the advantage of distributed computing onto the project management; like scalability, openness, reusability, heterogeneity, resource sharing, fault tolerance and etc? In this project, we propose the idea of Distributed Management (DPM) tool using Java and a standard middleware CORBA, Common Object Request Broker Architecture. CORBA supports heterogeneous and distributed objects. Communication between objects is achieved through an object request broker, which aims to hide heterogeneity and distribution as far as possible. In fact, there are plenty of middleware in the market like COM or EJB but we select CORBA because it is a reliable standard one. Even the EJB also supports the CORBA interface. Besides, the CORBA when integrates with the existing computer systems guarantees that the investment is risk free. The DPM will eliminate the stand-alone problems by providing interface to communicate between users and projects, which are in various platforms/environments. The obvious examples are that the group member on Macintosh can share the scheduling with project manager using MS Windows or user in city A can have a common project with user in city B communicated via the Internet. The DPM tools include components that facilitate team collaboration and communication. They typically include features, such as project scheduling, bulletin board and document sharing system. When people and technology work in harmony, DPM software offers several significant benefits, including: shorter project cycle times (time savings) and improved teamwork/group communications. 3

Goal and Objectives Overall goal The overall goal is to provide distributed project management in term of: Interoperability i.e., supports cross functions between multiple platforms/environments, Resource-sharing among team members in the project group, Scalability of the project component, since the component can be extent and reused, Portability of the project management system that can run in multiple contexts. Specific objectives A distributed project management tool using facilities of Object-Oriented middleware, CORBA and Java. Design distributed object based on UML representations. DPM which resolves heterogeneity in term of user and server environments. In this project, there are two platforms of software environment, the LAN PC running Windows 2000 and Linux. Significance The security is based on the CORBA security. Assume that no significance security requirement at this project. The distributed project management will be implemented based on the Text mode at the beginning since we pay attention on the middleware. Because of the limitation of time scale, the graphic user interface using Java will be partially implemented if necessary. Implement CORBA using VisiBroker v 4.5.(Evaluated version) The environments are PC based with MS Windows 2000 and Mandrake Linux Operating System. This program is not intent to be used outside CSTP UMKC computer labs. 4

Background The Distributed Management DPM is not a new term. There exist a bunch of DPM packages in the market today. [1] survey results indicate that over 40% of all projects in the Fortune 1,000 are performed in an environmentally distributed setting. Co-location, once the norm, appears to be in rapid decline. [1] s research indicates that only 15% of projects are undertaken in an environment where more than three quarters of the project stakeholders are located in the same physical location. [1] also states that Microsoft is the de facto standard for Management today in the Fortune 1,000. Just over three-quarters of all respondents indicated that Microsoft was at least one of the tools they utilized to complete their projects. In our project, we also apply some basic functional requirements from the Microsoft. [1] have categorized the Management vendors profiled into four relatively broad categories. These vendor groups are: 1. Stand-Alone Vendors require 'thick client' software on all end user PCs and/or workstations, and are entirely self-supported DPM tools. These tools are broad-reaching suites, with a robust scheduling engine at their core. 2. Web Portal-Oriented Vendors are Web portals offering DPM capabilities through a standard Web browser ('thin clients'), and which utilize an ASP approach. They are not native critical path tools and usually focus on collaboration, document management, and tracking issues. 3. Hybrid Model Vendors support both thick and thin versions, and often offer traditional software licenses as well as ASP delivery of DPM services. These tools do typically support CPM natively. 4. Microsoft Extension Vendors are essentially 'shells' that use Microsoft as a plug-in for scheduling and resource management capabilities, and which add functional modules around it. As we have seen, the DPM tools are relied on the Web or ASP approach. The Microsoft Extension is a plug-in for scheduling and some capabilities but not clarify in the distributed capabilities. They do not deploy the benefits of distributed computing. What we propose is the DPM based on the middleware capabilities. We would probably classify our project in category 2 but actually we do not require web technology for communication. The middleware should take the responsibility of all communication functions. Unlike the Java applets or Java RMI client/server found in [2]. They developed the commercial project management tool called ActionPlan. The ActionPlan is 100 percent Java-based application from Netmosphere that supports real-time collaboration among Java thin clients to facilitate distributed project management. Java clients enable real-time data manipulation of project information on the Gantt view graphical user interface. This functionality would not have been possible using just only HTML. The ActionPlan has a nice look of GUI using Java applets. By its characteristic I would classify it as the second category, Web Portal-Oriented Vendor. In our project, we design the DPM using the concept similar to ActionPlan. There are two groups of users, project leaders and group members. The project leader is able to setup and control the project. The group members are able to view and update the project assigned to them. The problem is how the 5

member knows that he was assigned to the project and how many projects in his hand. The ActionPlan solved this problem by providing a check-in/check-out model for accessing the project management system. The sever has a detail of work assignment, so it know what projects the user is participated, then it can present his project schedule. In our design, when user logs in, we provide the function to lookup all the project components and find out the project that belong to him. Another solution that could be possible is the use of XML to keep track of the list of projects for users. This solution will be left for the future work. The basic functions and resources of the Management are gathered from [3] and [4]. General Plan of Work Requirement A distributed project management using the facilities of CORBA middleware e.g., its transparency. The client and server sides are multiple platforms and locations. Design of activities to be undertaken Support three main functions of project management; scheduling/tracking system, messages board/bulletin board and file-sharing system. These functions are services of a project component. A project component can be distributed and duplicated over the network. Figure 1 presents the Distributed Management Collaboration. Bulletin Board Team Members (can be multiple) Schedule Manager Leader Repository Figure 1 Distributed Management Collaboration Support two priority groups of users, the project manager/leader and the group member. The project manager/leader has the rights to manage the projects e.g., create schedule while the group-members update their work progress. These users are distributed over the network and invoke the services in the project components (see Figure 2 and 3). 6

get/put/create Leader Create/Delete/Modify Create/Delete/Post/view Bulletin Board Schedule Manager Repository Put/get Member Post/view View/Update Figure 2 System Context Manager Interface Member Interface Compo nent Member Interface BB SM PO PR PO Object BB Bulletin Board SM Schedule Manager PR Repository Figure 3 Components 7

LI MI LI 1 (Dallas) N (New York) MI MI MI Member Interface LI Leader Interface MI MI Figure 4 DPM Distributed Architecture Description of methods and procedures The methods and procedures in Distributed Management are described below, Schedule Manager: Name: Create_ Description: Can be called only by Leader, creates a new project Comments: Returns a reference to the created project object Name: Delete_ Description: Can only invoked by project leader, Deletes the project specified. Comments: Takes a reference to project object as argument Name: Set_Startdate Description: This Method sets the starting date of the project. Comments: Takes a reference to project object as argument, and ofcourse the date Name: Set_Finishdate Description: This method sets the finish date of the project that is the deadline for completion of the project. Comments: Takes a reference to project object as argument, and date Name: Create_Task 8

Description: This method creates a task entry with all details like starting and ending point, description, allotment, notes. Comments: Takes a reference to project object as argument, and the complete information of the task Name: Modify_Task Description: This method modifies a predefined task, according to the arguments supplied Comments: Takes a reference to project object as argument, and required modified values Name: Add_Member Description: This method associates the given team member to the project specified. Comments: Takes a reference to member object and project object Name: Delete_Member Description: This method dis -associates the given team member from the project specified. Comments: Takes a reference to member object and project object Name: Display_Schedule Description: This method displays the schedule for the specified project in different views based on the arguments supplied Comments: Takes a reference to project object and the type of view needed Bulletin Board Name: Post_BB Description: This method posts the given message to the specified bulletin board. Comments: Takes a msg in a buffer and project reference. Name: View_BB_date Description: This method allows the caller to view the bulletin board messages posted on a particular date.. Comments: Takes a reference to BB object and the date. 9

Repository (File-sharing system) Name: Put_File Description: This method stores the given file in the repository associated with the project and sets the type of the file {presentation, object model, diagrams, source code, binary etc.} Comments: Takes a reference to project object, the file, and the type Name: Get_File Description: This method returns the file requested, from the specified project repository. Comments: Takes the project reference and the file name. Name: View_Repository Description: This method displays the available files in the repsoitoy, the display can be limited to particular file type or all the files can be displayed Comments: Takes a reference to repository and file type {default: ALL} Technologies and Tools Technologies: Java/CORBA CORBA is the well-know and widely adopted by nearly 800 industrial companies which are the member of the Object Management Group (OMG). It is available on every major operating system, and is able to bind to a Java language. It provides interoperability that uses IIOP to retrieve and manipulate objects obtained from a remote ORB between different vendors. Moreover the CORBA when integrates with the existing computer systems guarantees that the investment is risk free. The new components can be easily added to the existing ones. Tools: o Software: VisiBroker 4.5, Ant 1.4, JDK 1.3 and Jcreater. o Hardware: PC running Windows 2000 and Mandrake Linux 8.0. 10

Time table for project completion The project schedule contains three main parts; system design, Implementation and Testing. The duration and task decompositions are displayed below. 11

Bibliography [1] http://www.technography.com/html/cs-pm.htm. [2] Ly E., Distributed Java Applets for Management on the Web, IEEE Internet Computing, May-June 1997, pp 21-26. [3] http://www.pmi.org/publictn/, Management Institute, September 2001. [4] http://www.pmi.org/publictn/pmnetworkonline/9-01information.html, Information- Driven Management, September 2001. 12