Code, Environment and Test inspects

Quote on this page: Code, Environment and Testcase inspects, by a second party, are must haves.

If you want to grow in maturity, You need the feedback to improve.

Do code and environment inspect to grow to the next level of quality


There are many reasons to do code quality control, such as:

  • Standardisation
  • Documentation level
  • creates documentation
  • Find hidden functionalities
  • Enforce standards and regulations
  • find (syntax) errors
  • find dead end software
  • ETC


But there is more to do: optimize and use the latest technics.


I have seen really huge improvements by doing code inspects and also environment inspects done by specialist. 


These improvements, like:

  • 0.9 seconds back to 0.3 seconds within a week.
  • from 218 transactions per second into >1800 transaction per second.
  • >99% reduce of Database deadlocks.



Real example 2:

Ingredients:

  • Mainframe Z/OS
  • DB2
  • Business requirement >500 Transaction per second
  • lot of incidents by database deadlocks
  • mixed transactions coming from batch load and online transactions
  • up to >300.000.000 transactions a day


The way we used to find a solution:

  • Ask 2 companies to inspect our environment, including Operating system, Subsystems and our way of programming.
  • Expensive path, but great value. Even after several years, still a lot benefits on this inspect.


Conclusion in this report:

  • huge technical depth on:
  • Operating system (parameters and not use of new benefits).
  • The way of programming.
  • DB2 parameter setting (special: commits).
  • DB2 workspace and indexes.
  • CICS parameter setting.



Real example (1):

Ingredients:


  • Java programming done by a team of juniors.
  • Juniors are working in India.
  • Application migrated from SUN/OS into RS6000/AIX
  • FINTECH: means huge amount of transactions
  • We are on the backend of the landscape, Business requirement 0.5 seconds response time.
  • The application did 0.9 seconds.
  • Sometimes 1.5 seconds (every full hour... a bad peak)


Several (internal) experts looking at the code and environment.

  • at the environment they found a wrong priority setting in LPAR (sorry very technical). Into another LPAR there starts, every full hour, a storage management process what delays all other LPAR-partitions.
  • this bad peak issue was solved within 1 or 2 days.
  • The internal experts could not deliver how we could speed up the application response time.
  • We hired an JAVA code expert to do a code inspect and asked him to deliver a report an advice to improve the application, including application performance.
  • Expensive guy, € 2800,00 a day. But he deliver his report in two days. Great report, great value.
  • We send this report and advice at Tuesday afternoon to our team in India.
  • Application runs at 0.1 to 0.2 seconds at Friday that week.

Actions by example 2:

below is only a small subset of what is done:

  • Mainframe Z/OS
  • reconfigure Workload Manager using the latest released benefits.
  • DB2
  • deep analyse to improve and improved indexes
  • Workspace realigned
  • The way of programming
  • because the huge amount of transactions (read database inserts) we changed the way of programming. Inserts done for example every 5000 transactions and then do a commit.
  • CICS parameter setting


Results:

  • >1800 Transactions per second.
  • reports running faster (one sample was 17 times faster as before)
  • several other mainframe Z/OS running faster/better as ever before.
  • number of Database deadlocks >99% reduced


The availability and the reliability of the application landscape was improved. Landscape feeling changes from doubtful to best of breath. Business happy, team happy and management happy.

A few lessons learned here:

  1. Every upgrade, look into it and use the benefits.
  2. Technical depth will kill your performance and your application and your business
  3. Code and environment inspects will bring you expert advice and helps you moving to a higher maturity level and engage your team members
  4. These inspects cost you money but delivers you a huge amount of benefits. Probably  delay of invest new Hardware or Software.

2nd quote on this page: there are people who can program, and there are programmers. Totally different people. Programmers will deliver structure and documentation in the code. Programmers will deliver error handling into the code.

RIEKELT PASTERKAMP



Management Drives: Oranje / Geel

Copyright @ All Rights Reserved