Krüger Form-Based User Interface - The Architectural Patterns in Frank Buschmann, Dirk Rie

合集下载

单位招聘考试PTN专业(试卷编号161)

单位招聘考试PTN专业(试卷编号161)

单位招聘考试PTN专业(试卷编号161)1.[单选题]R860设备最大支持本地会话的ID为()A)1200B)1800C)1000答案:B解析:2.[单选题]当前SPN网络中,ISIS协议一般使用()层次A)1) LEVEL1B)2) LEVEL2C)3) LEVEL 1/2答案:B解析:3.[单选题]SPE从NPE学到核心网路由后,不再向其他UPE和SPE发布,只向UPE发布一条()A)默认路由B)明细路由C)黑洞路由答案:A解析:4.[单选题]烽火CiTRANS R865设备共有()槽位,其中业务槽位()个A)32/24B)32/26C)30/24D)30/26答案:A解析:5.[单选题]U31服务器对应的SQL Server默认的用户名是A)RootB)ZTEC)adminD)sa答案:D解析::SNMPB)读团体名:fiber-RO读写团体名:fiber-RW安全名:fiberhome组名:onlye访问控制列表名称:SNMPC)用户组名:NMS用户名:fiberhome访问控制列表名:SNMPD)以上说法均不正确答案:C解析:7.[单选题]OAM测试,做的一条百兆业务,测试环回帧功能时,设置完成后,需要在源站的哪个盘上点右键进行“状态监视”A)上话业务的ESJ1盘B)XCUJ1盘C)XSJ1盘D)NMUJ1盘答案:B解析:8.[单选题]对于CES业务,当AC侧需要加载保护时,如果加载的是1+1保护,那么主备AC端口会受到2份完全一样的报文,此时该如何转发?()A)与传统网络一样,同样进行仿真转发,再还原B)对与两份完全一样的报文,在备用AC端口进行丢弃C)对与两份完全一样的报文,在接入侧设备进行选收D)对与两份完全一样的报文,在接入侧设备进行并收,透传给基站答案:B解析:9.[单选题]下面评估内容不属于结构评估的是A)超大环和超长链B)成环率C)超大汇聚节点D)双归保护结构答案:D解析:10.[单选题]PTN640设备在配置1:1保护时,LSP标签值正向与反向( )A)可以相同;B)一定相同;C)一定不同;D)没有要求。

UMLi The Unified Modeling Language for Interactive Applications

UMLi The Unified Modeling Language for Interactive Applications

UML i:The Unified Modeling Language forInteractive ApplicationsPaulo Pinheiro da Silva and Norman W.Paton Department of Computer Science,University of Manchester Oxford Road,Manchester M139PL,England,UK.e-mail:{pinheirp,norm}@AbstractUser interfaces(UIs)are essential components of most software sys-tems,and significantly affect the effectiveness of installed applications.Inaddition,UIs often represent a significant proportion of the code deliveredby a development activity.However,despite this,there are no modellinglanguages and tools that support contract elaboration between UI devel-opers and application developers.The Unified Modeling Language(UML)has been widely accepted by application developers,but not so much byUI designers.For this reason,this paper introduces the notation of theUnified Modelling Language for Interactive Applications(UML i),that ex-tends UML,to provide greater support for UI design.UI elements elicitedin use cases and their scenarios can be used during the design of activitiesand UI presentations.A diagram notation for modelling user interfacepresentations is introduced.Activity diagram notation is extended to de-scribe collaboration between interaction and domain objects.Further,acase study using UML i notation and method is presented.1IntroductionUML[9]is the industry standard language for object-oriented software design. There are many examples of industrial and academic projects demonstrating the effectiveness of UML for software design.However,most of these success-ful projects are silent in terms of UI design.Although the projects may even describe some architectural aspects of UI design,they tend to omit important aspects of interface design that are better supported in specialist interface de-sign environments[8].Despite the difficulty of modelling UIs using UML,it is becoming apparent that domain(application)modelling and UI modelling may occur simultaneously.For instance,tasks and domain objects are interde-pendent and may be modelled simultaneously since they need to support each other[10].However,task modelling is one of the aspects that should be consid-ered during UI design[6].Further,tasks and interaction objects(widgets)areinterdependent as well.Therefore,considering the difficulty of designing user interfaces and domain objects simultaneously,we believe that UML should be improved in order to provide greater support for UI design[3,7].This paper introduces the UML i notation which aims to be a minimal exten-sion of the UML notation used for the integrated design of applications an their user interfaces.Further,UML i aims to preserve the semantics of existing UML constructors since its notation is built using new constructors and UML exten-sion mechanisms.This non-intrusive approach of UML i can be verified in[2], which describes how the UML i notation introduced in this paper is designed in the UML meta-model.UML i notation has been influenced by model-based user interface develop-ment environment(MB-UIDE)technology[11].In fact,MB-UIDEs provide a context within which declarative models can be constructed and related,as part of the user interface design process.Thus,we believe that the MB-UIDE technology offers many insights into the abstract description of user interfaces that can be adapted for use with the UML technology.For instance,MB-UIDE technology provides techniques for specifying static and dynamic aspects of user interfaces using declarative models.Moreover,as these declarative models can be partially mapped into UML models[3],it is possible to identify which UI aspects are not covered by UML models.The scope of UML i is restricted to form-based user interfaces.However, form-based UIs are widely used for data-intensive applications such as database system applications and Web applications and UML i can be considered as a baseline for non-form-based UI modelling.In this case,modifications might be required in UML i for specifying a wider range of UI presentations and tasks.To introduce the UML i notation,this paper is structured as follows.MB-UIDE’s declarative user interface models are presented in terms of UML i dia-grams in Section2.Presentation modelling is introduced in Section3.Activity modelling that integrates use case,presentation and domain models is presented in Section4.The UML i method is introduced in Section5when a case study ex-emplifying the use of the UML i notation is presented along with the description of the method.Conclusions are presented in Section6.2Declarative User Interface ModelsA modelling notation that supports collaboration between UI developers and application developers should be able to describe the UI and the application at the same time.From the UI developer’s point of view,a modelling notation should be able to accommodate the description of users requirements at appro-priate levels of abstraction.Thus,such a notation should be able to describe abstract task specifications that users can perform in the application in order to achieve some goals.Therefore,a user requirement model is required to describe these abstract tasks.Further,UI sketches drawn by users and UI developers can help in the elicitation of additional user requirements.Therefore,an abstract presentation model that can present early design ideas is required to describethese UI ter in the design process,UI developers could also refine abstract presentation models into concrete presentation models,where widgets are selected and customised,and their placement(layout)is decided.From the application developer’s point of view,a modelling notation that integrates UI and application design should support the modelling of application objects and actions in an integrated way.In fact,the identification of how user and application actions relate to a well-structured set of tasks,and how this set of tasks can support and be supported by the application objects is a challenging activity for application designers.Therefore,a task model is required to describe this well-structured set of tasks.The task model is not entirely distinct from the user requirement model.Indeed,the task model can be considered as a more structured and detailed view of the user requirement model.The application objects,or at least their interfaces,are relevant for UI de-sign.In fact,these interfaces are the connection points between the UI and the underlying application.Therefore,the application object interfaces compose an application model.In an integrated UI and application development environ-ment,an application model is naturally produced as a result of the application design.UML i aims to show that using a specific set of UML constructors and dia-grams,as presented in Figure1,it is possible to build declarative UI models. Moreover,results of previous MB-UIDE projects can provide experience as to how the declarative UI models should be inter-related and how these models can be used to provide a declarative description of user interfaces.For instance, the links(a)and(c)in Figure1can be explained in terms of state objects,as presented in Teallach[5].The link(d)can be supported by techniques from TRI-DENT[1]to generate concrete presentations.In terms of MB-UIDE technology there is not a common sense of the models that might be used for describing a UI.UML i does not aim to present a new user interface modelling proposal,but to reuse some of the models and techniques proposed for use in MB-UIDEs in the context of UML.Figure1:UML i declarative user interface models.3User Interface DiagramUser interface presentations,the visual part of user interfaces,can be modelled using object diagrams composed of interaction objects,as shown in Figure2(a). These interaction objects are also called widgets or visual components.The selection and grouping of interaction objects are essential tasks for modelling UI presentations.However,it is usually difficult to perform these tasks due to the large number of interaction objects with different functionalities provided by graphical environments.In a UML-based environment,the selection and grouping of interaction objects tends to be even more complex than in UI de-sign environments because UML does not provide graphical distinction between domain and interaction objects.Further,UML treats interaction objects in the same way as any other objects[3].For instance,in Figure2(a)it is not easy to see that the Results Displayer is contained by the SearchBookUI FreeContainer. Considering these presentation modelling difficulties,this section introduces the UML i user interface diagram,a specialised object diagram used for the concep-tual modelling of user interface presentation.(a)(b)Figure2:An abstract presentation model for the SearchBookUI can be modelled as an object diagram of UML,as presented in(a).The same presentation can alternatively be modelled using the UML i user interface diagram,as presented in(b).3.1User Interface Diagram NotationThe SearchBookUI abstract presentation modelled using the user interface dia-gram is presented in Figure2(b).The user interface diagram is composed of six constructors that specify the role of each interaction object in a UI presentation.•FreeContainers,•Containers,,are rendered as a pair of semi-overlapped triangles pointing to the right.They are responsible for receiving information from users in the form of events.Graphically,Containers,Inputters,Displayers,Editors and ActionInvokers must be placed into a FreeContainer.Additionally,the overlapping of the bor-ders of interaction objects is not allowed.In this case,the“internal”lines of Containers and FreeContainers,in terms of their two-dimensional representa-tions,are ignored.3.2From an Abstract to a Concrete PresentationThe complexity of user interface presentation modelling can be reduced by work-ing with a restricted set of abstract interaction objects,as specified by the user interface diagram notation.However,a presentation modelling approach as proposed by the UML i user interface diagram is possible since form-based pre-sentations respect the Abstract Presentation Pattern1(APP)in Figure3.Thus, a user interface presentation can be described as an interaction object acting as a FreeContainer.The APP also shows the relationships between the abstract interaction objects.As we can see,the APP is environment-independent.In fact,a UI presen-tation described using the user interface diagram can be implemented by any object-oriented programming language,using several toolkits.Widgets should be bound to the APP in order to generate a concrete presentation model.In this way,each widget should be classified as a FreeContainer,Container, Inputter,Displayer,Editor or ActionInvoker.The binding of widgets to the APP can be described using UML[3].Widget binding is not efficient to yield afinal user interface implementation. In fact,UML i is used for UI modelling and not for implementation.However, we believe that by integrating UI builders with UML i-based CASE tools we canFigure3:The Abstract Presentation Patternproduce environments where UIs can be modelled and developed in a system-atic way.For instance,UI builder facilities may be required for adjusting UI presentation layout and interaction object’s colour,size and font.4Activity Diagram ModellingUML interaction diagrams(sequence and collaboration diagrams)are used for modelling how objects collaborate.Interaction diagrams,however,are limited in terms of workflow modelling since they are inherently sequential.Therefore, concurrent and repeatable workflows,and especially those workflows affected by users decisions,are difficult to model and interpret from interaction diagrams.Workflows are easily modelled and interpreted using activity diagrams.In fact,Statechart constructors provide a graphical representation for concurrent and branching workflows.However,it is not so natural to model object col-laboration in activity diagrams.Improving the ability to describe object col-laboration and common interaction behaviour,UML i activity diagrams provide greater support for UI design than UML activity diagrams.This section explains how activities can be modelled from use cases,how activity diagrams can be simplified in order to describe common interactive behaviours,and how interaction objects can be related to activity diagrams.4.1Use Cases and Use Case ScenariosUse case diagrams are normally used to identify application functionalities. However,use case diagrams may also be used to identify interaction activi-ties.For instance,a communicates association between a use case and an actor indicates that the actor is interacting with the use case.Therefore,forexample,in Figure4the CollectBook use case cannot identify an interaction activity since its association with Borrower is not a communicates associa-tion.Indeed,the CollectBook use case identifies a functionality not supported by the application.Figure4:A use case diagram for the BorrowBook use case with its component use cases.Use case scenarios can be used for the elicitation of actions[12].Indeed,ac-tions are identified by scanning scenario descriptions looking for verbs.However, actions may be classified as Inputters,Displayers,Editors or ActionInvokers. For example,Figure5shows a scenario for the SearchBook use case in Figure4. Three interaction objects can be identified in the scenario:∇providingthat specifies some query details;and displaysits title,authors,year,or a combination of this information.Addi-tionally,John can∇specifythe details of the matching books,if any.Figure5:A scenario for the SearchBook use case.4.2From Use Cases to ActivitiesUML i assumes that a set of activity diagrams can describe possible user interac-tions since this set can describe possible application workflows from application entry points.Indeed,transitions in activity diagrams are inter-object transi-tions,such as those transitions between interaction and domain objects that can describe interaction behaviours.Based on this assumption,those activity diagrams that belong to this set of activity diagrams can be informally classified as interaction activity diagrams.Activities of interaction activity diagrams can also be informally classified as interaction activities.The difficulty with this classification,however,is that UML does not specify any constructor for mod-elling application entry points.Therefore,the process of identifying in which activity diagram interactions start is unclear.The initial interaction state constructor used for identifying an application’s entry points in activity diagrams is introduced in UML i.This constructor is rendered as a solid square,,and it is used as the UML initial pseudo-state[9], except that it cannot be used within any state.A top level interaction activ-ity diagram must contain at least one initial interaction state.Figure6 shows a top level interaction activity diagram for a library application.Figure6:Modelling an activity diagram from use cases using UML i.Use cases that communicate directly with actors are considered candidate interaction activities in UML i.Thus,we can define a top level interaction ac-tivity as an activity which is related to a candidate interaction activity.This relationship between a top level interaction activity and a candidate interaction activity is described by a realisation relationship,since activity diagrams can describe details about the behaviour of candidate interaction activities.The diagram in Figure6is using the UML i activity diagram notation explained in the next section.However,we can clearly see in the diagram which top level interaction activity realises which candidate interaction activity.For instance, the SearchBook activity realises the SearchBook candidate interaction activity modelled in the use case diagram in Figure4.In terms of UI design,interaction objects elicited in scenarios are primitive interaction objects that must be contained by FreeContainers(see the APP in Figure3).Further,these interaction objects should be contained by FreeCon-tainers associated with top-level interaction activities,such as the SearchBookUI FreeContainer in Figure6,for example.Therefore,interaction objects elicited from scenarios are initially contained by FreeContainers that are related to top-level interaction through the use of a presents objectflow,as described in Section4.4.In that way,UI elements can be imported from use case diagrams to activity diagrams.For example,the interaction objects elicited in Figure5 are initially contained by the SearchBookUI presented in Figure6.4.3Selection StatesStatechart constructors for modelling transitions are very powerful since they can be combined in several ways,producing many different compound transi-tions.In fact,simple transitions are suitable for relating activities that can be executed sequentially.A combination of transitions,forks and joins is suitable for relating activities that can be executed in parallel.A combination of transitions and branches is suitable for modelling the situation when only one among many activities is executed(choice behaviour).However,for the de-signing of interactive applications there are situations where these constructors can be held to be rather low-level,leading to complex models.The following behaviours are common interactive application behaviours,but usually result in complex models.•The order independent behaviour is presented in Figure7(a).There, activities A and B are called selectable activities since they can be acti-vated in either order on demand by users who are interacting with the application.Thus,every selectable activity should be executed once dur-ing the performance of an order independent behaviour.Further,users are responsible for selecting the execution order of selectable activities.An or-der independent behaviour should be composed of one or more selectable activities.An object with the execution history of each selectable activity (SelectHist in Figure7(a))is required for achieving such behaviour.•The optional behaviour is presented in Figure7(b).There,users can execute any selectable activity any number of times,including none.In this case,users should explicitly specify when they arefinishing the Select activity.Like the order independent behaviour,the optional behaviour should be composed of one or more selectable activities.•The repeatable behaviour is presented in Figure7(c).Unlike the order independent and optional behaviours,a repeatable behaviour should have only one associated activity.A is the associated activity of the repeat-able behaviour in Figure7.Further,a specific number of times that the associated activity can be executed should be specified.In the case of the diagram in Figure7(c),this number is identified by the value of X.An optional behaviour with one selectable activity can be used when aselectable activity can be executed an unspecified number oftimes.(a)(b)(c)Figure7:The UML modelling of three common interaction application be-haviours.An order independent behaviour is modelled in(a).An optional behaviour is modelled in(b).A repeatable behaviour is modelled in(c).As optional,order independent and repeatable behaviours are common in interactive systems[5],UML i proposes a simplified notation for them.The no-tation used for modelling an order independent behaviour is presented in Fig-ure8(a).There we can see an order independent selector,rendered as a circle overlying a plus signal,⊕,connected to the activities A and B by return transi-tions,rendered as solid lines with a single arrow at the selection state end and a double arrow at the selectable activity end.The order independent selector identifies an order independent selection state.The double arrow end of return transitions identify the selectable activities of the selection state.The distinc-tion between the selection state and its selectable activities is required when selection states are also selectable activities.Furthermore,a return transition is equivalent of a pair of Statechart transitions,one single transition connecting the selection state to the selectable activity,and one non-guarded transition connecting the selectable activity to the selection state,as previously modelled in Figure7(a).In fact,the order independent selection state notation can beconsidered as a macro-notation for the behaviour described in Figure7(a).(b)The notations for modelling optional and repeatable behaviours are similar, in terms of structure,to the order independent selection state.The main dif-ference between the notation of selection states is the symbols used for their selectors.The optional selector which identifies an optional selection state is rendered as a circle overlaying a minus signal, .The repeatable selector which identifies a repeatable selection state2is rendered as a circle overlaying a times signal,⊗.The repeatable selector additionally requires a REP constraint,as shown in Figure8(c),used for specifying the number of times that the asso-ciated activity should be repeated.The value X in this REP constraint is the X parameter in Figure7(c).The notations presented in Figures8(b)and8(c) can be considered as macro-notations for the notation modelling the behaviours presented in Figures7(b)and7(c).4.4Interaction Object BehaviourObjects are related to activities using objectflows.Objectflows are basically used for indicating which objects are related to each activity,and if the objects are generated or used by the related activities.Objectflows,however,do not describe the behaviour of related objects within their associated activities.Ac-tivities that are action states and that have objectflows connected to them can describe the behaviour of related objects since they can describe how methods may be invoked on these objects.Thus,a complete decomposition of activities into action states may be required to achieve such object behaviour description. However,in the context of interaction objects,there are common functions that do not need to be modelled in detail to be understood.In fact,UML i pro-videsfive specialised objectflows for interaction objects that can describe these common functions that an interaction object can have within a related activity. These objectflows are modelled as stereotyped objectflows and explained as follows.•An interacts objectflow relates a primitive interaction object to an action state,which is a primitive activity.Further,the objectflow indi-cates that the action state involved in the objectflow is responsible for an interaction between a user and the application.This can be an interaction where the user is invoking an object operation or visualising the result of an object operation.The action states in the SpecifyBookDetails activity, Figure9,are examples of Inputters assigning values to some attributes of the SearchQuery domain object.The Results in Figure9is an exam-ple of a Displayer for visualising the result of SearchQuery.SearchBook().As can be observed,there are two abstract operations specified in the APP (Figure3)that have been used in conjunction with these interaction ob-jects.The setValue()operation is used by Displayers for setting the values that are going to be presented to the users.The getValue()op-eration is used by Inputters for passing the value obtained from the users to domain objects.Figure9:The SearchBook activity.•A presents objectflow relates a FreeContainer to an activity.It spec-ifies that the FreeContainer should be visible while the activity is ac-tive.Therefore,the invocation of the abstract setVisible()operation of the FreeContainer is entirely transparent for the developers.In Figure9 the SearchBookUI FreeContainer and its contents are visible while the SearchBook activity is active.•A confirms objectflow relates an ActionInvoker to a selection state. It specifies that the selection state hasfinished normally.In Figure9the event associated with the“Search”directly related to it.The optional selection state in the SpecifyBookDetails relies on theSpecifyDetails a user is also confirming the optional selection state in SpecifyBookDetails.•A cancels objectflow relates an ActionInvoker to any composite ac-tivity or selection state.It specifies that the activity or selection state has notfinished normally.Theflow of control should be re-routed to a previ-ous state.Theinteraction objects of abstract use cases are also very abstract,and may not be useful for exporting to activity diagrams.Therefore,the UML i method suggests that interaction objects can be elicited from less abstract use cases.Step3Candidate interaction activity identification.Candidate interaction activities are use cases that communicate directly with actors,as described in Section4.1.Step4Interaction activity modelling.A top level interaction activity diagram can be designed from identified candidate interaction activities.A top level in-teraction activity diagram must contain at least one initial interaction state. Figure6shows a top level interactive activity diagram for the Library case study.Top level interaction activities may occasionally be grouped into more abstract interaction activities.In Figure6,many top level interaction activ-ities are grouped by the SelectFunction activity.In fact,SelectFunction was created to gather these top level interaction activities within a top level interaction activity diagram.However,the top level interaction activities,and not the SelectFunction activity,remain responsible for modelling some of the major functionalities of the application.The process of moving from candidate interaction activities to top level interaction activities is described in Section4.2. Step5Interaction activity refining.Activity diagrams can be refined,decom-posing activities into action states and specifying objectflows.Activities can be decomposed into sub-activities.The activity decomposition can continue until the action states(leaf activities)are reached.For instance, Figure9presents a decomposition of the SearchBook activity introduced in Figure6.The use of interacts objectflows relating interaction objects to action states indicates the end of this step.Step6User interface er interface diagrams can be refined to support the activity diagrams.User interface modelling should happen simultaneously with Step5in order to provide the activity diagrams with the interaction objects required for describing action states.There are two mechanisms that allow UI designers to refine a conceptual UI presentation model.•The inclusion of complementary interaction objects allows designers to improve the user’s interaction with the application.•The grouping mechanism allows UI designers to create groups of interac-tion objects using Containers.At the end of this step it is expected that we have a conceptual model of the user interface.The interaction objects required for modelling the user interface were identified and grouped into Containers and FreeContainers.Moreover,the interaction objects identified were related to domain objects using action states and UML iflow objects.Step7Concrete presentation modelling.Concrete interaction objects can be bound to abstract interaction objects.The concrete presentation modelling begins with the binding of concrete inter-action objects(widgets)to the abstract interaction objects that are specified by the APP.Indeed,the APP isflexible enough to map many widgets to each abstract interaction object.Step8Concrete presentation refier interface builders can be used for refining user interface presentations.The widget binding alone is not enough for modelling a concrete user interface presentation.Ergonomic rules presented as UI design guidelines can be used to automate the generation of the user interface presentation.Otherwise,the concrete presentation model can be customised manually,for example,by using direct manipulation.6ConclusionsUML i is a UML extension for modelling interactive applications.UML i makes extensive use of activity diagrams during the design of interactive applications. Well-established links between use case diagrams and activity diagrams explain how user requirements identified during requirements analysis are described in the application design.The UML i user interface diagram introduced for mod-elling abstract user interface presentations simplifies the modelling of the use of visual components(widgets).Additionally,the UML i activity diagram notation provides a way for modelling the relationship between visual components of the user interface and domain objects.Finally,the use of selection states in activity diagrams provides a simplification for modelling interactive systems.The reasoning behind the creation of each new UML i constructor and con-straint has been presented throughout this paper.The UML i notation was en-tirely modelled in accordance to the UML i meta-model specifications[2].This demonstrates that UML i is respecting its principle of being a non-intrusive ex-tension of UML,since the UML i meta-model does not replace the functionalities of any UML constructor[2].Moreover,the presented case study indicates that UML i may be an appropriate approach in order to improve UML’s support for UI design.In fact,the UIs of the presented case study were modelled us-ing fewer and simpler diagrams than using standard UML diagrams only,as described in[3].As the UML i meta-model does not modify the semantics of the UML meta-model,UML i is going to be implemented as a plug-in feature of the ARGO/UML case tool.This implementation of UML i will allow further UML i evaluations using more complex case studies.Acknowledgements.Thefirst author is sponsored by Conselho Nacional de Desenvolvimento Cient´ıfico e Tecnol´o gico-CNPq(Brazil)–Grant200153/98-6.。

5G网优题库-附答案

5G网优题库-附答案
A.AMF
B.UDM
C.SMF
D.PCF
10、RAN切分后,CU和DU之间的接口是答案(C)
A.S1
B.X2
C.F1
D.F2
11、在NR系统中15Khz子载波支持的最大带宽是答案(B)
A.20Mbps
B.50Mbps
C.200Mbps
D.100Mbps
12、我司NR产品CU/DU分离的协议层位置为:答案(A)
10、Option 3X作为Opti on3的优化方案,将NR作为数据汇聚和分发点,充分利用NR设备处理能力更强的优势,便捷提升网络处理能力。答案(正确)
11、Option 3部署架构方案中,LTE eNB通过S1接口连接到4G核心网EPC,通过X2接口与gNB相连, 即所说的非独立组网方式。答案(正确)
15. 5G NR Sub6G低频3. 5GHz, eMBB链路预算中默认终端天线配置是:答案(D)
A.2T4R
B.1T2R
C.2T2R
D.4T4R
16、以下那一条不是UPF的功能答案(C)
A.3GPP网络内跨CN信令传递
B.上行数据分类路由转发
C.数据网与外部PDU会话的互通
D.数据包校验和用户面的策略规则执行
A.无法支持5GC引入的新业务
B.需要推动5G到2G/3G网络的CSFB的语音回落流程
C.LTE需升级改造为eLTE,改动较大
D.需要新建5GC,建网进度依赖于5GC产业成熟度
2、FR1频段支持哪些SCS答案(BD)
A.60kHz
B.30kHz
C.120kHz
D.15kHz
3、NR系统中下行物理信号有哪些答案(ABCDE)
A.Option7x

精选新版第五代移动通信技术(5G)测试题库288题(含标准答案)

精选新版第五代移动通信技术(5G)测试题库288题(含标准答案)

2020年5G考试题库288题一、选择题1.5G核心网网元包括()A) AMFB) SMFC) UPFD) NEF2.下列对于SUL描述正确的是()A) 为补充上行覆盖划分的低频band,仅用与上行传输;B) 当DL RSRP高于设定阈值时,在SUL上发起随机接入;C) 支持PUCCH和PUSCH分别在SUL和NUL上发送;D) R15支持PUSCH同时在normalUL和SUL上传输;3.BWP Generic parameter包括()A) locationAndBandwidthB) subcarrierSpacingC) cyclicPrefixD) bwp-Id4.NR中上行HARQ采用下列哪种方式()A) 异步B) 同步C) 自适应D) 非自适应5.5G支持在()上的RLMA) SpcellB) PscellC) PcellD) Scell6.5G中PUSCH支持的波形包括()A) DFT-S-OFDMB) CP-OFDMC) DFT-OFDMD) D.S-OFDM7.关于5GRLM下面描述正确的是()A) 至少有一个资源比Q_out好,就上报ISB) 至少有一个资源比Q_in好,就上报ISC) 所有资源都比Q_out差,就上报OOSD) 所有资源都比Q_in差,就上报OOS8.BWP切换有哪些方式()A) TCIB) DCIC) TimerD) RMSI9.5G正在研发中,理论速度可达到(D)参考答案:A、50Mbps参考答案:B、100Mbps参考答案:C、500Mbps参考答案:D、1Gbps10.5G无线接入的关键技术主要包含()A) 大规模天线阵列B) 超密集组网(UDN)C) 全频谱接入D) 新型多址11. 5G NR SCS可以是 ()A) 15kHz,30 kHz,60 kHzB) 120 kHz,240 kHzC) 480 kHzD) 960 kHz12. 5G NR中有哪几种Raster ( )A) GlobalRasterB) ChannelRasterC) SS Raster13.下列哪几种可以称作SpCell. ()A) PrimarycellB) MCGSecondary cellC) PSCellD) SCGSecondary cell14.对于NRRNA概念,下面哪项是错误的()NG RNA可以提供不同的RNA定义给不同的UEs;NG RNA可以同时提供不同的RNA定义给同一个UE;UE需要支持list of cells和list of RAN areas 2种RNA配置;UE不需要2种RNA配置list of cells和list of RAN areas都支持;15. EN-DC下可以建立哪些SRB ( )A) SRB0B) SRB1C) SRB2D) SRB316.下面哪些RB可以配置不同的PDCP Version ( )A) SRB1B) SRB2C) MNterminated MCG BearerD) SNterminated MCG Bearer17.EN-DC中,下面哪种测量目前协议未定义()A) MCG下进行2/3G邻区测量B) MCG下进行LTE邻区测量C) SCG下进行LTE邻区测量D) SCG下进行NR邻区测量参考答案:C18.5G需求驱动力()A) 大视频B) 物联网C) VR/ARD) 自动驾驶19.下面属于5G NR下行链路reference signal的是()A) Demodulation reference signals for PDSCHB) Phase-tracking reference signals for PDSCHC) Demodulation reference signals for PDCCHD) Demodulation reference signals for PBCH20.以下哪种SSB必须在SS raster 上()A) 用于NR Pcell接入的SSBB) 用于NR Scell接入的SSBC) 用于PScell接入的SSBD) 用于测量的SSB参考答案:A21.关于Measurement Gap描述错误的是()A) EN-DC下,网络可以配置 Per-UE measurement gap,也可以配置Per-FR measurementgap;B) EN-DC下,LTE服务小区和NR服务小区(FR1)的同属于per FR1 measurement gap;C) EN-DC下,gap4~gap11可以用于支持Per-FR1 measurement gap的UE;D) EN-DC下,支持per-UE measurement gap的UE,若同时用于NR和非NR邻区测量,可以用gap0~11。

日立SU5000场发射扫描电子显微镜说明书

日立SU5000场发射扫描电子显微镜说明书

Fig. 1 External appearance of SU5000 FE-SEM New Schottky FE-SEM, SU5000Shigeaki Tachibana *1 William Podrazky *2Introduction1. Scanning Electron Microscopes (SEM) are used for observation and analysis in various fields. Since Field Emission SEM (FE-SEM) equipped with a field emission electron gun source provide higher resolution than those equipped with a thermionic emission electron gun source, the user base for FE-SEM has broadened significantly due to the need to observe specimen features continually decreasing in size. FE-SEMs are increasingly recognized as a tool for performing various surface analyses, however detection technologies for various signals generated from specimens have advanced beyond topographic observation alone. Typically the operator must utilize previous knowledge, training, and skill in microscopy to generate desirable results; therefore, optimal performance may vary based on experience level. For example, optimal performance may not be realized as a result of improper optical axis alignment or astigmatism correction, utilizing unsuitable accelerating voltage(s), or other parameters. Integrating an automated solution for these problems would allow the user to focus on obtaining comprehensive results under the best possible conditions at all times. Hitachi High-Technologies has developed a novel user interface which augments conventional SEM techniques to assist these problems. The “EM Wizard” user interface was developed to bring “new usability” to EM operators of various levels of experience. This Schottky FE-SEM, the SU5000, incorporated with EM Wizard interface, launched in August 2014 (Fig. 1).Fig. 2 EM Wizard, objectives selection screen.New Interface: EM Wizard2. With EM Wizard, rather than setting individual conditions such as the accelerating voltage, working distance, detector, and other parameters, the operator can select an “Observation Purpose,” such as “Surface Information” or “Elemental Information,” from a selection menu (*2). On the screen, a Radar Chart displays the type of content that will be acquired (resolution, surface information, elemental composition), and a simulated SEM image representing how a specimen will appear under each observational objective. This information provides a visual understanding of SEM image characteristics that can guide the operator in selecting these objectives (Fig. 2). When an “Observation Purpose” is selected, related system parameters are set automatically (e.g., accelerating voltage, working distance, detector), and optical axis parameters as well as astigmatism corrections are adjusted to optimal values. Simply by adjusting the brightness/contrast and focus, the operator can easily acquire high quality images at consistent resolution. In addition to an applications selection menu, what makes these functions possible are high-precision automation technologies initially developed for Critical Dimension (CD) SEM. CD-SEM are entirely automated, and must provide highly reproducible measurements, optical axis alignments, and other adjustments; EM Wizard has been designed to use these automation technologies to reproduce and maintain highly precise adjustments invariably. Because optical axis alignment and astigmatism correction values change with lens conditions over time, they cannot be maintained for long periods, even if stored in the system. However, EM Wizard includes an auto-calibration function which automatically restores parameters to optimal values responsive to long-term changes in lens conditions (*3), eliminating any need for proficiency in readjustment procedures. This feature makes it easier for the operator to obtain images in focus, maintain high reproducibility, and acquire data efficiently. Figure 3 is an example of a catalyst observed at 200,000× magnification after auto-calibration with the use of EM Wizard. Metal particles several nm in size are discernible during operation without complex adjustment.Fig. 4 Observation of lithium ion battery positive electrode. Left: Secondary electron image. Right: Backscattered electron image.Magnification: 25,000×.Fig. 3. Catalyst observation. Magnification: 200,000×Low-energy observation3. In addition to the assistance functions provided by automation as shown above, the SU5000 is equipped with optical and detection systems suitable for any variety of analysis required. The emitter used is a Schottky-type device which delivers a spatial resolution of 2.0 nm at 1 kV (*4) and high probe current (>200 nA). Figure 4 is an example of the positive electrode of a lithium-ion battery observed at a landing voltage of 0.3 kV. The positive electrode of Lithium ion batteries is comprised of an active substance consisting of conductors, binders, and other elements. However, some binder materials cannot withstand electron beam irradiation and must be observed at the lowest possible energy. The left image in Fig. 4 was produced by a secondary electron detector mounted inside the electron column, and the right image was produced by a backscattered electron detector inserted below the lens. In the secondary electron image, the binder appears dark by voltage contrast, while the backscattered electron image allows for distribution of contrast based on each material. In this example, multiple signals are used to evaluate different components of the electrode including topographic and compositional distributions. It is inferred that the enhanced voltage contrast in the secondary electron image is attributed to differences in the charge effect of each material due to the secondary electron generation efficiency when irradiated by very low-energy incident electrons.4.Concluding RemarksThe SU5000 was developed to address the various needs of SEM users in materials science, biomedicine, and many other fields. As the FE-SEM grows in popularity, Hitachi will continually place importance on functions such as EM Wizard, which are capable of providing high-resolution and optimized contrast images with high reproducibility, regardless of the user experience level.(*2)Patent No. 5416319(*3)Patent No. 5464534(*4)With use of deceleration mode (optional)ReferencesSato M., History of Technologies in high resolution SEM, Kobunshi, 9 (2014)(Japanese).Authors*1 Shigeaki Tachibana, Hitachi High-Technologies Corp., Marketing Department*2 William Podrazky, Hitachi High-Technologies America, Inc.。

核心网工程师招聘笔试题与参考答案(某世界500强集团)

核心网工程师招聘笔试题与参考答案(某世界500强集团)

招聘核心网工程师笔试题与参考答案(某世界500强集团)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个协议是用于在移动通信网络中进行用户鉴权和用户配置管理的?A、SIP协议B、GTP协议C、RADIUS协议D、DHCP协议答案:C解析:RADIUS协议(Remote Authentication Dial-In User Service)是一种远程用户认证协议,广泛用于网络访问控制,尤其是在无线局域网和移动通信网络中,用于用户鉴权和用户配置管理。

SIP协议是会话初始化协议,用于创建、修改和终止多媒体会话;GTP协议是通用分组无线服务协议,主要用于移动通信网络中承载分组数据;DHCP协议是动态主机配置协议,用于自动分配IP地址和其他网络配置参数。

2、在4G网络中,以下哪个功能是通过LTE网络切片技术实现的?A、提高网络容量B、增强用户体验C、实现差异化服务D、降低设备功耗答案:C解析:LTE网络切片技术是一种能够将一个物理网络分割成多个逻辑网络的技术,每个逻辑网络可以独立配置和管理,用于满足不同用户和业务的需求。

通过实现差异化服务,网络切片可以为不同类型的业务提供定制化的网络资源和服务质量,从而提高网络效率和用户体验。

虽然提高网络容量、增强用户体验和降低设备功耗也是4G网络的目标之一,但这些功能并非直接通过LTE网络切片技术实现。

3、题干:在核心网中,以下哪个功能模块主要负责无线网络的连接建立和维持?A. 用户平面功能(UPF)B. 非接入层控制功能(NCF)C. 接入层控制功能(AFC)D. 移动性管理功能(MME)答案:D 解析:移动性管理功能(MME)主要负责无线网络的连接建立和维持,包括用户鉴权、用户移动性管理、会话管理等功能。

UPF是用户平面功能,主要负责用户数据的传输;NCF是非接入层控制功能,主要负责核心网内部的信令处理;AFC是接入层控制功能,主要负责接入网的控制和管理。

EKramer FX

EKramer FX

WAVESEddie Kramer Effects ChannelUser GuideTABLE OF CONTENTSCHAPTER 1 – INTRODUCTION (3)1.1W ELCOME (3)1.2P RODUCT O VERVIEW (3)1.3C ONCEPTS AND T ERMINOLOGY (3)1.4A F EW W ORDS FROM E DDIE K RAMER (4)CHAPTER 2 – QUICKSTART GUIDE (5)CHAPTER 3 – INTERFACE AND CONTROLS (6)3.1I NTERFACE (6)3.2C ONTROLS (7)CHAPTER 4 – THE WAVESYSTEM (14)4.1T HE W AVE S YSTEM T OOLBAR (14)4.2P RESET H ANDLING (14)4.3I NTERFACE C ONTROLS (17)Chapter 1 – Introduction1.1 WelcomeThank you for choosing Waves! In order to get the most out of your Waves processor, please take the time to read through this manual.In conjunction, we also suggest that you become familiar with . There you will find an extensive Answer Base, the latest Tech Specs, detailed Installation guides, new Software Updates, and current information on Authorization and Registration.By signing up at , you will receive personalized information on your registered products, reminders when updates are available, and information on your authorization status.1.2 Product OverviewThe Waves Signature Series is our exclusive line of application-specific audio processors, created in collaboration with the world’s top producers, engineers, and mixing engineers. Every Signature Series plug-in has been precision-crafted to capture the artist’s distinct sound and production style. For experienced and aspiring audio professionals alike, the Waves Signature Series allows you to dial up the sound you’re looking for quickly, without interrupting the creative flow.The Eddie Kramer Collection consists of 5 plug-ins, each designed to handle a specific production task.Vocals: Eddie Kramer Vocal Channel (EKramer VC)Drums: Eddie Kramer Drum Channel (EKramer DR)Bass: Eddie Kramer Bass Channel (EKramer BA)Guitars: Eddie Kramer Guitar Channel (EKramer GT)Effects:Eddie Kramer Effects Channel (EKramer FX)1.3 Concepts and TerminologySensitivity Control/Sensitivity LEDThe Sensitivity LED’s colors indicate when appropriate levels are reached: Green (good)Yellow (optimal)Red (very hot)If the LED is off during playback, your input signal is too low. Move the Sensitivity Control clockwise until the LED lights up. We recommend adjusting the Sensitivity Control as soon as you open the plug-in, using the section of your song with the highest peaks for best results.In most cases, the Sensitivity LED indicates that your levels hit the processor in a way that will give you the intended output result. However, it’s important to keep in mind that optimal results may be achieved even when the Sensitivity LED does not display “optimal” levels (yellow). Depending on your program material, “good” levels (green) might be best-suited to your needs; in other cases, “very hot” levels (red) might provide the most appropriate processing.In many cases, changing other controls after adjusting Sensitivity may cause the Sensitivity LED to turn red. When this occurs, re-adjustment of either the Sensitivity control or the other control will be necessary. As always, trust your ears.TypeEach plug-in includes a number of application Types which address a range of source materials.1.4 A Few Words from Eddie Kramer"For the Effects Channel plug-in, I set out to recreate some of the basic elements that I use whenever I’m painting a sonic picture. Over the years, these elements have evolved to suit a variety of sources and styles, from whispering vocals to screaming guitars and beyond.H-Slap is a shorter delay that emulates tape at 15 inches per second, with some EMT plate reverb at a medium setting.Z-Slap is a longer delay (7 ½ inches per second) with a bit of feedback and a longer setting on the EMT plate.Between the two, you’ll easily find the ideal setting for almost anything you can throw at it."1.5 ComponentsWaveShell technology enables us to split Waves processors into smaller plug-ins, which we call components. Having a choice of components for a particular processor gives you the flexibility to choose the configuration best suited to your material.The Waves Eddie Kramer Effects Channel has two components:•EKramer FX m>s – Mono in to Stereo out component•EKramer FX stereo – Stereo in to Stereo out componentChapter 2 – Quickstart Guide•Insert the EKramer FX plug-in on the track you wish to process.•Choose the FX type you want to hear.•Adjust the Sensitivity control until you achieve proper levels, as indicated by the Sensitivity LED.•Adjust the various controls to shape your sound.•After setting all parameters, check to make sure the Sensitivity LED indicates proper levels. If it indicates excessive levels, make the necessary adjustments.Chapter 3 – Interface and Controls3.1 Interface3.2 ControlsDIRECT IN/OUT determines whether the direct signal is fed to the output. When using the plug-in as an insert, choose Direct In; when using as a send return, choose Direct Out.Range: In, OutInDefault:METER Switch toggles meter display between input and output levels.OutputDefault:METER displays input or output levels.Range: -24dBFS – 0dBFSZ-SLAPTYPE selects the effect type.Range: Z-Slap, H-SlapDefault: Z-SlapPlease note: Changing Types will reset all controls to their initial values.SENSITIVITY controls input levels.Range: Min (0) - Max (100), in 0.1 stepsDefault: 50SENSITIVITY LED indicates the presence of proper levels.Range: Green (good), Yellow (optimal), Red (very hot)DLY controls the time of the slap delay.Range: 50 – 500 (in steps of 1)Default: 272DLY MIX controls the mix or direct send to the slap delay.Range: Min (0) - Max (100), in 0.1 stepsDefault: 58SIZE controls the size and time of the reverb effect.Range: Min (0) - Max (100), in 0.1 stepsDefault: 41BRIGHTNESS controls the high frequency range of the reverb effect.Range: +/- 50 (in 0.1 steps)Default: 26.7VERB MIX controls the amount of reverb effect that will be mixed with the input signal.Range: Min (0) - Max (100), in 0.1 stepsDefault: 80OUTPUT controls the output level.Range: +/- 50 (in 0.1 steps)Default: 0H-SLAPTYPE selects the effect type.Range: Z-Slap, H-SlapPlease note: Changing Types will reset all controls to their initial values.SENSITIVITY controls input levels.Range: Min (0) - Max (100), in 0.1 stepsDefault: 50SENSITIVITY LED indicates the presence of proper levels.Range: Green (good), Yellow (optimal), Red (very hot)DLY controls the time of the slap delay.Range: 50 – 500 (in steps of 1)Default: 138DLY MIX controls the mix or direct send to the slap delay.Range: Min (0) - Max (100), in 0.1 stepsDefault: 72SIZE controls the size and time of the reverb effect.Range: Min (0) - Max (100), in 0.1 stepsDefault: 41BRIGHTNESS controls the high frequency range of the reverb effect.Range: +/- 50 (in 0.1 steps)Default: 26.7VERB MIX controls the amount of reverb effect that will be mixed with the input signal.Range: Min (0) - Max (100), in 0.1 stepsDefault: 80OUTPUT controls the output level.Range: +/- 50 (in 0.1 steps)Default: 0Chapter 4 – The WaveSystem4.1 The WaveSystem ToolbarAll Waves processors feature the WaveSystem toolbar which takes care of most administrative functions you will encounter while working with your Waves software. The features of the WaveSystem toolbar are the same on practically all Waves processors, so familiarity with its features will be helpful whichever processor you are using. Toolbar FunctionsUndo Undoes the last 32 actions.Redo Redoes the last 32 undone actions.Setup A/B Toggles between two presets. This is useful for close comparison of different parameter settingsCopy A->B Copies the current settings to the second preset registerLoad Recalls presets from fileSave Saves presets in the Waves file formats? Opens the manual for the processor you are using4.2 Preset HandlingPreset TypesFactory Presets are permanent presets in the Load menu. Factory presets cannot be over-written or deleted. When applicable, different component plug-ins may have different factory presets.User Presets are your favorite settings of the plug-in saved as a preset in the Load menu, under ‘User Presets’. User Presets can be over-written and deleted.Setup Files may contain more than one preset. For example, a single file can contain all the presets for a session. When you open a Setup File, all its setups become part of your Load pop-up menu for fast access. This can be particularly useful with multiple instances of a plug-in in a single session. By saving all the settings you create into a single Setup File, they can all be quickly available for every instance of that plug-in.Loading Presets and SetupsClick-and-hold on the Load button to see the Load pop-up menu. The menu is divided into four sections. If a section is not currently available it will not appear in the Load pop-up menu.Open Preset File…Select to open any setup or preset file, whether from the Library or your own creations.‘Filename.xps’: Displays any currently loaded Setup File and its presets.Factory Presets:Displays the default Factory Presets.User Presets:Displays any loaded User Presets.Saving Presets and SetupsClick-and-hold on the Save button to see the Save pop-up menu. Four options are available. If an option is not currently available it will be grayed out and inaccessible. Save to New File…Select this to start a new Setup file. There are twoprompts - first for the setup filename, then for thepreset name. You must provide a name for both thesetup file and the preset. Click OK (ENTER) tocomplete the save. It is a good idea to create afolder in which to save several setup files for aproject.Save ‘File Name’ – “Preset Name” Overwrites the settings of the loaded preset(whether a User Preset or a preset from a SetupFile) with the current settings. If a Setup File iscurrently loaded, the name of the Setup File isdisplayed followed by the name of the preset itself.If a User Preset is loaded, its name is displayed. Save to ‘File Name’ As…Saves the current settings as a new preset into theSetup file that is open (if one is not open, the optionis grayed out). You will be prompted to give thepreset a name.Put into Preset Menu As…Save the current settings into a User Preset thatwill always be in your Load menu (until deleted).You will be prompted to give this preset a name.User Presets are stored in the plug-in’s preferencefile.Deleting PresetsYou may delete User Presets and presets within a Setup File. Factory Presets and Setup Library files cannot be deleted or overwritten.1. Hold the Command (Mac)/Control (PC) key down.2. Click-and-hold the Load button to see the pop-up menu.3. While still holding the Command/Control key, select the preset or setup to delete.4. A confirmation box will appear, allowing you to cancel or ‘OK’ the deletion.A/B Comparison and CopyingThe Setup A/Setup B button may be clicked to compare two settings. If you load a preset in the Setup B position, this will not affect the preset loaded into the Setup A position, and vice-versa.If you want to slightly modify the settings in Setup A, you can copy them to Setup B by clicking on the Copy to B button, then alter Setup A and compare with the original Setup B.The name of the current setup will be shown in the title bar (on platforms which support it), and will switch as you change from Setup A to Setup B.Note: an asterisk will be added to the preset name when a change is made to the preset -4.3 Interface ControlsControls can be in one of three states:•Not Selected where the control is not the target of any user entry•Selected where the control is the target of mouse control entry only•Selected and Active where the control is the target for both mouse and keyboard entryToggle ButtonsToggle buttons display the state of a control, and allow switching between two or more states. Single-click to change the control’s state. Some toggle buttons have a text display which updates with the current setting, and others (bypass, solo, or monitoring toggles) illuminate when the control is active.Some processors have link buttons between a pair of toggle buttons, allowing click-and-drag adjustment while retaining the offset between the controls.Value Window ButtonsValue windows display the value of a control and allow click-and-drag adjustment, or direct control via the keyboard.•Using the mouse, click-and-drag on the value window to adjust. Some value windows support left/right, some up/down (as you hover over a button, arrowswill appear to let you know which direction of movement that button supports).•Using the arrow keys, click once with mouse to select the button, and then use up/down – left/right (depending on the direction supported by that button) tomove in the smallest incremental steps across the button’s range (holding down the arrow keys will move faster through the range).•Using key entry, double click on the button to open the value window, and directly enter the value from your keyboard. If you enter an out of range number, the button stays selected but remains at the current setting (system beeps? Ifsystem sounds are on?)Some processors have link buttons between a pair of value windows, allowing click-and-drag adjustment while retaining the offset between the controls.SlidersClick on the slider itself or anywhere within the sliders track. The numerical value of the slider settings is displayed in a hover window above the slider path.Hover BoxHovering boxes will appear and display the control value when hovering with the mouse over the control.TAB FunctionsTAB moves the ‘selected’ status to the next control, with shift-TAB moving in the reverse direction.Additionally, the Mac has an option-TAB function for ‘down’ movement and shift-option-TAB for ‘up’ movement where applicable.If you have several Value Window Buttons selected, TAB functions will take you through the selected controls only.。

Kraken User's Manual

Kraken User's Manual

KrakenUser’s ManualCongratulations on your purchase of the Kraken vaping device. The Kraken is a Micro-controller based 8V PWM (Pulse Width Modulation) device capable of providing more than 350W (Watts) of instantaneous power. This device is designed for experienced users only. It is only for persons 18yrs of age or older.Only use batteries capable of providing 40A (Amperes) of current or higher. Use of batteries below the recommended current capability may result in damage to the device or cause batteries to vent and harm the user. Use of this device implies the user has read this entire User’s Manual and will adhere to all aspects and safety precautions. User assumes all responsibility for proper and safe use of this device and components. Because the Kraken has a typical idle drain of approximately 4mA, do not leave batteries in the device for a long period of time, they can be damaged by over discharging.FEATURES1.Proprietary Anodized Aluminum Enclosure2.Micro-controlled 8V SMART PWM Board3.Maximum output wattage: 354W+4.Maximum working current: 40A+5.Maximum output voltage: 8.4V6.Atomizer resistance: 0.2 ohms (max power) - 3 ohms7.Reverse Battery Protection8.Output Voltage: Adjustable between 0-100% loaded battery voltage9.Overload / Overamp Protection10.Low Voltage Protection11.Locking Capable12.Recessed Fat Daddy Spring-loaded 51013.miTEC Tactile Button14.Custom 3D-Printed Battery Tray w/ strap15.Magnetic Door w/ Hidden Magnets16.Custom Laser Engraved & Serialized17.Limited Lifetime Warranty18.Made in USAOPERATIONLocate the small detent on the bottom of the battery access door. Carefully remove the door. Install two 18650 batteries, taking careful note of the polarity. Polarity is clearly marked on the battery tray with a “+” and “-“. Reattach the battery door onto the mod and allow the magnets to firmly seat the door to the mod. The pot (potentiometer) dial, located on the side of the device, provides an easy scaled reference for power output. Turn the pot dial to approximately 30%. Install an atomizer, with a build resistance of 0.2Ω (Ohms) or higher, onto the 510 connector. Depressing the fire button will energize the coil of the atomizer. To change the output power of the device, turn the pot dial clockwise (to increase power) or counter-clockwise (to decrease power).The Kraken has several additional modes of operation. A small LED indicator is located just above the top of the battery tray to denote the various device conditions. To protect the device and user, it can be locked to prevent firing. If the device is firing for more than 10 seconds, it will “auto lock” and prevent further firing until the device is unlocked. The LED indicator will also warn the user when the batteries are low and considered fully drained. To protect the batteries from over discharge, the device will not fire if the batteries are drained.If using an atomizer build of lower 0.2Ω, the device may fire briefly then completely fail to fire. This condition is likely caused by use of improper batteries.LOCK/UNLOCKThe Kraken can be locked to prevent accidental firing. To LOCK the device, depress the fire button three times within one second. The LED indicator will blink 4 times to confirm the device has been locked. To UNLOCK, depress the fire button three times within one second. The LED indicator will blink 4 times to confirm the setting.LOW VOLTAGE CUTOFFWhile it’s always a good idea to monitor the battery voltage. The Kraken will warn you when the batteries are drained. If the user notices no vapor production, open the door and observe the LED when the fire button is briefly pressed. When the batteries are drained, the device will not fire and the LED will blink rapidly 7 times.When the battery cutoff indicator is blinking, immediately remove and recharge the batteries. Because there is still approximately 4mA of idle current drain, keeping them in the device, when not in use, WILL result in the continued drain of the batteries and may cause permanent damage to the batteries, device, and/or user.REGULATED MODEBy default, the Kraken is set to “Unregulated” mode. It can be used like any other PWM device. The pulse width can be adjusted using the pot as normal, but as the batteries drain, the output voltage will also decrease. To achieve consistent output voltage, the Kraken has a special “Regulated” mode. Once set, it will automatically adjust the duty cycle up, as needed, to maintain the desired output voltage and provide a consistent vape. The device will hold this setting even after the batteries have been changed.When in “Unregulated” mode, and after you have your pot setting dialed in, you can lock the output and switch to “Regulated” mode by locking the device (4 blinks from the indicator) and holding the fire switch for 3.5 seconds. The LED will indicate that the setting has been saved by flashing 3 times quickly.Note - To return to “Unregulated” mode, repeat the same procedure. The LED will blink 1 time indicating the mode has been changed.SAFETY CONSIDERATIONSNEVER use an atomizer less than 0.2Ω.Regularly monitor the temperature of the installed batteries.ALWAYS use batteries each capable of providing 40A or more of current.Regularly monitor the battery voltages.NEVER over draw the batteries or allow to less than 3.2V per battery cell (no load).NEVER use old or damaged batteries.NEVER directly “short out” the atomizer or batteries.NEVER insert metallic objects into the device.NEVER attempt to alter the electronic components in the device.When in use, always keep the battery access door firmly attached.When drained, ALWAYS remove and recharge batteries immediately.Never leave batteries in the device for extended periods of time without use.WARRANTY COVERAGEYour Kraken device comes with a Limited Lifetime Warranty. Only the device’s electronic components are covered under warranty. Fit and finish is not covered under warranty. Improper use of the device will immediately void the warranty. In addition, the following conditions will void the warranty:Tampering with or removing electronic componentsTampering with or removing any of the protective coating(s)Damage to the device from impact (ie. dropping, throwing, etc.)Introducing foreign objects into the deviceShorting the atomizer or 510 connectorDisassembling all or part of the device.Breaking/destruction of internal parts of the deviceUsing an atomizer less than 0.2Ω a nd/or results in MOSFET “blowing”TROUBLE SHOOTING GUIDEProblem Suggested SolutionsAtomizer fails to get hot •Ensure the atomizer is firmly seated onthe 510 connector.•Ensure batteries are charged.•Check atomizer resistance forcompliance with device specifications•Ensure atomizer is not shorted•Fully depress the fire buttonBatteries are hot •Ensure atomizer is not shorted•Check atomizer resistance forcompliance with device specifications•Ensure there are no foreign objectsinside the device.•Check batteries for damage•Replace batteries with those that arecapable of providing more than 40A ofcurrent•Allow more time in between vapingdraws (don’t “chain vape”)Batteries quickly drain •Turn down the power output of thedevice•Check the batteries for damage•Replace batteries with those that arecapable of providing more than 40A ofcurrent•Check the atomizer resistance forcompliance with device specificationsInside of device has distinct burnt smell or electronic components are emitting smoke •Immediately remove batteries, allow to cool, and contact Chalet Manufacturing for possible warranty serviceAll other issues •Remove batteries and contact ChaletManufacturing for additional assistanceor possible warranty serviceCONTACT USFor Warranty and/or other inquiries, please contact us at:Chalet Manufacturing/contact.html。

EPC知识考试(试卷编号221)

EPC知识考试(试卷编号221)

EPC知识考试(试卷编号221)1.[单选题]ZXUN XGW产品的GSU单板能提供____个双向SPI 4.2接口的媒体报文通道A)1B)2C)3D)4答案:D解析:2.[单选题]哪些原因可能会导致PDP激活成功率下降?The following reason may cause the PDP activation success ratio to decrease: ( ).A)GGSN内部故障GGSN internal faultB)IP地址池资源耗尽Resource exhaustion of the IP address poolC)OCS故障OCS faultD)以上都是All of the above答案:A解析:3.[单选题]在uMAC SGSN中,ECMM子卡是集成在()单板上的。

In uMAC SGSN,ECMM subcard is generated in ().A)EGFSB)EGBSC)ECDMD)EMSI答案:B解析:4.[单选题]PDSN激活license文件的命令()。

To activate the license file of the PDSN, runs the command ( ).A)#license download t8000.lcsB)#license install t8000.lcsC)#show licenseD)#ls license答案:B解析:5.[单选题]在V4 xGW中,保存配置信息的ZDB文件在哪个路径下面的DATA0和DATA1下面()A)/sysdisk0/B)/datadisk0/D)/performance/答案:A解析:6.[单选题]用户上网下载音乐,URL为/music/foobar.mp3。

xGW GGSN启用了内容计费,并在相应一级过滤规则下按顺序配置了下列二级过滤规则,则该用户下载音乐的流量会匹配到哪条规则?The URL for downloading music is"/music/foobar.mp3". If contents charging is enabled on the xGW GGSN, and L2 filtering rules are configured under the corresponding L1 filtering rule in sequence, the traffic of downloading music by this user will match the following rule: ( ).A)/music/foobar.mp3 priority10B)http:/* priority 20C)* priority 20D)/music priority 20答案:C解析:7.[单选题]xGW v4.10.22版本后,串口默认关闭,打开的命令为()。

Daikin Altherma用户指南与接口指南(英文)说明书

Daikin Altherma用户指南与接口指南(英文)说明书

Installer and userreference guide EKRUDASTable of Contents2Daikin Altherma user interface used as room thermostat4P500350-1A – 2017.12Table of ContentsFor the user 21Buttons22Status icons 2For the installer33Overview: Installation and configuration 34To connect the user interface used as a room thermostat3For the user 1ButtonseadaSPACE HEATING/COOLING CONTROLGo to the room temperature home page, where you can:▪Read out the actual room temperature.▪Press or to adjust the desired room temperature.▪Press to turn ON or OFF the room temperature control.bDOMESTIC HOT WATER CONTROLGo to the domestic hot water home page, where you can:▪Read out the actual domestic hot water tank temperature (only if the system contains a domestic hot water tank).▪Read out the desired instant domestic hot water temperature (only in case of instant domestic hot water production by a boiler).▪Pressto turn ON or OFF the domestic hot water control.cACTIVATE DHW TANK BOOSTER MODEActivate the DHW tank booster mode (only if the system contains a domestic hot water tank, and provided that the domestic hot water control is turned ON).dON/OFFTurn ON or OFF the space heating/cooling or domestic hot water control (on the respective home pages).eNAVIGATION BUTTONSOn the room temperature home page, adjust the desired room temperature .2Status iconsIf is displayed, check the user interface connected to the indoor unit for more information or, if necessary, contact your installer.3 Overview: Installation and configuration3Daikin Altherma user interface used as room thermostat 4P500350-1A – 2017.12For the installer 3Overview: Installation and configurationInstallation▪The user interface in the indoor unit acts as control center.▪The user interface used as a room thermostat needs to be installed in the room that you want to control.4To connect the user interface used as a room thermostat1Connect the cable of the user interface used as a room thermostat to the indoor unit.a User interface used as a room thermostat2Fix the cable with cable ties to the cable tie mountings.nikiaD712thgirypoC 4P500350-1A 2017.12。

5G认证考核测试2021-21

5G认证考核测试2021-21

5G认证考试21第一部分单选题(100题)1、以下哪个NF不属于服务化架构A、AMFB、UPFC、SMFD、PCF1、答案B2、负责公众网用户(手机用户)业务的所有AMF均配置为Default AMF;Default AMF在不能确定为UE提供所需的S-NSSAI服务的情况下,需发起至()的查询A、NSSFB、NRFC、DNSD、IWF2、答案A3、5G协议中则明确定义了移动性限制,如下描述不正确的是A、Forbidden Area:在该区域禁止UE的接入,UE不能发任何消息给网络B、RAT Restriction:定义UE不能接入的RAT类型C、Service Area Restriction:分为Allowed Area和Non Allowed Area。

UE 在Allowed Area可正常接入网络,在Non Allowed Area可以发起周期性更新、注册请求,发起SR和任何会话相关信令D、一个服务区域限制会包含一个或多个完整的Tracking Areas3、答案C4、以下哪方面的技术有利于接入的用户面对应用就近接入,以及减少用户面时延A、云化技术B、网络分片技术C、控制与用户面分离CUPS技术D、服务化架构4、答案C5、以下不属于AMF相关的性能指标的是A、5G网络AUPI数B、5G开户用户数C、5G活动用户数D、去订阅用户数据成功率5、答案A6、下列并非镜像格式的是?A、qcow2B、vmdkC、isoD、exe6、答案D7、下列哪个是服务化接口?A、GBB、N2C、GXD、Nsmf7、答案D8、MANO系统是ETSI提出的全新的云管理系统,该系统主要包括()A、云管理所需的网元的生命周期管理功能B、网元所需的加载模板和安装包的管理C、网络资源的管理和分配等功能。

D、以上都对8、答案D9、VNF网元软件能达到()可靠性设计要求。

A、99.9%B、99.99%C、99.999%D、99.9999%9、答案C10、云化部署、控制面集中、用户面按需下沉,以下哪个网元是需要下到地市的?()A、HSSB、CGWC、DGWD、MME10、答案C11、5G核心网的认证框架中,独立的NF功能是什么?A、UEB、ARPFC、AUSFD、SEAF11、答案C12、OpenStack的提供计算的服务组件是?A、NovaB、NeutronC、CinderD、Heat12、答案A13、CHF选择优先级最高的是A、基于PCF提供的URI发现CHFB、基于Charging Character配置选择CHFC、通过NRF服务发现选择CHFD、配置的缺省CHF13、答案A14、5GC采用S-NSSAI来标识网络切片,以下说法错误的是A、SST长度为8BitB、3GPP TS.23.501已经定义了4个SSTC、由SST和SD两部分组成D、SD位长为32Bit14、答案D15、接入层TOR包括业务TOR、存储TOR、管理TOR和()A、计费TORB、汇聚TORC、硬件管理TORD、容灾TOR15、答案C16、5GC中负责融合计费的网元是A、OCSB、CGC、CHFD、PCF16、答案C17、以下哪个不是虚拟机的优势A、隔离性B、安全性C、独立性D、封装性17、答案B18、N26接口对接哪两个网元A、UPF和SMFB、AMF和SMFC、NR和UPFD、MME和AMF18、答案D19、NFVO+采用()备份方式A、A、1+1主备B、B、1+1互备C、C、N+1D、D、POOL19、答案C20、如果EPS Fallback成功率低,需要进行流程失败排查,如下哪个流程不涉及?A、AMF上Handover流程B、AMF上语音Paging流程C、AMF上5GC注册流程D、SMF/PGW上Modify Bearer流程20、答案C21、如果对端NF故障,导致NRF发送的HTTP请求消息超时无响应,NRF的重传机制是?A、不重传B、重传1次C、一直重传,直达有响应D、重传3次21、答案D22、OpenStack中的哪个()组件提供:管理计算能力、VM生命周期?A、CinderB、NovaC、NeutronD、Glance22、答案B23、通过网管系统(U2020系统)监控网络运行状态,实时监控当前告警,其中红色告警表示A、紧急告警B、重要告警C、次要告警D、提示告警23、答案A24、5G QOS模式中,哪个参数可以与EPC QOS中的APN-AMBR对应上A、5QIB、Session-AMBRC、GFBRD、MFBR24、答案B25、以下不属于N4接口协议栈的是A、UDPB、TCPC、L1D、L225、答案B26、NF instance ID说法不正确的是()A、采用UUID版本4格式(RFC 4122)共256个bitB、Region:标识网元负责业务所在的大区C、NF type:标识网元类型D、Province:标识网元所服务的省份26、答案A27、CF(Cell function)的含义是A、提供Cell架构的机制能力B、用于支撑细胞服务完成特定功能的平台类OS和OM功能在实现域上的映射C、负责Cell系统内寄出元素定义及统一规划D、构成网络形态和功能的最小基本单元27、答案B28、U2020上未提供了以下哪个操作菜单?A、告警监控菜单B、性能监控菜单C、用户安全菜单D、接口菜单28、答案D29、NFV技术本质是强调网络功能的软硬件()能力,实现网络价值由硬件向软件的迁移。

GE Healthcare B125患者监测器简单、灵活、可靠说明书

GE Healthcare B125患者监测器简单、灵活、可靠说明书

GE HealthcareB125 Patient MonitorSimple. Flexible. Reliable.1 Impedance respiration is intended for use with only adult and pediatric patients inUnited States, Argentina, Guam, Puerto Rico, Saint Croix and Saint Thomas.CO 2 measurement through E-miniC Module is intended for use with patients weighing over 5kg (11 lb) only.The B125 patient monitor from GE Healthcare delivers clinical performance you can trust. It is simple and intuitive for busy caregivers, flexible for diverse care areas and acuity needs, and reliable for challenging work environments.Parameter excellenceThe B125 Monitor is designed with advanced parameter technologies for accurate and reliable patient monitoring: •EK-Pro arrhythmia analysis•DINAMAP™ SuperSTAT non-invasive blood pressure •TruSignal™ enhanced SpO 2 saturation monitoring. Also available with Nellcor ® OxiMax ® SpO 2 or Masimo ® SET ® SpO 2 algorithms •GE EtCO 2 sidestream measurement•Comprehensive package for neonatal 1 measurementsSimple & intuitive user interfaceThe B125 Monitor makes it easy to acquire, monitor and interpret patient data to support timely decision-making: •Seven pre-configured workflow settings•Choice of numerical or continuous waveform monitoring •Big numeric view capability •Capacitive touch screenFlexible for diverse care areas & acuity needsDesigned with advanced technologies to support connectivity & operations across hospital enterprise.•Connectivity to GE CARESCAPE™ networks and Mobile Care Web Viewer •Flexibility to share parameter modules and accessories across other GE monitors •Advanced applications such as ST Segment and Full ArrhythmiaRobust & reliableIts rugged & robust design stands up to harsh environments and the everyday wear-and-tear of busy care areas. •Upgraded cyber security•Stable performance in tough environmental conditions •75 cm height drop test for main unit •Three hour batteryTechnical specificationsDisplaySize 12.1 in (diagonal)Resolution: 1280 x 800 pixels (WVGA) Number of waveforms Up to 6Display layout and colors User-configurableControls Capacitive Touch screen & TrimKnob™ control and hard keys(standard)Parameters and modulesECGLeads available 3-lead configuration: I, II, III5-lead configuration: I, II, III, aVR,aVL, aVF and VSweep speed 12.5, 25 or 50 mm/sGain range 0.5x, 1x, 2x and 4xHeart rate accuracy 30 to 300 bpm, ±5% or ±5 bpm,whichever is greaterBandwidth50/60 Hz power supply Monitor: 0.5 to 40 HzST: 0.05 to 40 HzDiagnostic: 0.05 to 145 Hz Pacemaker detection Range: 2 to 700 mVPulse width: 0.5 to 2 ms Arrhythmia analysis Asystole, V Fib / V Tach, V Tach, VT>2R on T, V Brady, Couplet, Bigeminy,Accelerated Ventricular arrhythmia,Multifocal PVCs, A Fib, Missing beat,Pause, Tachy, Brady, Trigeminy ST segment analysis Numeric range: -9 to +9 mm(-0.9 to +0.9 mV)Accuracy: ±0.2 mm or ±10%,whichever is greater, within themeasurement range of -8 to 8 mmNumeric resolution: 0.1 mm(0.01 mV)ST Trends: Up to 168h Impedance respiration3Range Adult/pediatric: 4 to 120 resp/minNeonate3: 4 to 180 resp/min Accuracy ±5% or ±5 resp/min, whichever isgreaterGain range 0.1 to 5 cm/OhmSpO2TruSignal SpO2Measurement rangePulse oximetry 1 to 100%Pulse rate 30 to 250 bpmMeasurement accuracySaturation Without motion-adult/pediatricFinger sensor: 70 to 100% ±2%Without motion-neonate3:70 to 100% ±3%With motion-adult/pediatric/neonate3: 70 to 100% ±3%Low perfusion-adult/pediatric:70 to 100% ±3%(1~69% unspecified)Pulse Rate Without motion: ±2 bpm(Adult/Pediatric/Neonatal3)2 Refer to B125 User’s Manual for more information.3Impedance respiration is intended for use with only adult and pediatric patients in United States, Argentina, Guam, Puerto Rico, Saint Croix and Saint Thomas.CO2 measurement through E-miniC Module is intended for use with patients weighing over 5kg (11 lb) only.Nellcor OxiMaxMeasurement rangePulse oximetry 1 to 100%Pulse rate 20 to 250 bpm Measurement accuracySaturation Adult: 70 to 100% ±2%Neo: 70 to 100% ±3%Low perfusion: 70 to 100% ±2%0~69% unspecifiedPulse Rate ±3 bpmMasimo SETMeasurement rangePulse oximetry 1 to 100%Pulse rate 25 to 240 bpm Measurement accuracySaturation Without motion-adult/pediatric:70 to 100% ±2%Without motion-neonate4:70 to 100% ±3%With motion-adult/pediatric/neonate6: 70 to 100% ±3%Low perfusion: 70 to 100% ±2%(0~69% unspecified)Pulse rate Without motion: ±3 bpmWith motion: ±5 bpmNIBPMeasurement technique Oscillometric with step deflation Modes Manual, automatic and stat NIBP Measurement rangesSystolic Adult/Pediatric: 30 to 290 mmHgNeonate4: 30 to 140 mmHg MAP Adult/Pediatric: 20 to 260 mmHgNeonate4: 20 to 125 mmHg Diastolic Adult/Pediatric: 10 to 220 mmHgNeonate4: 10 to 110 mmHg Accuracy Meets AAMI ISO81060-2 andIEC 80601-2-30Default initialinflation pressure Adult/Pediatric: 135 ±15 mmHgNeonate4: 100 ±15 mmHg Maximumdetermination time Adult/Pediatric: 2 minNeonate4: 85 s Over pressure monitor Adult/Pediatric: 294 ±6 to330 mmHgNeonate4: 147 ±3 to 165 mmHg Invasive blood pressureMeasurement range -40 to 320 mmHg (-5.3 to 42.7 kPa) Measurement accuracy ±5% or ±2 mmHg, whichever isgreaterFrequency response 4 to 22 HzTransducer sensitivity 5 μV/V/mmHgTemperatureNumerical display T1, T2, T2-T1Measurement range 10 to 45°C (50 to 113°F) Measurement accuracy ±0.1°C without probeDisplay resolution 0.1°CProbe YSI probes recommended byGE HealthcareNetworkingCompatibility CARESCAPE NetworkWi-Fi connectivity5IEEE 802.11a/b/g/nWi-Fi security5 WPA-Personal;WPA2-Personal;WPA-Enterprise;WPA2-EnterpriseConnectivity to EMR HL7® outbound protocol directthrough the CARESCAPE Gateway I/O connectorsRS-232 computer serial output, Defibrillation synch, Nurse call, USB port, additional display connectorMountingGCX compatibleIntegrated carrying handle4Impedance respiration is intended for use with only adult and pediatric patients in United States, Argentina, Guam, Puerto Rico, Saint Croix and Saint Thomas.CO2 measurement through E-miniC Module is intended for use with patients weighing over 5kg (11 lb) only.5 Available in registered regions only.Paper RecorderMethod Thermal dot arrayHorizontal resolutions 24 dots/mm (600 dpi)Vertical resolution 8 dots/mm (200 dpi) Waveforms Selectable 1, 2, or 3 waveforms Numerics HR, SpO2, NIBP, IBP1, IBP2,EtCO2/FiCO2, T1, T2, Resp Graphical trend printout HR, ST, IBP1, IBP2, NIBP, SpO2, Pleth,CO2, Resp, T1+T2Paper width 50 mm, printing width 48 mm Paper speed 6.25, 12.5, 25 mm/sPerformance specificationsAlarmsPriority High, Medium, Low and Message Notification Audible and visualSetting Default and individualVisual alarm notification Red, yellow, cyanAudio silence messageGeneral alarm messageAudio pause 2 minAdjustment Adjustment pageTrendsGraphical All parameters, selectable timescales from 20 min to 168h Numerical All parameters, sampling accordingto time setting or after NIBPdeterminationSnapshot Up to 200 snapshots Manual oralarm triggeredOCRG trend6Real time or snapshot Neonatemode onlyTrend cursor In graphical trend Environmental specificationsOperating conditionsTemperature 5 to 40°C (41 to 104°F)Relative humidity 20 to 90% noncondensing Atmospheric pressure 700 to 1060 hPa (525 to 795 mmHg) Storage and transport conditionsTemperature -20 to 60°C (-4 to 140°F) Relative humidity 10 to 90% noncondensing Atmospheric pressure 700 to 1060 hPa (525 to 795 mmHg)Power specificationsAC input 100 to 240V ±10%, 50/60 Hz, 150VA Protection Class IBattery Exchangeable lithium-ion, 1 pcsmaxCharging time < 4 h to 90% capacityRun time > 3 hPhysical specificationsDimensions (H x W x D) Without extension rack:280 x 317 x 150 mm(11.0 x 12.5 x 5.9 in)Weight 4.3 kg (9.5 lb) w batteryIngress protection IPX1CertificationsIEC 60601-1 passedCE marking according to Council Directive 93/42/EEC concerning medical devices amended by 2007/47/EC6Neonate Resp is not available for USA and 510k required countries.Imagination at workProduct may not be available in all countries and regions. Full product technical specification is available upon request. Contact a GE Healthcare Representative for more information. Please visit/promotional-locations.Data subject to change.© 2017 General Electric Company.GE, the GE Monogram, Imagination at work, CARESCAPE, DINAMAP, Trim Knob and TruSignal are trademarks of General Electric Company.Masimo and SET are trademarks of Masimo Corporation. Nellcor and OxiMax are trademarks of a Medtronic company. HL7 is a registered trademark of Health Level Seven (HL7), Inc. All other third-party trademarks are the property of their respective owners. Reproduction in any form is forbidden without prior written permission from GE. Nothing in this material should be used to diagnose or treat any disease or condition. Readers must consult a healthcare professional.DOC1937971 Rev. 3 4/17。

德语单词总结-身体部位

德语单词总结-身体部位

德语单词总结---身体部位(中英德对照)身体部位der Körper,die Körper身体,bodydie Figur, die Figuren 身材figureder Kopf 头,die Köpfe头部,headdas Haar,die Haare 头发,毛发,hair der Kamm, die Kämme 梳子combkämmen 梳头der Friseur, die Friseure/die Friseurin, die Friseurinnen 理发师barberder Coiffeur,die Coiffeure (法)理发师das Gesicht,die Gesichter 面部,脸部,face die Stirn,die Stirnen 额,额头,forehead die Wange, die Wangen 面颊,cheekblass 苍白的,灰白的,无血色的palebleich 苍白的,灰白的,无血色的pallidrot werden 脸红了,wird rot-wurde rot-ist rot gewordendie Augenbraue,die Augenbrauen 眉毛,eyebrowdie Wimper,die Wimpern睫毛,eyelash das Auge,die Augen 眼睛,眼部,eyeder Blick,die Blicke目光,vistasehen看,to see,ich sehe, er sieht-sah-hat gesehengucken瞧,to peekbeobachten观察,to observeschauen瞧,to lookansehen注视,look atanschauen 注视der Anblick,die Anblicke景象,sight erkennen认识到,to recognize,erkennt-erkannte-hat erkanntdie Brille,die Brillen眼镜,glasses kurzsichtig近视的,nearsightedblind 瞎的,blinddie Nase,die Nasen 鼻子,noseriechen闻到,to smell,riecht-roch-hat gerochender Geruch,die Gerüche 气味,smellder Duft,die Düfte 香味,fragrance duften 发出香味,to smell <——>stinken发臭,to stink,stinkt-stank-hat gestunken atmen呼吸,to breathe der Atem呼吸,breatheinatmen 吸入,to inhale <——> ausatmen 呼出,to exhaledie Luft,die Lüfte空气,airdas Taschentuch手帕,handkerchiefdas Ohr,die Ohren 耳朵,耳部,earhören 听到,to hearscherhörig 听觉迟钝的taub聋的,deaflydas Geräusch,die Geräusche 声响,noise der Krach,die Krache /Kräche 吵闹声,crash der Lärm 噪音,noiselaut 大声的,loud<——>leise低声的,low ruhig,still 安静的,quietlydie Ruhe 安静quietnessdie Stille 寂静silentnessder Mund,die Münder 口,嘴巴,mouth die Lippe,die Lippen嘴唇,lipdie Zunge,die Zungen 舌头,tongueder Zahn,die Zähne 牙,牙齿,toothdas Kinn,die Kinne 下巴chinder Bart,die Bärte 胡须beardsich rasieren 给......刮胡子to shaveder Rasierapparat 剃须刀safety razorder Hals,die Hälse 脖子,颈项neckdie Kehle,die Kehlen喉咙throatdie Schulter,die Schultern 肩膀,肩部,shoulderdie Hand,die Hände 手,手部,handdas Handgelenk,die Handgelenke 手腕,wrist die Handfläche,die Handflächen手掌,palm der Finger,die Finger 手指,fingerder Daumen, die Daumen 拇指thumb anfassen 握住ich fasse an, er fasst an-fasste an-hat angefasstder Nagel,die Nägel指甲,nailder Arm,die Arme 手臂,胳膊,armdas Glied,die Glieder 四肢,limbdie Brust,die Brüste 胸部,乳房,breast die Taille,die Taillen腰部,waistdie Rücken,die Rücken背部,backder Bauch,die Bäuche 腹部,肚子,bellyder Hintern,die Hintern屁股,butt die Hüfte, die Hüften 臀部,hipdas Gesäß,-e/das Hinterteil臀部buttocks, posteriordas Bein,die Beine 腿,腿部,legder Oberschenkel, die Oberschenkel 大腿,thighdie Wade, die Waden小腿肚,calfdas Knie,die Knie 膝,kneeder Fuß,die Füße 足,脚,footder Zeh,die Zehen 脚趾,toedie Ferse, die Fersen 脚后跟die Haut,die Häute 皮肤,肤色,skindas Organ, die Organe 器官organdie Lunge,die Lungen 肺,肺部,lungs das Herz,die Herzen 心脏,心,heart der Magen,die Mägen胃,stomachder Darm,die Därme 肠bowel/intestine der Blinddarm, die Blinddärme 盲肠appendixdie Galle,die Gallen 胆汁,galldie Leber,die Lebern 肝,肝脏,liverdie Milz,die Milzen 脾脏,spleendie Niere,die Nieren 肾脏,kidneydas Blutgefäß 血管,blood vesseldas Blut 血,血液,bloodbluten 流血to bleedder Muskel,die Muskeln肌肉,muscleder Knochen,die Knochen骨骼,knucklebone das Gelenk,die Gelenke关节,joints。

IsoplotRgui 5.6 商业用户手册说明书

IsoplotRgui 5.6 商业用户手册说明书

Package‘IsoplotRgui’November10,2023Title Web Interface to'IsoplotR'Version5.6Date2023-10-28Description Provides a graphical user interface to the'IsoplotR'package for radiometric geochronol-ogy.The GUI runs in an internet browser and can either be used of-fline,or hosted on a server to provide online access to the'IsoplotR'toolbox.Author Pieter Vermeesch[aut,cre],Tim Band[ctb]Maintainer Pieter Vermeesch<******************.uk>Depends R(>=3.0.0)Imports IsoplotR(>=5.6),shinylight(>=1.1.2)License GPL-3URL https:///~ucfbpve/isoplotr/,https:///pvermees/IsoplotRgui/RoxygenNote7.2.1Encoding UTF-8NeedsCompilation noRepository CRANDate/Publication2023-11-1010:30:06UTCR topics documented:daemon (2)IsoplotR (2)stopIsoplotR (3)Index412IsoplotR daemon Start the IsoplotR GUI without exitingDescriptionOpens a web-browser with a Graphical User Interface(GUI)for the IsoplotR package.This func-tion is intended to be used from Rscript so that Rscript does not terminate and the server stays up.Usagedaemon(port=NULL,host="127.0.0.1",timeout=30)Argumentsport Internet port of the virtual server.If not defined,a random free port will be chosen and the browser will be opened to show the GUI.host IP address of the virtual servertimeout How long(in elapsed time)an operation may take before returning with a time-out error.Default:30seconds.ValueThis function does not return.Examples#this function runs indefinitely unless interrupted by the user.##Not run:daemon(3839)IsoplotR Start the IsoplotR GUIDescriptionOpens a web-browser with a Graphical User Interface(GUI)for the IsoplotR package.An online version of the same interface is provided at https:///~ucfbpve/isoplotr/ UsageIsoplotR(host=if(daemonize)"0.0.0.0"else"127.0.0.1",port=NULL,timeout=Inf,daemonize=!is.null(port))stopIsoplotR3Argumentshost IP address of the virtual server,default is0.0.0.0port Internet port of the virtual server.If not defined,a random free port will be chosen and the browser will be opened to show the GUI.timeout How long(in wall-clock time)an operation may take before returning with a timeout error.Default:no limit.daemonize logical.If TRUE,runs as daemon.Valueserver objectExamplesIsoplotR()stopIsoplotR Stop an IsoplotR GUIDescriptionStop an IsoplotR GUIUsagestopIsoplotR(server=NULL)Argumentsserver The server(returned by IsoplotRgui::IsoplotR())to stop.If not supplied all servers will be stopped.Exampless<-IsoplotR()stopIsoplotR(s)Indexdaemon,2IsoplotR,2stopIsoplotR,34。

krakend的用法 -回复

krakend的用法 -回复

krakend的用法-回复krakend是一个开源的API网关和微服务平台,它可以帮助开发人员在多个微服务之间进行路由、鉴权和日志记录。

本文将介绍krakend的用法,并逐步解释如何使用它来构建强大的微服务架构。

1. 简介首先,让我们简要介绍一下krakend的基本概念和功能。

krakend是由Devopsfaith团队开发的一个轻量级的API网关和服务代理,它用于解决在微服务架构中面临的一些常见问题。

它提供类似于反向代理的功能,可以根据路由规则将请求转发给相应的后端服务。

同时,它还支持鉴权、限流、缓存和请求转换等功能,使得开发人员可以更加灵活和高效地管理和部署微服务。

2. 安装和配置要开始使用krakend,首先需要安装它。

krakend提供了各种操作系统的安装包和可执行文件,可以根据自己的需求进行选择。

一旦安装完成,接下来就是进行配置。

配置文件是krakend的核心,它定义了网关的行为和各个微服务的地址。

配置文件使用JSON格式,可以包含多个路由规则以及与之关联的后端服务。

一个最基本的配置文件如下所示:json{"version": 2,"timeout": "300ms","endpoints": [{"endpoint": "/api","method": "GET","output_data_format": "json","backend": [{"url_pattern": "/backend1","url": "},{"url_pattern": "/backend2","url": "}]}]}在上面的配置文件中,我们定义了一个名为"/api"的路由规则,它将匹配所有发送到"/api"的GET请求。

C君带你玩编程_昆明理工大学中国大学mooc课后章节答案期末考试题库2023年

C君带你玩编程_昆明理工大学中国大学mooc课后章节答案期末考试题库2023年

C君带你玩编程_昆明理工大学中国大学mooc课后章节答案期末考试题库2023年1.适应性免疫应答的特征不包括:答案:随机性2.免疫监视功能低下的后果是答案:易发生肿瘤3.下列关于抗原免疫原性的描述错误的是答案:是异物的物质一定是抗原4.正常胎儿血中除具有的天然的免疫球蛋白IgM外,还可能有答案:IgG5.关于IgM的生物学功能,下列哪些是正确的?答案:在机体早期免疫防御中起重要作用初次免疫接种后最先产生的抗体能激活补体6.IgD可作为B细胞分化成熟的标志之一。

答案:正确7.下列哪些是澳大利亚免疫学家MacFarlane Burnet提出的克隆选择学说的观点答案:淋巴干细胞分化为多种多样的淋巴细胞克隆未成熟淋巴细胞结合自身抗原后被克隆清除成熟淋巴细胞识别外来的抗原发生活化和增殖受抗原刺激的淋巴细胞分化为效应细胞并清除抗原8.中枢免疫器官包括()和骨髓。

答案:胸腺9.正常人血清中含量最高的补体成分是答案:C310.补体的生物学作用包括答案:调理作用免疫粘附溶细胞效应引起炎症作用11.T细胞产生的IL-2可刺激其自身的生长,这种作用方式是答案:自分泌R5是趋化因子受体,也是禽流感病毒和HIV感染的辅助受体。

答案:错误13.人类免疫缺陷病毒(HIV)的受体是()分子。

答案:CD414.CD分子与下列哪项作用无关?答案:补体攻膜复合体的形成15.MHCⅠ类分子的配体是CD4;MHCⅡ类分子的配体是CD8。

答案:错误16.HLA-II类基因的表达产物主要分布于:答案:专职性APC、胸腺上皮细胞和活化T细胞表面17.HLA与下列哪些疾病的发生有关?答案:移植排斥反应肿瘤的发生与发展类风湿性关节炎18.BCR复合物的组成成分为答案:mIg, Igα和Igβ19.BCR多样性产生的机制是答案:组合多样性连接多样性受体编辑体细胞高频突变20.B1细胞是参与固有免疫应答的淋巴细胞,而B2细胞则主要参与适应性免疫应答。

南开大学智慧树知到“信息安全”《逆向工程》网课测试题答案3

南开大学智慧树知到“信息安全”《逆向工程》网课测试题答案3

南开大学智慧树知到“信息安全”《逆向工程》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.OllyDbg自动丢弃旧记录。

()A.正确B.错误2.Windows程序的各种界面称为资源。

()T.对F.错3.IDA一般会将相关常量格式化成一个()常量。

A.二进制B.八进制C.十进制D.十六进制4.检查驱动器的Windows API函数是()。

A.GetLogicalDriveStrings()B.GetLogicalDrives()C.GetDriveType()D.GetFileAttributes()5.可以设置()个内存断点A.1个B.4个C.5个D.7个6.在以下的传递方式中,()是函数传递参数的方式多选A.栈方式B.队列方式C.寄存器方式D.通过全局变量进行隐含参数传递7.数据目录表的第1个成员指向输入表。

()T.对F.错8.WinDbg只能够识别一种表达式类型,就是C++表达式。

()A.正确B.错误9.以下不是函数传递参数的方式的是()A.寄存器B.通过全局变量进行隐含参数传递C.队列传递D.栈方式10.下列关于IDA有关说法错误的是()A.IDA最主要的特性是交互和多处理器。

用户可以通过对IDA的交互来指导IDA更好地进行反汇编B.IDA是按区块装载PE文件的,例如.text(代码块)、.data(数据块)、.rsrc(资源块)、.idata(输入表)和.edata(输出表)等C.IDA反汇编所消耗的时间与程序大小及复杂程度有关,通常需要等待一段时间才能完成D.IDA可以格式化指令使用的常量,因此应尽可能使用符号名称而非数字,从而使反汇编代码更具可读性。

IDA根据被反汇编指令的上下文、所使用的数据作出格式化决定。

对其他情况,IDA一般会将相关常量格式化成一个十进制常量11.以下是资源类型的有()。

A.VC类标准资源B.Delphi类标准资源C.非标准的Unicode字符D.标准的ASCII字符12.只要将一个变量作为计数器放到共享区块中,所有应用程序的所有实例都可以共享该变量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Form-Based User Interface - The Architectural PatternsA Pattern LanguageJens Coldeweysd&m GmbH & Co.KG, Thomas-Dehler-Str. 27D-81737 München,Germanyemail: jensc@sdm.de Phone: +49-89-63812-125 http:/www.sdm.de/g/arcus/Ingolf KrügerTechnische Universität München,Fakultät für Informatik,Arcisstr. 21D-80290 München,Germany,email: kruegeri@informatik.tu-muenchen.dePhone: +49-89-2892-8166rmatik.tu-muenchen.de/~kruegeri/ AbstractDespite all the benefits of object-oriented user interfaces, there are still domains that call for a form-based user interface. Business information systems that support fast processing of few, well-defined use cases are typical examples. This pattern language helps to develop the software architecture for such systems.The paper is part of a larger effort to collect patterns for business information systems, currently pursued by the ARCUS team.11 Introduction1.1 Form-Based and Object-Oriented User InterfacesWhen you design user interfaces you have to decide for a basic interaction style. In the recent years object-oriented user interfaces (OOUI) have become more and more popular [Col95]. These inter-faces feature sophisticated selection and navigation techniques to select objects and context-sensitive menus to manipulate them. Figure 1 shows an example of an OOUI.1This work is sponsored by the German Ministry of Research and Technology under project name ENTSTANDFigure 1:Example of a news reader with an object-oriented user interface. Beneath the menu bar there are two subwindows for navigation among object groups and selection of objects. The larger window below shows the contents of the object. Context sensitive pop-up menus provide actions to manipulate the selected objects.An alternative to OOUIs are form-based user interfaces. Instead of context-sensitive menus and ob-ject navigation they provide a set of forms organized in dialog sequences, which model the work flow of the user. Have a look at Figure 2 on page 4 for an example of this interaction style.It is tempting, to confuse the interaction style with the implementation technique of the interface. Both examples use the elements of a graphical user interface and both have an object-oriented imple-mentation. However, Figure 1 shows the typical elements to navigate between objects without sug-gesting any workflow. Figure 2 on the other hand shows no objects but is one particular step in the workflow.As the following table shows, you may implement both styles on GUIs. Many 4GL tools generate FBUIs on a GUI. Alphanumeric terminals and Web-Browsers imply certain restrictions.Alphanumeric Terminal GUI Web-Browser Form-based User InterfaceääHTML formsOO User Interfaceãäonly with JAVA orActive-XThough most modern user interfaces provide OOUIs, the need for traditional form-based interfaces persists for several reasons:• Often, skilled users need to process well-defined use cases as fast as possible. The users know what data the system needs and have all the data at hand; they need a user interface, which re-flects their work flow and needs as few key strokes as possible. “Media switching” between keyboard and mouse slows down their work. For instance, consider a passenger check-in sys-tem at an airport.• Untrained or semi-skilled users often need step-by-step assistance while performing their tasks.For instance, an ATM supports only one or two use cases (getting money and displaying ac-count information) but should serve customers of all skill-levels. Because FBUIs direct the workflow, the user does not necessarily need to know the next step to go. However, well-designed FBUIs provide enough shortcuts to serve skilled users too.• The system might not have enough resources to support an OOUI. These can cause significant load to a database server while retrieving information of which only a small fraction may be relevant to the user. For instance, you need to evaluate consistency rules to determine the se-lectable menu items or push buttons, as well as data to fill list boxes and navigation controls.This may sum up to several times the load you need to process the use case. Therefore, OOUIs cause more traffic between the client and the server. World-wide distributed applications, such as reservation systems or WWW servers, often have low-bandwidth connections between cli-ents and servers. You can use elaborate caching techniques to at least reduce the traffic but that increases design, implementation, and test effort considerably.• The existing hardware infrastructure may not support an OOUI. You need a high-resolution screen and a pointing device to use an OOUI effectively. Yet, many industrial customers still have thousands of alphanumeric terminals. Replacing the latter with graphical terminals may sum up to several million dollars in hardware costs alone.In all these cases it may be a good choice to implement a form-based user interface (FBUI) and to accept several drawbacks:• An FBUI is less flexible than an OOUI. Because the user interface determines the work flow, any unforeseen use case is hard to handle - if it is manageable at all. New use cases often re-quire changes of the user interface, resulting in changes of the software. Minor flaws in the analysis often lead to non-optimal support for the users and impede acceptance, because the system dictates a non-intuitive work-flow. Hence you have to take care during analysis and de-sign to make the FBUI extensible, which is harder than with an OOUI.• Working with a complex FBUI is harder to learn. An FBUI usually works with a sequence of forms you have to fill out to complete a task. The user has to be familiar with the use cases and the corresponding forms to work with the system. This may imply an increased training effort if the users are not too familiar with the workflow. On the other hand, it enables the user to process a known use case quickly.• FBUIs are not optimal to support strategic decision systems. If users work with the system only every now and then to analyze data and collect information for strategic decisions, they can take advantage from the flexibility of an OOUI. Hence, OOUIs are preferable for management information systems or data warehouse applications.Of course, you may mix form-based elements into an OOUI and vice versa to tune for the user’s re-quirements.This pattern language describes an architecture for the design and implementation of FBUIs.1.2 Running ExampleWe will use a running example of a flight reservation system to describe the patterns. The reservation form depicted in Figure 2 corresponds to the layout of the flight tickets. There are three subdialogs to find reservations, to have a look at available flights, and to get help. The user can issue three different domain level actions: She can start a new reservation, change an existing one, or cancel a reservation. Figure 3 models this behavior as a state event diagram. Note that there are two transitions named “Find...”: If the user presses the Find... button with a reservation id entered, the system just fills the current form. If she presses the button without a reservation id, the system opens a new form to find reservations. We have skipped additional transitions in the subdialogs, as well as general actions, such as processing help.Figure 2: Reservation form of a flight reservation system.Figure 3:State diagram of the flight reservation dialog. The shaded states represent forms while the unshaded ellipses represent actions. The reservation form of Figure 2 is the central form with two subdialogs to find a flight and a reservation respectively.2 The Pattern LanguageThe pattern language consists of ten patterns, shown in Figure 4. This paper describes only the shaded patterns in depth and provides summaries (“pattlets”) for the rest.Figure 4: The patterns of the Form-Based User Interface language.The language is contains three parts: Architectural patterns describe classes and subsystems of the architecture that do not depend on a specific platform. Conceptual patterns describe analysis concepts that help to organize the architecture. The Platform Patterns encapsulate different hardware and oper-ating system aspects.This paper starts with the Form Based User Interface pattern. The three architectural patterns follow in the order, in which events are processed: Abstract Event, Dialog Automaton, and Action Object. Finally, we summarize the other patterns.+NOWN 5SES[Den91] describes a 3GL architecture conforming to this language. Several mainframe projects at sd&m use the architecture, for instance the Thyssen/IAB project [Zeh88] and the TLR project [Bis96]. They all use Dialog Automaton, Dialog Category, General Actions, Form Comparator, Control Dispatcher, and Terminal Session.You find some of the patterns in most user interface frameworks. Microsoft Foundation Classes and StarView use Abstract Event, Logical Form, and General Action. The DD35 project [KuR96], as well as the EASY-C project [SaZ96] also use elements of the pattern language. Action Object is a variant of the Command object of ET++ [Gam92], which is also used in the SIGMAPLAN project [RCo95]. Taskmaster [MNR97] uses Dialog Automaton.2.1 Form-Based User Interface!BSTRACTThis pattern describes an architecture for systems using form-based user interfaces. It shows how to combine the other patterns of this paper.#ONTEXTYou are developing a business information system with a form-based user interface.0ROBLEMHow do you structure the user interface software?&ORCES• Technical reuse versus domain level reuse: We distinguish two different approaches to reuse for our purposes; the technical approach tries to identify technical components, such as con-tainers or state machines and makes them as generic as possible. This approach offers reusabil-ity across a large variety of domains. On the other hand it usually does not encourage a design that identifies recurring domain level components, such as customers or orders. If you design software for a specific domain area, you may earn more value from reusing domain level com-ponents. However, you may scale down most technical concepts to subsystems of a component.Therefore, these two approaches are not necessarily contradictory.• Supporting additional interfaces: The user interface is only one of several access points to a large system. Batch interfaces and neighborhood systems may also rely on services of your system. A user interface architecture should allow isolated changes of the user interface with-out affecting the other interfaces. Changes at the domain level should propagate consistently to all interfaces.2Most known uses of our pattern language are v ery similar. To save space we collect them here.#ONSEQUENCES• Technical reuse: The pattern language promotes a technical reuse strategy. It is sensible in a component based approach only if the components have user interface parts of considerable complexity. If the dialogs of the system span several components, this architecture makes it is hard to integrate their dialogs: the design does not follow the object structure of the domain kernel adequately, but corresponds to the use case structure of the domain, instead.• Other interfaces: Due to the layered architecture, the pattern language separates domain level issues from user interface issues. This enables you to provide additional interfaces to the same domain kernel without affecting the user interface code.• Communication cost and software distribution: The design enables you to optimize the traffic between the operating system and the user interface control as well as between the subsystems of the user interface. Therefore, you can place a client server cut anywhere between the sub-systems. Consequently you can tailor communication traffic to your needs. In particular, the design works well with mainframe systems and WWW-Servers.2ELATED 0ATTERNSAbstract Event discusses the event abstraction subsystem. Dialog Automaton, General Action and Dialog Category form the Dialog Control subsystem. Action Object deals with the domain kernel interface. Control Dispatcher and Terminal Session discuss control dispatching, Logical Form and Form Comparator address issues of I/O wrapping.2.2 Abstract Event!BSTRACTAbstract Event presents a way to process events regardless of their physical origin.#ONTEXTThe operating system signals user interactions by means of technical events, such as keystrokes or menu selections. In general, these technical events do not directly correspond to a single domain spe-cific task or to a user interface activity. Several technical events may cause the same domain task and a single technical event may result in several domain tasks.0ROBLEMHow do you facilitate a flexible mapping between technical events and the corresponding actions?&ORCES• Flexibility versus complexity: A mapping mechanism increases flexibility. This pays off during maintenance if you change the physical appearance of the interface without changing the logi-cal behavior. It may also avoid code duplication. On the other hand the mapping adds an addi-tional level of indirection. You have to define and maintain the mapping semantics and you need additional code to interpret the semantics.• Call technique of the user interface API: Most user interface APIs have their own mechanism to transfer technical events to the application program. For instance, Web-Servers or CICS transaction monitors, call a certain script or program according to the address or the transaction code the user entered. Windows environments usually supply the main application loop with messages that describe the technical events. Most user interface frameworks provide mecha-nisms to distribute these messages.3OLUTIONDefine a separate level of abstraction called Abstract Event. A TechnicalEventAnalyzer maps technical events to AbstractEvents (Figure 6). The reaction of the system depends on these AbstractEvents rather than on the technical events of the operating system. The AbstractEvents contain arbitrary parameters. An AbstractEventInterpreter interprets the events. An AbstractEventQueue buffers prioritized abstract events. Model the queue as a Singleton [GHJ+94].Figure 6: Structure of an Abstract Event%XAMPLE 2ESOLVEDYou can derive the abstract events for flight reservation from the state event model in Figure 3. The following table shows the technical events, the corresponding abstract events and the parameters that come (at least) with every abstract event. Note that the same technical event “Find... button pressed”leads to two different abstract events, depending on the contents of the reservation id field (second and third row).Technical Event Abstract Event Parameter “New” button pressed New“Find...” button pressed with reservation id field set Fill reservation idFind all data the user has entered “Find...” button pressed with reservation id fieldemptyAny of the “Flight...” buttons pressed Flight flight number in the current row “Abort” button pressed Abort“Cancel” button pressed Cancel Reservation number “Submit” button pressed Submit All data the user has entered#ONSEQUENCES• Flexibility: The extra level of abstraction allows arbitrary mappings between the physical ac-tion the user invokes and the domain level effect. You can handle function keys and other events easily by changing the TechnicalEventAnalyzer according to the current state of the interface. Making the TechnicalEventAnalyzer configurable facilitates user definable key assignments. The sophistication level of the TechnicalEventAnalyzer determines the level of flexibility you can achieve.• Complexity: The AbstractEvent and the AbstractEventQueue are simple classes you can code in a few lines or draw from a container library. The most complex part is the TechnicalEventAnalyzer. Its complexity determines the overall complexity of an AbstractEvent.• Compatibility to user interface API call technique: If the user interface API does not support the additional level of indirection this pattern may add significant complexity. Especially many 4GL tools may cause trouble. They couple user actions or transaction codes to program entry points, such as methods or program modules, respectively. Depending on the flexibility of the tool, implementing AbstractEvent may just be a matter of convention or it may result in con-siderable design and implementation effort.)MPLEMENTATION• Increased flexibility with other sources of abstract events:So far, we have considered the TechnicalEventAnalyzer as the only source of AbstractEvents. The concept is flexible enough to allow other sources, too. In particular, the AbstractEventInterpreter may gen-erate new AbstractEvents. This technique results in a cascade of AbstractEvents in re-action to a single technical event, providing a powerful approach to structuring the reaction of a system to user input.• Several abstract events from one technical event: In mainframe environments you often find forms containing a list of items. For every item you can specify an action you would like to perform. Changing the data of the item may result in an update operation; checking a delete row may result in a delete action. This technique gives the user the chance to issue several use cases with one submit key, thus reducing the number of transactions. It is straightforward to extend the TechnicalEventAnalyzer to generate more than one AbstractEvent in reac-tion to a single technical event.• Prioritizing Abstract Events: Consider two queued AbstractEvents: The first one results ina new form, which shows order items instead of customers, the second deletes the currentlydisplayed object. Clearly, the order of these two operations is crucial for the result: If you change the form first, the order item will be deleted, if you perform the delete operation first, the customer object is erased. In implementations that support this kind of interaction, you have to prioritize the AbstractEvents to ensure predictable results. You may put events into the same priority category that do not interfere with one another.6ARIANTSInstead of the sketched producer-consumer solution, you may also split the abstraction process into several levels. For example, in a window system a control may abstract technical events to low-level abstract events and propagate them to their parent window. The parent - perhaps a complete form or a part of it - turns this abstract event into another higher-level event and transfers it to the enclosing window and so on. This is a Chain of Responsibility [GHJ+94, p. 223]. In this scenario, the system does not interpret the abstract events in one big step, but every part of the user interface interprets an event on its own level of abstraction. This is a suitable approach if the user interface contains many different parts that work independently from one another.2ELATED 0ATTERNSDialog Automaton is an approach to design the AbstractEventInterpreter. Form Comparator shows how to analyze technical events on a web server or a mainframe.2.3 Dialog Automaton!BSTRACTDialog Automaton describes how to implement the dynamic aspects of dialogs3 and the coordination of a dialog’s forms using a finite state machine.#ONTEXTYou have specified the dialogs of your system using a state event model. Every state corresponds to a form while every event corresponds to an Abstract Event. The resulting state event model is of con-siderable complexity.0ROBLEMHow do you implement sequences of forms flexible and maintainable?&ORCES• Table-driven versus hard-coded behavior: You have the choice either to define the behavior ina table, interpreted by general classes, or to write specialized code that directly implements thebehavior. A table-driven solution offers easy maintenance but usually results in complex data structures that are hard to understand. Hard-coded behavior often is easier to understand but re-quires recompilation after every change.• Maintainability: The users often ask for changes that affect mainly the state event model of the interface. Consider additional shortcuts and navigation possibilities as an example. Note that this demand is specific to form-based user interfaces, because they are more restrictive with re-spect to the interaction sequence than carefully designed object-oriented interfaces.• Extensibility: Adding additional forms is another important aspect of maintainability. It is not as often as changes to the navigation. Often the extension requirements arise after the system worked for several years and nobody of the original design team is in duty anymore.3OLUTIONUse a finite state machine to control the sequence of forms and the actions to perform in reaction to a certain AbstractEvent. An AutomatonDescription table contains the state event model of the dialog; the DialogAutomaton interprets this table and starts the appropriate actions.3We use “dialog” denotes a sequence of forms the user may traverse to complete a certain task. Note that this is diffe r-ent from a “dialog box” in GUI environments. Their counterpart in this document is a “form”.Figure 7: The structure of the Dialog Automaton. The pattern links Abstract Events to Action Objects using a finite state machine.%XAMPLE 2ESOLVEDThere are six Abstract Events in the preceding flight reservation example: New, Submit, Cancel, Fill, Find, Flight and Abort. The AutomatonDescription contains the following table to model the state event diagram:State AbstractActionId Result NextStateEventIdReservationForm New ActNewReservation ReservationFormSubmit ActChangeReservation ReservationFormCancel ActCancelReservation OK endError ReservationFormFill ActFindReservation ReservationFormFind ActOpenForm FindReservationFormFlight ActFindFlight FindFlightFormAbort ActCloseForm end FindReservationForm OK ActPopForm ReservationFormAbort ActCloseForm ReservationForm FindFlightForm OK ActPopForm ReservationFormAbort ActCloseForm ReservationForm Note that the ActCloseForm action replaces the end state of the state event model. AutomatonDescription extracts the EventId from the Abstract Event it gets. It transfers the ActionId to a ConcreteAction to initiate the corresponding action. The AbstractEvent also contains the parameters of the action. The ReservationForm allows two possible states on a Cancel event, depending on the result of the ActCancelReservation action.#ONSEQUENCES• Table-driven solution: The pattern uses tables to represent the state event model. This enables you to implement the generic parts by code while a table contains the dialog specific parts. The solution decreases code size on the expense of introducing constant data. Changes to the state event model result in changes of the data and need no recompilation. However, you have to keep the state event table consistent, which is a notable issue with large automata.• Maintainability and Extensibility: Dialog Automaton supports changes of the dynamic behav-ior adequately. Integrating additional forms into a dialog results in changes of the table entries of all states from which the new form is accessible. There are no code changes necessary in ei-ther case.• Separation of concerns: The pattern takes a technical approach to separate concerns. The AutomatonDescription represents dynamic behavior, while other classes represent static aspects of the user interface. However, you may cluster static and dynamic aspects of a dialog in one component as long as all the forms of a dialog belong to the same component. If a dialog spans several components, the automatons of the components have to interact, which may be difficult to accomplish.6ARIANTSInstead of implementing the automaton with table, you can apply the State pattern [GHJ+94, p. 305]: For every form define a subclass of LogicalForm(Figure 5). These subclasses correspond to the ConcreteStates of the State pattern, while the LogicalForm takes the role of the State partici-pant. The DialogAutomaton class is the Context of the State.Note that this approach is not data-driven. Instead, the ConcreteForms “know” their specific transi-tions. This variant does not separate layout from dynamics. Therefore, it supports independent forms and thus increases reusability of individual forms. On the other hand, this approach does not support Dialog Categories and leads to impenetrable code if you have a complex state model. Use it with form-based user interfaces only if you cannot apply Dialog Categories and the state model is not too complex.2ELATED 0ATTERNSThe pattern works best if you combine it with Abstract Events and Action Object. You can simplify the state event table using General Action.2.4 Action Object!BSTRACTAction Object provides a standardized interface to all activities of a user interface. It addresses both accessing the domain kernel, and performing actions inside the user interface, such as opening and closing forms.#ONTEXTYou are using Abstract Event to decouple technical events from logical events and a DialogAutomaton to interpret the Abstract Events.0ROBLEMHow do you provide a uniform way to start actions?&ORCES• Decoupling versus number of classes: Different actions require different parameters. It is good practice to hide these differences from the interpreter of the Abstract Events, thus making the interpreter generic. On the other hand, the information hiding raises the need for additional classes.• Maintenance: User interfaces vary faster than the domain kernel, because most changes of the domain requirements result in a change of the user interface but not vice versa. Typical changes ask for additional information presented in a form or additional actions the user can start in a dialog step.• Uniform reaction: Actions may raise errors and other spontaneous events, which the user inter-face needs to process (see [Rnz96, chapter 2.5]). A user interface should provide a uniform re-action to errors without code duplication.3OLUTIONBuild up a hierarchy of Action Objects. Define ConcreteActions for every action an Abstract Event can cause (Figure 8). The ConcreteAction determines the appropriate parameters, method calls, and result processing. The common superclass Action defines the abstract protocol of all Ac-tion Objects.Figure 8The Structure of the Action Object pattern.%XAMPLE 2ESOLVEDThe reservation form of our example leads to the ConcreteActions described in the following ta-ble. The table also contains the parameters the actions need. Note that the actions either retrieve the parameters from the AbstractAction object or from global objects, such as the DialogAutomaton.Concrete Action Parameter DescriptionActOpenForm AbstractEvent Opens a new form according to theAbstractEventId. If theAbstractEvent contains any parameters theaction offers the data to the new form. ActCloseForm---Closes the current form discarding changesActNewReservation---Calls the domain kernel, which instantiates anew reservation object returning the reservationid. Writes the id into the current formActChangeReservation all the data the user has en-tered Forwards the data to the reservation object of the domain kernel for an update. In case of failure, returns an error codeActCancelReservation Reservation ID Calls the cancel method of the reservation ob-ject.........#ONSEQUENCES• Decoupling: The ConcreteActions decouple the action specific code from the control code of the user interface. They hide differences of the actions behind a uniform class interface.Thus it is easy to implement a generic subsystem to control the user interface. The Action Ob-ject hides the specific domain kernel interfaces from the rest of the user interface. This is espe-cially useful when the AbstractEventInterpreter follows a data driven approach, because you have only one single abstract method call for all actions. The AbstractEventInterpreter needs no knowledge about the semantics or even the parame-ters of the action.• Number of Classes:Using a separate class for every action may lead to more than hundred primitive subclasses of Action that have no further structure. In the variants section, we dis-cuss ways to deal with this drawback on the expense of decoupling.• Maintenance: Adding a new domain level action means to add another ConcreteAction but does not affect any other code. Reusing an existing action in another form means only to extend the AbstractEventInterpreter for that form. An additional field on a form involves a change of the respective AbstractEvent. If the domain level interface does not support the corresponding extra parameter, you also have to change the corresponding ConcreteAction.• Uniform reaction: There is one ConcreteAction for every domain task instead of one call for every possibility to invoke this task from the user interface. Hence, the pattern enforces a uni-form reaction to user inputs.• Action Object and Command: The pattern resembles the Command pattern [GHJ+94, p. 233].However, in most domain kernels there are separate Command classes that address undo opera-tions and coordination of control. In these cases the Command objects take the role of the Actors in Figure 8. You may consider the ConcreteActions the user interface part of a Command. This separation allows several interfaces to work with the same domain kernel. A batch interface or a legacy system interface may use the Command objects of the domain kernel without taking details of the user interface into account.。

相关文档
最新文档