Download - Reliable Software and Architecture
DAIMI Henrik Bærbak Christensen 1
Reliable Software and
ArchitectureCourse 1:
Reliable Software
DAIMI Henrik Bærbak Christensen 2
The lecturer
Henrik Bærbak Christensen Associate professor (lektor) since 2003
– adjunkt and phd – Software developer/architect in industry, 91-94– Ms.Sc. in Astrophysics
Faglig koordinator for Master og Diplom (SWK)
Owner of • Course development
and consultancy • http://www.imhotep.dk
DAIMI Henrik Bærbak Christensen 3
RSA
The audience:– Master students: 1st of 3 courses
• 1: Reliable Softare• 2: Reliable Architecture• 3: Project in RSA
– Diploma students: Perspektivfag
Consequence:– This course can stand alone.
The three courses
1: Reliable Software– High focus on application
• Theory for the purpose of supporting practice
– Large mandatory project• Includes software development in Java• Require tool support: Java, Ant, Junit
– Oriented quite a lot towards implementation level
DAIMI Henrik Bærbak Christensen 4
The three courses
2: Reliable architecture– (Contents not fully defined yet)
– Theoretical• Research papers, book chapters, web resources• Reading, discussing, analyzing
– Doubtful if the mandatory project will include real development
• (on the other hand I would like to fire up 4 virtual machines on a virtual network and do something funny in VMWare )
DAIMI Henrik Bærbak Christensen 5
The three courses
3: Project– Contents defined by… you
– Typical• Apply some of the techniques and reflect
– Often inspired by work practice
• Dig deeper into peculiar topic– More papers, analyze, compare, reflect
DAIMI Henrik Bærbak Christensen 6
DAIMI Henrik Bærbak Christensen 7
This course
Reliability techniques– Testing
• at the various levels: unit, subsystem, system• the various techniques• tools: JUnit and EMMA
– Reviewing– ... and the context it is rooted in– Process and planning
DAIMI Henrik Bærbak Christensen 8
Mandatory Project
Two deliverables– Unit testing: [18th Sep]
• test case design based upon black-box and white-box testing techniques
• tool usage: JUnit and EMMA
– Integration testing (system testing?) [2nd Oct]• Integrate your unit with other groups
DAIMI Henrik Bærbak Christensen 9
Course layout
The main elements– Seminars: I talk you to death; exercises; discussions– Week plan: Defines the course’s heartbeat– Mandatory project: Ensure your hearts beat
• Learning is doing...
Contact:– Me
• Tricky questions – If interesting than I will post a summary on web-site
• Process issues, exam, etc.• No forum this year…
DAIMI Henrik Bærbak Christensen 10
Ilene Burnstein
Practical Software Testing– Reasonable discussion of central
techniques• a bit superficial from time to time
– Heavily focused on process• TMM is her invention
We will use it and “spice it up” with additional material...
DAIMI Henrik Bærbak Christensen 11
Web site
[Demo]
– Schedule / week plan• Mandatory, cursory, optional
– Lessons and exercises
– anarchistic updating is my specialty...
DAIMI Henrik Bærbak Christensen 12
Exam
Exam is a pass/fail exam. Dates are on Web.
It is an oral exam without preparation
Focus– terminology and concepts– ability to apply them on concrete small examples– combine and relate topics
DAIMI Henrik Bærbak Christensen 13
Practical information
Access to DAIMI machines– You have all been added as users on DAIMI
machines• Access to ACM/IEEE libraries• Common repositories for development
– Passwords are provided by Marianne Dammand, course secretary...