《軟件需求分析、設(shè)計與建模》簡答題樣題1_第1頁
《軟件需求分析、設(shè)計與建?!泛喆痤}樣題1_第2頁
《軟件需求分析、設(shè)計與建?!泛喆痤}樣題1_第3頁
《軟件需求分析、設(shè)計與建模》簡答題樣題1_第4頁
《軟件需求分析、設(shè)計與建?!泛喆痤}樣題1_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、What is object technology? What do you perceive as object technologys strength? Its weakness? Object【A set of principles (abstraction, encapsulation, polymorphism) guiding software construction, together with languages, databases, and other tools that support those principles.】 面向?qū)ο蠹夹g(shù)是一系列支持軟件開發(fā)的原則(抽

2、象,封裝,多態(tài)性),以及支持這些原則的程 序設(shè)計語言,數(shù)據(jù)庫和其它工具。Reflects a single paradigm.Facilitates architectural and code reuse.Reflects real world models more closely.Encourages stability.Is adaptive to change反映一個特定實例。有利于構(gòu)件和代碼重用。更加真實地反映現(xiàn)實世界模型。具有更好的穩(wěn)定性。能適應(yīng)需求的變化。What is UML? List at least three benefits of developing with U

3、ML.UML is Unified Modeling Language, it is a language for Visualizing, Specifying, Constructing, Documenting the artifacts of a software-intensive system.】UML是統(tǒng)一建模語言,是一門用于對面向?qū)ο箝_發(fā)的產(chǎn)品進行可視化建模,說明,架構(gòu)和文 檔編制的標準語言。The UML builds models that are precise, unambiguous, and complete.UML models can be directly c

4、onnected to a variety of programming languages.The UML addresses documentation of system architecture, requirements, tests, project planning, and release requirements.】UML幫助建立精確、完整、不含糊的模型。UML模型可以和多種程序設(shè)計語言建立直接連接。UML指導文檔編制,包括系統(tǒng)架構(gòu)文檔,需求文檔,測試文檔,項目計劃,版本說明等。What process characteristic best fit the UML? Des

5、cribe each characteristic.Use-case driven + Architecture-centric + Iterative and incremental.用例驅(qū)動以架構(gòu)為中心迭代和增量開發(fā)4. What is a use-case driven process? What is use-case? Whafs the benefits of use case? Use cases defined for a system are the basis for the entire development process.為系統(tǒng)定義的用例作為整個開發(fā)過程的基礎(chǔ)。用例

6、是描述系統(tǒng)所執(zhí)行的一系列順序事件流,并且某個角色可以看到執(zhí)行的結(jié)果。Benefits of use cases:Concise, simple, and understandable by a wide range of stakeholders.Help synchronize the content of different models.】簡潔明了,可被各個項目相關(guān)人理解。幫助實現(xiàn)不同模型間的同步。What is systems architecture? What is an architecture-centric Process?【A systems architecture is

7、 used as a primary artifact for conceptualizing, constructing, managing, and evolving the system under development.】系統(tǒng)的架構(gòu)是開發(fā)過程的最重要的一項產(chǎn)出,它定義了系統(tǒng)的概念、結(jié)構(gòu),是管理開發(fā)過程、 展開系統(tǒng)的重要指導。以架構(gòu)為中心的開發(fā)過程:統(tǒng)一開發(fā)過程強調(diào)架構(gòu)是項目小組給系統(tǒng)定形的中心,因為一個模型難以反映系統(tǒng)的各個方 面,統(tǒng)一開發(fā)過程支持多個模型和視圖。What is an iteration? What is the benefits of Iterative Devel

8、opment?迭代:迭代是在既定計劃和評價標準之下執(zhí)行的一系列軟件開發(fā)活動,每次迭代是一次集成的 軟件開發(fā)過程包括測試,并產(chǎn)生一個可執(zhí)行的軟件版本。好處:迭代可以在大投資前解決可預見的風險。早期迭代可以獲得用戶反饋。連續(xù)地測試和集成的開發(fā)過程??陀^的里程碑集中在短期。通過對執(zhí)行過程的評估來衡量開發(fā)進度。部分可執(zhí)行部件可被配置。Critical risks are resolved before making large investments.Initial iterations enable early user feedback.Testing and integration are co

9、ntinuous.Objective milestones focus on the short term.Progress is measured by assessing implementations.Partial implementations can be deployed.】What are the basic principles of OO technology ? Describe each in detail.【Abstraction+Encapsulation+Modularity+Hierarchy 】抽象,封裝,模塊化,層次【The essential charac

10、teristics of an entity that distinguishes it from all other kinds of entities.Defines a boundary relative to the perspective of the viewer.Is not a concrete manifestation, denotes the ideal essence of something.】抽象:提取出一個實體區(qū)分其它類型實體的本質(zhì)特征,定義外界所能觀察到的邊界,并不具 體表示某個實體,而是表示出其基本特征?!綡ides implementation from c

11、lients.】封裝:對用戶隱藏執(zhí)行過程。Breaks up something complex into manageable pieces.Helps people understand complex systems.】模塊化:將復雜系統(tǒng)分成幾個可控制的模塊,幫助人們理解復雜系統(tǒng)。層次:是一種從高到低有確定次序的結(jié)構(gòu),同一層的元素具有相同的抽象程度。What is use case model? Which artifacts can be included in a use case model ?【A model that describes a systems functional

12、 requirements in terms of use cases.A model of the systems intended functions (use cases) and its environment (actors).用例模型:根據(jù)用例描述系統(tǒng)的功能需求。用戶,角色和 communicate-association。List three types of relationships existed between different usecases and give examples.【用例泛化、包含用例、擴展用例】泛化關(guān)系,用例的泛化,子用例可以依賴父用例的結(jié)構(gòu),可以在

13、父用例的基礎(chǔ)上增加額外的 行為。(2)包含關(guān)系(include):位于兩個用例之間的包含關(guān)系意味著基用例顯式地在其指定位置將 另一個用例包含進來,使其成為自己的行為的一部分。在具有包含關(guān)系的兩個用例中,被包含的那 個用例不能單獨存在,它只能以實例的形式存在于包含它的用例之中。擴展關(guān)系:兩個用例之間的擴展關(guān)系,代表基用例可以隱式地包含另一個用例作為其行為的一 部分,包含的位置間接地由另一個用例(擴展用例)確定。Explain the following diagram and their elements with examples.usecase diagram【A use case mode

14、ls a dialog between actors and the system.A use case is initiated by an actor to invoke a certain functionality in the system.】用例圖(use case diagram)就是由角色、用例以及它們之間的關(guān)系構(gòu)成的圖。Activity diagram【An activity diagram in the use-case model can be used to capture the activities in a use case.It is essentially a

15、 flow chart, showing flow of control from activity to activity.】活動圖是一種行為圖(behavior diagram),通常用來表達業(yè)務(wù)流程、工作流或系統(tǒng)流程中一 連串的動作。sequence diagram【A sequence diagram is an interaction diagram that emphasizes the time ordering of messages.】順序圖是強調(diào)消息傳遞的時間順序的一種交互圖。Collaboration diagram【A collaboration diagram emp

16、hasizes the organization of the objects that participate in an interaction.】協(xié)作圖強調(diào)對象在參與活動中的組織。class diagram【Static view of a system. Include The vocabulary of a system, Collaborations, A logical database schema.】類圖(Class diagram)是顯示了模型的靜態(tài)結(jié)構(gòu),特別是模型中存在的類、類的內(nèi)部結(jié)構(gòu)以及它 們與其他類的關(guān)系等。statechart diagram【A statecha

17、rt diagram shows a state machine.】狀態(tài)圖(Statechart Diagram)是描述一個實體基于事件反應(yīng)的動態(tài)行為,顯示了該實體如何根據(jù) 當前所處的狀態(tài)對不同的時間做出反應(yīng)的。deployment diagram【The deployment diagram shows:Configuration of processing nodes at run-time.Communication links between these nodes.Component instances and objects that reside on them.】部署圖(dep

18、loyment diagram,配置圖)是用來顯示系統(tǒng)中軟件和硬件的物理架構(gòu)。從部署圖中,可以了解到軟件和硬件組件之間的物理關(guān)系以及處理節(jié)點的組件分布情況。使用部署圖可以顯示運行時系統(tǒng)的結(jié)構(gòu),同時還傳達構(gòu)成應(yīng)用程序的硬件和軟件元素的配置 和部署方式。Describe the similarities and differences between the sequence diagram and collaboration diagram .【Semantically equivalent-Can convert one diagram to the other without losing

19、any information.Model the dynamic aspects of a system.Model a use-case scenario.】相同點:可以將一種圖轉(zhuǎn)換成另一種圖而不丟失任何信息。對系統(tǒng)的動態(tài)行為進行建模,對 用例的情節(jié)進行建模。Sequence diagrams:-Show the explicit sequence of messages.Collaboration diagrams:-Show relationships in additionto interactions.-Show focus of control.-Better for visua

20、lizing patternsof collaboration.-Better for visualizing overall flow.-Better for real-time specificationsand for complex scenarios.】-Better for visualizing all of theeffects on a given object.-Easier to use for brainstorming sessions.不同點:順序圖顯示外部消息的順序。顯示控制焦點。更好的觀察全部的事件流。更適于實時描述和描述復雜情景。交互圖根據(jù)交互行為顯示對象間的

21、關(guān)系。更好的觀察協(xié)作模型。更好的觀察一個對象所受到的各種影響。更適于運用于頭腦風暴會議。Define the different relationships in class diagram: dependency, association,aggregation, composition, generalization.【Dependency: 一個類的改變可能影響或提供信息給其他類。兩個類之間的依賴關(guān)系,表明其中的一個類(客戶類)依賴于另一個類(供應(yīng)類)所提供 的某些服務(wù)。Association: The semantic relationship between two or more

22、classifiers that specifies connections among their instances .類之間的連接關(guān)聯(lián):給出兩個或更多的類之間的語義聯(lián)系,說明了它們實體之間的關(guān)系。Aggregation: A special form of association that models a whole-part relationship between the aggregate (the whole) and its parts.聚合表示組成和整體的所有關(guān)系。Is an “is a part of “ position:組合即強聚合,表示整體對組成的包容關(guān)系;Gene

23、ralization: A relationship among classes where one class shares the structure and/or behaviorof one or more classes. Is an “is a kind of”relationship.】表示一個類共享其它類的結(jié)構(gòu)或者行為的一種類與類之間的關(guān)系。Is an “is a kind ofrelationship.What is a node in deployment diagram ? List two diffent types of nodes.【A physical eleme

24、nt that exists at run-time and represents a computational resource.Processor Node+Device Node.】結(jié)點是存在于運行時系統(tǒng)中的物理元素,代表了一種可計算資源。處理機節(jié)點:運行軟件設(shè)備節(jié)點:由處理機控制的設(shè)備Describe the extensibility mechanisms of UML .【擴展機制 extensibility mechanisms.構(gòu)造型stereotype (表示新的建模元素)標記值tagged value (表示新的建模屬性)約束constraint (表示新的建模語義)】W

25、hat is the function of Stereotypes ? Give two examples of stereotypes.Explain the six best practices of software engineering.【迭代的開發(fā)軟件Develop Iteratively需求管理 Manage Requirements使用基于構(gòu)件的體系結(jié)構(gòu)Use Component Architectures可視化軟件建模Model Visually (UML)驗證軟件質(zhì)量 Continuously Verify Quality控制軟件變更Manage ChangeWhat i

26、s RUP ? How many phases is in RUP ? Describe each phases purpose and milestone. Rational Unified Process.初始階段:Inception目標是為系統(tǒng)建立商業(yè)案例和確定項目的邊界細化階段:Elaboration目標是分析問題領(lǐng)域,建立健全的體系結(jié)構(gòu)基礎(chǔ),編制項目計劃,淘汰項目中最高風險的元素構(gòu)建階段:Construction所有剩余的構(gòu)件和應(yīng)用程序功能被開發(fā)并集成為產(chǎn)品,所有的功能被 詳盡的測試交付階段:Transition目的是將軟件產(chǎn)品交付給用戶群體】Name and briefly des

27、cribe the 4+1”views of architecture.Use-case view+Logical view+Implementation view+Process view+Deployment view用例視圖,邏輯視圖,實現(xiàn)視圖,過程視圖+部署視圖What is the difference between analysis and design?Analysis:-Focus on undrestanding the problem.-Idealized design.-Behavior.-System structure.-Functional requirement

28、s.-A small model.分析:集中在理解問題。是理想化設(shè)計。行為。系統(tǒng)架構(gòu)。功能需求。是一個小模型。Design:-Focus on understanding the solution.-Operations and attributes.-Performance.-Close to real code.-Object lifecylces.-Nonfunctional requirements.A large model.】設(shè)計:集中在理解解決方案。設(shè)計相關(guān)操作和屬性。性能。接近真實代碼。對象生命周期。非功能需求,是一個大模型。Please describe the whole

29、process of oo analysis and design with UML.【Key ConceptsDefine the High-Level Organization of SubsystemsIdentify Key AbstractionsCreate Use-Case RealizationsCheckpoints 】關(guān)鍵概念:定義高層組織和子系統(tǒng)。識別關(guān)鍵的抽象。創(chuàng)建用例實現(xiàn)。設(shè)置檢查點。Identify classes and subsystemsIdentify subsystem interfacesUpdate the organization of the De

30、sign ModelCheckpoints 】識別各個類和子系統(tǒng)。識別子系統(tǒng)的接口。校正設(shè)計模型的組織結(jié)構(gòu)。設(shè)置檢查點。What is a layered architecture? Give examples of typical layers.Application subsystems-Bussiness Specific-Middleware-System Software層次體系結(jié)構(gòu)就是利用分層的處理方式來處理復雜的的功能,層次系統(tǒng)要求上層子系統(tǒng)使用下 層子系統(tǒng)的功能,而下層子系統(tǒng)不能夠使用上層子系統(tǒng)的功能。C/S (兩層)體系結(jié)構(gòu))客戶機/服務(wù)器結(jié)構(gòu)簡稱C/S結(jié)構(gòu)或兩層體系結(jié)構(gòu)。W

31、hat are analysis mechanisms ? What are design mechanismas ? Give examples.分析與設(shè)計規(guī)程的任務(wù)是研究欲采用的實現(xiàn)環(huán)境和系統(tǒng)構(gòu)建的效用,結(jié)果是產(chǎn)生一個設(shè)計模型。設(shè)計模型包含了用例的實現(xiàn),可以表現(xiàn)對象是如何相互通信和運作實現(xiàn)用例的。在設(shè)計模型中可能包含對象類和子系統(tǒng)的接口定義,規(guī)定它們提供操作服務(wù)的責任。這個對象模型也可以在實施環(huán)境中采用,那就是用程序設(shè)計語言,分布等來表達。對于大型系統(tǒng)的項目,有時為系統(tǒng)分析的結(jié)果建立單獨的分析模型也是很有用的。分析模型是概念模型,因為是系統(tǒng)的一個抽象并回避了實現(xiàn)問題;設(shè)計模型是物理模型,因

32、為它是實現(xiàn)的 藍圖。分析模型對設(shè)計是通用的,即適用于多種設(shè)計;設(shè)計模型對設(shè)計不是通用的,針對特定的實現(xiàn)分析模型不太形式化;設(shè)計模型比較形式化分析模型開發(fā)費用比較低;設(shè)計模型開發(fā)費用比較高,是5倍的分析模型分析模型層數(shù)少;設(shè)計模型層數(shù)多分析模型勾畫系統(tǒng)的設(shè)計輪廓,包括系統(tǒng)架構(gòu);設(shè)計模型是進行系統(tǒng)的設(shè)計,包括系統(tǒng)架構(gòu)分析模型不需要在整個軟件生命周期內(nèi)做維護;設(shè)計模型需要在整個軟件生命周期內(nèi)做維護分析模型定義作為構(gòu)造系統(tǒng)基本輸入的架構(gòu),包括創(chuàng)建設(shè)計模型;設(shè)計模型在盡可能保持需求模型所定義 結(jié)構(gòu)的前提下構(gòu)造系統(tǒng)What is an analysis class? Name and describe t

33、he three analysis stereotypes. Give examples.Boundary Class:Intermediates between the interface and something outside the system.Entity Class:Key abstractions of the system.Control Class: Use-case behavior coordinator.】分析類是這樣的類:它代表問題域中的簡潔抽象;應(yīng)該映射到真實世界的業(yè)務(wù)概念(并且據(jù)此仔細命名)。boundary類,中介本系統(tǒng)與其環(huán)境之間的協(xié)作。control類,

34、封裝特定用例的行為。entity類,用于建模事物的永久信息。舉例:boundary?類:用戶界面類一人與系統(tǒng)之間的接口類;系統(tǒng)接口類一同其他系統(tǒng)之間的接口類;設(shè)備接口類一同外部設(shè)備,例如傳感器之間的接口類??刂祁悾涸O(shè)計課程注冊系統(tǒng),開始你可能引入了控制類 CourseRegistrationController來協(xié)調(diào)整個過 程。實體類:表由系統(tǒng)所管理的主要事物(例如,客戶(customer);What is Use-case realization? What s your understandings about the benefit of the use-case realization

35、 structure.【Use case realization是Use case的實現(xiàn),通過描述這些抽象元素的協(xié)作關(guān)系來分析實現(xiàn)方式 以及進一步細化】【use-case realization的目的為了把需求和實現(xiàn)分離;一個用例實現(xiàn)可以實現(xiàn)幾個用例,一個用 例也可以由多個用例實現(xiàn)來實現(xiàn)。這樣具體的實現(xiàn)方案就可以不過分依賴于需求階段的用例 劃分?!緿escribe the steps occured in the use-case analysis.Supplement the Use-Case DescriptionFor each Use-Case Realization: Find Cl

36、asses from Use-Case Behavior, Distribute Use-Case Behavior to ClassesFor each resulting analysis class: Describe Responsibilities, Describe Attributes and Associations,Qualify Analysis MechanismsUnify Analysis ClassesCheckpoints 】補充用例說明。找出用例中的行為,把行為合理分配給各個類。對每一個分析出來的類,描述其職責,屬性,和類間的關(guān)聯(lián),限定分析機制。統(tǒng)一分析類。查檢

37、分析過程和結(jié)果。Whats the package, and Why we need package?【A general purpose mechanism for organizing elements into groups.A model element that can contain other model elements.】【A package can be used:To organize the model under development.As a unit of configuration management.】包是用來對元素分組的一種機制,是一種包含其它模型元素的

38、模型元素。包能用來:在開發(fā)過程中組織模型。是配置管理的單元。What is a subsystem? What is an interface? How does a subsystem differ from a package?【Is a “cross between”a package and a classRealizes one or more interfaces that define子系統(tǒng)是一種模型元素,它具有包(其中可包含其他模型元素)和類(其具有行為)的語義。子系統(tǒng)的行為由它所包含的類或其他子系統(tǒng)提供。子系統(tǒng)實現(xiàn)一個或多個接口,這些接口定義子系統(tǒng)可以執(zhí)行的行為。包:一旦模型

39、變得很大,不能再維持平面結(jié)構(gòu),就需要對包分割。子系統(tǒng):如果某個協(xié)作中的各個類只是在相互之間進行交互,并且可生成一組定義明確的結(jié) 果,就應(yīng)將該協(xié)作和它的類封裝在一個子系統(tǒng)中。這一規(guī)則同樣適用于協(xié)作的子集。可以對協(xié) 作的任何部分或全部進行封裝和簡化,作為一個子系統(tǒng)。SubsystemsPackages Provide behanor Dont provide behavioi1A Completely encapsuhte their Dont completely encapsulate theLrcontemscoHlentsA Are eas ily replaced 口 May not be eas ily repla cedWhat is the purpose of describing the run

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論