![Page 1: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/1.jpg)
Software EngineeringSoftware Engineering
200511357 조재연200511357 조재연
![Page 2: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/2.jpg)
1 Software Engineering1.Software Engineering
• The establishment and use of sound engineering principles in order to obtain g g p peconomically software that is reliable and works efficiently on real machinesand works efficiently on real machines.
• A Layered technology
• Process layer
• “how to’s” for building software• how to s for building software
• Automated or semiautomated support
200511357 컴퓨터공학부 조재연
![Page 3: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/3.jpg)
![Page 4: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/4.jpg)
2 A Process Framework2. A Process Framework
• Generic process Framework
– CommunicationCommunication
– Planning
Modeling– Modeling
– Construction
– Deployment
• That can be used during theThat can be used during the development of small, simple program.
200511357 컴퓨터공학부 조재연
![Page 5: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/5.jpg)
2 A Process Framework2. A Process Framework
• Typical activities– Software project tracking and control
– Risk management
– Software quality assuranceSoftware quality assurance
– Formal technical reviews
– MeasurementMeasurement
– Software Configuration management
Reusability management– Reusability management
– Work product preparation and production
200511357 컴퓨터공학부 조재연
![Page 6: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/6.jpg)
3 Software Process Model3. Software Process Model
• Incorporates a development strategy that encompassed the process, methods, and tools layers described earlier.
• Prescriptive Models– The Waterfall Model
– Incremental Process Models
– Evolutionary Process Models
– Specialized Process ModelsSpeciali ed Process Models
– The Unified Process
200511357 컴퓨터공학부 조재연
![Page 7: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/7.jpg)
3 1 1 The Waterfall Model3.1.1 The Waterfall Model
200511357 컴퓨터공학부 조재연
![Page 8: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/8.jpg)
3.1.2 Incremental Process Models
200511357 컴퓨터공학부 조재연
![Page 9: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/9.jpg)
The Prototyping paradigmThe Prototyping paradigm
200511357 컴퓨터공학부 조재연
![Page 10: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/10.jpg)
Sprial modelSprial model
200511357 컴퓨터공학부 조재연
![Page 11: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/11.jpg)
Specialized Process ModelsSpecialized Process Models
• This model tend to be applied when defined software engineering approach is chosen.
• Component-Based Development– Component provide targeted functionalityp p g y
• The Formal Method Model– A set of activities that lead to formal mathematicalA set of activities that lead to formal mathematical
specification of computer Software
• Aspect Oriented Software DevelopmentAspect Oriented Software Development
200511357 컴퓨터공학부 조재연
![Page 12: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/12.jpg)
The Unified ProcessThe Unified Process
200511357 컴퓨터공학부 조재연
![Page 13: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/13.jpg)
3 2 Agile Software Development3.2 Agile Software Development
• Through this work we have come to value.
– Individuals and interactions over process and toolsand tools
– Working software over comprehensive documentationdocumentation
– Customer collaboration over contract ti tinegotiation
– Responding to change over Following plan
200511357 컴퓨터공학부 조재연
![Page 14: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/14.jpg)
3 2 Agile Software Development3.2 Agile Software Development
• Key assumptions about the majority of software projects:p j
– It is difficult to predict in advance which software requirements will persist andsoftware requirements will persist and which will change.
For many types of software design and– For many types of software, design and construction are interleaved.
A l i d i t ti d t ti– Analysis, design, construction, and testing are not as predicable as we might like.
200511357 컴퓨터공학부 조재연
![Page 15: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/15.jpg)
The Extreme Programming process
200511357 컴퓨터공학부 조재연
![Page 16: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/16.jpg)
4 The Management Spectrum4.The Management Spectrum
• People>Problem>Process– People
• Recruiting, selection, performance management, training, compensation, career development, organization, and team and culture developmentteam and culture development
– The Problem• The software developer and customer must to define
project objectives and scope.
– The Process• The Capability Maturity Model Integration (CMMI)
200511357 컴퓨터공학부 조재연
![Page 17: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/17.jpg)
5 Software Project Management5. Software Project Management
• Measurement and Metrics
• Project EstimatingProject Estimating
– Effort estimation techniques
Si O i d E i i– Size-Oriented Estimation
– Empirical Models
• Risk Analysis
Scheduling• Scheduling
• Tracking and Control
200511357 컴퓨터공학부 조재연
![Page 18: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/18.jpg)
6 Software Quality Assurance6.Software Quality Assurance
C t• Correctness• Reliability
I t it• Integrity• Efficiency
U bilit• Usability• Maintainability
Fl ibilit• Flexibility• Testability
R bilit• Reusability• Interoperability
200511357 컴퓨터공학부 조재연
![Page 19: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/19.jpg)
7. Software Configuration Management
• Identify changes
• Control changesControl changes
• Ensure that changes are being properly i l dimplemented
• Report changes to others who may haveReport changes to others who may have an interest
200511357 컴퓨터공학부 조재연
![Page 20: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/20.jpg)
8 The Technical Spectrum8. The Technical Spectrum
• Software Engineering Methods
– Conventional software engineeringConventional software engineering methods
– Object-oriented approachesObject oriented approaches
– Formal methods
200511357 컴퓨터공학부 조재연
![Page 21: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/21.jpg)
8 2 Problem Definition8.2 Problem Definition
• Analysis Principles– The data domain of the problem must be modeled.
– The functional domain of the problem must be modeled
– The behavior of the problem must be modeled.
– Model of data, function, and behavior must be i i dpartitioned
– The overriding trend in analysis is from essence t d i l t titoward implementation
200511357 컴퓨터공학부 조재연
![Page 22: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/22.jpg)
8 2 Problem Definition8.2 Problem Definition
• Analysis Methods
– Scenario-based elementsScenario based elements
– Class-based elements
Behavioral elements– Behavioral elements
– Flow-oriented elements
200511357 컴퓨터공학부 조재연
![Page 23: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/23.jpg)
The Design pyramidThe Design pyramid
200511357 컴퓨터공학부 조재연
![Page 24: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/24.jpg)
8 5 Software Testing8.5 Software Testing
Obj i• Objectives– Testing is a process of executing a program with
the intent of finding an errorthe intent of finding an error
– A good test case is one that has a high probability of finding an as-yet-undiscovered errorof finding an as yet undiscovered error
– A successful test is one that uncovers as-yet-undiscovered error
• Strategy
• Tactics– Black box testing
– White box testing
200511357 컴퓨터공학부 조재연
![Page 25: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/25.jpg)
9 Software Engineering Patterns9.Software Engineering Patterns
• Process Patterns
• Analysis PatternsAnalysis Patterns
• Design Patterns
• Testing Patterns
200511357 컴퓨터공학부 조재연
![Page 26: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/26.jpg)
10. The Road Ahead and the Three rs
• Reuse
• ReengineeringReengineering
• Retooling
200511357 컴퓨터공학부 조재연
![Page 27: Software Engineering.ppt [호환 모드] - Konkukdslab.konkuk.ac.kr/Class/2008/08SMA/Presentation/Class B... · 2012. 9. 13. · Title: Microsoft PowerPoint - Software Engineering.ppt](https://reader036.vdocuments.pub/reader036/viewer/2022071502/6121bf52e3836428e4353694/html5/thumbnails/27.jpg)
11 Summary11. Summary
• Various questions are asked and reasked about software engineering. g g
200511357 컴퓨터공학부 조재연