CS1699 Special Topics in Computer Science
DEPARTMENT OF COMPUTER SCIENCE | UNIVERSITY OF PITTSBURGH

 

CEI

CEI is a nationally recognized strategy, technology architecture and software consulting company. CEI provides IT staffing, technical project management and eBusiness integration and outsourcing services to clients across the United States, including over 60% of the Fortune 50.

Headquartered in Pittsburgh, CEI has over 400 employees and offices in New York and California. The company also has an offshore development center in Chennai, India.

Contact: Steve Mahoney

Project #1: Corporate Compliance Portal
Project #2: Service-Oriented Architecture (SOA) Business Services Platform
Project #3: Online Jobsite Portal

Project #1: Corporate Compliance Portal

Project Description:
Purpose
Due to new compliance regulations, such as the Sarbanes-Oxley Act, stemming from the Enron and Arthur Anderson accounting scandals, business compliance has become an important issue for corporations. Financial heads need visibility into financial and accounting information at all levels in the corporation.

A corporate compliance portal provides an at-a-glance view of the financial status of the company as well as the ability to drill-down into data. In addition, to ensure compliance, the portal must provide full audit trails and ability to determine the source of data and details behind the data.

Deliverable
The student team will develop a corporate compliance portal that provides summary reports of the client's accounting and sales information, ability to drill-down into the information and an audit trail mechanism. As part of the business analysis, team members will conduct a corporate records management analysis to determine a framework for the portal. The solution can be created using open source technologies or off-the-shelf technologies from Microsoft or IBM.

Methods
The software process will involve:
· Requirements gathering from the client (CEI)
· Business analysis of requirements
· Development
· Quality assurance testing
· Deployment of the application
· Project management tracking

Teams shall use an iterative or spiral development process and employ Agile methodologies where appropriate. Teams shall interact directly with a client liaison regarding project status, requirements, etc.

Project Duration:
3 months

Project Size:
4 roles: Project Manager, Business Analyst, Developer, Quality Assurance Analyst

Individuals can play multiple roles on the project. For example, Business Analyst/Quality Assurance Analyst

Technologies:
Tomcat/JBOSS with JAVA for JSP and Servlets and MySQL for DB Access. An alternate technology can be Microsoft .NET with Microsoft SQL Server Desktop (MSDB).

 

back to top

Project #2: Service-Oriented Architecture (SOA) Business Services Platform

Project Description:
Purpose
An organization creates a service-oriented architecture (SOA) to interface business functions among multiple application groups within the organization. A classic example of this is the credit/debit business processes required in banking institutions. Deposits and withdrawals from multiple sources may occur for a single account. Data from these transactions must be interfaced and coordinated so that the account balance is accurate.

SOAs use Web service technologies, such as Simple Object Access Protocol (SOAP) and WSDL definitions, to integrate applications using standard, reusable interfaces with low development, deployment and maintenance costs. XML often is used to transport the data between systems.

Deliverable
The student team shall develop a SOA, enabled by Web services technologies, to access data from various back office databases and systems. The team will analyze and model the sales and financial business services of the client organization and then design a SOA solution.

The team will develop, test and implement a simple proof-of-concept business function to validate that the SOA is technically sound and can be scaled across an organization. Either open source technologies or off-the-shelf technologies from Microsoft or IBM can be used for the solution.

Methods
The software process will involve:
· Requirements gathering from the client
· Business analysis of requirements
· Development
· Quality assurance testing
· Deployment of the application
· Project management tracking

Teams shall use an iterative or spiral development process and employ Agile methodologies where appropriate. Teams shall interact directly with a client liaison regarding project status, requirements, etc.

Project Duration:
3 months

Project Size:
4 roles: Project Manager, Business Analyst, Developer, Quality Assurance Analyst

Individuals can play multiple roles on the project. For example, Business Analyst/Quality Assurance Analyst

Technologies:
Tomcat/JBOSS with JAVA for JSP/Servlets/EJBs combined with Axis (SOAP).
An alternate technology can be Microsoft .NET using the SOAP Toolkit that is part of the .NET framework.

 

back to top

Project #3: Online Jobsite Portal

Project Description:
Purpose
Online job sites are now being used to source new staff and perform the online matchmaking process between an employer and employee. The efficiency of searching for opportunities and candidates are replacing traditional sources like newspapers, job fairs, etc. The UPITT Computer Science Dept. would like to create a job site that allows students and employers to have an online way to connect students with employers. Students can publish resumes and other information and employers can publish job opportunities.

Deliverable
The student team will use an existing online job site created in ATG, a J2EE-based application server, and customize the look and feel and features to the requirements of the UPITT Computer Science Dept. The solution will use the ATG J2EE application server and the student will be leveraging J2EE programming concepts including tag libraries, JSP, servlets and an Oracle 8 database. A CEI-developer will provide architecture-guidance on the core technology and current system architecture.

This project will provide an opportunity for maintenance project experience. Maintenance represents a majority of time typically spent on IT projects.

Methods
The software process will involve:
· Requirements gathering from the client (UPITT CS)
· Business analysis of requirements
· Development
· Quality assurance testing
· Deployment of the application
· Project management tracking

Teams shall use an iterative or spiral development process and employ Agile methodologies where appropriate. Teams shall interact directly with a client liaison regarding project status, requirements, etc.

Teams will be provided an overview of key software processes within the Agile world.

Project Duration:
3 months

Project Size:
4 roles: Project Manager, Business Analyst, Developer, Quality Assurance Analyst

Individuals can play multiple roles on the project. For example, Business Analyst/Quality Assurance Analyst

Technologies:
ATG with J2EE programming techniques including: JSP and Servlets with DB access to an Oracle 8 system.

Project Team
Michael DaParma
Nik Mihalick
Bill Morris
Jason Yu

Project Progress
Midterm Presentation

back to top