It's common sense to state that the production of any software product involves a human element, at least to some extent. We all have different personality traits, and the way we perceive, plan, and execute any activity is influenced by these characteristics. Typically, software development is a product of teamwork, involving several people performing various tasks. The success and failure of software projects reveal the human factor as one of vital importance. Not everyone can excel at every task, thus better results are achieved if people with particular personality traits are assigned to different aspects of a project, especially the roles best suited to their ability. The authors mapped some opposing psychological traits, such as extroversion-introversion, sensing-intuition, thinking-feeling, and judging-perceiving, to the main stages of a software development life cycle. Consequently, they concluded that assigning a person with specific psychological characteristics to the stage of the software life cycle best suited for his or her traits increases the chances of a successful outcome for the project.