Applied Software Architecture
اسلاید 1: Applied Software ArchitectureQuality attributes, scenarios, tactics
اسلاید 2: Four Views to Software ArchitectureCode viewMany files, many kind of filesObject code, binary codeMultiple versionsConfiguration managementOrganisation of these affect the reusability of code and the build time of the system
اسلاید 3: Four Views to Software Architecture con’tModule viewThe design of individual classes or procedures is too fine grained to be considered part of the software architecture designBut the decomposition of the system and the partitioning of modules into layers is!
اسلاید 4: Four Views to Software Architecture con’tExecution viewThe dynamic aspectHow to map functional components to runtime entities?How to handle communication, coordination and synchronisation among components?
اسلاید 5: Four Views to Software Architecture con’tConceptual viewDescribes the system in terms of its major design elements and the relation among themUsually tied closely to the application domainCan be used to specify the software architecture of a system with some attributes to guide the mappings of the other views
اسلاید 6: Conceptual viewIdentify the conceptual components and connectorsProblems and solutions are viewed primarily in domain termsBut independently of particular software and hardware techniques
اسلاید 7: Conceptual view con’tEngineering concerns addressed:How does to system fulfill the requirements?How are COST components integrated and how do they interact with the rest of the system?How is domain-specific hardware and/or software incorporated into the system?How is functionality partitioned into product releases?How does the system incorporate the product’s prior generations and support future generations?How can the impact of changes in requirements be minimised?
اسلاید 8: Module viewConceptual components and connectors are mapped to subsystems and modulesThe architect addresses how the conceptual solution is realised with today’s software platforms and technologies
اسلاید 9: Module view con’tEngineering concerns addressed:How is the product mapped on to the software platform?What system support/services does it use and where?How can testing be supported?How can dependencies between modules be minimised?How can reuse of modules and subsystems be maximised?How to insulate the product from changes in COST software, in software platform, standards?
اسلاید 10: Execution viewMap the modules to the elements of the runtime platformDefines the system’s runtime entities including their attributesMemory usage, hardware assignment, …Flow of control from the point of the runtime platform
اسلاید 11: Execution view con’tEngineering concerns addressed:How does the system meet its performance, recovery and reconfiguration requirements?How can one balance resource usage?Load balancing?How to achieve concurrency, replication, distribution without too much additional complexity in control?How to minimise the impact of changes in the runtime platform?
اسلاید 12: Code viewMap the runtime entities from the execution view to deployment components (e.g. executables)Map modules from the module view to source componentsDetermine how the deployment components are produced from source components
اسلاید 13: Code view con’tEngineering concerns addressed:How can the time and effort for product apgrades be reduced?How should product versions and releases be managed?How can build time be reduced?What tools are needed to support the development environment?How are integration and testing supported?
اسلاید 14: Using the viewsGives a systematic way of designing a software architectureGives guidance inTracing influencing factors and requirements through the architectureSequencing design activitiesMaking design trade-offsSupporting system-specific qualities like performance or reliabilitySupporting general qualities like buildability, portability, testability, reusabilityEnsuring that no aspects of the architecture are overlookedProducing documentation
اسلاید 15: Design tasksGlobal analysisCentral design tasksGlobal evaluation taskFinal design tasksResource budgetingInterface definition
اسلاید 16: Global analysisIdentify the external influencing factors and critical requirements that could affect the architectureAnalyse them to come up with strategies for designing the architectureIf all cannot be satisfied, decide which has priority, renegotiate a requirement, or change some external factor to come up with workable strategies
اسلاید 17: Global analysis con’tInfluencing factorsOrganisational factorsDevelopment schedule, budgetOrganisational attitudes, software processTechnological factorsAvailable hardware and software technologyProduct factorsPerformance, depemdability, costMay be different in future versions
اسلاید 18: Global analysis con’tMany factors affect the entire systemStrategis should address global concerns, but provide guidance for implementing them locallyOccurs throughout the designNew factors, issues or strategies can arise at any timeConsider factors as a groupMight be contradictiongSort out conflicts and resolve them
اسلاید 19: Global analysis con’tComplements the risk analysis and/or requirements analysisRequirements and risk analyses might give the anlysed factors Then develop strategies to the designProvides a systematc wayof identiying, accomodating and describing the affecting factors
اسلاید 20: Global analysis con’tAnalysing factorsTake as input the organisational, technological and product factorsMake them explicitThree (3) step procedureStep 1: Identify and describe the factorsStep 2: Characterise the flexibility or the changeability of the factorsStep3: Analyse the impact of the factors
اسلاید 21: Step 1: Identify and describe the factorsCan the factor’s influence be localised to one component or not?During which stages of development is the factr important?Does the factor require any new expertise or skills?
اسلاید 22: Step 2: Characterise the flexibility or the changeability of the factorsFlexibilityIs it possible to influence or change the factor so that it makes your task of architecture development easier?In what way can you influence it?To what extent can you influnce it?ChangeabilityIn what way could the factor change?How likely will it change during or after development?How often will it change?Will the factor be affected by changes in the other factors?
اسلاید 23: Step3: Analyse the impact of the factorsIf a factor was to change, which of the following would be affected and how:Other factorsComponentsModes of operation of the systemOther design decisions
اسلاید 24: Global analysis con’tDevelop strategiesThree (3) steps procedureStep 1: Identify issues and influencing factorsStep 2: Develop solutions and specific strategiesStep 3: Identify related strategies
اسلاید 25: Step 1: Identify issues and influencing factorsIdetify a handful of important issues that are influenced by the factor and their chageabilityLimitations or constraints imposed by factorsAggressive developemnt scheduleA need to reduce the impact of changeability of factorsDesign for portabilityDifficulty in satisfying product factorsHigh throughput req. may overload CPUA common solution to global requirementsError handling and recovery
اسلاید 26: Step 2: Develop solutions and specific strategiesFor each issue, develop strategies that address the issue and ensure the implementation changeability of the architecture designReduce or localise the factor’s influenceReduce the impact of the factor’s changeability on the design and other factorsReduce or localise required aread of expertise or skillsReduce overall time and effort
اسلاید 27: Step 3: Identify related strategiesWhen a strategy belongs with more than one issue, don’t repeat the strategy
اسلاید 28: Global Analysis SummaryConsider three kinds of influencing factorsOrganisational factorsConstrain design choisesTechnological factorsEmbedded or embodied in the productProduct factorsFunctional features and qualities of the product
اسلاید 29: Global Analysis Summary con’tAt the end of architecture design you will haveCharacterised the important influencing factors andDeveloped strategies for ensuringBuildabilityImplementationchangeability
اسلاید 30: IS2000: The Advanced Imaging SolutionIS2000 key marketing featuresHas a user-friendly operator environmentHas a comprehensive catalog of built-in acquisiion proceduesThe user can define custom acquisition proceduesThroughput of image acquisition 50% higher than beforeImage display as fast as the max. hardware spreedUser defined trade-off between speed and image qualityDesigned for easy upgradeOpen platform connectivityCan be connected to prnters, digital images, …
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.