Project Life Cycle Management System
Project Life Cycle Management System
Management System
Nageswara Rao Sripathi
MS Project Defence
Spring 2006
Computer Science Department
Old Dominion University
Overview
Introduction
Project Lifecycle
Application Overview
Modules
Technology
Coding
Conclusion
Introduction
IT Project Life Cycle
Limitation of Geographical
Locations
Information Overload
Multiple Systems & databases
Single Tool to track whole life cycle
of Project
IT Project Lifecycle
Risk
Analysis
Requireme
nt Analysis
Maintenanc
e
Developmen
t
Testing
Application Overview
5 Modules 1 for each Project
Stage
Repository for each Module
Reports
Project Based Segregation
Authentication
Application Security
Application Overview
Admin Functions
Log In
Setup New
Project
Create
Users
Assign
Project to
User
Set User
Access
User Functions
Log In
Select
Project
System shows
modules that
user has access
Select
Module
Phase
Phase
Phase
Phase
Phase
Review
Risks / Add
missing
Risks
Select top
20 Risks
I Collect Barriers
II Identify top 20 Risks
III Rate and Rank Risks
IV Rate and Rank Risks (if required)
V Rate and Rank Risks (if required)
Modules Requirement
Analysis
Process Flow
Enter
Business
Requests
Enter
Requirements.
Identify
Development
Req.
Map
Requireme
nts to
Business
Requests
Enter Use
case
details
Map Use
cases to
Requireme
nts
Upload
supporting
documents
Modules Development
Process Flow
Show new
Development
Reqs
Select
Requirement
Show Items
under
Development
Select Dev.
Item
Assign
Developer &
Enter Details
Upload
Supporting
Docs
Update
Percent
Complete &
Status
Upload
Supporting
Docs
Modules Testing
Process Flow
Show
completed
Dev. Items
Select Dev
Item
Show Items
under Testing
Select
Testing Item
Assign
Tester &
Enter Details
Upload
Supporting
Docs
Update
Percent
Complete &
Status
Upload
Supporting
Docs
Modules Maintenance
Process Flow
Enter
New
Bugs
Show
existing
Bugs
Select Bug
Update Bug
Details
Upload
Supporting
Docs
Modules Repository
Single point of access to complete
project documentation
Documents secured by module
Quick access to required documents
Prevent multiple people working on
same file
Control who can view and edit each file
Track file history
Modules Repository
Process Flow - Owner
Select
Project
Select
Module
Upload
Doc
Select
Project
Select
Module
View Docs
Listing
Grant
Access to
Users
View/Delete
Docs
Modules Repository
Process Flow Owner / User
Select
Project
Select
Project
Select
Module
Select
Module
View
Available
Docs
View
CheckedOut
Docs
Check-out
Docs
Check-in
Docs
Module - Reports
Intuitively designed for ease-of-use
Access restricted by Module
Report Listing
Project Status Report
Module Status Reports
Requirements Stakeholder Requests
Mapping Report
Use Case Requirement Mapping Report
Technical Specification
Application Server : IIS
Front-End : ASP.NET, Java Script,
HTML
Middle-Tier : C#
Database : MS SQL SERVER
Technical Specification
Architecture
3-Tier Architecture
Coding
Front-End
ASP.NET
Web Forms
Development using Microsoft Visual Studio
Java Script used for Lookups
Middle-Tier
C#
1 Code Behind file for each .aspx file
ADO.NET used for database connectivity
Coding
Database
MS SQL SERVER
Stored Procedures, Triggers & Views used
to reduce load on Application Server
Statistics
50 Tables
2 Views
14 Stored Procedures
6 Triggers
Database Design
Database
Database Design
Database
Database Design
Database
Views
Named Query
Uses
Easier retrieval of required data
Standardization
Reduce I/O operations from Middle-tier
document_acl_v
Returns the Access Control List and Status of the
documents
project_status
Returns the current status of all modules in the project
Triggers
An action(s) performed automatically when a
data manipulation operation is performed on
the database
Uses
Enforce business rules
Reduce I/O operations from Application Server
Faster application development, code is common
to all database applications
Auditing/tracking purposes
Triggers
bugs_history_trg
When the status of a bug is changed the bug history is automatically updated
phase1_to_phase2_trg
When the Delphi Admin consolidates the risks in Phase I, they are automatically
moved to Phase II
project_delphi_status
When a new project is created, the initial status for Delphi module is updated
new_file_update
When a new document is uploaded the entry is recorded in the file transaction
history table
delete_document_history
When a document is deleted, the corresponding Access Control List and Document
history are deleted
update_file_status
When a document is uploaded/downloaded the file status is updated
Stored Procedures
A program written in PL/SQL which is stored
in the database
Uses
Encapsulate business logic common to all
database applications
Reduce load on Application Server
Perform complicated operations/queries specific to
the database
Enforce data validation
Stored Procedures
insert_req_stkh_mapping
Inserts Requirement & Stakeholder Mapping Details
update_req_stkh_mapping
Updates Requirement & Stakeholder Mapping Details
insert_uc_req_mapping
Inserts Use Case & Requirement Mapping Details
update_uc_req_mapping
Updates Use Case & Requirement Mapping Details
insert_bug
Inserts new Bugs
update_delphi_status
Update Delphi Phase Activation Status
Stored Procedures
user_access_details
Returns modules that user has access to
set_user_access
Sets User access to modules
get_phase3_barriers
Creates barriers for Phase 3 based on Phase 2 user response
get_phase4_barriers
Creates barriers for Phase 4 based on Phase 3 user response
get_phase5_barriers
Creates barriers for Phase 5 based on Phase 4 user response
get_results
Returns Results based on Ranking of Barriers
Web.config
Divided into 2 sections - appSettings,
system.web
appSettings
Holds application specific data items
Allow behavior to be modified without changing
source code
System.web
Holds configuration settings of ASP.NET
Configure ASP.NET Security
Enable/Disable Trace
Web.config
Set the database connection string
<appSettings>
<add key="connectionString"
value="server=localhost;database=project;uid=sa;pwd=abc123" />
</appSettings>
ASP.NET Security
Authentication
Enables recipient of request to ascertain callers
identity
3 types of authentication supported
Windows Authentication
IIS to authenticate the user based on their windows login
Passport Authentication
Microsoft Passport web service is used
Requires Passport SDK
Forms Authentication
ASP.NET Security
Forms Authentication
Set authentication mode in Web.config
<configuration><system.web><authentication mode="Forms">
<forms loginUrl="home.aspx />
</authentication> </system.web></configuration>
Application Security
Project Access
Sysadmin sets user access to projects
When user logs in project access is checked
Show projects that user has access
Module Access
Sysadmin sets user access to modules
Dynamic Menus generated
Every web form checks if user has access
Use menu config settings from web.config
Show/hide menu items based on access
Session Time-Out
When the user session times out, he is re-directed to login
page
Sessions
Session Maintenance
DataGrid
Why .NET?
Powerful IDE
Easily configure application
settings
ASP.NET Security
Session Maintenance
DataGrid & ADO.NET
Conclusion
Great Tracking Tool
Web-based easy access
No Geographical Limitations
Avoid using multiple systems &
databases
Learning experience technically
and functionally
Questions???
THANK YOU