1 / 26

CS352 – Software Engineering II Lecture 1: A Course Overview

CS352 – Software Engineering II Lecture 1: A Course Overview. Slides by Mohammad El-Ramly, PhD http://www.acadox.com/join/VBEPDR. كل عام و أنتم بخير. كل عام و أنتم على الطاعة أدوم و من الله أقرب كل عام و أنتم من التخرج أقرب عام جديد على عملك شهيد فاغتنمه فإنه إن مضى لا يعود أبدا. تذكرة.

lblank
Download Presentation

CS352 – Software Engineering II Lecture 1: A Course Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS352 – Software Engineering IILecture 1: A Course Overview Slides by Mohammad El-Ramly, PhD http://www.acadox.com/join/VBEPDR

  2. كل عام و أنتم بخير • كل عام و أنتم على الطاعة أدوم و من الله أقرب • كل عام و أنتم من التخرج أقرب • عام جديد على عملك شهيد • فاغتنمه فإنه إن مضى لا يعود أبدا

  3. تذكرة و لا تقربوا الزنا إنه كان فاحشة و ساء سبيلا

  4. Lecture 1 Outline • Review of where we are • Course objectives and Contents • Course administration

  5. 1. SE I Course Objectives • This course aims to teach students the disciplined way of engineering software products. It aims to: • Educate the students about the cost of software failures and the importance of software engineering. • Train the students on the application of engineering practices in software development • Introduce them to the SWEBOK (Software Engineering Body of Knowledge).

  6. SE I Course Objectives • This course aims to teach students the disciplined way of engineering software products. It aims to: • Train them on the basics of software requirements engineering, modeling, design, construction, configuration management. • Train students on teamwork

  7. SE I Achievements • Introduction • SWEBOK and crisis • Process models • Different models && Scrum • Requirements Engineering • Preparing SRS documents • User stories / use cases • Design methods • Modeling with UML • Design patterns • Version control • Git

  8. Remember ……. • Coders - Can pretty much figure out it. It'll work, but it won't be pretty. • Hackers - usually low level folks, skillful, with detailed understanding of some area deeply. • Programmer - Write code and understand algorithms. Often work alone and well. • Software Engineer - Are the best generalists, can use lots of different systems and languages. Are true and broad professionals, use disciplined approaches, follow ethics, work in teams and communicate well.

  9. SWEBOK’s Key 10 Knowledge Areas SWEBOK 2004 SWEBOK 2013 added 5 more KAs

  10. SWEBOKv3’s 15 Knowledge Areas SWEBOK 2014

  11. Requirement Analysis Design Implement Testing Where are we? Software Version Control Project Management Quality Assurance Software Process

  12. Software’s Chronic Crisis • Many software system fail to serve their purpose or even may cause harm. • Many projects never deliver. • IBM survey of 24 companies developing distributed systems: • 55% of the projects cost more than expected • 68% overran their schedules • 88% had to be substantially redesigned

  13. Software’s Chronic Crisis • Software product size is increasing exponentially • faster, smaller, cheaper hardware • Software is everywhere: from TV sets to cell-phones • Software is in safety-critical systems • cars, airplanes, nuclear-power plants

  14. Software’s Chronic Crisis • Software’s chronic crisis: Development of large software systems is a challenging task • Large software systems often: Do not provide the desired functionality; Take too long to build; Cost too much to build Require too much resources (time, space) to run; Cannot evolve to meet changing needs

  15. Software’s Chronic Crisis • We are the only industry that states something like this on their product licenses: • إخلاء المسؤولية عن الضمان. يتم ترخيص البرنامج "بالحالة التي عليها" و"على علاته" و"بالحالة التي يتم توفيره عليها".وبالتالي فإنك تتحمل مسؤولية استخدامه. لا تقدم MICROSOFT، والموزعون التابعون لها وأيٍ من الشركات التابعة لنا المعنية والموردون (المشار إليهم فيما بعد باسم "الموزعون")، أية ضمانات أو تعهدات أو شروط صريحة بموجب هذا البرنامج أو فيما يتعلق به. قد تكون لك بعض حقوق المستهلك الإضافية بموجب القوانين المحلية الخاصة بك، والتي لا يمكن لهذه الاتفاقية أن تغيرها. وإلى الحد الذي تسمح به القوانين المحلية الخاصة بك، ينفي الموزعون عن أنفسهم أي ضمانات أو شروط ضمنية، بما في ذلك الضمانات أو الشروط الخاصة بالقابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. • تحديد الأضرار واستثناؤها. يمكنك الحصول على تعويض من Microsoft ومورديها مقابل الأضرار المباشرة فقط بحيث لا يتجاوز ذلك المبلغ الذي دفعته مقابل البرنامج. لا يمكنك الحصول على أي تعويض يتعلق بأية أضرار أخرى بما في ذلك الأضرار اللاحقة أو خسارة الأرباح أو الأضرار الخاصة أو غير المباشرة أو العارضة.

  16. Software’s Chronic Crisis • Failure of software causes the loss of: • Time • Money • User satisfaction, and • LIVES

  17. Werewolves Out of all the scary monsters of the past, werewolves were the scariest because the change shape without notice.

  18. Lecture 1 Outline • Review of where we are • Course objectives and Contents • Course administration

  19. SE II Course Objectives • This course aims to: • Emphasize design concepts and design patterns. • Train students on applying software QA through software development process. • Educate / Train students developing / deploying scalable systems in the cloud. • Educate / Train students on software testing. • Teamwork.

  20. Course Contents We will cover as much of these as we can: • Design and design patterns 35% • Introduction to Design (3~4 wks) • Software Architecture • Design Principles • Design Patterns • Design QA & Evaluation

  21. Course Contents We will cover as much of these as we can: • Quality Assurance and Testing 40% • Overview of QA in SE (4 wks) • Reviews • Refactoring • Unit and Integration Testing • Configuration Managment

  22. Course Contents We will cover as much of these as we can: • Cloud Deployment / PM 25% • Cloud Models (2-3 wks) • RESTful Architecture • Google App Engine • Managing SW Projects • Scrum

  23. Course Evaluation • Final 60% • Midterm 10% • Lab Practice 5% • Projects 15% • Groups 4 from the same lab • Three phases • Quizzes + Assignment 10% • Weeks: 3, 6, 9, 12

  24. Course Project • Phase I Setup, REST, Cloud 28, 7 Mar, 14 Mar • Phase II Design, DP Mid April • Phase III QA, Testing Mid May

More Related