AU CSHenrik Bærbak Christensen1 dSoftArk E2013 Software Architecture Programming in the Large
AU CSHenrik Bærbak Christensen2 The lecturer Henrik Bærbak Christensen Associate professor (lektor) since 2003 –Collaboration with many Danish IT companies Systematic, Jyske Bank, Terma, B&O, KMD, Danfoss, … –Actually have complex software in production Faglig koordinator for Master og Diplom (SWK) Owner of Course development and consultancy
One piece of information Due to copyright issues I cannot publish slides. Solution 1 –Use CourseAdmin manual: loop{”I press here, browse here, press OK”} Solution 2 –Use pwd protected folder Automatic: svn commit USER: dsoftarkPWD:312 AU CSHenrik Bærbak Christensen3
School or Study? I assume you can read a web page... –For pretty correct and almost up to date information... Meanwhile... What is dSoftArk really about? AU CSHenrik Bærbak Christensen4
AU CSHenrik Bærbak Christensen5 There Will Be Code
Complex constructions Two examples... AU CSHenrik Bærbak Christensen6
The question is then... How best to get from nothing to something? AU CSHenrik Bærbak Christensen7
Software Engineering? Best way:BuildingorGrowing AU CSHenrik Bærbak Christensen8
Parameters Consider: –Time span before useful –Revenue generation –Risk –Time before misunderstandings are detected AU CSHenrik Bærbak Christensen9
AU CSHenrik Bærbak Christensen10
Development Process WEhttp:// WE Video /Art and Technology / – at AU CSHenrik Bærbak Christensen11
StarCraft II More than 4.5 mio sold copies Large e-sports community –DreamHack: Over live streams during the final Question: How would you like –You are key programmer –During e-sport final, the game crashes due to your bug? My own experience –”Do not worry, the planes have fuel for another two hours...” AU CSHenrik Bærbak Christensen12
dSoftArk Software –Flexible configurable –Reliable it works! –Agile development software is reliably grown –Patterns The book ! –You will need it –Even after graduating! AU CSHenrik Bærbak Christensen13
Learning and Teaching... You learn when –You are exitedbut not scared! –You are challengedbut not overwhelmed! –You feel like a successnot a failure! –You extend knowledge and skillsfrom what they are Thus –Moving from 10 to 12is great! –Moving from 00 to 4is great! –Moving from 00 to 12is probably not possible! Morale:I and TAs should encourage and help, not intimidate, discourage nor scare you! AU CSHenrik Bærbak Christensen14
Exam... Different! Scary? Exam in physical training, question ”push-ups” –A) ”Then I push my body up using my arms, and then I relax the arms again – 100 times!” –B) Do it! 100 times! At the dSoftArk exam you will be asked to read and write code! Morale: Code and reflect the next 10 weeks! AU CSHenrik Bærbak Christensen15
The scary exam again... If you aim for industrial software development... –You should strive to do well in dSoftArk If you aim for research in security, algorithms, physics, or for management... –You will want just to pass the exam I aim to produce ”How to get 02 in dSoftArk”... AU CSHenrik Bærbak Christensen16
Tradition: Emperical Evidence No QEDs – sorry! dSoftArk techniques and industry –These techniques are in use or the companies work to introduce them! –All tools are industrial strenghts First scientific result showing C++ is better than C appeared in year –? AU CSHenrik Bærbak Christensen17
Summary We are going to build complex systems that are flexible and reliable We hypothesize this is best made in an evoluationary way –Grow flexible, testable, software –Learn as we go, prepare to get wiser –Agile manifesto We need production quality tools to do so –JUnit, Ant, Subversion, IDEs,... –Start right away... AU CSHenrik Bærbak Christensen18
Summary Your learning will –Resemble industrial strength development Long term maintenance (> 1 week!) Customer requirements driven Focused on one single project Read the intro page about the mandatory project!!! AU CSHenrik Bærbak Christensen19
Summary I love strategy games –Mandatory Project: Tribute to the classic... AU CSHenrik Bærbak Christensen20