4 Ship more stable than primitive rock Incorrect symbol shown in 0.3 sec is a category 1 fault (which prevents delivery) Operator response time is 10 sec from detection of missile(s) until own ship might be hit Safety critical í System is different Many common component technologies can not directly be applied Performance Examples
5 What is an architecture? To create a logical sea! physical view cpu 2cpu 1 cpu n LAN with BS2000 logical view
7 Layered structure Unit of distribution: Program Location independent Asynchronous messages Parametrised components MMI definition language COTS Operating system Ada (and some C, C++) Software Architecture
8 Product Line Management Dev proj 1. Dev proj 2. SS2000 product line Dev proj 3.
9 The Dual Life Cycle The product line or the System Family The development projects
10 Organisation then Product line, Component development Development projects requirements Csc:s spr:s Requirements MMI-development Integration Testing example: 8000 test cases. 15 man, 2 months corrections
11 Organisation now (Customer) project Requirements (Customer) project Requirements Product line, Component development, System backbone (Customer) project
12 Documentation Dead code Compartmentalisation Error corrections and releases Late system testing Parametrisation Complexity increase Not a trivial assembling process Challenges
13 Reuse is not always appreciated by the customer Different shapes of not required code –Extra functionality that can be used –Functionality which can not be used –Code that executes, without any extra functionality –Code that is part of the system, but does not execute –Code that is removed before loading Disadvantages –Learning is difficult, risk of misuse –Performance is not optimal –Code may be excessively large –Maintenance problem Dead Code
SIGAda 2001, Bloomington14 Layered Structure WCS, Weapons and sensors C3, Command management system MMI, Man machine interface Base system, application support Operating system, distributed system Application interfaces Controlled Stable Documented Well known Base for reuse This part is OS dependent
15 Component Organisation adin evha adty evhx baty fddi coco fise daco ipco anco evpr dbai joco dbar jocs dite math dram nosunosi osfuovpiposxopsysrmassifstan sycosylasyletacotihasypatipr acco grpr alha haco coob kema ctpi loin foma maha apsi keha gcfu meha grap mit gren mmif grma mmiw movippmarrscsedtsortrrinsurfsurktrantvcouitxvicowima atdi gade ausu gaex cout gpsi crow hist cryp inpt corr gpos ecsc lora ecsd lsnh envi manomatr naainadeospoossipattnase pico piutpldiplma predregesaccsatisddiresusirasythtaretarp brpo enco bsco guas diir gula dila gupa dipl raa6 dias guco dira rasm disu shbo ditr twsmtwtr ditv tipotrdi trutvelovsbxxtcovisi base system MMI sensors and weapons C3 unchanged new / large modifications smaller modifications teha removed
16 P2 P1P4P3P6P5 IPCO Ada program All programs in one pool
17 Library component New component a component is a set of Ada packages Ada Component Structure (static)
SIGAda 2001, Bloomington18 Program 2 Program 1 LAN messages A message is always l Within a component l Between programs Ada Program Structure
SIGAda 2001, Bloomington19 Distributed MMI interface database P1 P2 P.. Pn General MMI program Operator Application programs MMI Architecture
20 Not an easy integration process Blocks may be simple individually, but it takes a considerable skill and time to build a large system Parameter settings Program allocation Performance estimation Complicated systems Testing
21 Parametrisation Large number of parameters: –Parameterisation is used to adapt functionality –Versions not used –Also to set capacity, performance trimming –In place of understanding requirement, deferring decisions Integration is difficult
22 Error corrections can not be made directly Releases must be synchronised Working components may be changed P1P2P3Release Release Handling
SIGAda 2001, Bloomington23 Complexity: 20070 400 7 200 Assume: Total complexity ~ product of component complexity Complexity Increase
24 Ada development –Then: Rational hardware, Rational compilers –Now: PC and Unix based; Aonix, OC Systems, ACT Documentation –Then: VAX/VMS, –Now: Windows NT, RS6000 Aix, –Exco editor (hierarchy and links) –MS Word C-code –VAX/VMS and target –different compilers –PC and Unix Development Environment
25 Education Since 1986 we have had >800 students in >120 courses (incl. basic Ada training, Ada95 & application) Only own employees or from company partners Fundamental training in BaseSystem part of ShipSystem starts with Error Handling, InterProgram Comm, Tactical Config, Parametrisation and MMI Programming Mandatory to follow Application Interface Standards Ada Quality & Style is recommended Deprogramming of C/C++ programmers is essential
SIGAda 2001, Bloomington26 We have succeeded. Degree of reuse is high.
27 Summary The cost is high A product line development is not easy –Software is different from hardware –It is not a production process, it is a development process The difficulties can be overcome –with hard work The result can be very good –but the domain must be limited Stable architecture from start of new project
Your consent to our cookies if you continue to use this website.