Nature of Software, Overview of Software Engineering, Professional software development, Software engineering practice, Software process structure, Software process models, Agile software Development, Agile process models, Agile development techniques, Requirements engineering process, Functional and non-functional requirements, Context models, Interaction models, Structural models, behavioral models, model driven engineering, Architectural design, Design and implementation, UML diagrams, Design patterns, Software testing and quality assurance, Software evolution, Project management and project planning, configuration management, Software Process improvement.
Learning Outcomes
Describe various software engineering processes and activities
Apply the system modeling techniques to model a medium size software system
Apply software quality assurance and testing principles to medium size software system.
Discuss key principles and common methods for software project management such as scheduling, size estimation, cost estimation and risk analysis
Software Engineering, Sommerville I., 10th Edition, Pearson Inc., 2014
Software Engineering, A Practitioner’s Approach, Pressman R. S.& Maxim B. R., 8th Edition, McGraw-Hill, 2015.
Beginning Software Engineering 1st Edition, by Rod Stephens, ISBN-13: 978-8126555376, Publisher: Wrox, 1st Edition (March 23, 2015)