This document discusses conventional and object-oriented software engineering. It begins by defining software engineering and describing the importance of following an engineering approach. Next, it covers the principles and life cycle of conventional software engineering. It then introduces object-oriented software engineering, describing its principles and benefits like reusability, modularity, and improved maintainability. Finally, it lists some software development models that can apply object-oriented concepts.