Software Architecture In An Integrated Engineering Methodology

3y ago
18 Views
2 Downloads
252.55 KB
13 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Farrah Jaffe
Transcription

Software Architecture in an Integrated EngineeringMethodologyJ.D. BakerSystems Engineer, BAE Systems andMember, OMG Architecture Board 2008 BAE Systems.April 28, 2008 SATURN1Abstract and BioJ.D. Baker is a member of the Object Management Group Architecture Board, where herepresents BAE Systems. Within the OMG, he has participated in the development of UML,OMG SysML, and the UML Profile for DoDAF and MODAF. At BAE Systems he is the leadSoftware System Engineer/Architect for the Integrated Engineering Methodology, a modelbased methodology for the design and construction of complex, software-intensive systems.J.D. holds many industry certifications, including OMG Certified UML Professional, SunCertified Java Programmer, and he holds certificates as an SEI Software ArchitectureProfessional and ATAM Evaluator.Fitting software architecture into the engineering process becomes a challenge when you aredeveloping complex systems. What are the inputs, where do they come from, how do I knowthat what the other disciplines are creating will meet my needs, how do I know I'm creatinguseful work products and they are being produced at the right time? Recognizing thiscomplexity, BAE Systems has developed the Integrated Engineering Methodology (IEM), amodel-based, end-to-end methodology that seeks to ensure that only the products that areneeded are developed and that development occurs at the right time. How do you do all thatand maintain the organization at CMMI Level 5? This paper describes the IEM, highlights thesoftware architecture and describes its relationship to the other elements of the methodology. 2008 BAE Systems.April 28, 2008 SATURN21

BackgroundThe Approach and Motivation for Pursuing an Integrated EngineeringMethodology 2008 BAE Systems.April 28, 2008 SATURN3IEM Development Approach A Model-based (UML and M&S) methodology Supports INCOSE MBSE and OMG MDA Practical Formalization of existing best practices from successful projects, not theinvention of something new Inputs from multiple business units Highly integrated inputs and outputs span all of the disciplines Flexible and scalable Ability to publish multiple configurations to support process agility e.g. R&D process has been incorporated Supports current Process Selection Tool Standards-based Meets customer desires for development using open standards 2008 BAE Systems.April 28, 2008 SATURN42

IEM Development ProcessModel-basedProcessEngineeringusing theEclipse ProcessFramework EPF is an open-source tool Author IBM Rational Method Composer(RMC) without the RUP content andwithout the license costImplements the Software andSystems Process Metamodeling(SPEM) 2.0 standardAuthors fill in standard templateswith contentAuthors and process modelersdescribe the integration that result inlinks and references in the publishedweb site 2008 BAE Systems.April 28, 2008 SATURN5IEM Development ProcessModel-basedProcessEngineeringusing theEclipse ProcessFrameworkAuthor Tailored forprojectdeployment byProgram andProcess groupEPF can maintainmultiple configurationviews Configure 2008 BAE Systems.Standard viewsTailored views forprojectsContent is consistentfor task and workproduct descriptions forall usersConsistent workproducts can becounted and measuredmeaningfullyApril 28, 2008 SATURN63

IEM Development ProcessModel-basedProcessEngineeringusing theEclipse ProcessFrameworkAuthor Users just need a browser to accessthe IEM contentTailored forprojectdeployment byProgram andProcess groupConfigureWeb pages for use bypractitionersPublish 2008 BAE Systems.April 28, 2008 SATURN7NotesKey elements in the modeling of an engineering methodology1. Standards-based notation/modeling language highly desirable1. The Eclipse Process Framework is based on the Software and System EngineeringMeta-model v2.02. Commonly used tool so content can be reused1. EPF is being used to model the ICM2. EPF is used by Telelogic to model the Harmony SE and SW processes3. EPF is used by John McGregor (Clemson and SEI) to model Software Product Linerelated processes4. EPF is used by ICONIX Software to model ICONIX process5. EPF is used to model an agile enterprise architecture process - http://www.agileea.com/3. Tailorable publication1. Projects tailor the IEM to their needs.2. Work products developed are consistent across variable projects to support systems andsoftware estimating4. Easy to use1. EPF publishes to HTMl2. Publication to a wiki coming soon 2008 BAE Systems.April 28, 2008 SATURN84

University of Southern CaliforniaCenter for Systems and Software EngineeringICM HSI Levels of Activity for Complex SystemsICM - Developedin response toDoD-relatedissuesIntegrateshardware,software, andhuman factorselements ofsystemsengineeringOur motivation– dealing withcomplexsystemarchitectureConcurrentexploration ofneeds andopportunitiesConcurrentengineeringof hardware,software,humanaspects03/19/2008Used with permission USC-CSSE9University of Southern CaliforniaCenter for Systems and Software EngineeringNotesICM HSI Levels of Activity for Complex SystemsAs mentioned earlier, with the ICM, a number of system aspects are beingconcurrently engineered at an increasing level of understanding, definition, anddevelopment. The most significant of these aspects are shown in this slide, anextension of a similar view of concurrently engineered software projects developedas part of the RUP (shown in a backup slide).As with the RUP version, it should be emphasized that the magnitude and shape ofthe levels of effort will be risk-driven and likely to vary from project to project. Inparticular, they are likely to have mini risk/opportunity-driven peaks and valleys,rather than the smooth curves shown for simplicity in this slide. The main intent ofthis view is to emphasize the necessary concurrency of the primary success-criticalactivities shown as rows. Thus, in interpreting the Exploration column, althoughsystem scoping is the primary objective of the Exploration phase, doing it wellinvolves a considerable amount of activity in understanding needs, envisioningopportunities, identifying and reconciling stakeholder goals and objectives,architecting solutions, life cycle planning, evaluation of alternatives, and negotiationof stakeholder commitments.Used with permission03/19/2008 USC-CSSE105

IEM StructureModeling & Simulation (A3I)HardwareSoftwareEnterpriseArchitectureSystem Req./System TestData ModelingInformation AssuranceUser InterfaceLifecycle SupportNewBusinessEngineeringSupport Engineering (ISBM)CapturePlanningCapabilityPlanningRisk ID &Mgmt.AoA,Trades& n& ChangeMgmt.Supporting functions are applied as necessary throughout the system lifecycle. 2008 BAE Systems.April 28, 2008 SATURN11April 28, 2008 SATURN12Integrated Workflows 2008 BAE Systems.6

Integration from the Systems PerspectiveMetrics, Measurements, DataFor Enterprise and Systems LevelEstimating, Lifecycle Management, Interoperability Assessment and udgets, Etc.SystemAnalysis andDesignSoftware andHardwareImplementationSystem ArchitectureSoftware ed BetweenSystems, Software and HardwareEngineering Disciplines 2008 BAE Systems.April 28, 2008 SATURN13Software onIOCProduct ReleaseTransitionclass Designis related toglossary::Definitiongloss ary::Term-name: String m Term«property get» getname() : String m Definition -«property set» setname(String) : voidabbre viation: Stringacronym: Stringmean ing: Stringprono unciation: Stringsymbol: Image«property get» getab breviation() : String getacronym() : String getm eaning() : String getpronounciation() : String getsymbol() : Image«property set» setabbreviation(String) : void setacronym(String) : void setmeaning(String) : void setpronounciation(String) : void setsymbol(Image) : voidis stored inarchiv e ::RepositoryRequire- QAWADDments getDefiniton() : Definition getTerm() : T erm putDefintion(Definition) : void putTerm(Te rm) : void removeT erm(Term) : booleanCode andUnit testIntegration &Test[Operations & Support]Aka Readiness andSustainmentECRECPHelp roduct ReleaseConstructionTransitionCode andUnit testIntegration & Testcla s s Des ignis re la te d togloss ary: :Term-n a me: St rin g m Term«p ro p ert y g e t» g e tn ame () : St rin gglos sa ry:: Def initi on m Def init ion -«p ro p ert y se t» se tn a me( Stri ng ) : vo ida bb re via ti on : Str inga cro ny m: Stri ngme an in g : S tri ngp ro no u nci at io n: St ringsymb o l: Ima ge« p ro pe rt y g et » g et ab b re via tio n () : St ring g et acr on ym( ) : Str in g g et mea n ing () : Stri ng g et pr on o un cia ti on () : S tri ng g et sy mbo l() : Ima ge« p ro pe rt y se t» se ta bb re vi at ion (Str in g) : void se ta cro n ym(St rin g) : vo di se tme an in g (Stri ng ) : vo id se tp ro no u nc ia tion (St rin g ) : vo id se tsymb ol (Ima g e) : voidis sto r ed i na rc hiv e ::R epos it oryRequire- QAWADDmentsThe SW workflow is repeated multiple times forlong-lived systems. This workflow needs to fitinto the system development workflow. 2008 BAE Systems. g et De fini to n( ) : Defi ni tio ng et Te mr ( ) : Ter mp ut De fint io n( Defi nit ion ) : vo idp ut Te mr ( Ter m) : voidr emo veTe rm(Te rm) : b oo le an[Operations & Support]Aka Readiness andSustainmentECRECPHelp DeskEtc.IterateApril 28, 2008 SATURN147

Results of EADuring InceptionModeling evelopmentTest andIntegrationModeling and SimulationSimulation models arerefined and expandedto support design andprovide valuable inputfor other disciplines.Hardware and Network EngineeringSoftware EngineeringPrototypeSystems EngineeringThe Prototype helpsdefine systemrequirements.Support EngineeringData and Information sThe architecturedefines the principlesdriving system design 2008 BAE Systems.Information AssuranceUser Interface / HCIApril 28, 2008 SATURN15NotesKeys to developing workflows and lifecycle descriptions:1. All development is iterative in the small2. All development is linear in the large3. All of that linearity and iterative development can not be reasonably represented in a single graphic 2008 BAE Systems.April 28, 2008 SATURN168

Results of EAArchitectureAnalysisModeling &SimulationM&S continues throughoutthe lifecycle using the sameA3I process employed duringarchitecture developmentSystemDesignSystemDevelopmentTest andIntegrationModeling and SimulationHigher fidelity simulationsVerification by analysisVolumetricModelsHardware and Network EngineeringSoftware EngineeringPerformanceModelsPrototypeSystems EngineeringSupport EngineeringData and Information s 2008 BAE Systems.Information Assuranceintroduce informationassurance early and threadit throughout the systemdesign and implementationUser Interface / HCIApril 28, 2008 SATURN17NotesKeys to integrating Modeling and Simulation:1. In the capabilities and objectives definition stage of develop, enterprise architects and systemsengineers develop scenario-based products (e.g. use cases, QAW scenarios, SV-10C)2. M&S uses that information to understand the behaviors they need to simulate3. M&S is data-driven. Software and Systems architects have to be conscious of the fact that theyneed to provide that data, in addition to validating the simulations. 2008 BAE Systems.April 28, 2008 SATURN189

Results of EAArchitectureAnalysisModeling &SimulationSystemDesignSystemDevelopmentTest andIntegrationModeling and SimulationHardwareNetworkDesignand Network EngineeringNetwork Design andother hardwareactivities proceed on aHW-centric scheduleSoftware EngineeringPrototypeOOAD Systems/ SOAD EngineeringThe appropriate systemanalysis and designtechnique is appliedSupport EngineeringData and Information sInformation AssuranceUser Interface / HCI 2008 BAE Systems.April 28, 2008 SATURN19NotesKeys to aligning software and hardware lifecycles1. Hardware often has long lead times for critical items2. Software must carefully select alternate resources to support early analysis and prototyping 2008 BAE Systems.April 28, 2008 SATURN2010

Results of EAArchitectureAnalysisModeling &SimulationSystemDesignSystemDevelopmentTest andIntegrationModeling and SimulationInHardware and Network EngineeringtegrSoftware EngineeringAgile SW IterationsateSystems EngineeringPrototypeOntology/Conceptual Data modelSupport EngineeringSoftware developmentproceeds using theappropriate iterationData ModelsData and Information roductsInformationAssuranceLogical andphysical datamodels are developed fromthe conceptual model andfeed information to M&S, HWUser Interface / HCIand other disciplines 2008 BAE Systems.April 28, 2008 SATURNanditerate21Results of EAArchitectureAnalysisModeling &SimulationSystemDesignSystemDevelopmentTest andIntegrationModeling and SimulationATAMHardware and class Designis related toglossary::Definitiongloss ary::Term-name: String m Term«property get» getname() : StringRequirementsSystem QAWSystem AoA andArchitectureAllocation to SoftwareUML Profile forDoDAF& MODAFPrototypeOMG SysML m Definition -«property set» setname(String) : voidabbre viation: Stringacronym: Stringmean ing: Stringprono unciation: Stringsymbol: Image«property get» getab breviation() : String getacronym() : String getm eaning() : String getpronounciation() : String getsymbol() : Image«property set» setabbreviation(String) : void setacronym(String) : void setmeaning(String) : void setpronounciation(String) : void setsymbol(Image) : voidSoftware Engineeringis stored inarchiv e ::RepositoryQAWADDUML getDefiniton() : Definition getTerm() : T erm putDefintion(Definition) : void putTerm(Te rm) : void removeT erm(Term) : booleanCode andSystems EngineeringUnit testMDA TransformsSupport EngineeringData and Information s 2008 BAE Systems.Information AssuranceUser Interface / HCIApril 28, 2008 SATURN2211

NotesKeys to developing systems that appropriately (not blindly) implement the architecture1. Understand the work products being developed to describe the architectural views well enough thateverything has a purpose2. Ensure those work products relate to one another3. Work products should be in a UML-based model to the greatest extent possible.4. For complex systems consider two QAWs as a risk reduction technique. One for the systemarchitecture and one for the software architecture. 2008 BAE Systems.April 28, 2008 SATURN23April 28, 2008 SATURN24Back-up Slides 2008 BAE Systems.12

University of Southern CaliforniaCenter for Systems and Software EngineeringThe Incremental Commitment Life Cycle Process: OverviewStage I: DefinitionStage II: Development and ssUsed with permission03/19/2008 USC-CSSE25University of Southern CaliforniaCenter for Systems and Software EngineeringNotesThe Incremental Commitment Life Cycle Process: OverviewThis slide shows how the ICM spans the life cycle process from concept exploration tooperations. Each phase culminates with an anchor point milestone review. At eachanchor point, there are 4 options, based on the assessed risk of the proposed system.Some options involve go-backs. These options result in many possible process paths.The life cycle is divided into two stages: Stage I of the ICM (Definition) has 3 decisionnodes with 4 options/node, culminating with incremental development in Stage II(Development and Operations). Stage II has an additional 2 decision nodes, again with 4options/node.One can use ICM risk patterns to generate frequently-used processes with confidencethat they fit the situation. Initial risk patterns can generally be determined in theExploration phase. One then proceeds with development as a proposed plan with riskbased evidence at VCR milestone, adjusting in later phases as necessary.Risks associated with the system drive the life cycle process. Information about therisk(s) (feasibility assessments) supports the decision to proceed, adjust scope orpriorities, or cancel the program.Used with permission03/19/2008 USC-CSSE2613

Software System Engineer/Architect for the Integrated Engineering Methodology, a model-based methodology for the design and construction of complex, software-intensive systems. J.D. holds many industry certifications, including OMG Certified UML Professional, Sun Certified Java Programmer, and he holds certificates as an SEI Software Architecture

Related Documents:

Basic Concepts Software Architecture Lecture 3 2 Software Architecture Foundations, Theory, and Practice What is Software Architecture? Definition: A software system’s architecture is the set of principal design decisions about the system Software architecture is the blu

architecture so that it is easy to out line the software architecture efficiently [4]. The architecture of software is designed to validate and verify, which requirements can be implemented and which cannot. Architecture of a software system generally restrict the developer within the scope, more the software is closest to the architecture more .

What is Computer Architecture? “Computer Architecture is the science and art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals.” - WWW Computer Architecture Page An analogy to architecture of File Size: 1MBPage Count: 12Explore further(PDF) Lecture Notes on Computer Architecturewww.researchgate.netComputer Architecture - an overview ScienceDirect Topicswww.sciencedirect.comWhat is Computer Architecture? - Definition from Techopediawww.techopedia.com1. An Introduction to Computer Architecture - Designing .www.oreilly.comWhat is Computer Architecture? - University of Washingtoncourses.cs.washington.eduRecommended to you b

In Architecture Methodology, we discuss our choice for an architecture methodol-ogy, the Domain Specific Software Architecture (DSSA), and the DSSA approach to developing a system architecture. The next section, ASAC EA Domain Model (Architecture), includes the devel-opment process and the ASAC EA system architecture description. This section

How do you know if a software architecture is deficient or at risk relative to its target system qualities? The answer is to conduct an evaluation of it. A formal software architecture evaluation should be a standard part of the architecture-based software development life cycle. Architecture evaluation is a

1.3 Software architecture and Middleware Middleware is Middleware is software glue Middleware is computersoftware that connects software componentsor applications. It is usedmost oftento support complex,distributed applications. Middleware is any software that allows other software tointeract In short, in the "Component-and-connector" view of a software architecture,

INTEGRATED SECURITY ARCHITECTURE . Regardless of your organization's size, you must be secure to compete. Check Point delivers the best security solutions with the right architecture to prevent attacks in all of your environments. The Check Point integrated security architecture allows companies to enforce security policies

Cisco 819G-S-K9 Integrated Solutions Router 15.2(4)M6A Cisco 819HG-4G-G-K9 Integrated Solutions Router 15.2(4)M6A Cisco 891 Integrated Solutions Router 15.2(4)M6A Cisco 881 Integrated Solutions Router 15.2(4)M6A Cisco 1905 Integrated Solutions Router 15.2(4)M6A Cisco 1921 Integrated Solutions Router 15.2(4)M6A Cisco 1941 Integrated Solutions .