1、软件工程(双语)复习范围注意事项:每个学生必须写上本人的学号、任课教师姓名、姓名、班级,另外所有的答案必须全部写在答卷纸上请不要写的试卷上,试题及答卷一同交上.Part 1Select the most appropriate choice to answer the following questions or to complete following statements. (1*15 =15 )1About the MVC (Model-View-Controller) pattern, which one of following statements is notright?a)
2、Separates presentation and interaction from the system data. b) The system is structured into three logical components that interact with each other。 The Model component manages the system data and associated operations on that data. .c) The Model component defines and manages how the data is presen
3、ted to the user.。d) The Controller component manages user interaction (e。g。, key presses, mouse clicks, etc.) and passes these interactions to the View and the Model.。2. The statistical data show that the distribution of maintenance effort is close to? Ba) Fault repair 65, Software adaptation 18, Fu
4、nction addition or modification 17.b) Fault repair 17%, Software adaptation 18, Function addition or modification 65.c) Fault repair 17, Software adaptation 65%, Function addition or modification 18。d) Fault repair 40%, Software adaptation 40, Function addition or modification 20.3。 Which statement
5、is a wrong statement for Waterfall Model?Ba) Inflexible partitioning of the project into distinct stagesb) This model is only appropriate when the requirements are poorly understoodc) This model is difficult to respond to changing customer requirementsd) This model is appropriate when the requiremen
6、ts are wellunderstood. 4. Which one of following statements is not in the complete test coverage of a class?Ba) Testing all operations associated with an objectb) Setting and interrogating all object attributes c) Exercising the object in all possible statesd) Testing all the possible objects 5. Whe
7、n we have little experiences about a project, that is to say we know little requirements and are not family with how to develop it. Which model should be adopted?Aa) Formal systems development。b) Waterfall model。c) Exploratory development d) Reuse-oriented development。Part 2Mark the right statement
8、, the wrong statement(1*15=15)1. In the software architecture design,using largegrain components improves performance and maintainability。错2. A software process model is an abstract representation of a process. It presents a description of a process from all perspective。3. Reengineering is enhancing
9、 the functionality and performance of the system。错4. AccordingLehman and Beladyslaws, over a programs lifetime, its rate of development is approximately constant and independent of the resources devoted to system development。对5. The goal of program testing is to show the program is free of defects。P
10、art 3Fill the blankets: (115=15)1. Risk management is concerned with identifying risks which may affect the project, there may be several kinds of risks, including technology risks , people risks, organizational risks , tools risks。 (requirements risks)2. Common activities in objectoriented design p
11、rocesses include , , , ,.Define the context models of the system, Design the system architecture, identify the principal system objects, Develop design models, Specify boject interfaces3. General issues that affect most softwareare , , . Heterogeneity, Business and social, Security and trust。4. A st
12、ructured set of activities required to develop a software system, which are , _, _。Specification, development, valodation,evolution。5. Generic process models are , , Waterfall model, Evolutionary development, Incremental development, Reuse-based development6. The stages of development testing are ,
13、, 。 Unit testing, Component testing, System testing. 7。Exploratory development 、Throw-away prototypingare two kind models of evolutionary model。7. According to its function, Requirement can be classified as function requirement, , 。Non-functional requirements, Domain requirements8. software pricing
14、estimation techniques include , _, Parkinsons Law, _ _.a) Algorithmic cost modelling, Expert judgement, Estimation by analogy(Pricing to win)Part 4Answer the following questions in brief。 (5*5=25 )1. Which approaches to object class identification are introduced in this book?2. What is Path testing?
15、Answer: The bojective of path testing is to ensure that the set of test cases is such that each path through the program is executed at least once.3. What is architectural patterns? 4. Why software engineering is born?Answer:Because of software crisis in the 1960s, main characteristics are: low qual
16、ity of software, high costs of software, slow delivery of software。 Software engineering is first proposed at a NATO meeting in 1968。5. What is the difference between software engineering and computer science?Answer: Computer science is concerned with theory and fundamentals;Software engineering is
17、concerned with the practicalities of developing and delivering useful software。6. Please answer the stages of waterfall model, and its advantages and disadvantages。Answer: Stages :Requirements definition, system and software design, implementation and unit testing, integration and system testing, op
18、eration and maintenanceAdvantages:Therefore this model is appropriate when the requirements are wellunderstood, Process is visible and standard and all documennts are formalDisadvantages:Inflexible partitioning of the project into distinct stages,This makes it difficult to respond to changing custom
19、er requirements。7. What are the two types of software prototyping and the advantages and disadvantagesof software prototyping?Answer:two types:Exploratory development and Throwaway prototyping。Advantages:1。Improved system usability2。Closer match to the system needed3.Improved design quality4.Improve
20、d maintainability5。Reduced overall development effortDisadvantages:1。Lack of process visibility(过程不可见)2。Systems are often poorly structured(系统结构不好)3。Special skills (e.g。 in languages for rapid prototyping) may be required(需要一些技巧)8. What are the five types of interaction styles in user interface desi
21、gn?Answers:1。Direct manipulation 直接操作2。Menu selection 菜单选择3.Form fillin 表格填写4。Command language 命令语言5。Natural language 自然语言9. Please answer the two methods of testing and serial stages of testing。answers:two types:whitebox testing and black-box testing.serial stages of testing: unit testing, integrat
22、ion testing.10. Please answer the two methods of testing and serial stages of testing.Answers:two types:whitebox testing and blackbox testing。serial stages of testing: unit testing, integration testing. 11。 What is Beta testing?Answer: A release of the software is made available to users to allow th
23、em to experiment and to raise problems that they discover with the sysytem developers。Part 5Solve the following problems(30)1. Using the UML graphical notation for object classes, design the following object classes, identifying attributes and operations。 Use your own experience to decide on the att
24、ributes and operations that should be associated with these objects。 a telephone a printer for a personal computer a personal stereo system a bank account a library catalogueAnswer:There are many possible designs here and a great deal of complexity can be addedto the objects. However, I am only real
25、ly looking for simple objects whichencapsulate the principal requirements of these artefacts. Possible designs areshown in the above diagram.2. Design a set of test data to accomplish the path testing about the following program (Figure 1)。 (5)TTstartA10A=A+1A=A+BendB20aceFFFigure 1bdAnswer :A=100 B
26、=100 cover path ace; A=100 B=80 cover path acde; A=50 B=100 cover path abce A=40 B=60 cover path abcde3. Based on your experience with a bank ATM, draw an activity diagramthat models the data processing involved when a customer withdraws cash from the machine。Answer:Notice that I have not developed
27、the activities representing other services or failedauthentication。4. Design the web application architecture using the MVC pattern。 5. Based on following data-flow diagram, design its system structure。 6. Based on the above sequence diagram, describe the whole process in detail.7. Develop a sequenc
28、e diagram showing the interactions involved when a student registers for a course in a university。 Courses may have limited enrolment, so the registration process must include checks that places are available. Assume that the student accesses an electronic course catalog to find out about available
29、courses。Answer:A relatively simple diagram is all that is needed here。 It is best not to be too fussyabout things like UML arrow styles as hardly anyone canremember the differencesbetween them。8. A bank ATM takes the cash card and read the password, check the id and password, the ATM let the user to
30、 enter the amount of cash to be drawn, The ATM check the balance of the user account, if the balance is larger than or equal to the amount, then give the cash and deduct the amount from the account; if the balance is less than the amount, then return the previous screen。 Draw a dataflow diagram abou
31、t the system。 9. A weather data collection system is required to generate weather maps on a regular basis using data collected from remote, unattended weather stations and other data sources such as weather observers, balloons and satellites。 Weather stations transmit their data to the area computer
32、 in response to a request from that machine。 The area computer validates the collected data and integrates it with the data from different sources。 The integrated data is archived and, using data from this archive and a digitized map database a set of local weather maps is created。 Maps may be print
33、ed for distribution on a specialpurpose map printer or may be displayed in a number of different formats。 Weather station descriptionA weather station is a package of software controlled instruments which collects data, performs some data processing and transmits this data for further processing。 Th
34、e instruments include air and ground thermometers, an anemometer, a wind vane, a barometer and a rain gauge。 Data is collected every five minutes。 When a command is issued to transmit the weather data, the weather station processes and summarizes the collected data. The summarized data is transmitte
35、d to the mapping computer when a request is received。l Design the architectural modelfor this weather mapping system (2)l Design the context model for the weather station (2)l Design the Use-case model for the weather station (2)l Design the architectural modelfor the weather station (2)l Identify object classes and design the subsystem of the weather station(7)