university-notes

University Engineering notes

SYSC4805 - Computer Systems Design Lab

Table Of Contents

1. Course Introduction
2. Project Management

← Back to Main README

1. Course Introduction

Course Philosophy

Learning Outcomes

  1. Define concepts of product design, development methodology, and team-based project management.
  2. Design an embedded microcontroller-based system for an engineering problem using hardware and software components.
  3. Identify and adapt to realistic constraints.
  4. Analyze potential solutions for an engineering project.
  5. Use knowledge to analyze and solve an engineering problem.
  6. Evaluate and predict performance using the Scientific method.
  7. Define, plan, and manage a moderately complex project.
  8. Develop teamwork and entrepreneurial skills.
  9. Develop communication skills through technical presentations and reports.

Project Generalities

Embedded System

Microcontroller vs Microprocessor

The Arduino Due

The Arduino Nano Every

Why Arduino?

Sensors We Use

Sensor Description Interface
Rover Line Follower Analog on/off line detector/follower Analog Output
Obstacle Detection IR Sensor Digital on/off Obstacle detection Digital Output
Laser Range Finder Time-of-flight (TOF) range finder 4 - 400 cm I2C
Ultrasonic Distance measurement Timer
Analog Distance Sensor Distance measurement 2 - 15 cm Analog Output
IMU Gyro, Accelerometer and Compass I2C
Wheel Encoder Rotation degree of the wheels Counters

Some Bad Stories

Examples where bad software led to catastrophes:

2. Project Management

Definitions

Goals of Project Management

  1. Meet project objectives
  2. Satisfy stakeholder expectations
  3. More predictable
  4. Increased chances of success, within schedule and budget
  5. Identify and respond to risks
  6. Identify, recover, or terminate failing projects

How to Know Project Management was NOT Involved

  1. Parts of project vary widely in quality and style (over and under engineered)
  2. Some features keep consuming resources when they should have been killed
  3. Essential processes are rushed or removed entirely (testing, maintenance and upgrade plans)
  4. Time schedules are based on actual coding time, nothing else

Project Management Knowledge Areas

In accordance with the PMBOK Guide

ChatGPT Mnemonic: I See Smart Cool Humans Communicate Risks, Plans, Success

Project Integration Management (Management Plan)

Identify, define, combine, unify, and coordinate the various processes and project management activities.

  1. Develop Project Charter: Writing a document that formally authorizes the existence of a project
  2. Develop Project Management Plan: Design/building plan components into integrated project management plan
  3. Direct and Manage Project Work: Leading/performing work in project management plan to achieve project objectives
  4. Manage Project Knowledge: Using existing knowledge to create new knowledge to achieve project objectives
  5. Monitor and Control Project Work: Tracking/reviewing overall progress to meet objectives in the project management plan
  6. Perform Integrated Change Control: Review, approve, and manage project changes while updating and communicating decisions.
  7. Close Project/Phase: Finalizing all project/phase/contract activities

PM Integration: Definitions

Project Scope Management

Ensure the project plan only includes all the work required

  1. Plan Scope Management: Creating scope management plan which documents how project scope is defined/validated/controlled
  2. Collect Requirements: Documenting/managing stakeholder needs and requirements for project’s objectives
  3. Define Scope: Developing detailed description of the project and product
  4. Create WBS: Subdividing deliverables into smaller manageable components
  5. Validate Scope: Formalizing acceptance of completed deliverables
  6. Control Scope: Monitoring status of project/product scope as well as changes to scope baseline

PM Scope: Definitions

PM Scope: Requirements

PM Scope: Characteristics of Good Requirements

ChatGPT Mnemonic: Smart Users Implement Very Thorough, Consistent, Achievable Criteria

PM Scope: Requirements Traceability Matrix

Work Breakdown Structure (WBS)

Project Schedule Management

Manage the timely completion of a project

  1. Plan Schedule Management
  2. Define Activities
  3. Sequence Activities
  4. Develop Schedule
  5. Estimate Activity Durations
  6. Estimate Activity Resources
  7. Control Schedule

PM Schedule: Activity List

PM Schedule: Milestone List

PM Schedule: Schedule Network Diagram

PM Schedule: Precedence Diagramming Method (PDM)

Dependency Types:

  1. Finish-to-start (FS):
  2. Finish-to-finish (FF):
  3. Start-to-start (SS):
  4. Start-to-finish(SF):

Critical Path Method (CPM)

Project Cost Management

Planning/estimating/financing/managing costs so that the project can be completed within the approved budget

  1. Plan Cost Management:
  2. Estimate Cost:
  3. Control Costs:
  4. Determine Budget:

Project Quality Management

  1. Plan Quality Management:
  2. Perform Quality Assurance
  3. Control Quality

Project Human Resource Management

  1. Plan Human Resource Management
  2. Acquire Project Team
  3. Develop Project Team
  4. Manage Project Team

Project Communications Management

  1. Plan Communications Management
  2. Manage Communications
  3. Control Communications

Project Risk Management

  1. Plan Risk Management:
  2. Identify Risks
  3. Perform Qualitative Risk Analysis
  4. Perform Quantitative Risk Analysis
  5. Plan Risk Responses
  6. Control Risks

Project Procurement Management

  1. Plan Procurement Management
  2. Conduct Procurement
  3. Control Procurement
  4. Complete Procurement

Project Stakeholder Management

  1. identify Stakeholders:
  2. Plan Stakeholder Management
  3. Manage Stakeholder Engagement
  4. Control Stakeholder Engagement

3. Better Embedded Systems

4. Embedded Systems Programming