Presentation is loading. Please wait.

Presentation is loading. Please wait.

Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 ICS 52 Introduction to Software Engineering Lecture.

Similar presentations


Presentation on theme: "Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 ICS 52 Introduction to Software Engineering Lecture."— Presentation transcript:

1 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 ICS 52 Introduction to Software Engineering Lecture 2 Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited.

2 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 2 Today’s lecture Defining software engineering People, processes, tools, and products

3 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 3 Software engineering “A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers.” [Ghezzi, Jazayeri, Mandrioli]

4 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 4 Software engineering “A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers.” [Ghezzi, Jazayeri, Mandrioli] “Multi-person construction of multi-version software.” [Parnas]

5 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 5 Software engineering “A discipline whose aim is the production of fault-free software, delivered on-time and within budget, that satisfies the user’s needs. Furthermore, the software must be easy to modify when the user’s needs change.” [Schach] “It’s where you get to design big stuff and be creative.” [Taylor]

6 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 6 Software engineering “Difficult.” [van der Hoek]

7 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 7 Essential characteristics Software engineering concerns the development of large programs The central theme is mastering complexity Software evolves The efficiency with which software is developed is of crucial importance Regular cooperation between people is an integral part of programming-in-the-large The software has to support its users effectively Software engineering is a field in which members of one culture create artifacts on behalf of members of another culture Software engineering is a balancing act

8 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 8 Programming versus software engineering Small projectLarge to huge project YouTeams Build what you wantBuild what they want One productFamily of products Few sequential changesMany parallel changes Short-livedLong-lived CheapCostly Small consequencesLarge consequences ProgrammingSoftware engineering

9 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 9 From programming to software engineering People – who else would do the work? – range from novice to very experienced Processes – to organize and manage the efforts of individuals – range from informal to very formal Tools – to support the people and the processes – range from simple to very advanced

10 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 10 People The single most important factor in the success/failure of a product Scarce resource – quality – suitability – Cost Many different kinds of people – managers – programmers – technical writers

11 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 11 Processes Essential to achieve a quality product Scarce resource – quality – suitability – cost Many different kinds of processes – bug tracking – change approval – quality assurance

12 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 12 Tools Needed to support people and processes Scarce resource – quality – suitability – cost Many different kinds of tools – drawing – analysis – project management – source code management

13 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 13 Products Result of applying people, processes, and tools Consist of many deliverables – software – documentation – user manuals – test cases – design documents Have intrinsic qualities – safety – reliability – user friendliness

14 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 14 Products Products are always the eventual goal – selling products creates revenue – selling good products creates lots of revenue – selling bad products creates little revenue People, processes, and tools are retained by organization – build a reputation through the quality of products – create organizational culture – important to keep the team intact

15 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 15 Does it always work? PeopleProcessesToolsProduct Good Bad Good BadGood Bad GoodBadGood BadGoodBad Good BadGood Bad GoodBad Good Bad GoodBadGood BadGoodBad Good Bad GoodBad Good Bad

16 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 16 Choose the right solution Tijuana Europe Hawaii

17 Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 17 Homework Read chapter 1, van Vliet


Download ppt "Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 ICS 52 Introduction to Software Engineering Lecture."

Similar presentations


Ads by Google