Software Design & Architecture Reid Holmes Lecture Summary - - PowerPoint PPT Presentation

software design architecture
SMART_READER_LITE
LIVE PREVIEW

Software Design & Architecture Reid Holmes Lecture Summary - - PowerPoint PPT Presentation

Software Design & Architecture Reid Holmes Lecture Summary Administrivia Expectations Project Quick Assignment Discussion REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE Dates and Times Lectures in MC 4060 T/Th


slide-1
SLIDE 1

Software Design & Architecture

Reid Holmes

slide-2
SLIDE 2

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Lecture Summary

  • Administrivia
  • Expectations
  • Project
  • Quick Assignment
  • Discussion
slide-3
SLIDE 3

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Dates and Times

  • Lectures in MC 4060 T/Th @ 1130 - 1250
  • I will be available after but not before
  • Classes will often comprise of a video portion

that you are to watch in advance; in-class time will be spent on collaborative design activities.

  • The video material will not be reviewed and will

be integral to the activity.

  • Tutorials will _NOT_ be held this year
  • Office Hours will be by appointment
slide-4
SLIDE 4

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Why flip?

  • Looking back at past course feedback, the

number one student request was for the course to be more

concrete.

slide-5
SLIDE 5

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Directory

  • Instructor: Dr. Reid Holmes
  • Office: DC 3351 (by appointment)
  • Email: rth.se2@gmail (ensures best response)
  • TA: Laura Inozemtseva
  • Office: DC 3334 (by appointment)
  • Email: lminozem@uwaterloo
  • TA: Wei Wang
  • Office: DC 3334 (by appointment)
  • Email: w65wang@cs.uwaterloo
  • IMPORTANT: Please do not leave your messages to the last minute or expect a response time of less than 24h.
slide-6
SLIDE 6

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Key Information Source

http://www.cs.uwaterloo.ca/~rtholmes/ http://twitter.com/cs446

slide-7
SLIDE 7

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Slide/Video Availability

  • I will mostly work on the chalk boards
  • Slides and video will be available online
  • The course web page will be updated by EOD

Friday for the next week’s lecture

  • The slides will not be heavy on concrete

examples as these will be covered in class.

  • In-class activities will not be posted.
  • The slides/videos cannot take the place of the

lectures

slide-8
SLIDE 8

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Textbooks

  • No textbooks are required
  • These may be helpful:
  • Software Architecture: Foundations, Theory, and Practice
  • Essential Software Architecture
  • Freely available to students in digital form
  • Design of Design
  • Mythical Man Month
  • Links are provided on the web page along with slides for

SA and ESA

slide-9
SLIDE 9

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Intended Learning Outcomes

  • By the end of the course you should be able to:
  • Critique an existing architecture or design.
  • Differentiate how various architectural styles and

design patterns enhance and degrade a system’s functional-and non-functional properties.

  • Generate and justify and architecture and/or design

given a collection of requirements.

  • Produce and present concise and unambiguous

architecture and design descriptions.

  • Create and implement an architecture and design,

refining it into a complete system.

slide-10
SLIDE 10

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

My Expectations

  • Be professional
  • questions in class, email, interacting with TAs
  • Attend lectures
  • talk to class or team mates if you are away
  • Participate
  • during discussions, activities, group project
slide-11
SLIDE 11

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Your Expectations?

slide-12
SLIDE 12

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Project

  • Will be completed in teams of four
  • Select your own teams
  • One team member must email me your:
  • The names of your teammates
  • Due 0800 Jan 14 via email
  • If you do not have a team by Jan 14 or your team

is too small, we will sort it out in class

  • (you _will_ be assigned to a team, so please try

to find one yourself/fill up your team)

slide-13
SLIDE 13

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Project (Mobile Apps)

  • Goal:
  • To make something useful
  • To learn something new
  • To leverage current technology
  • To have fun
  • Constraints:
  • Be useful, novel, and leverage technology
  • Cannot require crowd involvement
slide-14
SLIDE 14

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Project (Mobile Apps)

  • Goal:
  • To make something useful
  • To learn something new
  • To leverage current technology
  • To have fun
  • Constraints:
  • Be useful, novel, and leverage technology
  • Cannot require crowd involvement
  • MUST work on more than one platform
slide-15
SLIDE 15

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Cross-platform

  • Must be demoed on two or more of the following

platforms:

  • iOS
  • Android
  • BB10
  • WP8
  • FirefoxOS
  • App should conform to the platform (e.g., support

hardware back button if available while hiding on- screen navigation controls).

  • Integrate with appropriate platform services
slide-16
SLIDE 16

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

slide-17
SLIDE 17

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

slide-18
SLIDE 18

RendezVous

slide-19
SLIDE 19

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

CS ¡Advisor ¡Appointment ¡System

Team ¡Legendary ¡Apps

slide-20
SLIDE 20

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Point

  • https://www.youtube.com/watch?v=Qxg3vLJY74M
slide-21
SLIDE 21

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Of Course!

  • https://www.youtube.com/watch?v=3Uzf6KiEMnE
slide-22
SLIDE 22

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Demention

  • https://www.youtube.com/watch?v=DqT9uCcfKQA
slide-23
SLIDE 23

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Deliverables

  • Deliverable 0: Background
  • Deliverable 1: Project proposal
  • Deliverable 2: Proposal presentations (5%)
  • Deliverable 3: Prototype demo (5%)
  • Deliverable 4: Project arch + design (30%)
  • Deliverable 5: Project presentations (10%)
  • Deliverable 6: Participation journal
slide-24
SLIDE 24

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Schedule

  • Proposal: Jan 23 @ 0800
  • Presentation: Jan 28
  • Prototype demo: Mar 4/6 in class
  • Architecture + design: Mar 17 @ 0800
  • 1 hour Oral exams that week
  • Presentations: Mar 31 @ 0800
  • 15 minute presentation in class Apr 1/3
slide-25
SLIDE 25

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Assessment

  • Project deliverables 60%
  • + 2% best proposal
  • +2% best prototype demo
  • +2% best final demo
  • +2% accepted to curated app store
  • Final Exam 40%
  • Some project deliverables will be pass/fail
  • MUST pass final exam and ALL pass/fail elements
slide-26
SLIDE 26

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Project Scaling

  • Project deliverables: 60%

(project + bonus) * scale = final project grade

  • Scale will range between 0.75 and 1.0 (25 points)
  • 5: completeness (compared to proposal)
  • 5: utility
  • 5: polish
  • 10: difficulty
slide-27
SLIDE 27

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Academic Integrity

  • collaboration vs. plagiarism
  • collaboration vs. cheating
  • This is important. The

project will have team and individual components.

slide-28
SLIDE 28

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Deliverable 0

  • Write, or send me a two paragraph email:
  • First paragraph:
  • Your name and a high level overview of

development experience. Include a sentence about what you would like from this course.

  • Second paragraph:
  • A description of how you have encountered

“architecture” and/or “design” in your experience.

  • Due in 15 minutes; deliverable is Pass/Fail
  • Have a stretch; discussion after completion
slide-29
SLIDE 29

REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE

Upcoming Deadlines

  • Form project groups
  • Send to rth.se2@gmail by 0800 Jan 14:
  • Team member names, quest id’s, student #s
  • This is important
  • Deliverable #1: Project proposal
  • Send to rth.se2@gmail by 0800 Jan 23
  • Short presentation in class
  • Pass/Fail but bonus marks available
  • Start thinking about this now!