SlideShare a Scribd company logo
University of Waterloo, SYDE 161 Guest Lecture
October 5, 2011
Leif Bloomquist P.Eng (SYDE ‘97)
Senior Software Systems Engineer, Space Missions
Presentation Overview
 Example projects: Canadarm, Canadarm 2, Phoenix Mars
Lander, neuroArm
 The Software Process
 Overview
 Requirements
 Documentation
 Other important considerations
 A couple of cool videos!
2
September 14, 2013 3
Early Steps: Canadarm
Credit: NASA
Launched in November, 1981 on STS-2
 Power Usage
 Max 1,000 watts plus 1,050
watts of heater power
 Typically less than 300
watts, or 5 light bulbs.
 Construction
 Aluminum, stainless
steel, carbon composite.
 Thermal
 Thermostat controlled
electric heaters and thermal
blankets
 Payload handling
 266,000 kg (a fully loaded
Shuttle vehicle)
4September 14, 2013
Hubble = 11,100kg
September 14, 2013 5
Translational Hand Controller
(THC):
Right, up, down, forward, and
backward movements of the arm
Rotational Hand
Controller (RHC)
Controls the
pitch, roll, and yaw of
the arm
Canadarm2 Arrives (2001)
 17.6m long
 7 joints
 Mass: 1,800kg
 Handling Capacity: 100,000kg
 2 latching end effectors (“hands”)
 Force-moment sensing capability
 Relocatable – can travel end-over-end
 Electrically redundant
 On-orbit or Ground-based control
 PP: 2kW | Prms: 1360W
6September 14, 2013
Credit: NASA
Canadarm 2
Space Station Assembly
September 14, 2013 7Credit: NASA
Robotic Work Station aboard ISS
Dextre
 3.5 m (12 ft) long
 Two manipulator arms, each
with 7 joints
 One body roll joint
 Each arm fitted with an
Orbit Replacement
Unit/Tool Change-out
Mechanism (OTCM)
 Force-Moment sensing
capability
 600 kg (1300 lbs) payload
handling capacity
 One Latching End Effector
 Four special tools, carried in
Tool Holder 8September 14, 2013Credit: NASA
Phoenix MET
9
• Launched in August 2007
• Lands on Mars on May 25, 2008
• Meteorological station to assess the interaction of
surface ice with the atmosphere
– Zenith-pointing LiDAR to characterize Martian climate
and atmosphere (cloud, fog and dust properties)
– Temperature and pressure sensors
Phoenix Mars Lander
Snow on Mars
"You cannot study a surface and an ice layer without knowing the atmosphere above it, and we have a huge volume of data
that describes weather for the entire time we conducted surface operations," Smith said. "This is one of the major
accomplishments of the mission." At the end of the surface mission, Phoenix saw, for the first time, water as snow falling to
the surface Mars and frost on the ground. Falling snow was a real surprise – Peter Smith, Phoenix PI
But the really amazing data came from the LIDAR instrument… In short, they
watched it snow. (Timmer, Ars Technica July 2009)
neuroArm
Image guided robot operates inside of 1.5T
MRI for Intra-operative imaging and guidance
Successful procedures performed on patients
at Calgary Foothills Hospital
Performance Goals achieved:
• 15 Hz closed loop bandwidth for immersive
control – no delay or overshoot
• 50 micron tip position control
• Haptic feedback – 2g force sensing
• 1mm tool to image registration accuracy
How do these
critical, complex systems
come together?
The Software Process
 The aerospace industry generally follows MIL-STD-498 as a guideline for its
software process and documentation.
 United States military standard whose purpose was to "establish uniform
requirements for software development and documentation." It was
released Nov. 8, 1994
 Each company has its own customizations.
 The process is tailored per project, with customer approval.
 Superceded by IEEE 12207.0 "Standard for Information Technology –
Software Life Cycle Processes “ in 1998, but many organizations have kept
with the older format.
The Software Process
1. Develop an operations concept
 High level, what does the system need to do and how will it work?
 High-level use cases
2. Develop System requirements
 What will the System be expected to do?
3. Derive and allocate subsystem requirements
 Begin to establish detail, what parts will cover each function?
 Requires an initial system architecture concept
The Software Process
4. Derive detailed requirements for each discipline
(software, mechanical, electrical)
 More detailed use cases
 These are actually implementable and testable
5. Design a system that meets these requirements
 For software: Unified Modeling Language
 Prototyping and documentation
 Interfaces
6. Implement – Write your code (manufacture the part, etc…)
 If the previous steps were done satisfactorily – this can be the shortest
phase.
The Software Process
7. Validate and Verify (“Test”)
 Test to the requirements – not the design
 Start at lowest level and work your way up (next slide)
 Verification vs. validation
8. Release and Maintain
 See upcoming section on documentation
9. Iterate as necessary
 See upcoming section on development methodologies
Customer reviews and milestones at each step
The Software Process “V Model”
Software Development Methodologies
 Waterfall
 Fully complete each stage of the process before moving on
 Once each stage is complete, never go back
 Suited for high-risk projects with multiple stakeholders (space stations, nuclear
reactors)
 Nearly impossible in practice
 Iterative
 Reflects reality – iterations are always required
 Process for feeding findings from later stages back into the earlier stages
(Engineering Change Notices, etc.)
 Regression Tests
 Agile
 A huge topic, currently “in vogue” in the software industry
 Takes Iterative to its extreme, each part of the system is developed rapidly
 Apply to safety-critical systems with caution
Definitions
 What are requirements?
 IEEE (1) A condition or capability needed by a user to solve
a problem or achieve an objective
 IEEE (2) A condition or capability that must be met or
processed by a system or system component to satisfy a
contract, standard, specification or other formally imposed
document
Purpose of Requirements Engineering
 To achieve agreement on what is to be produced
 To decrease ambiguity and increase consistency and completeness
 To do this, understand the customer need
 If you do not understand what the customer wants you will fail
 Seek first to understand and then to be understood
 To document the agreed set of requirements
 It is not enough just to understand what the customer wants, it is also necessary to
record the understanding
 Shared vision
 To identify key issues: requirements with strong influence on
cost, schedule, functionality, risk or performance
 To provide a basis for system design
 To provide a reference point for system validation
 What if there are problems in the customer provided system specification?
 Communication
Benefits of Good Requirements
 Agreement among engineers, customers and users on the job
to be done and the acceptance criteria of the delivered system
 A sound basis for resource estimation
 Improved system effectiveness factors
 What if the customer does not specify these?
 The achievement of goals with minimum resources (less
rework, fewer omissions and misunderstandings)
 Reduced “expectation gap”
Problems with Bad Requirements
 Creeping user requirements
 Unplanned requirement changes degrades quality
 Ambiguous requirements lead to ill-spent time
 Increases expectation gap
 Customer and engineer have different opinions
 Needs of user are overlooked
 Fuzzy requirements make planning difficult
 The product may not be fit for use
 Can (will) lead to cost and schedule overruns
Why is it hard to write good requirements?
 Lack of knowledge that good system requirements are essential to the
development of a good system
 They are difficult to write: sophisticated problem solving is required to
produce a good statement of requirements
 Engineers lack training in requirements engineering
 It is next to impossible to capture user needs completely
 Desire to truncate the activity and “progress” to the next activity: schedule
pressure
 Customer failure to cooperate in effectively verifying that the requirements
are correct
 Assumptions are made which are not documented or discussed
 “How” instead of “What” is written
 We don’t pay attention to lessons learned
Requirement Attributes
 Good requirements have the following attributes:
 Necessary
 Unambiguous
 Complete
 Verifiable/Testable
 Consistent
 Maintainable
 Correct
 Implementation-free
 Concise
 Feasible
 Understandable
 Traceable
 Let’s try an example
Traceability
 Traceability is key to ensure the system “hangs together”.
 Upward traceability (low-level requirements to system requirements)
 Answers “Why are we implementing this particular requirement? Where is it
derived from?”
 Downward traceability (system requirements to lower level requirements)
 Ensures that none of the system-level requirements get missed
 There are tools to help you manage traceability:
 IBM’s ReqPro
 Artego’s Artisan Studio - Also traces to UML design (Free version Uno)
 Many others
 Modern complex systems can have thousands of requirements
Verbiage
 “Shall” indicates a mandatory requirement
 “Should” indicates a preferred but not mandatory alternative
 “May” indicates an option
 “Will” indicates a statement of intention or fact
These are often contractual
Common Problems
 Making bad assumptions
 Writing implementation (HOW) instead of requirements (WHAT)
 Describing operations instead of writing requirements
 Using incorrect terms
 Using incorrect sentence structure or bad grammar
 Missing requirements
 Over-specifying
Key Documents
 Operations Concept Document
 System Requirements Specification
 Software Requirements Specification (for each unit)
 Software Design Document (for each unit)
 Version Description Document (for each unit)
 Verification Plans and Procedures (per unit, interface and
system-level)
And the most important…
Interface Control Document
 Details of the interface between two entities
(subsystems, computers, devices, organizations…)
 Roles and responsibilities of all parties
 Can be data, mechanical, electrical, organizational…
Entity A Entity BInterface
Importance of ICDs
But when it all comes
together…
September 14, 2013 32
Questions?

More Related Content

Viewers also liked

Space Solutions
Space SolutionsSpace Solutions
Space Solutions
David Godwin
 
More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)
Leif Bloomquist
 
Audible Objects
Audible ObjectsAudible Objects
Audible Objects
Leif Bloomquist
 
Marc Garneau Collegiate Institute
Marc Garneau Collegiate InstituteMarc Garneau Collegiate Institute
Marc Garneau Collegiate Institute
Leif Bloomquist
 
Canadian contributions
Canadian contributionsCanadian contributions
Canadian contributions
SJCSJ
 
CANADA IN SPACE
CANADA IN SPACECANADA IN SPACE
CANADA IN SPACE
Leif Bloomquist
 
ISS Presentation
ISS PresentationISS Presentation
ISS Presentation
Roland Taams
 
Report Internship
Report InternshipReport Internship
Report Internshipabisek123
 

Viewers also liked (9)

Space Solutions
Space SolutionsSpace Solutions
Space Solutions
 
More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)More Mad Science for the Commodore 64 (ECCC 2015)
More Mad Science for the Commodore 64 (ECCC 2015)
 
Audible Objects
Audible ObjectsAudible Objects
Audible Objects
 
Marc Garneau Collegiate Institute
Marc Garneau Collegiate InstituteMarc Garneau Collegiate Institute
Marc Garneau Collegiate Institute
 
Canadian contributions
Canadian contributionsCanadian contributions
Canadian contributions
 
CANADA IN SPACE
CANADA IN SPACECANADA IN SPACE
CANADA IN SPACE
 
ISS Presentation
ISS PresentationISS Presentation
ISS Presentation
 
Report Internship
Report InternshipReport Internship
Report Internship
 
Slideshare ppt
Slideshare pptSlideshare ppt
Slideshare ppt
 

Similar to Software Requirements and Design Process in the Aerospace Industry

Workshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank EnglishWorkshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank English
Marcus Drost
 
ISD LECT 2and3upd.pptx
ISD LECT 2and3upd.pptxISD LECT 2and3upd.pptx
ISD LECT 2and3upd.pptx
GamingMonster6
 
Ch01lect1 et
Ch01lect1 etCh01lect1 et
Ch01lect1 et
AhmedHassanHaji1
 
Requirement Engineering.ppt
Requirement Engineering.pptRequirement Engineering.ppt
Requirement Engineering.ppt
DrTThendralCompSci
 
Debs 2011 tutorial on non functional properties of event processing
Debs 2011 tutorial  on non functional properties of event processingDebs 2011 tutorial  on non functional properties of event processing
Debs 2011 tutorial on non functional properties of event processing
Opher Etzion
 
01_Principles.pdf rata Tata principles and rules
01_Principles.pdf rata Tata principles and rules01_Principles.pdf rata Tata principles and rules
01_Principles.pdf rata Tata principles and rules
wearemaskedmascots
 
Performance Evaluation of a Network Using Simulation Tools or Packet Tracer
Performance Evaluation of a Network Using Simulation Tools or Packet TracerPerformance Evaluation of a Network Using Simulation Tools or Packet Tracer
Performance Evaluation of a Network Using Simulation Tools or Packet Tracer
IOSRjournaljce
 
INCOSE 20100121
INCOSE 20100121INCOSE 20100121
INCOSE 20100121
wday
 
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENEWorkshop
 
SERENE 2014 School: Gabor karsai serene2014_school
SERENE 2014 School: Gabor karsai serene2014_schoolSERENE 2014 School: Gabor karsai serene2014_school
SERENE 2014 School: Gabor karsai serene2014_school
Henry Muccini
 
Requirement Engineering for Dependable Systems
Requirement Engineering for Dependable SystemsRequirement Engineering for Dependable Systems
Requirement Engineering for Dependable Systems
Kamalika Guha Roy
 
Requirements vs design vs runtime
Requirements vs design vs runtimeRequirements vs design vs runtime
Requirements vs design vs runtime
bdemchak
 
Performance Analysis of Idle Programs
Performance Analysis of Idle ProgramsPerformance Analysis of Idle Programs
Performance Analysis of Idle Programs
greenwop
 
An Overview of Performance Evaluation & Simulation
An Overview of Performance Evaluation & SimulationAn Overview of Performance Evaluation & Simulation
An Overview of Performance Evaluation & Simulation
dasdfadfdsfsdfasdf
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
Abhilasha Lahigude
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
sharadkjain
 
Software engg. pressman_ch-6 & 7
Software engg. pressman_ch-6 & 7Software engg. pressman_ch-6 & 7
Software engg. pressman_ch-6 & 7Dhairya Joshi
 
Platform Independent Functional Specifications
Platform Independent Functional SpecificationsPlatform Independent Functional Specifications
Platform Independent Functional Specifications
Francis Lovering
 
requirment anlaysis , user requirements
requirment anlaysis , user requirementsrequirment anlaysis , user requirements
requirment anlaysis , user requirements
csk selva
 

Similar to Software Requirements and Design Process in the Aerospace Industry (20)

Workshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank EnglishWorkshop BI/DWH AGILE TESTING SNS Bank English
Workshop BI/DWH AGILE TESTING SNS Bank English
 
ISD LECT 2and3upd.pptx
ISD LECT 2and3upd.pptxISD LECT 2and3upd.pptx
ISD LECT 2and3upd.pptx
 
Ch01lect1 et
Ch01lect1 etCh01lect1 et
Ch01lect1 et
 
Requirement Engineering.ppt
Requirement Engineering.pptRequirement Engineering.ppt
Requirement Engineering.ppt
 
Debs 2011 tutorial on non functional properties of event processing
Debs 2011 tutorial  on non functional properties of event processingDebs 2011 tutorial  on non functional properties of event processing
Debs 2011 tutorial on non functional properties of event processing
 
01_Principles.pdf rata Tata principles and rules
01_Principles.pdf rata Tata principles and rules01_Principles.pdf rata Tata principles and rules
01_Principles.pdf rata Tata principles and rules
 
Performance Evaluation of a Network Using Simulation Tools or Packet Tracer
Performance Evaluation of a Network Using Simulation Tools or Packet TracerPerformance Evaluation of a Network Using Simulation Tools or Packet Tracer
Performance Evaluation of a Network Using Simulation Tools or Packet Tracer
 
INCOSE 20100121
INCOSE 20100121INCOSE 20100121
INCOSE 20100121
 
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
 
SERENE 2014 School: Gabor karsai serene2014_school
SERENE 2014 School: Gabor karsai serene2014_schoolSERENE 2014 School: Gabor karsai serene2014_school
SERENE 2014 School: Gabor karsai serene2014_school
 
software lecture
software lecturesoftware lecture
software lecture
 
Requirement Engineering for Dependable Systems
Requirement Engineering for Dependable SystemsRequirement Engineering for Dependable Systems
Requirement Engineering for Dependable Systems
 
Requirements vs design vs runtime
Requirements vs design vs runtimeRequirements vs design vs runtime
Requirements vs design vs runtime
 
Performance Analysis of Idle Programs
Performance Analysis of Idle ProgramsPerformance Analysis of Idle Programs
Performance Analysis of Idle Programs
 
An Overview of Performance Evaluation & Simulation
An Overview of Performance Evaluation & SimulationAn Overview of Performance Evaluation & Simulation
An Overview of Performance Evaluation & Simulation
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
 
Software engg. pressman_ch-6 & 7
Software engg. pressman_ch-6 & 7Software engg. pressman_ch-6 & 7
Software engg. pressman_ch-6 & 7
 
Platform Independent Functional Specifications
Platform Independent Functional SpecificationsPlatform Independent Functional Specifications
Platform Independent Functional Specifications
 
requirment anlaysis , user requirements
requirment anlaysis , user requirementsrequirment anlaysis , user requirements
requirment anlaysis , user requirements
 

More from Leif Bloomquist

Tracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore ComputersTracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore Computers
Leif Bloomquist
 
Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64
Leif Bloomquist
 
Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64
Leif Bloomquist
 
VIC MIDI (World of Commodore 2015)
VIC MIDI (World of Commodore 2015)VIC MIDI (World of Commodore 2015)
VIC MIDI (World of Commodore 2015)
Leif Bloomquist
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64
Leif Bloomquist
 
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
Leif Bloomquist
 
Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64Leif Bloomquist
 
New Commodore 64 Network Game Developments
New Commodore 64 Network Game DevelopmentsNew Commodore 64 Network Game Developments
New Commodore 64 Network Game Developments
Leif Bloomquist
 
Wifi For the Commodore 64 (ECCC 2013)
Wifi For the Commodore 64 (ECCC 2013)Wifi For the Commodore 64 (ECCC 2013)
Wifi For the Commodore 64 (ECCC 2013)
Leif Bloomquist
 
TCP/IP For Engineers
TCP/IP For EngineersTCP/IP For Engineers
TCP/IP For Engineers
Leif Bloomquist
 
Real-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETsReal-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETs
Leif Bloomquist
 
Internet Technology for the Commodore 64
Internet Technology for the Commodore 64Internet Technology for the Commodore 64
Internet Technology for the Commodore 64
Leif Bloomquist
 
Commodore 64 Telnet BBS Server
Commodore 64 Telnet BBS ServerCommodore 64 Telnet BBS Server
Commodore 64 Telnet BBS Server
Leif Bloomquist
 
Artillery Duel Network
Artillery Duel NetworkArtillery Duel Network
Artillery Duel Network
Leif Bloomquist
 
World of Commodore 2009 Posters
World of Commodore 2009 PostersWorld of Commodore 2009 Posters
World of Commodore 2009 Posters
Leif Bloomquist
 
Retrocomputers as Hacking Platforms
Retrocomputers as Hacking PlatformsRetrocomputers as Hacking Platforms
Retrocomputers as Hacking Platforms
Leif Bloomquist
 
NetRacer for the Commodore 64
NetRacer for the Commodore 64NetRacer for the Commodore 64
NetRacer for the Commodore 64
Leif Bloomquist
 
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance:  Mapping Motion With Sound Via Radio TransmissionThe Dancer From The Dance:  Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
Leif Bloomquist
 
Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20
Leif Bloomquist
 
Ultimate Modded Commodore 64
Ultimate Modded Commodore 64Ultimate Modded Commodore 64
Ultimate Modded Commodore 64
Leif Bloomquist
 

More from Leif Bloomquist (20)

Tracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore ComputersTracking the International Space Station with Commodore Computers
Tracking the International Space Station with Commodore Computers
 
Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64Multiplayer Roguelike for the Commodore 64
Multiplayer Roguelike for the Commodore 64
 
Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64Multiplayer RogueLike Game for the Commodore 64
Multiplayer RogueLike Game for the Commodore 64
 
VIC MIDI (World of Commodore 2015)
VIC MIDI (World of Commodore 2015)VIC MIDI (World of Commodore 2015)
VIC MIDI (World of Commodore 2015)
 
Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64Wi-Fi Modem For the Commodore 64
Wi-Fi Modem For the Commodore 64
 
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
MIDI Mad Science and Mayhem (Soundhackers #5 "Controller Crazy")
 
Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64Motion-Sensing Gaming Glove for the Commodore 64
Motion-Sensing Gaming Glove for the Commodore 64
 
New Commodore 64 Network Game Developments
New Commodore 64 Network Game DevelopmentsNew Commodore 64 Network Game Developments
New Commodore 64 Network Game Developments
 
Wifi For the Commodore 64 (ECCC 2013)
Wifi For the Commodore 64 (ECCC 2013)Wifi For the Commodore 64 (ECCC 2013)
Wifi For the Commodore 64 (ECCC 2013)
 
TCP/IP For Engineers
TCP/IP For EngineersTCP/IP For Engineers
TCP/IP For Engineers
 
Real-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETsReal-Time Clock for Commodore PETs
Real-Time Clock for Commodore PETs
 
Internet Technology for the Commodore 64
Internet Technology for the Commodore 64Internet Technology for the Commodore 64
Internet Technology for the Commodore 64
 
Commodore 64 Telnet BBS Server
Commodore 64 Telnet BBS ServerCommodore 64 Telnet BBS Server
Commodore 64 Telnet BBS Server
 
Artillery Duel Network
Artillery Duel NetworkArtillery Duel Network
Artillery Duel Network
 
World of Commodore 2009 Posters
World of Commodore 2009 PostersWorld of Commodore 2009 Posters
World of Commodore 2009 Posters
 
Retrocomputers as Hacking Platforms
Retrocomputers as Hacking PlatformsRetrocomputers as Hacking Platforms
Retrocomputers as Hacking Platforms
 
NetRacer for the Commodore 64
NetRacer for the Commodore 64NetRacer for the Commodore 64
NetRacer for the Commodore 64
 
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance:  Mapping Motion With Sound Via Radio TransmissionThe Dancer From The Dance:  Mapping Motion With Sound Via Radio Transmission
The Dancer From The Dance: Mapping Motion With Sound Via Radio Transmission
 
Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20Ultimate Modded Commodore VIC-20
Ultimate Modded Commodore VIC-20
 
Ultimate Modded Commodore 64
Ultimate Modded Commodore 64Ultimate Modded Commodore 64
Ultimate Modded Commodore 64
 

Recently uploaded

বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
kitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptxkitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptx
datarid22
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
TechSoup
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
MERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDFMERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDF
scholarhattraining
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
ak6969907
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
ArianaBusciglio
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Reflective and Evaluative Practice...pdf
Reflective and Evaluative Practice...pdfReflective and Evaluative Practice...pdf
Reflective and Evaluative Practice...pdf
amberjdewit93
 

Recently uploaded (20)

বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
kitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptxkitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptx
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
MERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDFMERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDF
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Reflective and Evaluative Practice...pdf
Reflective and Evaluative Practice...pdfReflective and Evaluative Practice...pdf
Reflective and Evaluative Practice...pdf
 

Software Requirements and Design Process in the Aerospace Industry

  • 1. University of Waterloo, SYDE 161 Guest Lecture October 5, 2011 Leif Bloomquist P.Eng (SYDE ‘97) Senior Software Systems Engineer, Space Missions
  • 2. Presentation Overview  Example projects: Canadarm, Canadarm 2, Phoenix Mars Lander, neuroArm  The Software Process  Overview  Requirements  Documentation  Other important considerations  A couple of cool videos! 2
  • 3. September 14, 2013 3 Early Steps: Canadarm Credit: NASA Launched in November, 1981 on STS-2
  • 4.  Power Usage  Max 1,000 watts plus 1,050 watts of heater power  Typically less than 300 watts, or 5 light bulbs.  Construction  Aluminum, stainless steel, carbon composite.  Thermal  Thermostat controlled electric heaters and thermal blankets  Payload handling  266,000 kg (a fully loaded Shuttle vehicle) 4September 14, 2013 Hubble = 11,100kg
  • 5. September 14, 2013 5 Translational Hand Controller (THC): Right, up, down, forward, and backward movements of the arm Rotational Hand Controller (RHC) Controls the pitch, roll, and yaw of the arm
  • 6. Canadarm2 Arrives (2001)  17.6m long  7 joints  Mass: 1,800kg  Handling Capacity: 100,000kg  2 latching end effectors (“hands”)  Force-moment sensing capability  Relocatable – can travel end-over-end  Electrically redundant  On-orbit or Ground-based control  PP: 2kW | Prms: 1360W 6September 14, 2013 Credit: NASA Canadarm 2
  • 7. Space Station Assembly September 14, 2013 7Credit: NASA Robotic Work Station aboard ISS
  • 8. Dextre  3.5 m (12 ft) long  Two manipulator arms, each with 7 joints  One body roll joint  Each arm fitted with an Orbit Replacement Unit/Tool Change-out Mechanism (OTCM)  Force-Moment sensing capability  600 kg (1300 lbs) payload handling capacity  One Latching End Effector  Four special tools, carried in Tool Holder 8September 14, 2013Credit: NASA
  • 9. Phoenix MET 9 • Launched in August 2007 • Lands on Mars on May 25, 2008 • Meteorological station to assess the interaction of surface ice with the atmosphere – Zenith-pointing LiDAR to characterize Martian climate and atmosphere (cloud, fog and dust properties) – Temperature and pressure sensors Phoenix Mars Lander
  • 10. Snow on Mars "You cannot study a surface and an ice layer without knowing the atmosphere above it, and we have a huge volume of data that describes weather for the entire time we conducted surface operations," Smith said. "This is one of the major accomplishments of the mission." At the end of the surface mission, Phoenix saw, for the first time, water as snow falling to the surface Mars and frost on the ground. Falling snow was a real surprise – Peter Smith, Phoenix PI But the really amazing data came from the LIDAR instrument… In short, they watched it snow. (Timmer, Ars Technica July 2009)
  • 11. neuroArm Image guided robot operates inside of 1.5T MRI for Intra-operative imaging and guidance Successful procedures performed on patients at Calgary Foothills Hospital Performance Goals achieved: • 15 Hz closed loop bandwidth for immersive control – no delay or overshoot • 50 micron tip position control • Haptic feedback – 2g force sensing • 1mm tool to image registration accuracy
  • 12. How do these critical, complex systems come together?
  • 13. The Software Process  The aerospace industry generally follows MIL-STD-498 as a guideline for its software process and documentation.  United States military standard whose purpose was to "establish uniform requirements for software development and documentation." It was released Nov. 8, 1994  Each company has its own customizations.  The process is tailored per project, with customer approval.  Superceded by IEEE 12207.0 "Standard for Information Technology – Software Life Cycle Processes “ in 1998, but many organizations have kept with the older format.
  • 14. The Software Process 1. Develop an operations concept  High level, what does the system need to do and how will it work?  High-level use cases 2. Develop System requirements  What will the System be expected to do? 3. Derive and allocate subsystem requirements  Begin to establish detail, what parts will cover each function?  Requires an initial system architecture concept
  • 15. The Software Process 4. Derive detailed requirements for each discipline (software, mechanical, electrical)  More detailed use cases  These are actually implementable and testable 5. Design a system that meets these requirements  For software: Unified Modeling Language  Prototyping and documentation  Interfaces 6. Implement – Write your code (manufacture the part, etc…)  If the previous steps were done satisfactorily – this can be the shortest phase.
  • 16. The Software Process 7. Validate and Verify (“Test”)  Test to the requirements – not the design  Start at lowest level and work your way up (next slide)  Verification vs. validation 8. Release and Maintain  See upcoming section on documentation 9. Iterate as necessary  See upcoming section on development methodologies Customer reviews and milestones at each step
  • 17. The Software Process “V Model”
  • 18. Software Development Methodologies  Waterfall  Fully complete each stage of the process before moving on  Once each stage is complete, never go back  Suited for high-risk projects with multiple stakeholders (space stations, nuclear reactors)  Nearly impossible in practice  Iterative  Reflects reality – iterations are always required  Process for feeding findings from later stages back into the earlier stages (Engineering Change Notices, etc.)  Regression Tests  Agile  A huge topic, currently “in vogue” in the software industry  Takes Iterative to its extreme, each part of the system is developed rapidly  Apply to safety-critical systems with caution
  • 19. Definitions  What are requirements?  IEEE (1) A condition or capability needed by a user to solve a problem or achieve an objective  IEEE (2) A condition or capability that must be met or processed by a system or system component to satisfy a contract, standard, specification or other formally imposed document
  • 20. Purpose of Requirements Engineering  To achieve agreement on what is to be produced  To decrease ambiguity and increase consistency and completeness  To do this, understand the customer need  If you do not understand what the customer wants you will fail  Seek first to understand and then to be understood  To document the agreed set of requirements  It is not enough just to understand what the customer wants, it is also necessary to record the understanding  Shared vision  To identify key issues: requirements with strong influence on cost, schedule, functionality, risk or performance  To provide a basis for system design  To provide a reference point for system validation  What if there are problems in the customer provided system specification?  Communication
  • 21. Benefits of Good Requirements  Agreement among engineers, customers and users on the job to be done and the acceptance criteria of the delivered system  A sound basis for resource estimation  Improved system effectiveness factors  What if the customer does not specify these?  The achievement of goals with minimum resources (less rework, fewer omissions and misunderstandings)  Reduced “expectation gap”
  • 22. Problems with Bad Requirements  Creeping user requirements  Unplanned requirement changes degrades quality  Ambiguous requirements lead to ill-spent time  Increases expectation gap  Customer and engineer have different opinions  Needs of user are overlooked  Fuzzy requirements make planning difficult  The product may not be fit for use  Can (will) lead to cost and schedule overruns
  • 23. Why is it hard to write good requirements?  Lack of knowledge that good system requirements are essential to the development of a good system  They are difficult to write: sophisticated problem solving is required to produce a good statement of requirements  Engineers lack training in requirements engineering  It is next to impossible to capture user needs completely  Desire to truncate the activity and “progress” to the next activity: schedule pressure  Customer failure to cooperate in effectively verifying that the requirements are correct  Assumptions are made which are not documented or discussed  “How” instead of “What” is written  We don’t pay attention to lessons learned
  • 24. Requirement Attributes  Good requirements have the following attributes:  Necessary  Unambiguous  Complete  Verifiable/Testable  Consistent  Maintainable  Correct  Implementation-free  Concise  Feasible  Understandable  Traceable  Let’s try an example
  • 25. Traceability  Traceability is key to ensure the system “hangs together”.  Upward traceability (low-level requirements to system requirements)  Answers “Why are we implementing this particular requirement? Where is it derived from?”  Downward traceability (system requirements to lower level requirements)  Ensures that none of the system-level requirements get missed  There are tools to help you manage traceability:  IBM’s ReqPro  Artego’s Artisan Studio - Also traces to UML design (Free version Uno)  Many others  Modern complex systems can have thousands of requirements
  • 26. Verbiage  “Shall” indicates a mandatory requirement  “Should” indicates a preferred but not mandatory alternative  “May” indicates an option  “Will” indicates a statement of intention or fact These are often contractual
  • 27. Common Problems  Making bad assumptions  Writing implementation (HOW) instead of requirements (WHAT)  Describing operations instead of writing requirements  Using incorrect terms  Using incorrect sentence structure or bad grammar  Missing requirements  Over-specifying
  • 28. Key Documents  Operations Concept Document  System Requirements Specification  Software Requirements Specification (for each unit)  Software Design Document (for each unit)  Version Description Document (for each unit)  Verification Plans and Procedures (per unit, interface and system-level) And the most important…
  • 29. Interface Control Document  Details of the interface between two entities (subsystems, computers, devices, organizations…)  Roles and responsibilities of all parties  Can be data, mechanical, electrical, organizational… Entity A Entity BInterface
  • 31. But when it all comes together…