Introduction to software development process; software life cycle; software requirement and specifications; software requirement engineering; software design; software testing and validation; concept of language translation; the concept of project management; software quality assurance; fault tolerance; software evolution; software support and maintenance; introduction to software tools and environments