Understanding proof that $d_n : H_n(S_*) \rightarrow H_{n-1}(S_*'')$ is a homomorphism for a short exact sequence of complexes. From Rotman's Algebraic Topology
If $0 \rightarrow (S_*', \partial') \rightarrow ^i (S_*, \partial)^p \rightarrow (S''_*, \partial'') \rightarrow 0$ is a short exact sequence of complexes, then for each $n$ there is a homomorphism $d_n : H_n(S_*'') \rightarrow H_{n-1}(S_*')$ given by $\text{cls } z_n'' \mapsto \text{ cls } i^{-1}_{n-1} \partial_n p_n^{-1} z_n''$
And the proof is as follows:

Suppose that $z_n'' \in Z_n''$ so $\partial''z'' = 0.$ Since $p$ is surjective, we may lift $z''$ to $s_n \in S_n$ and then push down to $\partial s_n \in S_{n-1}.$ By commutativity, $\partial s_n \in \text{ker}(S_{n-1} \rightarrow S_{n-1}'') = \text{im } i$.  It follows that $i^{-1} \partial s_n$ makes sense; that is, there is a unique $s'_{n-1} \in S'_{n-1}$ with $is_{n-1}' = \partial s_n$.  Suppose we had lifted $z''$ to $\sigma_n \in S_n$.  Then the construction above yields $\sigma'_{n-1} \in S'_{n-1}.$
We also know that $s_n - \sigma_n \in \text{ker } p = \text{im}(S'_n \rightarrow S_n)$, so there is $x'_n \in S'_n$ with $s'_{n-1} - \sigma'_{n-1} = \partial' x'_{n} \in B'_{n-1}$.  There is thus a well defined homomorphsim $Z''_n \rightarrow S'_{n-1}/B_{n-1}'$.  It is easy to see that this map sends $B''_n$ into $0$ and that $s'_{n-1} = i^{-1}\partial p^{-1}z''$ is a cycle.  Therefore the formula does give a map $H_n(S''_*) \rightarrow H_{n-1}(S_*')$, as desired.

Question 1:  I don't understand what the author is doing in the first line of the proof with $p$.  The function $p: S_n \rightarrow S_n'$ is surjective which just implies all inverse image sets are nonempty.  Then what does he mean when he says "we may lift $z''$ to $s_n \in S_n$"?  Since the definition of $p^{-1}(z'') = \{s_n \in S_n :p(s_n) = z'' \}$, how can he just choose an arbitrary element of $p^{-1}(z'')$ and say that that's the inverse?  He, in the next few lines of the same paragraph, then does the same with when he supposes that $p^{-1}(z'') = \sigma_n$.  Is he using a different definition for $p^{-1}$ than the inverse image?
Question 2:  Supposing the above question is answered, how does the map send $B_n''$ into $0$ and how is $s_{n-1}' = i^{-1} \partial p^{-1} z''$ a cycle?
 A: To complement Noel's answer:
If $z_n'' \in Z_n''$, then because of the surjectivity of $p$ there exists some $s_n \in S_n$ such that $p(s_n)=z_n''$. Now this $s_n$ may not be unique, but this doesn't matter, because we're not trying to define a function on this step. For now we're just seeing if it makes sense to talk about picking an element in $(i^{-1} \partial p^{-1} )(z'')$, this is, if there exists some  $a \in S'_{n-1}$ such that $( p \partial ^{-1}i )(a) = z''$, and this is what the first lines of the proof deal with. 
Now we define $D: Z''_n \rightarrow H_{n-1}(S_*')$ as the map sending a cycle $z_n''$ to $[a]$, the homology class of the $a$ whose existence we just proved in the first part of the proof. To prove that this $D$ is actually a function, we have to make sure that it doesn't send the same $z''_n \in Z''_n$ to two different objects in $H_{n-1}(S_*')$. To prove this, let $z''_n \in Z''_n$ and suppose that $\sigma_n , s_n \in p^{-1}(z''_n)$. The first paragraph of the proof shows that in that case there exist unique $s'_{n-1}, \sigma'_{n-1} \in S'_{n-1}$ with $is_{n-1}' = \partial s_n$ and $i\sigma'_{n-1} = \partial \sigma_n$. In the second paragraph we do the following:
Since $s_{n}, \sigma_{n} \in p^{-1}(z''_n)$, then: 
$$p(s_{n}- \sigma_{n})= p(s_{n})- p(\sigma_{n})=z''_n - z''_n = 0 \implies s_n - \sigma_n \in \ker p$$
By exactness, $\ker p = \text{im}(S'_n \rightarrow S_n)$, so there's $x'_n \in S'_n$ with $i(x'_n)=s_n - \sigma_n$ Pushing $x'_n$ down with $\partial '$ and using conmutativity, we get $s'_{n-1} - \sigma'_{n-1} = \partial ' x'_n \in B'_{n-1}$, so $[s'_{n-1} - \sigma'_{n-1}]=[\partial ' x'_n] = [0] \in H_{n-1}(S_*')$, and therefore the difference $s_n - \sigma_n$ of the two different objects $s_n, \sigma _n \in p^{-1}(z''_n)$ is sent to zero on homology, so $s_n$ and $\sigma _n$ go to the same object in $H_{n-1}(S_*')$ and thus our $D$ is indeed a function. 
Noel already showed that whatever your choice of $(i^{-1} \partial p^{-1} )(z'')$ is, it is a cycle. To see that the induced map $H_n(S''_*) \rightarrow H_{n-1}(S_*')$ is well defined it remains to show that it is independent of the representatives. To see this, let $c \in S''_n$ and  $c' = c + \partial '' \ \overline{c}$,  for some $\overline c \in S''_{n+1}$. We want to make sure that $D$ sends both to the same object. $p_*$ is surjective, so there exist $b \in S_{n}$ with $p_n b = c$ and  $\overline{b} \in S_{n+1}$ with $p_{n+1} \overline{b} = \overline{c}$. We then have that $p^{-1}(c')= b' = b + \partial \overline{b} \in S_n$ is sent by $\partial$ to $\partial b + \partial \partial \overline{b} = \partial b$, so $c'$ gets sent to the same $a$ as $c$ by $D$.
A: Lifting $z''$ to $S_n$ means choosing some $s_n \in S_n$ so that $p(s_n) = z''$, this cannot be done canonically since in general there are many choices of $s_n$ for each $z''$ but it all becomes well defined in homology. 
As for your second question we know that $i(s'_{n-1}) = \partial s_n$ (since $p^{-1}z'' = s_n$) so $\partial i(s'_{n-1}) = \partial \partial s_n = 0$ but $i$ is a chain map so commutes with boundary operators, $i(\partial s'_{n-1}) = 0$ aswell which means that $\partial s'_{n-1} = 0$ since $i$ has zero kernel (is injective).
Hope this answered your question! The notation $p^{-1}z''$ is super confusing and is not widely used, so don't worry about trying to make sense of it, just know that $p^{-1}z'' = s_n$ iff $p(s_n) = z''$.
