SlideShare a Scribd company logo
Introduction to software engineering
Introduction to software engineering
‫بقسم‬ ‫استشاري‬
‫والتطوير‬ ‫البحث‬
‫مساعد‬ ‫مدرس‬
Practical Software
Engineering
By Mustafa Gamal
R&D Consultant At SECC-ITIDA
mugamal@itida.gov.eg
https://about.me/mustafamg
Software Engineering Competence Center
Introduction to software engineering
‫الملل‬ ‫صباح‬
‫احسن‬ ‫النبي‬ ‫صالة‬

‫استاهل‬ ‫اللي‬ ‫انا‬ ‫العظيم‬ ‫وهللا‬
‫ده‬ ‫القسم‬ ‫دخلت‬ ‫عشان‬
‫تخلص‬ ‫المحاضرة‬ ‫لما‬ ‫يصحيني‬ ‫حد‬
$#$$@#%#!!!
A software Engineer is
A software engineer is a licensed professional engineer
who is schooled and skilled in the application of
engineering discipline to the creation of software.
SW Eng. Vs Programmer
Programmer
• Creates the codes that make a
program run
Software Engineer
• Creates the designs the
programmer implements.
Sample job announcement for Software
Engineering position 1/4
• We seek an experienced individual who can be part of our advanced
development team, working on cutting-edge solutions for Search
Engine related Business Intelligence. Engineers will gain exposure to
the entire software development lifecycle including requirements
gathering, development and testing. Prospective candidates are
expected to have a minimum of 3 years experience in Enterprise level
application development in PHP, MySQL / Postgres and other related
Open Source technologies.
Sample job announcement for Software
Engineering position 2/4
• The ideal Candidate would have:
• Commercial experience in enterprise software development
• Experience in object oriented programming / modular programming is
essential
• Experience in the full software development lifecycle: from business / systems
analysis, through requirements gathering
• Experience in working with structured and agile software methodologies
• A degree in ICT or equivalent qualifications
Sample job announcement for Software
Engineering position 3/4
• Key Responsibilities:
• Requirements gathering, planning and designing solutions considering
scalability and performance
• Design and develop commercial software and system modifications from
supplied specifications
• Extending currently existing software solutions
• Providing technical guidance for software engineers
• Assisting the project managers in technical documentation
Sample job announcement for Software
Engineering position 4/4
• Requirements:
• Minimum 3 years experience in PHP based application development together
with ZEND or a similar MVC FRAMEWORK such as Laravel / Symphony or
Codelgniter
• Hands on experience in MySQL database related system developments and
ability to write efficient queries.
• Knowledge of CSS, AJAX, JavaScript, JQuery and other web technologies will
be an added advantage
SW
Engineering
Technical
Aspects
Managerial
Aspects
From Job Description
• Software engineering is not the same as programming
• Every software engineer knows how to program, but not every
programmer is a software engineer.
From Job Description
• part of our advanced development team:
• Software engineering is typically a group effort, with differing and often fluid
roles and responsibilities for the group members.
• Requirements gathering:
• Engineers develop software to meet specifications set by their respective
companies designed for their client, and generally must adhere to specific
standards and practices.
• Engineers will gain exposure to the entire software development
lifecycle:
• Engineering projects have timelines, release dates, and considerable
interaction between people responsible for various components.
From Job Description
• Engineers will gain exposure to the entire software development
lifecycle:
• Engineering projects have timelines, release dates, and considerable
interaction between people responsible for various components.
Career Path
Trainee
Junior
SW Eng
Software
Engineer
Senior SW
Eng
Lead SW Eng
Junior Developer Junior Tester
Senior Developer Senior Tester
Team leader
Architecture
R&D
System analysis
And
Business
development
Project
Manager
Business
analyst
A great lathe operator commands
several times the wage of an
average lathe operator, but a great
writer of software code is worth
10,000 times the price of an average
software writer.
“We’ve gone to exceptional lengths
to hire the best people,” he said,
believing that the talented resource
was twenty-five times more valuable
than an average alternative.
Introduction to software engineering
Learning Machin
Coding with Different Languages
UML
Introduction to software engineering
Introduction to software engineering
Introduction to software engineering
TDD ATDD
Software
Architecture
Agile Software Development
Scrum Process
Can Software Kill?
Therac-25 medical radiation therapy device
5-21 Died
due to bug
(100 times
Overdose)
Bug in the flight-control system
Swedish JAS 39 Gripen
Introduction to software engineering
Introduction to software engineering
Be prepared for a roller coaster ride
The industry is
always
changing and
your self-
education will
never end.
If you don't enjoy
teaching yourself
new and complex
things often,
change majors
now
Be patient
• No one masters software
engineering overnight.
• If you don't have the time, this is
not a good idea.
Introduction to software engineering
http://www.youtube.com/moveitchannel
http://www.facebook.com/MOVEITGATE
Practical Software Engineering
By Mustafa Gamal
mugamal@itida.gov.eg
https://about.me/mustafamg
Software Engineering Competence Center

More Related Content

PPT
Lecture 1 introduction to software engineering 1
PPTX
Introduction To Software Engineering
PPT
INTRODUCTION TO SOFTWARE ENGINEERING
PPTX
Software engineering tutorial
PPTX
introduction to software enginering
PDF
An introduction to software engineering
PPT
9. risk-management
PPTX
A presentation on software crisis
Lecture 1 introduction to software engineering 1
Introduction To Software Engineering
INTRODUCTION TO SOFTWARE ENGINEERING
Software engineering tutorial
introduction to software enginering
An introduction to software engineering
9. risk-management
A presentation on software crisis

What's hot (20)

PPT
Lecture 1-intro-to-software-development
PPT
Unit 1 sepm software myths
PPT
Lecture 2 introduction to Software Engineering 1
PPTX
Introduction to software Engineering
PPTX
Greate Introduction to Software Engineering @ Track IT Academy
PPT
software process
PPT
Software System Engineering - Chapter 1
PPT
Chapter 01
PPT
Pressman ch-1-software
PPTX
Software Myths
PPTX
11. estimation-1
PDF
Software engineering note
PDF
Software engineering introduction
PPTX
Need for Software Engineering
PPTX
Characteristics of Software
PPT
Software engineering
PDF
Software engineering a practitioners approach 8th edition pressman solutions ...
PPTX
Software Engineering Layered Technology Software Process Framework
PDF
INTRODUCTION TO SOFTWARE ENGINEERING
PPT
software characteristics
Lecture 1-intro-to-software-development
Unit 1 sepm software myths
Lecture 2 introduction to Software Engineering 1
Introduction to software Engineering
Greate Introduction to Software Engineering @ Track IT Academy
software process
Software System Engineering - Chapter 1
Chapter 01
Pressman ch-1-software
Software Myths
11. estimation-1
Software engineering note
Software engineering introduction
Need for Software Engineering
Characteristics of Software
Software engineering
Software engineering a practitioners approach 8th edition pressman solutions ...
Software Engineering Layered Technology Software Process Framework
INTRODUCTION TO SOFTWARE ENGINEERING
software characteristics
Ad

Similar to Introduction to software engineering (20)

PPSX
Scope of software engineering
PDF
Software engineering Definition, Required and characteristics and Importance
PDF
How to Hire Full Stack Developers: A Guide
DOCX
Donna PetersonPMVBA
PPTX
A Brief Discussion on Careers in Software Engineering.pptx
PDF
Remote Software Engineers Jobs 2023.pdf
PPTX
Lecture 2 | Industry, Career Paths, Essential Skills
PPTX
How to start your career as a software engineer
PDF
Software Developer vs. Software Engineer: Understanding the Difference
PDF
Kelis king - introduction to s.e.
PPTX
26968 software developer career
PDF
VeriQual - Team Structure & Agile Practices
PPTX
Careers in it
DOC
Resume Sreerekha
PDF
Mobile Code Optimisation Services
PDF
software engineering
PPT
Software Engineering - Introdution.ppt
PDF
Yogesh_Fegade_Profile
PPTX
Software Engineer Task and Responsibilities Lode Palle.pptx
PPTX
Top Software Developer Jobs
Scope of software engineering
Software engineering Definition, Required and characteristics and Importance
How to Hire Full Stack Developers: A Guide
Donna PetersonPMVBA
A Brief Discussion on Careers in Software Engineering.pptx
Remote Software Engineers Jobs 2023.pdf
Lecture 2 | Industry, Career Paths, Essential Skills
How to start your career as a software engineer
Software Developer vs. Software Engineer: Understanding the Difference
Kelis king - introduction to s.e.
26968 software developer career
VeriQual - Team Structure & Agile Practices
Careers in it
Resume Sreerekha
Mobile Code Optimisation Services
software engineering
Software Engineering - Introdution.ppt
Yogesh_Fegade_Profile
Software Engineer Task and Responsibilities Lode Palle.pptx
Top Software Developer Jobs
Ad

Recently uploaded (20)

PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Digital Logic Computer Design lecture notes
PPT
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
PPT
Project quality management in manufacturing
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPTX
UNIT 4 Total Quality Management .pptx
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
web development for engineering and engineering
PPTX
Welding lecture in detail for understanding
PPTX
Geodesy 1.pptx...............................................
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
Construction Project Organization Group 2.pptx
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Digital Logic Computer Design lecture notes
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
Project quality management in manufacturing
Automation-in-Manufacturing-Chapter-Introduction.pdf
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
UNIT 4 Total Quality Management .pptx
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
bas. eng. economics group 4 presentation 1.pptx
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
R24 SURVEYING LAB MANUAL for civil enggi
web development for engineering and engineering
Welding lecture in detail for understanding
Geodesy 1.pptx...............................................
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Construction Project Organization Group 2.pptx
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx

Introduction to software engineering

  • 4. Practical Software Engineering By Mustafa Gamal R&D Consultant At SECC-ITIDA mugamal@itida.gov.eg https://about.me/mustafamg Software Engineering Competence Center
  • 6. ‫الملل‬ ‫صباح‬ ‫احسن‬ ‫النبي‬ ‫صالة‬  ‫استاهل‬ ‫اللي‬ ‫انا‬ ‫العظيم‬ ‫وهللا‬ ‫ده‬ ‫القسم‬ ‫دخلت‬ ‫عشان‬ ‫تخلص‬ ‫المحاضرة‬ ‫لما‬ ‫يصحيني‬ ‫حد‬ $#$$@#%#!!!
  • 7. A software Engineer is A software engineer is a licensed professional engineer who is schooled and skilled in the application of engineering discipline to the creation of software.
  • 8. SW Eng. Vs Programmer Programmer • Creates the codes that make a program run Software Engineer • Creates the designs the programmer implements.
  • 9. Sample job announcement for Software Engineering position 1/4 • We seek an experienced individual who can be part of our advanced development team, working on cutting-edge solutions for Search Engine related Business Intelligence. Engineers will gain exposure to the entire software development lifecycle including requirements gathering, development and testing. Prospective candidates are expected to have a minimum of 3 years experience in Enterprise level application development in PHP, MySQL / Postgres and other related Open Source technologies.
  • 10. Sample job announcement for Software Engineering position 2/4 • The ideal Candidate would have: • Commercial experience in enterprise software development • Experience in object oriented programming / modular programming is essential • Experience in the full software development lifecycle: from business / systems analysis, through requirements gathering • Experience in working with structured and agile software methodologies • A degree in ICT or equivalent qualifications
  • 11. Sample job announcement for Software Engineering position 3/4 • Key Responsibilities: • Requirements gathering, planning and designing solutions considering scalability and performance • Design and develop commercial software and system modifications from supplied specifications • Extending currently existing software solutions • Providing technical guidance for software engineers • Assisting the project managers in technical documentation
  • 12. Sample job announcement for Software Engineering position 4/4 • Requirements: • Minimum 3 years experience in PHP based application development together with ZEND or a similar MVC FRAMEWORK such as Laravel / Symphony or Codelgniter • Hands on experience in MySQL database related system developments and ability to write efficient queries. • Knowledge of CSS, AJAX, JavaScript, JQuery and other web technologies will be an added advantage
  • 14. From Job Description • Software engineering is not the same as programming • Every software engineer knows how to program, but not every programmer is a software engineer.
  • 15. From Job Description • part of our advanced development team: • Software engineering is typically a group effort, with differing and often fluid roles and responsibilities for the group members. • Requirements gathering: • Engineers develop software to meet specifications set by their respective companies designed for their client, and generally must adhere to specific standards and practices. • Engineers will gain exposure to the entire software development lifecycle: • Engineering projects have timelines, release dates, and considerable interaction between people responsible for various components.
  • 16. From Job Description • Engineers will gain exposure to the entire software development lifecycle: • Engineering projects have timelines, release dates, and considerable interaction between people responsible for various components.
  • 18. Junior Developer Junior Tester Senior Developer Senior Tester Team leader Architecture R&D System analysis And Business development Project Manager Business analyst
  • 19. A great lathe operator commands several times the wage of an average lathe operator, but a great writer of software code is worth 10,000 times the price of an average software writer. “We’ve gone to exceptional lengths to hire the best people,” he said, believing that the talented resource was twenty-five times more valuable than an average alternative.
  • 23. UML
  • 32. Therac-25 medical radiation therapy device 5-21 Died due to bug (100 times Overdose)
  • 33. Bug in the flight-control system Swedish JAS 39 Gripen
  • 36. Be prepared for a roller coaster ride The industry is always changing and your self- education will never end. If you don't enjoy teaching yourself new and complex things often, change majors now
  • 37. Be patient • No one masters software engineering overnight. • If you don't have the time, this is not a good idea.
  • 39. http://www.youtube.com/moveitchannel http://www.facebook.com/MOVEITGATE Practical Software Engineering By Mustafa Gamal mugamal@itida.gov.eg https://about.me/mustafamg Software Engineering Competence Center

Editor's Notes

  • #4: Togaf Certified
  • #6: واضح ان الموضوع مهم !!! مين فيكوا عندكو قناعة ان المادة دي نظري ومالهاش لازمة، او بمعنى آخر مين فيكوا بيحس كده
  • #7: على فكرة انا كنت باحضر ال presentation وانا باتفرج على باسم يوسف، وتقريبا بهت عليا !!! بجد اللي حاسس ان المادة دي نظري ومالهاش لازمة يرفع ايده.... طب اللي حاسس ان ليها لازمة يرفع ايده... طب تعالوا نشوف الأحصائية دي
  • #10: http://www.emarketingeye.com/senior-software-engineer-software-engineer-job-code-eme0018.html
  • #14: The computer science discipline concerned with developing large applications. Software engineering covers not only the technical aspects of building software systems, but also management issues, such as directing programming teams, scheduling, and budgeting.
  • #18: At the early stages in our life we care more about technical aspects.
  • #21: What to Learn? https://www.flickr.com/photos/jakerust/16846023595
  • #24: Why Use UML?
  • #31: https://www.mountaingoatsoftware.com/agile/scrum/images
  • #33: http://royal.pingdom.com/2009/03/19/10-historical-software-bugs-with-extreme-consequences/ a side effect of the buggy software powering the device. A number of patients received up to 100 times the intended dose, and at least three of them died as a direct result of the radiation overdose.