Approaching a Problem.ppt
《Approaching a Problem.ppt》由会员分享,可在线阅读,更多相关《Approaching a Problem.ppt(44页珍藏版)》请在麦多课文档分享上搜索。
1、08a-Requirements1,1,Approaching a Problem,Where do we start? How do we proceed?,2,08a-Requirements1,Where Do We Start?,Start with the requirements Capture your goals and possible constraints Environmental assumptions Use-case analysis to better understand your requirements Find actors and a first ro
2、und of use-cases Start conceptual modeling Conceptual class diagram Interaction diagrams to clarify use-cases Activity diagrams to understand major processing,3,08a-Requirements1,How Do We Continue?,Refine use-cases Possibly some “real” use-cases Using interface mockups Refine (or restructure) your
3、class diagram Based on your hardware architecture For instance, client server Refine and expand your dynamic model Until you are comfortable that you understand the required behavior Identify most operations and attributes,4,08a-Requirements1,How Do We Wrap Up?,Refine the class diagram based on plat
4、form and language properties Navigability, public, private, etc Class libraries Identify most operations Not the trivial get, set, etc. Write a contract for each operation Define a collection of invariants for each class Implement,5,08a-Requirements1,Putting It Together,Principles Rigor and Formalit
5、y Separation of Concerns Modularity Abstraction Anticipation of Change Generality Incrementality Notion of Process,6,08a-Requirements1,Waterfall Approach,Gather Requirements,Generate Design,Requirements Documents,DesignDocuments,WriteCode,Implementation,Test,Domain language,Models, technical languag
6、e,7,08a-Requirements1,Frequent Industrial Approach,Gather Requirements,Generate Design,Requirements Documents,DesignDocuments,WriteCode,Implementation,Test,Prototypes,8,08a-Requirements1,Sensible Approach,Gather Requirements,Generate Design,Requirements Documents,DesignDocuments,WriteCode,Implementa
7、tion,Test,Prototypes,iterate,9,08a-Requirements1,Process Overview,Inception Elaboration Construction Many iterations Transition,08a-Requirements1,10,Requirements Analysis,Defining the WHAT,11,08a-Requirements1,Requirements Elicitation Process,System,Client Domain,Client,Problem,Us,SRS,12,08a-Require
8、ments1,Requirements,Specify functionality model objects and resources model behavior Specify data interfaces type, quantity, frequency, reliability providers, receivers operational profile (expected scenarios) stress profile (worst case scenarios),13,08a-Requirements1,Requirements,Specify interfaces
9、 Control interfaces (APIs) User interfaces - functionality and style Hardware interfaces Specify error handling Identify potential modifications,14,08a-Requirements1,Requirements,Identify necessary constraints performance, security, reliability Identify areas of risk alternatives to be explored Spec
10、ify validation plans Specify documentation to be provided,15,08a-Requirements1,Analysis Principles,Document reason for specific requirements Prioritize requirements High, medium, low Ignore implementation details Need to know feasible solutions can be developed If feasibility is a concern, then prop
11、ose alternatives to be explored Be prepared to change,16,08a-Requirements1,Perspective and Early Binding of Constraints,A,A,B,C,B,C,Connect like letters withoutcrossing lines or leaving box.,17,08a-Requirements1,Early Focus on Constraints,A-A line seems to be only solution But, is it really? Need to
12、 examine domain and constraints more? What transforms or shifts would yield easier problem?,Early choice, eliminates C,B,18,08a-Requirements1,Focus Change,A,A,B,C,B,C,These choices still leave a path between As,A,A,B,C,B,C,Transforms to:,19,08a-Requirements1,Reviewing a requirements document,Is it a
13、mbiguous? Carefully define terms and use these terms Is it consistent? Is it complete? Vague requirements Omitted requirements Is it verifiable? Is it realistic? Does it plan for change?,Does it not overly constrain the problem? Have alternatives been considered and explored? Is it clearly presented
14、? Precise, concise, clear diagram complex objects and behaviors Is it what the customer wants?,20,08a-Requirements1,Why is requirements analysis difficult?,Communication: misunderstandings between the customer and the analyst Analyst doesnt understand the domain Customer doesnt understand alternativ
15、es and trade-offs Problem complexity Inconsistencies in problem statement Omissions/incompleteness in problem statement Inappropriate detail in problem statement,21,08a-Requirements1,Escalator System Requirements,Shoes Must Be Worn,Dogs Must Be Carried,Two Signs on Escalator:,You must have on shoes,
16、 and you must be carrying a dog.,If you have a dog, you have to carry it, so you have to wear all the shoes you are carrying.,If you dont have a dog, you dont need to carry it, so you dont have to wear shoes unless you are carrying some.,Consistent Conclusions:,22,08a-Requirements1,Why is requiremen
17、ts analysis difficult?,Need to accommodate change Hard to predict change Hard to plan for change Hard to foresee the impact of change,23,08a-Requirements1,First Law of Software Engineering,“No matter where you are in the system lifecycle, the system will change, and the desire to change it will pers
18、ist throughout the lifecycle.”,24,08a-Requirements1,Reasons for changing requirements,Poor communication Inaccurate requirements analysis Failure to consider alternatives New users New customer goals,New customer environment New technology Competition Software is seen as malleable,Changes made after
19、 the requirements are approved increase cost and schedule,25,08a-Requirements1,Requirements Products,Specification document Agreement between customer and developer Validation criteria for software Problem statement in domain language external behavior constraints on system Preliminary users manual
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- APPROACHINGAPROBLEMPPT
