ImageVerifierCode 换一换
格式:PPT , 页数:76 ,大小:706.50KB ,
资源ID:373027      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-373027.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Object Oriented Analysis and Design.ppt)为本站会员(registerpick115)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

Object Oriented Analysis and Design.ppt

1、10/4/2018,1,Object Oriented Analysis and Design,10/4/2018,2,Analysis I,Tuesday 9/7/1999,10/4/2018,3,The Unified Process,10/4/2018,4,The Unified Process,Why a Process? Software projects are large, complex, sophisticated time to market is key many facets involved in getting to the end Common process s

2、hould integrate the many facets provide guidance to the order of activities specify what artifacts need to be developed offer criteria for monitoring and measuring a project,10/4/2018,5,The Unified Process,Component based - meaning the software system is built as a set of software components interco

3、nnected via interfaces Uses the Unified Modeling Language (UML) Use case driven Architecture-centric Iterative and incremental,Component: A physical and replaceable part of a system that conforms to and provides realization of a set of interfaces. Interface: A collection of operations that are used

4、to specify a service of a class or a component,This is what makes the Unified process Unique,10/4/2018,6,The Unified Process,Users requirements,Software Development Process,Software System,10/4/2018,7,The Unified Process,Use Case driven A use case is a piece of functionality in the system that gives

5、 a user a result of value Use cases capture functional requirements Use case answers the question: What is the system supposed to do for the user?,10/4/2018,8,The Unified Process,Architecture centric similar to architecture for building a house Embodies the most significant static and dynamic aspect

6、s of the system Influenced by platform, OS, DBMS etc. Primarily serves the realization of use cases,10/4/2018,9,The Unified Process,Iterative and Incremental commercial projects continue many months and years to be most effective - break the project into iterations Every iteration - identify use cas

7、es,create a design, implement the design Every iteration is a complete development process,10/4/2018,10,The Unified Process,Look at the whole process Life cycle Artifacts Workflows Phases Iterations,10/4/2018,11,The Life of the Unified Process,Unified process repeats over a series of cycles Each cyc

8、le concludes with a product release Each cycle consists of four phases (page 8 T2) inception elaboration construction transition,10/4/2018,12,The Life of the Unified Process,Elaboration,Inception,Construction,Transition,Iteration,Iteration,Iteration,Iteration,Iteration,Iteration,Iteration,Iteration,

9、Release 1,1,1,1,1,Time,A cycle with its phases and its iterations,10/4/2018,13,Intentionally left blank,10/4/2018,14,Analysis I,10/4/2018,15,Introduction to object-oriented analysis and design (all slides from UML, ch. 1, 3,4),10/4/2018,16,Objectives,Compare and Contrast analysis and design Defined

10、object-oriented analysis and design Relate by analogy object-oriented analysis and design to organizing a business,10/4/2018,17,What is Analysis and Design?,Analysis - investigation of the problem (what) Design - logical solution to fulfill the requirements (how),10/4/2018,18,What is OO analysis and

11、 design?,Essence of OO analysis - consider a problem domain from the perspective of objects (real world things, concepts) Essence of OO design - define the solution as a collection of software objects (allocating responsibilities to objects),10/4/2018,19,Examples,OO Analysis - in the case of the lib

12、rary information systems, one would find concepts like book, library, patron OO Design - emphasis on defining the software objects; ultimately these objects implemented in some programming language; Book may have a method print,10/4/2018,20,Example - contd.,Domain concept,Representation in analysis

13、of concepts,Book _ title print(),Public class Book public void print(); private string title; ,Representation in oo programming language,10/4/2018,21,What are the business processes?,First step - consider what the business must do; in the case of a library - lending books, keeping track of due dates

14、, buying new books in oo terms - requirements analysis; represent the business processes in textual narration (Use Cases),10/4/2018,22,Business processes - contd.,Identifying and recording the business processes as use cases is not actually an object oriented activity; however it is a widely accepte

15、d first step (a necessary first step),10/4/2018,23,Roles in the organization,Identify the roles of people who will be involved in the business processes in oo terms - domain analysis examples - customer, library assistant,10/4/2018,24,Who does what? Collaboration,Business processes and people identi

16、fied; time to determine how to fulfill the processes and who does these processes in oo terms - object oriented design; assigning responsibilities to the various software objects often expressed in class diagrams,10/4/2018,25,In Summary.,10/4/2018,26,Simple example to see big picture,Define use case

17、s Define conceptual model Define collaboration diagrams Define design class diagrams,Example: Dice game a player rolls two die. If the total is 7 they win; otherwise they lose,10/4/2018,27,Define use cases,Use cases - narrative descriptions of domain processes in a structured prose format,Use case:

18、Play a game Actors: Player Description: This use case begins when the player picks up and rolls the die.,10/4/2018,28,Define conceptual model,OO Analysis concerns specification of the problem domain identification of concepts (objects) Decomposition of the problem domain includes identification of o

19、bjects, attributes, associations results can be expressed in conceptual model,10/4/2018,29,Conceptual model - dice game,Player _ name,Die _ facevalue,DiceGame,1,2,2,1,1,1,Includes,Plays,Rolls,Conceptual model is not a description of the software components; it represents concepts in the real world p

20、roblem domain,10/4/2018,30,Defining collaboration diagram,OO Design is concerned defining logical software specification that fulfills the requirements Essential step - allocating responsibility to objects and illustrating how they interact with other objects Expressed as Collaboration diagrams,Coll

21、aboration diagrams show the flow of messages between objects,10/4/2018,31,Example - collaboration diagram,10/4/2018,32,Defining class diagrams,Key questions to ask How do objects connect to other objects? What are the behaviors (methods) of these objects? Collaboration diagrams suggests connections;

22、 to support these connections methods are needed Expressed as class diagrams,10/4/2018,33,Example - Class diagram,A line with an arrow at the end may suggest an attribute. For example, DiceGame has an attribute that points to an instance of a Player,10/4/2018,34,Intentionally left blank,10/4/2018,35

23、,Defining Models and Artifacts,Objectives analysis and design models familiarize UML notations and diagrams real world software systems are inherently complex Models provide a mechanism for decomposition and expressing specifications,10/4/2018,36,Analysis and Design models,Analysis model - models re

24、lated to an investigation of the domain and problem space (Use case model qualifies as an example) Design model - models related to the solution (class diagrams qualifies as an example),10/4/2018,37,Introduction to UML,UML is NOT a methodology UML is NOT a process UML is NOT proprietary (Now under t

25、he OMG) UML is strictly Notations,10/4/2018,38,Introduction to UML,Goals of UML notation Simple : requires only a few concepts and symbols Expressive : applicable to a wide spectrum of systems and life cycle methods Useful : focuses only upon those necessary elements to software engineering Consiste

26、nt : the same concept and symbol should be applied in the same fashion throughout,10/4/2018,39,Introduction to UML,Goals of UML notation: Printable Extensible : users and tool builders should have some freedom to extend the notation UML has different parts Views - shows different aspects of the syst

27、em that are modeled, links the modeling language to the method/process chosen for development Diagrams - graphs that describe the contents in a view Model elements - concepts used in a diagram,10/4/2018,40,Introduction to UML,Component View,Use Case View,Logical View,Concurrency View,Deployment View

28、,10/4/2018,41,Introduction to UML,Use-case view : A view showing the functionality of the system as perceived by the external actors Logical view: A view showing how the functionality is designed inside the system, in terms of the static structure and dynamic behavior Component view: A view showing

29、the organization of the code components,10/4/2018,42,Introduction to UML,Concurrency view: A view showing the concurrency of the system Deployment view: A view showing the deployment of the system in terms of the physical architecture,10/4/2018,43,Introduction to UML,Major UML Diagrams Use case view

30、 Use Case Diagram Logical View Class Diagram (static) Object Diagram (static) State Diagram Sequence Diagram Collaboration Diagram Activity Diagram,10/4/2018,44,Introduction to UML,Major UML diagramsComponent view Component diagram Deployment view Deployment diagram,10/4/2018,45,Introduction to UML,

31、Model elements Class Object State Use case Interface Association Link Package .,10/4/2018,46,Introduction to UML,Use Case diagram: External interaction with actors Class/Object Diagram : captures static structural aspects, objects and relationships State Diagram: Dynamic state behavior Sequence diag

32、ram: models object interaction over time Collaboration diagram: models component interaction and structural dependencies,10/4/2018,47,Introduction to UML,Activity diagram : models object activities Deployment diagram : models physical architecture Component diagram : models software architecture,10/

33、4/2018,48,Case study - Point of Sale,POS terminal should support the following record sales handle payments many architectural layers presentation application logic (problem domain, service support) persistence Emphasis - problem domain application objects,10/4/2018,49,Case study - Strategy,Iterativ

34、e, more than one development cycle Use Object oriented analysis and design No emphasis on implementation,10/4/2018,50,Understanding requirements,Objectives create requirements phase artifacts, namely function specifications identify and categorize system functions,10/4/2018,51,Understanding requirem

35、ents,Requirements are a description of needs or desires for a product Recommended artifacts overview statement customers (stakeholders) goals system functions,10/4/2018,52,Understanding requirements,Overview Statement: The purpose of this project is to create a point of sale terminal system to be us

36、ed in retail sales,Customers: ObjectStore, Inc, a multinational retailer,Goals: Quick checkout for customers fast and accurate sales analysis automatic inventory control,10/4/2018,53,Understanding requirements,System functions are what a system is supposed to do examples : authorize credit payments

37、To verify that some X is indeed a system function, it should make sense in the following sentence the system should do ,10/4/2018,54,How to categorize system functions?,Understanding requirements,10/4/2018,55,Understanding requirements,10/4/2018,56,Intentionally left blank,10/4/2018,57,Analysis,Obje

38、ctives Identification of Use cases Draw use case diagrams Ranking Use cases Contrast essential and real use cases,10/4/2018,58,OO Analysis,SRS - chapter 11,10/4/2018,59,More Object Oriented Analysis,Two ways of looking at software product just the data perspective just the actions performed on the d

39、ata The above method is Structured systems analysis - inherently not realistic! Object oriented analysis - look at data and actions at the same time,10/4/2018,60,OO Analysis - Contd.,Formal specification technique Consists of three steps Use case modeling (action oriented) Class modeling (data orien

40、ted) Dynamic modeling (action oriented),10/4/2018,61,Use case modeling,Describes the functionality of the product to be considered represented in a use case diagram,10/4/2018,62,Use cases - Introduction,Excellent technique for improving the understanding of requirements narrative in nature Use cases

41、 are dependent on having some understanding of the requirements (expressed in functional specifications document),10/4/2018,63,Use Cases - Example,Use case - narration of the sequence of events of an actor using a system UML icon for use case,10/4/2018,64,Use Cases - Introduction,Actor - an entity e

42、xternal to the system who in some way participate in the use case An actor typically stimulates the system with input events or receives outputs from the system UML notation,10/4/2018,65,Identification of Use Cases,Method 1 - Actor based Identify the actors related to the system Identify the process

43、es these actors initiate or participate in Method II - Event based Identify the external events that a system must respond to Relate the events to actors and use cases,10/4/2018,66,Point of Sale - Actors,Actors Cashier Customer Supervisor,10/4/2018,67,Point of Sale - Use Cases,Cashier Log In Cash ou

44、t Customer Buy items Return items,10/4/2018,68,Common mistake,Common error - representing individual steps as use cases Example: printing a receipt (Why?),10/4/2018,69,Use Case Diagram - Example,Use Case Diagram: illustrates a set of use cases for a system,10/4/2018,70,More on Use Cases,Try to descr

45、ibe use cases independent of implementation Be as narrative as possible State success scenarios (how do you measure the success of an use case) A use case can have many scenarios (threads of execution) Agree on a “format style” for use case description Name a use case starting with a verb in order t

46、o emphasize that it is a process (Buy Items, Enter an order, Reduce inventory),10/4/2018,71,More on Use Cases,Document exception handling or branching when an “Buy Item” fails, what is expected of the system when a “credit card” approval fails, what is expected of the system,10/4/2018,72,A sample of

47、 a Use Case,Use case: Buy Items Actors: Customer, Cashier Type: Primary, Essential Description: A customer arrives at a checkout with items to purchase. The cashier recordsthe purchase items and collects payment.,10/4/2018,73,Ranking Use Cases,10/4/2018,74,Ranking Use Cases,Overarching strategy pick

48、 the use cases that significantly influence the core architecture pick the use cases that are critical to the success of the business a useful rule of thumb - pick the use cases that are the highest risk!,10/4/2018,75,Ranking Use Cases,Use some ordering that is customary to your environment Example: High, Medium, Low Example: Must have, Essential, Nice to have Point of sale Examples Buy Items - High Refund Items - Medium (Why?) Shut Down POS terminal - Low,10/4/2018,76,Questions?,

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1