高级软件工程2_第1页
高级软件工程2_第2页
高级软件工程2_第3页
高级软件工程2_第4页
高级软件工程2_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 1Socio-technical Systems社会-技术 系统Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 2ObjectiveslTo explain what a socio-technical system is and the distinction between this and a computer-based systemlTo introd

2、uce the concept of emergent system properties 系统特性such as reliability and securitylTo explain system engineering and system procurement获得 processeslTo explain why the organisational context of a system affects its design and uselTo discuss legacy systems 遗留系统and why these are critical to many busine

3、ssesIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 3Topics coveredlEmergent system propertieslSystems engineeringlOrganizations, people and computer systems lLegacy systemsIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 4What is a system?lA purposeful c

4、ollection of inter-related components working together to achieve some common objective. lA system may include software, mechanical机械, electrical and electronic hardware and be operated by people.lSystem components are dependent on other system componentslThe properties and behaviour of system compo

5、nents are inextricably inter-mingled混合Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 5System categories系统种类lTechnical computer-based systemsSystems that include hardware and software but where the operators and operational processes are not normally considered to be part of t

6、he system. The system is not self-aware.如:电视、电话、计算机软件lSocio-technical systemsSystems that include technical systems but also operational processes and people who use and interact with the technical system. Socio-technical systems are governed by organisational policies and rules.如:一本书从书写到出版构成了一个社会-技

7、术系统Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 6Socio-technical system characteristicslEmergent propertiesProperties of the system of a whole that depend on the system components and their relationships.lNon-deterministicThey do not always produce the same output when pres

8、ented with the same input because the systemss behaviour is partially dependent on human operators.lComplex relationships with organisational objectivesThe extent to which the system supports organisational objectives does not just depend on the system itself.Ian Sommerville 2004Software Engineering

9、, 7th edition. Chapter 2 Slide 72.1Emergent properties系统特性lProperties of the system as a whole rather than properties that can be derived from the properties of components of a systemlEmergent properties are a consequence of the relationships between system componentslThey can therefore only be asse

10、ssed评定 and measured once the components have been integrated into a systemIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 8Examples of emergent propertiesPropertyDescriptionVolumeThe volume of a system (the total space occupied) varies depending on how thecomponent assemblies

11、are arranged and connected.ReliabilitySystem reliability depends on component reliability but unexpected interactions cancause new types of failure and therefore affect the reliability of the system.SecurityThe security of the system (its ability to resist attack) is a complex property thatcannot be

12、 easily measured. Attacks may be devised that were not anticipated by thesystem designers and so may defeat built-in safeguards.RepairabilityThis property reflects how easy it is to fix a problem with the system once it has beendiscovered. It depends on being able to diagnose the problem, access the

13、 componentsthat are faulty and modify or replace these components.UsabilityThis property reflects how easy it is to use the system. It depends on the technicalsystem components, its operators and its operating environment.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 9Types

14、of emergent propertylFunctional properties These appear when all the parts of a system work together to achieve some objective. For example, a bicycle has the functional property of being a transportation device once it has been assembled from its components.lNon-functional emergent propertiesExampl

15、es are reliability, performance, safety, and security. These relate to the behaviour of the system in its operational environment. They are often critical for computer-based systems as failure to achieve some minimal defined level in these properties may make the system unusable.Ian Sommerville 2004

16、Software Engineering, 7th edition. Chapter 2 Slide 10lBecause of component inter-dependencies, faults can be propagated through the system.lSystem failures often occur because of unforeseen inter-relationships between components.lIt is probably impossible to anticipate all possible component relatio

17、nships.lSoftware reliability measures may give a false picture of the system reliability.System reliability可靠性 engineeringIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 11lHardware reliability What is the probability of a hardware component failing and how long does it take t

18、o repair that component?lSoftware reliability How likely is it that a software component will produce an incorrect output. Software failure is usually distinct from hardware failure in that software does not wear out. lOperator reliability How likely is it that the operator of a system will make an

19、error?Influences on reliabilityIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 12Reliability relationshipslHardware failure can generate spurious signals that are outside the range of inputs expected by the software.lSoftware errors can cause alarms to be activated which cause

20、 operator stress and lead to operator errors.lThe environment in which a system is installed can affect its reliability.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 13The shall-not propertieslProperties such as performance and reliability can be measured.lHowever, some prop

21、erties are properties that the system should not exhibit未展现出来的特性Safety - the system should not behave in an unsafe way;Security - the system should not permit unauthorised use.lMeasuring or assessing these properties is very hard.如:系统被入侵之后才发现安全性缺陷Ian Sommerville 2004Software Engineering, 7th edition

22、. Chapter 2 Slide 142.2Systems engineeringlSpecifying描述, designing设计, implementing实现, validating有效性验证, deploying实施and maintaining维护socio-technical systems.lConcerned with考虑 the services provided by the system, constraints on its construction and operation and the ways in which it is used.l对于软件工程师来说,

23、有必要了解|系统工程知识Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 15The system engineering processlUsually follows a waterfall model because of the need for parallel development of different parts of the systemLittle scope for iteration between phases because hardware changes are ve

24、ry expensive. Software may have to compensate for补偿 hardware problems.lInevitably不可避免 involves engineers from different disciplines学科 who must work togetherMuch scope for misunderstanding here. Different disciplines use a different vocabulary and much negotiation is required. Engineers may have pers

25、onal agendas to fulfil.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 16The systems engineering processIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 17Inter-disciplinary各学科involvementIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Sli

26、de 182.2.1System requirements definitionlThree types of requirement defined at this stageAbstract functional requirements. System functions are defined in an abstract way;System properties. Non-functional requirements for the system in general are defined;Undesirable characteristics. Unacceptable sy

27、stem behaviour is specified.lShould also define overall organisational objectives for the system.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 19System requirements problemslMust anticipate hardware/communications developments over the lifetime of the system.lHard to define

28、non-functional requirements (particularly) without knowing the component structure of the system.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 202.2.2The system design processlPartition requirements分割需求Organise requirements into related groups. lIdentify sub-systemsIdentify

29、a set of sub-systems which collectively can meet the system requirements.lAssign requirements to sub-systemsCauses particular problems when COTS are integrated.lSpecify sub-system functionality.lDefine sub-system interfacesCritical activity for parallel sub-system development.Ian Sommerville 2004Sof

30、tware Engineering, 7th edition. Chapter 2 Slide 21The system design processIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 22System design problemslRequirements partitioning to hardware, software and human components may involve a lot of negotiation商议. lDifficult design proble

31、ms are often assumed to be readily solved using software.lHardware platforms may be inappropriate for 不相称software requirements so software must compensate for补偿 this.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 23Requirements and designlRequirements engineering and system d

32、esign are inextricably linked.lConstraints posed by the systems environment and other systems limit design choices so the actual design to be used may be a requirement.lInitial design may be necessary to structure the requirements.lAs you do design, you learn more about the requirements.Ian Sommervi

33、lle 2004Software Engineering, 7th edition. Chapter 2 Slide 24Spiral model of requirements/designIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 252.2.3System modellinglAn architectural model体系结构模型 presents an abstract view of the sub-systems making up a systemlMay include majo

34、r information flows between sub-systemslUsually presented as a block diagram方块图lMay identify different types of functional component in the modelIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 26Burglar alarm system防盗警报系统Ian Sommerville 2004Software Engineering, 7th edition. C

35、hapter 2 Slide 27Sub-system descriptionSub-systemDescriptionMovement sensorsDetects movement in the rooms monitored by the systemDoor sensorsDetects door opening in the external doors of the buildingAlarm controllerControls the operation of the systemSirenEmits an audible warning when an intruder is

36、 suspectedVoice synthesizerSynthesizes a voice message giving the location of the suspected intruderTelephone callerMakes external calls to notify security, the police, etc.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 28ATC system architectureIan Sommerville 2004Software En

37、gineering, 7th edition. Chapter 2 Slide 292.2.4Sub-system developmentlTypically parallel projects developing the hardware, software and communications.lMay involve some COTS (Commercial Off-the-Shelf) systems procurement.lLack of communication across implementation teams.lBureaucratic官僚 and slow mec

38、hanism机构 for proposing system changes means that the development schedule may be extended延期 because of the need for rework重做.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 30lThe process of putting hardware, software and people together to make a system.lShould be tackled解决 i

39、ncrementally so that sub-systems are integrated one at a time.lInterface problems between sub-systems are usually found at this stage.lMay be problems with uncoordinated deliveries of system components.l对于基于COTS的系统的集成。2.2.5 System integrationIan Sommerville 2004Software Engineering, 7th edition. Cha

40、pter 2 Slide 31lAfter completion, the system has to be installed in the customers environmentEnvironmental assumptions may be incorrect;May be human resistance抵制 to the introduction of a new system;System may have to coexist with alternative systems for some time;May be physical installation problem

41、s (e.g. cabling problems);Operator training has to be identified.2.2.6System installationIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 322.2.7System evolutionlLarge systems have a long lifetime. They must evolve to meet changing requirements.lEvolution is inherently固有地 costl

42、yChanges must be analysed from a technical and business perspective;Sub-systems interact so unanticipated problems can arise;There is rarely a rationale for original design decisions;System structure is corrupted as changes are made to it.lExisting systems which must be maintained are sometimes call

43、ed legacy systems.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 332.2.8System decommissioning退役lTaking the system out of service after its useful lifetime.lMay require removal of materials (e.g. dangerous chemicals) which pollute the environmentShould be planned for in the s

44、ystem design by encapsulation.lMay require data to be restructured and converted to be used in some other system.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 342.3Organisations机构/people/systemslSocio-technical systems are organisational systems intended to help deliver some

45、 organisational or business goal.lIf you do not understand the organisational environment where a system is used, the system is less likely to meet the real needs of the business and its users.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 35Human and organisational factorslP

46、rocess changes 流程变更Does the system require changes to the work processes in the environment? lJob changes 工作变更Does the system de-skill the users in an environment or cause them to change the way they work? lOrganisational changes 机构变更Does the system change the political power 权利结构structure in an org

47、anisation? Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 36Organisational机构 processeslThe processes of systems engineering overlap and interact with organisational procurement processes.系统开发过程、采购过程、运行过程lOperational processes are the processes involved in using the system for

48、 its intended purpose. For new systems, these have to be defined as part of the system design.lOperational processes should be designed to be flexible and should not force operations to be done in a particular way. It is important that human operators can use their initiative if problems arise.Ian S

49、ommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 37Procurement/development processesIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 38System procurement采购lAcquiring a system for an organization to meet some needlSome system specification and architectural desi

50、gn is usually necessary before procurementYou need a specification to let a contract for system developmentThe specification may allow you to buy a commercial off-the-shelf (COTS) system. Almost always cheaper than developing a system from scratchlLarge complex systems usually consist of a mix of of

51、f the shelf and specially designed components. The procurement processes for these different types of component are usually different.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 39The system procurement processIan Sommerville 2004Software Engineering, 7th edition. Chapter

52、2 Slide 40Procurement issueslRequirements may have to be modified to match匹配 the capabilities of off-the-shelf components.lThe requirements specification may be part of the contract for the development of the system.lThere is usually a contract negotiation period to agree changes after the contracto

53、r to build a system has been selected.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 41Contractors and sub-contractorslThe procurement of large hardware/software systems is usually based around some principal contractor.lSub-contracts are issued to other suppliers to supply p

54、arts of the system.lCustomer liases with the principal contractor and does not deal directly with sub-contractors.Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 42Contractor/Sub-contractor modelIan Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 432.4Legacy systems遗留系统lSocio-technical systems that have been developed using old or obsolete technology.lCrucial to the operation of a business and it is often too risky to discard these systemsBank customer accounting system;Aircraft maintenance system.lLegacy systems cons

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论