DOC PREVIEW
DREXEL CS 451 - Deriving a solution which satisfies software requirements

This preview shows page 1-2-3-4-5-6-7-47-48-49-50-51-52-95-96-97-98-99-100-101 out of 101 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 101 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Software DesignStages of DesignThe Design ProcessPhases in the Design ProcessDesign PhasesHierarchical Design StructureTop-down DesignDesign MethodsMethod ComponentsMethod DeficienciesDesign DescriptionDesign StrategiesFunctional View of a CompilerObject-oriented View of a CompilerMixed-strategy DesignDesign QualityCohesionCohesion LevelsSlide 19Cohesion as a Design AttributeCouplingTight CouplingLoose CouplingCoupling and InheritanceUnderstandabilityAdaptabilityDesign TraceabilityAdaptability and InheritanceArchitectural DesignArchitectural ParallelsSub-systems and ModulesArchitectural ModelsSystem StructuringThe Repository ModelCASE Tool Set ArchitectureRepository Model CharacteristicsClient-server ArchitectureFilm and Picture LibraryClient-server CharacteristicsAbstract Machine ModelVersion Management SystemBroadcast ModelSelective BroadcastingObject ModelsInvoice Processing SystemPipe and Filter ModelsSlide 47Domain-specific ArchitecturesGeneric ModelsCompiler ModelLanguage Processing SystemReference ArchitecturesOSI Reference ModelDistributed Systems ArchitecturesDistributed systemsSystem typesDistributed system characteristicsDistributed system disadvantagesIssues in distributed system designDistributed systems archiecturesMiddlewareMultiprocessor architecturesA multiprocessor traffic control systemClient-server architecturesA client-server systemComputers in a C/S networkLayered application architectureApplication layersThin and fat clientsSlide 70Thin client modelFat client modelA client-server ATM systemThree-tier architecturesA 3-tier C/S architectureAn internet banking systemUse of C/S architecturesDistributed object architecturesDistributed object architectureAdvantages of distributed object architectureUses of distributed object architectureA data mining systemData mining systemCORBAApplication structureCORBA application structureCORBA standardsCORBA objectsObject request broker (ORB)ORB-based object communicationsInter-ORB communicationsSlide 92CORBA servicesSlide 94Starting Clients, Servers, and Name Servers“Hello World” IDL Specification“Hello World” Client Java Program“Hello World” Client Java Program (Cont’d)“Hello World” Server Java Program“Hello World” Server Java Program (Cont’d)Slide 101©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 1Software DesignDeriving a solution which satisfies software requirements©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 2Stages of DesignProblem understanding–Look at the problem from different angles to discover the design requirements.Identify one or more solutions–Evaluate possible solutions and choose the most appropriate depending on the designer's experience and available resources.Describe solution abstractions–Use graphical, formal or other descriptive notations to describe the components of the design.Repeat process for each identified abstraction until the design is expressed in primitive terms.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 3The Design ProcessAny design may be modelled as a directed graph made up of entities with attributes which participate in relationships.The system should be described at several different levels of abstraction.Design takes place in overlapping stages. It is artificial to separate it into distinct phases but some separation is usually necessary.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 4Phases in the Design ProcessArchitecturaldesignAbstractspecificationInterfacedesignComponentdesignDatastructuredesignAlgorithmdesignSystemarchitectureSoftwarespecificationInterfacespecificationComponentspecificationDatastructurespecificationAlgorithmspecificationRequirementsspecificationDesign activitiesDesign products©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 5Design PhasesArchitectural design: Identify sub-systems.Abstract specification: Specify sub-systems.Interface design: Describe sub-system interfaces.Component design: Decompose sub-systems into components.Data structure design: Design data structures to hold problem data.Algorithm design: Design algorithms for problem functions.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 6Hierarchical Design StructureSystem levelSub-systemlevel©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 7Top-down DesignIn principle, top-down design involves starting at the uppermost components in the hierarchy and working down the hierarchy level by level.In practice, large systems design is never truly top-down. Some branches are designed before others. Designers reuse experience (and sometimes components) during the design process.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 8Design MethodsStructured methods are sets of notations for expressing a software design and guidelines for creating a design.Well-known methods include Structured Design (Yourdon), and JSD (Jackson Method).Can be applied successfully because the support standard notations and ensure designs follow a standard form.Structured methods may be supported with CASE tools.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 9Method ComponentsMany methods support comparable views of a system.A data flow view showing data transformations.An entity-relation view describing the logical data structures.A structural view showing system components and their interactions.©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 5th edition. Chapters 10,11 Slide 10Method DeficienciesThey are guidelines rather than methods in the mathematical sense. Different designers create


View Full Document

DREXEL CS 451 - Deriving a solution which satisfies software requirements

Download Deriving a solution which satisfies software requirements
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Deriving a solution which satisfies software requirements and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Deriving a solution which satisfies software requirements 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?