satyam computer services limited. name: sis remediation customer: xxxxx project type: development...

17
Satyam Computer Services Limited

Upload: lydia-riley

Post on 28-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Satyam Computer Services LimitedSatyam Computer Services Limited

Satyam Computer Services LimitedSatyam Computer Services Limited

Name : SIS Remediation Customer : xxxxx Project Type : Development Project Manager : Punit Pandey Team Size : Onsite - 5, Offshore – 25 (peak) Start Date : xxxxx End Date : xxxxx Database : Oracle 9i Target Technology :

– WebSphere® Application Server– WebSphere MQ Series– IBM Directory Server– IBM HTTP Server

Tools used : – Rational XDE, VSS, Dream weaver, Adobe

Photoshop CS, Jtest, Load Runner,

Project Details

Satyam Computer Services LimitedSatyam Computer Services Limited

Business Needs & BenefitsNeeds Remediate existing application to Enterprise Architecture Build functional inadequacy to meet business needs Ensuring the developed system are,

Scalable in terms of users, source systems, managed transactions and geographic deployment

Performant based on the non-functional specification Consistent with security standards which may be issued from time to time Resilient with no single point of failure Locale-sensitive Robust, with availability in-line with the non-functional specification Maintainable at a code and administrative level Compliant with relevant legislation, regulations and company policies and standards

Benefits Timely Collection of Payments Gamut of the outstanding amounts for all lines of business at one place Ease of use Application with rich scalability Met XYZ company performance criteria Substantial cost savings achieved

Satyam Computer Services LimitedSatyam Computer Services Limited

Application Details

Size of the project - 146 P Months

Methodology – RUP/Satyam OOAD

Architecture – N tier

Source Environment

Technology Size

• VB• ASP• SQL Server 2003

• No. of Screens : 35• Database Size

– Tables : 21– Views : 16 – Size : 630 MB

Target Environment

Technology Size

• WebSphere Application Server• WebSphere MQ Series• Web Services• IBM Directory Server• IBM HTTP Server• Oracle• Jtest, Jprobe & Load Runner

• No. of Screens : 157• Database Size

– Tables : 57• Java Code : 290kLoc• Effort: 131 P Months

Satyam Computer Services LimitedSatyam Computer Services Limited

Application Features

Reduce provisioning for outstanding premiums Mini Search Engine Rule configuration Automatic and ad-hoc generation of reminder notice via letter,

fax and email Daily scheduled uploads and updates of policy, Account and

Cash details Generating follow up action items/tasks and assign responsibility

to users based on business rules Creating templates for letters, fax and email Role based security

Existing Application New Application

Satyam Computer Services LimitedSatyam Computer Services Limited

Solution Highlights

Delivery Model - SIS has been developed in an incremental and iterative model based on the functional grouping of the requirements.

Non functional characteristics

Enterprise-class on the dimensions of Scalability, Robustness, Resilience, Security, Maintainability and Interoperability

Less costly to support / host Suitable for internationalization and localization to enable use in a

pan-European context Functionally extensible with a manageable degree of risk Meet regulatory requirements Compliant with The META Architecture

Technical Solution

Layered Architecture for Loose coupling of reusable common services - Usage of J2EE as the platform technology

Integration via the Global Service Bus, using Web Services Message Oriented Middleware as a middleware technology Web Application Framework - Struts Persistence Framework – Hibernate Application to run on IE 5.5+ GUI Design Retain the business flow of the existing application

Uniqueness of the proposed Technical Solution - Multi Layered Architecture, GUI Design, Search Engine within SIS, Automated Rule Generation, Role Based Security System, Integration and interfacing with Document Rendering & Document Output Services that enabled communication needs of Email/Print/Fax, Integration with Tasking services that provide information to other applications.

Prototype Iteration 1 Iteration 2 Iteration 3

Functional screen navigation through static HTML

Architectural base lining - main business flow to build the framework

Complete functionality except integration points

Build supplemental functionalities & all integration points

Final delivery including UAT bug Fixes and performance enhancement

Iteration 4 Post Live Fixes

Minor enhancements, additional features, performance enhancements

Satyam Computer Services LimitedSatyam Computer Services Limited

Onsite – Offshore Distribution

Iterative - Phase Onsite Offshore Onsite-Offshore Ratio

Behavioral Modeling /Requirement Gathering

Done By Customer

Requirement Elicitation & Prototype 80:20

Technical Modeling / System Requirement Specification

70:30

Detailed Modeling 30:70

Coding / Construction 10:90

Class Integration Testing 10:90

System Testing 10:90

Acceptance Testing Support 30:70

Satyam Computer Services LimitedSatyam Computer Services Limited

Lessons Learnt

General Have a strong set of technical resources on board before start of any high end technology

work. Requirement are never 100% complete and so the need to baseline the basis of delivery,

in other words Implicit requirements leading to scope creep. Business user expectation is to achieve 100% accuracy for go Live needs to be handled

with care Firm commitment from client on their resources. Regular communication between onsite and offshore team and also within the team to

address the status check as well as technical & functional understanding. All standards, review processes needed to set and enforced from initiation of project A induction training to be conducted for every new member getting in to team in the middle

of development process. A strong work allocation process is required for development work based of RUP based

Rapid Application Development A new/innovative tracking and monitoring process to be in place as the traditional process

is not sufficient for this kind of work.

Technical For every development engagement a dedicated DBA to be deployed, even though they

may not be fully occupied at times. Start early on the integration points Don’t forget network traffic (client-server) concerns while designing any web application

especially around page size, java script file sizes, etc.

Satyam Computer Services LimitedSatyam Computer Services Limited

Best Practices

Dedicated business analyst during all phases of project life cycle as being the gate keeper between Satyam and Business users.

Delivery of Prototype (what you see and what you get Model) to the Business users before actual delivery of application and obtain their approvals on UI as well as flow of application

Use of automation, Tools used to review, unit and performance test the code. Tools used for generating Hibernate XML, object relationship.

Use of internet or googling, Help on technological problems Use of open source tools/code concepts

Dedicated team/resource for UI design and Testing Deploying UXM expert to captures user’s needs in designing GUI

Innovative way for work allocation Use case leaders, Use case based ownership throughout project life cycle. Flat structure in the project team including interactions with customer (Agile

project Management)

Satyam Computer Services LimitedSatyam Computer Services Limited

Period : November 2005 – February 2007

METRICS INFORMATION

Satyam Computer Services LimitedSatyam Computer Services Limited

METRICS INFORMATION

MetricsUnit of measurement

Goal Upper Bound

Lower Bound Iteration

1Iteration 2&3

Consolidated Iteration 1-4

Post live Fixes

Consolidated for the project

Remarks

Effort Estimation Variance Percentage 4.6 9.4 1.4 29.98 8.97 25.22 -33.94 17.53

Primarily the reason for effort variations are as below, New and complex technology with in experience

Team Effort required to integrated with interface has taken

more time than estimated Elongated UAT and delay in signoff from customer on

UAT completion

Schedule Estimation Variance Percentage 4.6 9.4 1.4 16.50 15.89 10.28 4.0 1.86

Size Estimation Variance Percentage 10 20 5 67 NA NA NA 67Due to Change in the scope of the project, re-estimated after completion of Iteration 1

Requirement Volatility Index Percentage 84 NA 84 23 39

Productivity- Java LOC/Pday

31 55 5344.55 127.55 92.69 210.04 101.27

Delivered Defect Density Per kloc 0.2 0.4 0 0.001 0.001 0.001 0.003 0.001

Cumulative Defect Removal Efficiency percentage 96 100 91.9 99 99 99.7 99.7 99.55

Defect Density in Code Review Defects/KLOC 1.6 7 0 65.79 81.28 194.108 1086.52 201.73

Numbers are high primarily due the usage of Jtest and its in-built rules such as Formatting and standard related errors flagged by Jtest Tool.

Defect Density in Inspection Defects/KLOC 0.4 1.1 0 1.3 1.3 1.3 1.3 0.76

Less number of document went through the inspection processInspection Rate Page/hrs 0.70 0.90 0.50 0.315 0.315 0.315 0.315 0.38

Review Efficiency percentage 69.8 82.8 55.9 54% 43% 29% 84% 99.17

Cost of Quality % of effort 32.1 41.1 24.7 18.7% 24.27 16.71 40.62 18.87

Rework Due to Defects % of effort 3.9 6.4 1.9 6.0% 5.0% 5.3% 7.79 5.6

Project Maturity Index  Scale 4 4.5 3.5 1 1.67 1.67 4.67 4.0  

Satyam Computer Services LimitedSatyam Computer Services Limited

CUSTOMER APPRECIATION

From: [email protected] [mailto:[email protected]] Sent: 15 December 2005 08:41To: Siddharth_GuptaSubject: Marsh - feedback on SIS project team

Sid,

As discussed last night, the feedback from Marsh on the quality of people you have put on site is very good. The business have commented to me that the Norwich based team (Gayathri and Chhavi) are doing are good job in working with them and quickly gaining knowledge of the underlying business processes and requirements. From my point of view, the team as a whole are doing a good job in all aspects - business analysis, architecture and design, and project management.

The 2 weeks slippage we have encountered has been caused by; (1) differences in approach and communication between business users and analysts (2) requirement to revise UI for main user screens - hence usability expert on board (3) under-estimation of extent of completeness of use case model issued as part of ITT document set

Please call me if you want to discuss any of this feedback Thanks Tim

Satyam Computer Services LimitedSatyam Computer Services Limited

CUSTOMER APPRECIATION

From: [email protected]: Thursday, March 23, 2006 10:48 PMTo: Punit_Pandey; Vinod_Gopala; Sachan_Dassi; Anupam_BhasinCc: Siddharth_GuptaSubject: SIS code review resultsAll,Please see attached results of the SIS code review of iteration 1.Can you pass on my thanks to the development teams responsible for this code. The results of this review are a credit to their hard work and professionalism.RegardsTim------------------------Forwarded by Tim Bennett/LON/GB/Marsh/MMC on 23 Mar 2006, 17:04 Thursday ---Paul S Smith 23 Mar 2006, 16:27 Thursday To: Tim BennettSubject: Re: SIS code review (Document link: Tim Bennett)Tim,Overall: The code seems to be in very good shape. There has obviously been good attention to detail in the creation of the various packages and a close adherance to naming standards and practices.Details:The code is well structured and efficient approach to packages. The EJB & Web tier classes do not overlap each other, always a good sign. There is clear and consistant naming standard in the code, see the struts Action & Form class package for an example. Every class that was inspected was well commented and method comments, where required, were again both present and clear.The reuse of the opensource Netscape Ldap classes is very good to see. All db access appears to be through Hibernate, as per the design and architecture. There is limited use of bespok security objects, they have used the javax.security objects where possible. Sometime the code can be hard to read, in complex & large class files they should consider reformattiing code to be easier to understand. Also some method appear to be very large, is it possible to break these up?See the SaveAction.java class for an example. Comments in the code indicting future actions should not just be comments, they should use the //TODO: whish as well as commenting will automatically show up the tooling (e.g. RAD 6 has a view of all //TODOs) The web.xml has 'Serve classes by name' enabled- should this be the case? Normally this is considered a security hole as it enables attackers to call classes at will. There are may unused imports in the code. These should be removed. There are references to JGroups (a multicasting technology), can we have a reason why these references are still in the code and what they are doing there in the first place? There is a spelling mistake in a constant: ISISConstants.USE_FIRTS_PASS.Overall the code is well executed and appears to be conformant to our standards.Regards,Paul

Satyam Computer Services LimitedSatyam Computer Services Limited

CUSTOMER APPRECIATION

Marsh spotlight dashboard - Apr'06

customer feedback - SIS 20070312.doc

Now in Production.doc

Midway Feedback – Apr’06

In Production – Dec’06

Closure Feedback – Mar’07

Satyam Computer Services LimitedSatyam Computer Services Limited

Thank You!

Satyam Computer Services LimitedSatyam Computer Services Limited

Past

Satyam Computer Services LimitedSatyam Computer Services Limited

Current - Screenshot