Analysis and Characterization of Author Contribution Patterns in Open Source Software Development