Dubula, I think I can give you a steer on PL attribution. Assuming we're using the same terminology: "PL attribution" means "PL explain by attribution" and is one form of explaining PL (typically from one day to the next) in terms of changes in underlying inputs to whatever you are pricing (eg asset price, volatility, interest rates).
A derivative is typically priced as a function of many variables eg P(S, V, R, t) where S = underlying price, V = volatility, R = interest rate, t = time to expiry. You can measure all these variables (and calculate derivative price P) from one day to the next (P1, S1, V1, R1, T1), (P2, S2, V2, R2, T2)
I am aware of two basic methodologies of PL explain: (i) by greeks/Taylor Series and (ii) by attribution. (ii) can be split into independent/cumulative versions (I'll explain this below).
First of all you list all the variables used to price your derivative.
In (i) you calculate all the greeks of interest (normally all first order derivatives: dP/dS=delta, dP/dR=rho, dp/dV=vega, dP/dT=theta, etc) and probably some second order (eg d2P/dS2=gamma, d2P/dV2=volgamma, d2p/dSdV=vanna). For each of these you use the mathematical derivative and the difference in value of the underlying(s) to estimate PL attributable to the change in that underlying. This is basically Taylor series estimate on a function (price P) of N variables. The sum of all the PL estimates is your estimate of PL under the greeks. It may or may not be a good estimate of realised PL, and that in itself may give some clue as to reliability of greeks for hedging.
PL_est = (dP/dS) * (S2-S1)
+ (dP/dV) * (V2-V1)
+ (dP/dR) * (R2-R1)
+ (dP/dT) * (T2-T1)
+ 1/2 * (d2P/dS2) * (S2-S1)*(S2-S1)
+ 1/2 * (d2P/dV2) * (V2-V1)*(V2-V1)
+ (d2P/dSdV) * (S2-S1)*(v2-V1)
+ ...
So you end up with a list of PL components each corresponding to one greek.
Note, just like Taylor series, you could calculate greeks to arbitrary N-th order, but the higher order terms (over 2nd order) will generally be negligible in value.
In (ii) rather than calculating the greeks, you calculate price P for day 1, then recalculate the price P changing each of the inputs (to that of day 2) so that
P(S1, V1, R1, T1)
P(S2, V1, R1, T1) : S
P(S1, V2, R1, T1) : V
P(S1, V1, R2, T1) : R
P(S1, V1, R1, T2) : T
By changing each component you get a portion of PL attributable to the change in that underlying. Again, the sum of these may or may not result in a good match to the true PL.
A variation of (ii) involves doing the changes cumulatively:
P(S1, V1, R1, T1) : P1
P(S2, V1, R1, T1) : S
P(S2, V2, R1, T1) : S,V
P(S2, V2, R2, T1) : S,V,R
P(S2, V2, R2, T2) : S,V,R,T
This way you finally arrive at the realised price and the cumulative version exactly "explains" the realised PL. However, it may be slightly suspect in that the underlying changes are not made independently, so cross/higher order effects are not really investigated.
Note - in a real situation, the volatility and interest rate inputs may have a complex structure ie rather than a scalar (zero dimension) value they may be interpolated from a 1, 2 or 3 dimensional grid, so while the basic methodology above still applies, in practice, the calcs will become a lot more cumbersome.
Note - in interest rate derivatives world, the interest rate structure will probably be considered the "underlying asset".
Note - the price of some financial derivatives can have very odd behaviour around certain points (eg barrier option close to the barrier) and the greeks can be misleading around these points, sometimes rendering the explain exercise useless.
Finally, a disclaimer: its been a while since I did any of this so apologies in advance for any errors