Software Engineering Lecture 1 Introduction to Software Engineering

Скачать презентацию Software Engineering Lecture 1 Introduction to Software Engineering Скачать презентацию Software Engineering Lecture 1 Introduction to Software Engineering

4164-si_lecture1_00.ppt

  • Количество слайдов: 12

>Software Engineering Lecture 1 Introduction to Software Engineering Software Engineering Lecture 1 Introduction to Software Engineering

>Previous Experience Your background   Biggest program that you have written?  Previous Experience Your background  Biggest program that you have written?  Biggest program that you have worked on?  Biggest project team that you have been part of?  Longest project that you have worked on?  Most people who have used your work?  Longest that your project has been in production? My background

>Future Experience What will you be doing one year from now?   Ten Future Experience What will you be doing one year from now? Ten years from now?

>Course Themes 1.  Leadership of large software projects   Software as a Course Themes 1. Leadership of large software projects  Software as a product Clients and their needs Quality  Requirements and specification Usability Evolution  Project management Personnel management Economic, legal, and social factors

>Course Themes 2.  Large and very large systems   Software design Course Themes 2. Large and very large systems  Software design Software architecture Object-oriented design  Dependable systems Reliability Verification  Legacy systems

>Characteristics of Software Products General characteristics      Usability  Characteristics of Software Products General characteristics Usability Maintainability Dependability Efficiency Good software products require good programming, but ... Programming quality is the means to the end, not the end itself.

>Software as a Product Software is expensive!! Every software project has a trade-off between: Software as a Product Software is expensive!! Every software project has a trade-off between: Functionality Resources (cost) Timeliness

>Client (a.k.a Customer)   The client provides resources and expects some product in Client (a.k.a Customer)  The client provides resources and expects some product in return.  Client satisfaction is the primary measurement of success. Question: Who is the client for Microsoft Excel?

>Categories of Product Categories of client and software product:  Generic (e.g., Microsoft Excel) Categories of Product Categories of client and software product:  Generic (e.g., Microsoft Excel)  Bespoke (customized) (e.g., IRS internal system) Many systems are customized versions of generic packages (e.g., Cornell's payroll system)

>Variety of Software Products Software products are very varied -->  Client requirements are Variety of Software Products Software products are very varied --> Client requirements are very different --> There is no standard process for software engineering --> There is no best language, operating system, platform, database system, development environment, etc. A skilled software developer knows about a wide variety of approaches, methods, tools. The craft of software engineering is to select appropriate methods for each project and apply them effectively.

>Professional Responsibility  Organizations put trust in software developers:   Competence:  Software Professional Responsibility Organizations put trust in software developers:  Competence: Software that does not work effectively can destroy an organization.  Confidentiality: Software developers and systems administrators may have access to highly confidential information (e.g., trade secrets, personal data).  Legal environment: Software exists in a complex legal environment (e.g., intellectual property, obscenity).  Acceptable use and misuse: Computer abuse can paralyze an organization (e.g., the Internet worm).

>THANK YOU !!! GOOD LUCK !!!  You can find me in the classroom THANK YOU !!! GOOD LUCK !!! You can find me in the classroom 5-214 or e-mail: [email protected]