<img src="readings/figures/310logo.png" width="256px" alt="CPSC 310 Software Engineering">
# UBC CPSC - Software Engineering Resources
These are the resources used for CPSC 310 at the University of British Columbia. This course is a comprehensive introduction to how modern software systems are designed, constructed, and evolved. It is intended to be paired with a development-heavy project to better reenforce the core concepts from lecture materials and to enable concepts to be applied in practice.
The materials have been adapted over several years of use, although each section of the course may use different subsets of the readings and videos.
This is a high-level overview of what the course will be about. Expect this list to change, although we will commit to freezing the schedule and videos for each upcoming week by the end of the previous Thursday so you will be able to watch the correct videos and complete the survey for that week.
The materials roughly break down into the 13 weeks of the standard academic semester. Readings and videos are available for most course concepts.
## 0: Introduction
* Readings:
* [Introduction](readings/Introduction.md)
* [Teamwork](readings/Teamwork.md)
* [Languages](readings/Languages.md)
* [Async](readings/Async.md)
* Videos:
* [Course Introduction](http://www.youtube.com/watch?v=3tXzYUVQlrM)
* [Capstone Project Overview](http://www.youtube.com/watch?v=NQCyiD-Fh9Q)
* [Running Example Introduction](http://www.youtube.com/watch?v=S4GEa6JMo4I)
* [Programming Language Introduction](http://www.youtube.com/watch?v=U-ihh6bsDz4)
* [Introduction to Concurrency and Asynchronous Development: Part 1](http://www.youtube.com/watch?v=T__CJfXswbA)
* [Introduction to Concurrency and Asynchronous Development: Part 2](http://www.youtube.com/watch?v=ZyiLFip7nqk)
* [Introduction to Concurrency and Asynchronous Development: Part 3](http://www.youtube.com/watch?v=xwSUBY2tIm4)
## 1: Testing 1
* Readings:
* [Testing](readings/Testing.md)
* [White box testing](readings/WhiteBoxTesting.md)
* Videos:
* [Why Test?](http://www.youtube.com/watch?v=Uamo4Ej0tWk)
* [Terminology](http://www.youtube.com/watch?v=WKrvx7qCUDI)
* [Properties of Tests](http://www.youtube.com/watch?v=ll1k3Pks3ZA)
* [Kinds of Tests](http://www.youtube.com/watch?v=_Th3f9vks_w)
* [Unit and System Properties](http://www.youtube.com/watch?v=x2DWjxDiOQo)
* [Red Green Refactor](http://www.youtube.com/watch?v=v0q1MKhSQVM)
* White box testing:
* [Introduction to Coverage](http://www.youtube.com/watch?v=iujQEm9oono)
* [Line and Statement Coverage](http://www.youtube.com/watch?v=SC7R-QixRaU)
* [Branch and Path Coverage](http://www.youtube.com/watch?v=YBiHn5vgKnM)
* [Coverage Wrap-Up](http://www.youtube.com/watch?v=2EBi66DYF5w)
## 2: Process
* Readings:
* [Process & Agile](readings/Process.md)
* Videos:
* [Why Process?](http://www.youtube.com/watch?v=dtK561i_wX4)
* [Waterfall](http://www.youtube.com/watch?v=1pQ9-BNTvgs)
* [Spiral](http://www.youtube.com/watch?v=Zq6EXTSzf84)
* [Extreme Programming](http://www.youtube.com/watch?v=axcRa3YoCQ0)
* [Test Driven Development](http://www.youtube.com/watch?v=Ux9QMfEK9Eg)
* [Scrum](http://www.youtube.com/watch?v=mjphDWlRQ2c)
## 3: Specifications & User stories
* Readings:
* [Specifications](readings/Specifications.md)
* [User stories](readings/SpecificationsUserStories.md)
* Videos:
* [Introduction to Specifications](http://www.youtube.com/watch?v=1rqWeAQ8onI)
* [Requirements Process](http://www.youtube.com/watch?v=7r9vXTSSTVc)
* [Requirements Properties](http://www.youtube.com/watch?v=9z9T0dxMLJU)
* [Requirements Elicitation](http://www.youtube.com/watch?v=PGuPVkNeqJQ)
* [Additional Requirements](http://www.youtube.com/watch?v=mUQOuglR6ss)
* [Validating Requirements](http://www.youtube.com/watch?v=H4V_lwuznVY)
* [User Stories](http://www.youtube.com/watch?v=Y7E56dD7Jxw)
* [INVEST Guidelines](http://www.youtube.com/watch?v=fqknLz6rdGE)
* [User Story and INVEST Example](http://www.youtube.com/watch?v=3b63NxSCxPw)
* [Decomposing User Stories: Part 1](http://www.youtube.com/watch?v=qDpfRXGwbG0)
* [Decomposing User Stories: Part 2](http://www.youtube.com/watch?v=mKAPOzwK_wM)
* [Decomposing User Stories: Part 3](http://www.youtube.com/watch?v=1E-9qzKi1Fc)
* [Decomposing User Stories: Part 4](http://www.youtube.com/watch?v=d8zp_-RZNOo)
* [Decomposing User Stories: Part 5](http://www.youtube.com/watch?v=1ZPPmmXE_wM)
## 4: Testability
* Readings:
* [Testability & Assertions](readings/TestabilityAssertions.md)
<!-- TODO: * [Black box testing](readings/BlackBoxTesting.md) -->
* Videos:
* Testability:
* [Introduction to Testability](http://www.youtube.com/watch?v=jwL1vkl-CoY)
* [Controllability](http://www.youtube.com/watch?v=y0zrTdDuYv0)
* [Observability](http://www.youtube.com/watch?v=CJhJibMCTUM)
* [Isolateability: Part 1](http://www.youtube.com/watch?v=Z93-c4ngxGw)
* [Isolateability: Part 2](http://www.youtube.com/watch?v=NMuhE-XnFe8)
* [Automatability](http://www.youtube.com/watch?v=Q83W5zH8LUY)
* [Testability Wrap-Up](http://www.youtube.com/watch?v=d2WjviF50HA)
* Black box testing:
* [Equivalence Class Partitioning](http://www.youtube.com/watch?v=ttAAsNSPiXw)
* [Input Partitioning](http://www.youtube.com/watch?v=5PtxXnwyU3Y)
* [Output Partitioning](http://www.youtube.com/watch?v=0yvHDKI-DSA)
* [Boundary Value Analysis](http://www.youtube.com/watch?v=IRQU_fHKUa0)
* [Assertions](http://www.youtube.com/watch?v=DCAFxgUXM4I)
* [Assertions Example](http://www.youtube.com/watch?v=Y0GEftJ5MB0)
## 5: High level design 1
* Readings:
* [High-level design](readings/HighLevelDesign.md)
* [Technical representations](readings/Representations.md)
* [APIs](readings/API.md)
* Videos:
* [Introduction to Abstraction](http://www.youtube.com/watch?v=HW_b8S2rD4o)
* [Structured Programming](http://www.youtube.com/watch?v=lfzQcwWAh18)
* [Decomposition](http://www.youtube.com/watch?v=R3qWYSa2OyU)
* [Encapsulation](http://www.youtube.com/watch?v=aPTqsdbyhcQ)
* [Information Hiding](http://www.youtube.com/watch?v=f6H2w874TKc)
* [Constant Change](http://www.youtube.com/watch?v=a-vT-01x4TI)
* Design representations:
* [Technical Representations](http://www.youtube.com/watch?v=6LoW1iu05z4)
* [Diagrams](http://www.youtube.com/watch?v=Y4oyXMt1cAw)
* [Views](http://www.youtube.com/watch?v=2v3IBQr5Yvw)
* [Static Vs. Dynamic](http://www.youtube.com/watch?v=0jes604qWfE)
* [Deployment Diagrams](http://www.youtube.com/watch?v=MX7XzEUVc4Y)
* [State Machine Diagrams](http://www.youtube.com/watch?v=XaacVyfZ3ds)
* API design:
* [Introduction to APIs](http://www.youtube.com/watch?v=HxevR6dZfH8)
* [High Level API Design](http://www.youtube.com/watch?v=c7yYrjt6Db4)
* [Low Level API Design](http://www.youtube.com/watch?v=OqXw62LWEos)
* [API Design Process](http://www.youtube.com/watch?v=mdiP6xO51w0)
* [API Usability](http://www.youtube.com/watch?v=2rSTWAZxTns)
* [API Platforms and Summary](http://www.youtube.com/watch?v=1nQyHE1uMXE)
## 6: High level design 2
* Readings:
* [Design principles](readings/DesignPrinciples.md)
* Videos:
* Coupling & Cohesion:
* [Coupling: Part 1](http://www.youtube.com/watch?v=I9rEvxiWF9I)
* [Coupling: Part 2](http://www.youtube.com/watch?v=QZAacpnjVVg)
* [Cohesion: Part 1](http://www.youtube.com/watch?v=oMJNS6mvhQU)
* [Cohesion: Part 2](http://www.youtube.com/watch?v=gkCIOUbu81o)
* Design principles:
* [Design Guidance and Symptoms](http://www.youtube.com/watch?v=_Eb5bAgpgQg)
* [Single Responsibility Principle](http://www.youtube.com/watch?v=QQ26-dkzEdM)
* [Open/Closed Principle](http://www.youtube.com/watch?v=815hXPR_kHo)
* [Liskov Substitution Principle](http://www.youtube.com/watch?v=8UG6P1a8rKg)
* [Interface Segregation Principle](http://www.youtube.com/watch?v=x_9Q
没有合适的资源?快使用搜索试试~ 我知道了~
310, CPSC 310的主课程网页.zip
共74个文件
png:42个
md:32个
需积分: 0 1 下载量 97 浏览量
2019-10-10
02:06:40
上传
评论
收藏 5.72MB ZIP 举报
温馨提示
310, CPSC 310的主课程网页 UBC CPSC: 软件工程简介当前术语2018月以前的术语2017月2017月2016月2016月2015可能会失败2015月2014月2014可能会失败2014月
资源推荐
资源详情
资源评论
收起资源包目录
310.zip (74个子文件)
310-master
README.md 948B
resources
README.md 12KB
other
git.md 5KB
setup.md 1KB
async.md 4KB
typescript.md 5KB
promises.md 5KB
readings
Security.md 10KB
Automation.md 6KB
TestabilityAssertions.md 10KB
LowLevelDesign.md 3KB
DesignPatterns.md 23KB
Design_410.md 14KB
Languages.md 12KB
HighLevelDesign.md 11KB
Process.md 14KB
MVStar.md 11KB
SpecificationsUserStories.md 5KB
Async.md 10KB
Teamwork.md 10KB
figures
REST_network.png 125KB
patterns_decorator-example_b.png 83KB
se-tasks.png 177KB
uml-deploy.png 333KB
310logo.png 54KB
test-cycle.png 179KB
process_scrum.png 46KB
uml-sequence.png 147KB
patterns_mvc-example.png 520KB
patterns_mvc.png 798KB
patterns_facade-example_after.png 182KB
patterns_strategy-example.png 98KB
dp_observer1.png 94KB
uml-class-editor.png 256KB
uml-state-water.png 108KB
system-loc-growth.png 98KB
patterns_observer-example.png 105KB
patterns_decorator-example_c.png 65KB
uml-state-promises.png 79KB
promise-states.png 79KB
process_waterfall.png 39KB
patterns_state-example.png 95KB
dp_observer2.png 165KB
uml-class.png 171KB
uml-overview.png 54KB
coupling_flow.png 206KB
patterns_composite-example.png 86KB
patterns_visitor-example.png 191KB
API_star.png 103KB
specification_process.png 20KB
automation_feedback.png 57KB
autotest_latency.png 181KB
patterns_mvp.png 69KB
API_usability.png 88KB
patterns_mvvm.png 23KB
cohesion_flow.png 214KB
test-levels.png 1.23MB
patterns_mvp-example.png 116KB
patterns_decorator-example_a.png 32KB
CCSA.png 5KB
patterns_facade-example_before.png 132KB
software-impact.png 283KB
Testing.md 10KB
BlackBoxTesting.md 212B
DesignPrinciples.md 11KB
WhiteBoxTesting.md 6KB
Specifications.md 9KB
Representations.md 9KB
REST.md 13KB
Abstraction.md 9KB
Assorted.md 5KB
Introduction.md 6KB
Refactoring.md 10KB
API.md 6KB
共 74 条
- 1
资源评论
weixin_38744270
- 粉丝: 327
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功