SAMENVATTING SEES 2
Software Engineering for Embedded Systems
07-04-2021
This will contain the following Weeks
1. Week 6: Human Factors, User Interface Design and
Sustainability
2. Week 7: Embedded Software Quality, Integration and Testing
Techniques
3. Week 8: Agile Development for Embedded Systems
Richard Reijerse
S1128082
,Inhoud
6 Human Factors, User Interface Design and Sustainability .............................................................. 2
6.1 User Interface Design .............................................................................................................. 2
6.1.1 Overview: process and knowledge ................................................................................. 2
6.1.2 Task Analysis ................................................................................................................... 3
6.1.3 Design and Evaluation ..................................................................................................... 4
6.1.4 Model View Controller (MVC) – a pattern for building applications .............................. 6
6.1.5 Safety-critical user interfaces.......................................................................................... 6
6.2 Software engineering and Sustainability ................................................................................ 7
6.2.1 Introduction Sustainability .............................................................................................. 7
6.2.2 Sustainability and IT ........................................................................................................ 8
6.2.3 Sustainability in IT ........................................................................................................... 9
6.2.4 Sustainability through IT ............................................................................................... 13
7 Embedded Software Quality, Integration and Testing Techniques ............................................. 17
7.1 Testing ................................................................................................................................... 17
7.1.1 Introduction .................................................................................................................. 17
7.1.2 Requirements Traceability Matrix (RTM)...................................................................... 20
7.1.3 Coding standard ............................................................................................................ 21
7.1.4 Static analysis ................................................................................................................ 22
7.1.5 Dynamic Analysis........................................................................................................... 22
7.2 Standards .............................................................................................................................. 24
7.2.1 Recognized standards ................................................................................................... 24
7.2.2 Internal Standards ......................................................................................................... 25
7.2.3 Legacy code ................................................................................................................... 26
7.2.4 Object code verification (OCV)...................................................................................... 26
7.3 Implementing a test solution environment .......................................................................... 27
8 Agile Development for Embedded Systems.................................................................................. 28
8.1 Introduction .......................................................................................................................... 28
8.2 What’s special about embedded systems? (compared to SE) Less agile! ............................ 30
8.3 Agile project planning for embedded systems ..................................................................... 30
8.4 Project governance for embedded software ........................................................................ 32
8.5 Agile development practices for embedded......................................................................... 33
8.6 Scaling factors for agile ......................................................................................................... 35
8.7 Can agile methods help you adhere to standards? .............................................................. 35
1
,6 Human Factors, User Interface Design and Sustainability
1. User interface design
2. Software engineering and Sustainability
6.1 User Interface Design
1. Overview: process and knowledge
2. Task analysis
3. Design and evaluation
4. Model View Controller Architecture
5. Safety-critical user interfaces
6.1.1 Overview: process and knowledge
Process
Developing a User Interface: four main phases
1. Understand context of use
– User profiles (Who uses your tool)
– Content, user environment, …
2. Develop user requirements
– Tasks and task structures (What should the tool do)
3. Perform usability evaluation
– Mock ups, prototypes, …
4. Development of user interface designs
– Screens
– Actions
Knowledge
Developing a User Interface: four models
1. User profile model
– User characteristics (age, education, …)
– Syntactic knowledge (interaction, but no knowledge about purpose of interaction)
– Semantic knowledge (understanding of functions of the interaction)
2. Design model
– Data and architecture
– Procedures and interfaces
– Based on requirements and user profile
3. Implementation model
– Look and feel
– Supporting information (help, tutorials, …)
– Implements design model, applies mental model
4. Mental model
– Experience
– Metaphors
• Form fill-ins
• Radio buttons
• Play, FF, Pause, …
2
, • Good practices (see textbook), such as:
• Enable frequent users to use shortcuts
• Offer simple error handling
• Permit easy reversal of actions
– Remember Command Pattern (Lecture 2)
• First step: what would a user do with the system
• Two techniques:
1. Essential Use Cases
2. Scenarios for User Analysis
1. Essential Use Cases Conventional Use Case
• Simplified, abstract
• Technology and implementation independent
• User intentions and System responsibility
• Defer implementation-oriented issues
• Conventional use cases: later in design process
Difference between Essential Use Case and Conventional Use Case:
Conventional use case, as above (right) has already defined a lot of design steps, like ‘press
account key’ or ‘press OK key’ which means these keys are already designed. You are in the
process of designing, so you want to start with the basics.
Essential Use Case only uses the essentials of the interaction, without details.
2. Scenarios for User Analysis
• High-level tool aiming at analysis for new products: scenarios
• Often short stories, based on interviews etc. For example:
Mr Brown is a retired greengrocer who wishes to contribute to a greener way of living.
On his roof, he has six solar panels installed. Occasionally he wants to know how much
energy he saved by using these solar panels. …
• Individual, fictional accounts of workflow data
• Often using personas = fictional characters representing specific user types
– Mr Brown, age: 67, retired greengrocer, married
– Peter Smith, age: 27, electro technician, single
3
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, creditcard of Stuvia-tegoed voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper richardreijerse. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €2,99. Je zit daarna nergens aan vast.