Lecture 19 - KA Day 2: V&V / Architecture & Design

Lecture Date: Tuesday, March 26

General Info

Each Knowledge Assessment is expected to take around 30 minutes to complete. On each KA day, there will be two KAs available, based on whatever the latest two major subject areas of the class were:

  • KA Day 1: Software Process and Requirements
  • KA Day 2: Verification & Validation and Architecture & Design
  • KA Day 3: Maintenance & Security and Professional Issues

All Knowledge Assessments are bound by the Honor System as any other assessment at UVA. You are forbidden to speak of specifics of any assessment with other students who have not yet taken the assessment.

Each KA is worth 10000 XP. Each question will be graded wholistically. That is, each question can either earn full XP, no XP, or a single partial level of XP. For example, a KA with 5 questions would assign 2000 XP to each question, and each question could earn 2000 XP, 1000 XP, or 0 XP. Students will have the opportunity to earn back at least a portion of missed XP during the Final Exam period as you can retake some portions of previous KAs.

Verification and Validation Knowledge Assessment

Architecture and Design Knowledge Assessment

more ...


Lecture 17 - Decomposition

Lecture Date: Tuesday, March 19

Guided Practice G: Decomposition In-Class Today

We will do an activity today where we look at an example proposed system and try to decompose it into both functional modules and object-oriented modules.

Slides - Design Decomposition

11:00 Lecture:

2:00 Lecture:

more ...

Lecture 16 - Modularity

Lecture Date: Thursday, March 7

Guided Practice F: Test Cases In-Class Today

We will first tie up the end of Tuesday's lecture, discussing more about Service Oriented Architecture and web services.

We will then move into discussing what makes a good module in a software system and how we use that to reason about design patterns.

Slides - MVC and REST

Slides - Modularity

11:00 Lecture:

2:00 Lecture:

more ...

Lecture 15 - Architecture Patterns

Lecture Date: Tuesday, March 5

Today we will pick up with your framework guided practice. How do you choose a tool/framework when building a new system?

Then we will examine several key architectural patterns that are at work in your course project. Namely:

  • Client-Server (including thick vs. thin clients)
  • Three-Tier Architecture
  • Ifrastructure-as-a-Service, Platform-as-a-Service, and Software-as-a-Service
  • Representation State Transfer (REST)

It's a pretty dense lecture, but it's important to see how the pieces fit together.

Slides - MVC and REST

11:00 Lecture:

2:00 Lecture:

more ...



Lecture 12 - Model / View / Controller

Lecture Date: Thursday, February 21

First, a chat about learning how to learn stuff.

Okay, now we know what we are building (mostly). We have our stories and we're ready to start coding!... are we? Staring at the blank screen, where do you begin? How do you design your system?

Slides - Architecture and MVC

11:00 Lecture:

2:00 Lecture:

more ...