系統(tǒng)分析與設(shè)計(jì)課件:sad04.Modeling SystemRequirements with Use Cases_第1頁
系統(tǒng)分析與設(shè)計(jì)課件:sad04.Modeling SystemRequirements with Use Cases_第2頁
系統(tǒng)分析與設(shè)計(jì)課件:sad04.Modeling SystemRequirements with Use Cases_第3頁
系統(tǒng)分析與設(shè)計(jì)課件:sad04.Modeling SystemRequirements with Use Cases_第4頁
系統(tǒng)分析與設(shè)計(jì)課件:sad04.Modeling SystemRequirements with Use Cases_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、Modeling System Requirements with Use CasesChapter 4System Analysis & Design Copyright College of Software, BUAAContents1. Use Case Modeling2. The Process of Use-Case Modeling3. Use Cases and Project Management2System Analysis & Design Copyright College of Software, BUAAContents1. Use Case Modeling2

2、. The Process of Use-Case Modeling3. Use Cases and Project Management3System Analysis & DesignCopyright College of Software, BUAA-4-ChallengeOne of the primary challenges is the ability to elicit the correct and necessary system requirements from the stakeholders and specify them in a manner underst

3、andable to them so those requirements can be verified and validated.System Analysis & DesignCopyright College of Software, BUAA-5-Challenge (cont.)The hardest single part of building a software system is deciding precisely what to build. No other part of the conceptual work is a difficult as establi

4、shing the detailed technical requirements, including all the interfaces to people, to machines, and to other software systems. No other work so cripples the resulting system if done wrong. No other part is more difficult to rectify later.Fred BrooksSystem Analysis & DesignCopyright College of Softwa

5、re, BUAA-6-IS Development Project Track Recordcanceled before completionOver budget, late, or without needed featuresSystem Analysis & DesignCopyright College of Software, BUAA-7-User-Centered Development and Use-Case ModelingUser-centered developmenta process of systems development based on underst

6、anding the needs of the stakeholders and the reasons why the system should be developed.Use-case modeling the process of modeling a systems functions in terms of business events, who initiated the events, and how the system responds to those events.System Analysis & DesignCopyright College of Softwa

7、re, BUAA-8-Use-case ModelingUse-case modeling has roots in object-oriented modeling.Gaining popularity in non-object development environments because of its usefulness in communicating with users.Compliments traditional modeling tools.System Analysis & DesignCopyright College of Software, BUAA-9-Con

8、cepts for Use-Case ModelingUse case a behaviorally related sequence of steps (scenario), both automated and manual, for the purpose of completing a single business task.Description of system functions from the perspective of external users in terminology they understand.System Analysis & DesignCopyr

9、ight College of Software, BUAA-10-Concepts for Use-Case ModelingUse-case diagram (用例圖)a diagram that depicts the interactions between the system and external systems and users. graphically describes who will use the system and in what ways the user expects to interact with the system.Use-case narrat

10、ive (用例描述)a textual description of the business event and how the user will interact with the system to accomplish the task.System Analysis & DesignCopyright College of Software, BUAA-11-Sample Use-Case Model DiagramSystem Analysis & DesignCopyright College of Software, BUAA-12-Basic Use-Case Symbol

11、sUse case (用例)subset of the overall system functionalityActor (參與者)anyone or anything that needs to interact with the system to exchange information. human, organization, another information system, external device, even time. Temporal eventa system event triggered by time.The actor is time (時(shí)間).Sys

12、tem Analysis & DesignCopyright College of Software, BUAA-13-Four Types of ActorsPrimary business actor The stakeholder that primarily benefits from the execution of the use case.e.g. the employee receiving the paycheckPrimary system actorThe stakeholder that directly interfaces with the system to in

13、itiate or trigger the business or system event.e.g. the bank teller entering deposit informationExternal server actor The stakeholder that responds to a request from the use case.e.g. the credit bureau authorizing a credit card chargeExternal receiver actorThe stakeholder that is not the primary act

14、or but receives something of value from the use case.e.g. the warehouse receiving a packing slipSystem Analysis & DesignCopyright College of Software, BUAA-14-Example考慮顧客在超市利用信用卡購買商品的場(chǎng)景,則對(duì)于超市的POS系統(tǒng)而言:如果實(shí)在自動(dòng)售貨機(jī)上購買商品,則對(duì)于該自動(dòng)售貨機(jī)系統(tǒng)而言,顧客又是什么類型的參與者?Primary Business Actor:Primary System Actor:External Serve

15、r ActorExternal Receiver ActorSystem Analysis & DesignCopyright College of Software, BUAA-15-Relationships between ActorsGeneralization (泛化)An actor typically has associations to use cases that must be binary.Actors can also have generalization relationships among themselves, with the typical semant

16、ic expectation that the child can do what the parent does and then some.Define generalization relationshipsWhen several actors, as part of their roles, also play a more generalized role, it is described as a generalization. This occurs when the behavior of the general role is described in an actor s

17、uperclass. The specialized actors inherit the behavior of the superclass and then extend that behavior in some way.System Analysis & DesignCopyright College of Software, BUAA-16-Example: Generalization Relationships between Actors System Analysis & DesignCopyright College of Software, BUAA-17-Relati

18、onships between Actor and Use CaseAssociation (關(guān)聯(lián))a relationship between an actor and a use case in which an interaction occurs between themAssociation with an arrowhead touching the use case indicates that the use case was initiated by the actor(1)Association lacking arrowhead indicates a receiver

19、actor(2)Associations may be bidirectional or unidirectionalSystem Analysis & DesignCopyright College of Software, BUAA-18-Relationships between Use CasesInclude(包含)This relationship indicates that a use case contains the behavior defined in another use case.Extend(擴(kuò)展)This relationship specifies that

20、 the behavior of a use case may be augmented by an additional use case.Generalization(泛化)This relationship specifies how a child can specialize all behavior and characteristics described for the parent.System Analysis & DesignCopyright College of Software, BUAA-19-When a number of use cases have com

21、mon behavior, this behavior can be modeled in a single use case that is included by the other use cases. This relationship encourages reuse, and the modeler should keep this in mind when creating such a relationship.System Analysis & DesignCopyright College of Software, BUAA-20-In either case, the b

22、ase use case should describe essential behavior and note specific extension points with defined conditions where extending use cases are expected to fill in the details.the extended use case is defined independently of the extending use case.System Analysis & DesignCopyright College of Software, BUA

23、A-21- (cont.)The extend relationship can come in handy in two distinct situations:When a system to be developed will potentially be deployed with varying sets of optional behaviorWhen the deployment schedule of a systems use cases requires deployment of functional, though not complete, use casesSyst

24、em Analysis & DesignCopyright College of Software, BUAA-22-GeneralizationGeneralization relationships can also be used to relate use cases.As with classes, use cases can have common behaviors that other use cases (i.e., child use cases) can modify by adding steps or refining others.System Analysis &

25、 Design Copyright College of Software, BUAAContents1. Use Case Modeling2. The Process of Use-Case Modeling3. Use Cases and Project Management23System Analysis & DesignCopyright College of Software, BUAA-24-The Process of Requirements Use-Case ModelingObjective is to elicit and analyze enough require

26、ments information to prepare a model that:Communicates what is required from a user perspective.Is free of specific details about how system will be implemented.To effectively estimate and schedule project, may need to include preliminary implementation assumptions.StepsIdentify business actors.Iden

27、tify business use cases.Construct use-case model diagram.Documents business requirements use-case narratives.System Analysis & DesignCopyright College of Software, BUAA-25-Step 1: identify Business ActorsWhen looking for actors, ask the following questions:Who or what provides inputs to the system?W

28、ho or what receives outputs from the system?Are interfaces required to other systems?Are there events that are automatically triggered at a predetermined time?Who will maintain information in the system?Actors should be named with a noun or noun phraseSystem Analysis & DesignCopyright College of Sof

29、tware, BUAA-26-Sample List of ActorsSystem Analysis & DesignCopyright College of Software, BUAA-27-Step 2: Identify Business Requirements Use CasesBusiness Requirements Use Casea use case created during requirements analysis to capture the interactions between a user and the system free of technolog

30、y and implementation details.During requirements analysis, strive to identify and document only the most critical, complex, and important use cases, often called essential use cases.System Analysis & DesignCopyright College of Software, BUAA-28-Step 2: Identify Business Requirements Use Cases (cont.

31、)When looking for use cases, ask the following questions:What are the main tasks of the actor?What information does the actor need from the system?What information does the actor provide to the system?Does the system need to inform the actor of any changes or events that have occurred?Does the actor

32、 need to inform the system of any changes or events that have occurred?Use cases should be named with a verb phrase specifying the goal of the actori.e. Submit Subscription OrderSystem Analysis & DesignCopyright College of Software, BUAA-29-Sample Context DiagramSystem Analysis & DesignCopyright Col

33、lege of Software, BUAA-30-Sample Use-Case GlossarySystem Analysis & DesignCopyright College of Software, BUAA-31-Step 3: Construct Use-Case Model DiagramSystem Analysis & DesignCopyright College of Software, BUAA-32-Step 4: Document Business Requirements Use-Case NarrativesDocument first at high lev

34、el to quickly obtain an understanding of the events and magnitude of the system.Then expand to a fully-documented business requirement narrative.Include the use cases typical course of events and its alternate courses.System Analysis & DesignCopyright College of Software, BUAA-33-Sample High-Level V

35、ersion of a Use-Case NarrativeSystem Analysis & DesignCopyright College of Software, BUAA-34-Sample Expanded Version of a Use-Case NarrativecontinuedSystem Analysis & DesignCopyright College of Software, BUAA-35-Sample Expanded Version of a Use-Case Narrative (cont)continuedSystem Analysis & DesignC

36、opyright College of Software, BUAA-36-Sample Expanded Version of a Use-Case Narrative (cont)concludedSystem Analysis & Design Copyright College of Software, BUAAContents1. Use Case Modeling2. The Process of Use-Case Modeling3. Use Cases and Project Management37System Analysis & DesignCopyright College of Software, BUAA-38-Use Cases and Project ManagementUse-case model can drive entire development effort.Project manager or systems analyst uses business requirements use cases to estimate and schedule the build cycle

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論