Software Engineering
Part (I)-Introductory Session
By: Mehran Alidoost Nia
Shahid Beheshti University, Spring 2024
1 The Story of Software
Technologies
2002
2002
2002
2002
2001
2001
22 Languages,
one Platform
2002
2002
2002 2003
2005
2006
Web Development
2007
2007 2009
2010
2010
2010
2011
2011 2012
2012
2013 2014
2015
2016 2017
2019 2018
2020
2021
2020
2023
2022
2 Software Engineering
in Real World
SE Evolution
▪ Free & open source software.
▪ Horizontal scaling.
▪ Extreme programming
○ Test-first development.
○ Continuous integration.
○ Refactoring.
▪ Infrastructure as code.
▪ Continuous delivery.
▪ Low dependency
architecture.
Mary Poppendieck
3 Course Config.
Grading
○ Projects= 30 points
■ 3 phases.
○ Midterm = 30 points
■ Ordibehesht 30, 1403.
○ Final = 40 points
○ Late submission has 100% penalty.
The Main
Reference
○ Software Engineering: A Practitioner's Approach, Roger Pressman and Bruce
Maxim, 9th Edition, September 2019.
The Main
Reference
○ Scrum: The Art of Doing Twice the Work in Half the Time Hardcover, Jeff
Sutherland, J.J. Sutherland, September 2014.
Complementary
Resources
○ Product Leadership: How Top Product Managers Launch Awesome Products
and Build Successful Teams, Richard Banfield, Martin Eriksson, Nate
Walkingshaw, 1st Edition, 2017.
○ Software Engineering at Google: Lessons Learned from Programming Over
Time, Titus Winters, Tom Manshreck and Hyrum Wright, 1st Edition, 2020.
○ Clean Architecture: A Craftsman's Guide to Software Structure and Design,
Robert Martin, 1st Edition, 2017.
○ Domain-Driven Design: Tackling Complexity in the Heart of Software, Eric Evans,
1st Edition, 2003.
○ Requirements Engineering for Software and Systems (Applied Software
Engineering Series), Phillip A. Laplante, 3rd Edition, October 2017.
4 Contact the Instructor
● Email: mehran.alidoost.nia@gmail.com
● Telegram: @alidoostnia

introduction to Software Engineering.pdf