Fundamentals of System Engineering Flashcards
What makes an embedded system different from a webpage?
- Distributed system
- Safety relevant
- Hard real-time
- Hardware and Software
- Mechatronic
- Individual lifetime demands (up to 40 years in planes)
- Hardly available in use (not accessible by the customer e.g. for reset)
- Robustness in real environment (temperature, EMC, vibrations, …)
- Complex design process with manufacturers and OEM, several disciplines
Principal Structure of an Embedded System
Real environment ➔ Sensors ➔ Special Interfaxes ➔ Digital signal processing ➔ System Control ➔ Analog system processing ➔ Actuators
- Power electronics
- Power supply
- Analog signal processing
- Communication with other systems
time-continuous
Value observed at all time
Time-discrete
Value only observed at certain point in time
Value continuous
Can have any value
Value-discrete
Can only have certain values
Reactive system
Change behavior based on stimuli, event or control
Open loop control
No direct connection between output and input
Closed loop control
Controller monitors output and adjusts input
Hard real-time
Maximum response time must be smaller than minimum time interval between events or catastrophic result
Soft realtime
Average response time must be smaller then time interval between events
ISO OSI
Application Presentation Session Transport Network Data Link Physical
Pros of waterfall
- Simple and easy to understand
- Easy to manage due to clear deliveries, review process and deadlines
- Phases are completed one at a time
- Works well for smaller projects with well defined and understood requirements
- Clearly defined stages
- Well understood milestones
- Process and results well documented
Cons of waterfall
- No working software produced until late in cycle
- High amount of risk and uncertainty
- Not good for complex and object oriented projects
- Poor model for long and ongoing projects
- Not suitable for projects with changing requirements
- Difficult to measure progress within stages
- Big-bang Integration st the end doesn’t allow identification of bottleneck or challenges early
Pros of Spiral
- Estimates become more and realistic as work progresses
- Software engineers can start working earlier
- Easier to cope with changes
Cons of spiral
- Highly customized limiting reusability because different for each application
- Estimates of budget are hardener to judge at time beginning
- Risk of not meeting initial budget and shedule
Pros of agile
- Completely developed and tested features in short iterations
- Simplicity of the process
- Clearly defined rules
- Increasing productivity
- Self organizing
- Each team member carries a lot of responsibility
- Improved communication
Cons of agile
- Undisciplined hacking (no documentation)
- Violation of responsibility
- Current mainly carried by the inventors
- Focus mainly on software
Agile manifesto
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
Agile process
Product backlog ➔ Sprint backlog ➔ Daily scrum meeting (24h) ➔ Sprint 2-4 weeks ➔ Release
SWOT
- Strengths
- Weaknesses
- Opportunities
- Threats
Maturity Steps
1: Random, unpredictable
2: Repeatable from project to project
3: Better performance on each project
4: Project performance improves on subsequent project
5: Substantial improvements across all dimensions of project performance
Timing methods
- Earliest deadline first
- First come first serve
- Shortest job first
- Round robin
State machine types
Moore: Output depends on state
Mealy: Output depends on action