There are many products which have little or no value in isolation, but if combined with other products or services, they generate more value. The utility that a given user derives from these products depends upon the number of other users who consume the same products. This kind of positive consumption externality is defined as a network externality. Network externalities are pervasive in the computer in the computer software market. While software vendors consider pricing strategies, they must also take into account the impact of network externalities on their sales. Our main interest in this paper is to describe the firm's strategies and behavior in the presence of network externalities. Based on the two-stage model in this paper, we find that the software firm will charge a lower price to attract more users in the first stage, then charge a higher price as it does in monopoly as traditional economic theory indicates. And our dynamic model shows that the optimal upgrade time occurs when gross profit of the first edition equals the gross profit of the second edition of the software. This implies that either too earlier or late promotion of the new software version will causes profit loss.