安徽工业大学软件工程试卷
- 格式:doc
- 大小:54.50 KB
- 文档页数:6
《软件工程(双语)》复习范围注意事项:每个学生必须写上本人的学号、任课教师姓名、姓名、班级,另外所有的答案必须全部写在答卷纸上请不要写的试卷上,试题及答卷一同交上。
Part 1 Select the most appropriate choice to answer the following questions or to complete following statements. (1*15 =15 )1.About the MVC (Model-View-Controller) pattern, which one of following statements is not right?a)Separates presentation and interaction from the system data.b)The system is structured into three logical components that interact with each other. TheModel component manages the system data and associated operations on that data. .c)The Model component defines and manages how the data is presented 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%, Function 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 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 requirements are well-understood.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 attributesc)Exercising the object in all possible statesd)Testing all the possible objects5. When 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 developmentd)Reuse-oriented development.Part 2 Mark the right statement √, the wrong statement×(1*15=15)1.In the software architecture design,using large-grain components improvesperformance and maintainability. 错2. A software process model is an abstract representation of a process. It presents adescription of a process from all perspective.3.Re-engineering is enhancing the functionality and performance of the system. 错4.According Lehman and Belady's ‘laws’,over a program’s lifetime, its rate ofdevelopment is approximately constant and independent of the resources devotedto system development. 对5.The goal of program testing is to show the program is free of defects.Part 3 Fill the blankets: (1*15=15)1.Risk management is concerned with identifying risks which may affect the project, theremay be several kinds of risks, including technology risks , people risks ,organizational risks , tools risks . (requirements risks)mon activities in object-oriented design processesinclude , ,, , .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 structured set of activities required to develop a software system, whichare , ______________________,_____________________.Specification, development, valodation,evolution.5.Generic process modelsare , , Waterfall model, Evolutionary development, Incremental development, Reuse-based development6.The stages of development testingare , ,.Unit testing, Component testing, System testing.7. Exploratory development 、Throw-away prototyping are two kind models of evolutionary model.7.According to its function, Requirement can be classified as functionrequirement, , .Non-functional requirements, Domain requirements8.software pricing estimation techniques include ,________________, Parkinson's Law, ________ ______.a)Algorithmic cost modelling, Expert judgement, Estimation by analogy( Pricing to win )Part 4 Answer 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?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 1960’s, main characteristics are: low quality 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 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, operation and maintenanceAdvantages:Therefore this model is appropriate when the requirements are well-understood, 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 customer requirements.7.What are the two types of software prototyping and the advantages and disadvantagesof software prototyping?Answer:two types:Exploratory development and Throw-away prototyping.Advantages:1.Improved system usability2.Closer match to the system needed3.Improved design quality4.Improved maintainability5.Reduced overall development effortDisadvantages:ck 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 design?Answers:1.Direct manipulation 直接操作2.Menu selection 菜单选择3.Form fill-in 表格填写mand language 命令语言5.Natural language 自然语言9.Please answer the two methods of testing and serial stages of testing.answers:two types:white-box testing and black-box testing.serial stages of testing:unit testing, integration testing.10. Please answer the two methods of testing and serial stages of testing.Answers:two types:white-box testing and black-box 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 them to experiment and to raise problems that they discover with the sysytem developers.Part 5 Solve the following problems(30)1. Using the UML graphical notation for object classes, design the following objectclasses, identifying attributes and operations. Use your own experience to decide on the attributes 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 added to the objects. However, I am only reallylooking for simple objects which encapsulate theprincipal requirements ofthese artefacts. Possible designs are shown in theabove diagram.2. Design a set of test data toaccomplish thepath testing about the followingprogram(Figure 1). (5)Answer :A=100B=100 cover path ace;Figure 1b dA=100B=80 cover path acde;A=50B=100 cover path abceA=40B=60 cover path abcde3.Based on your experience with a bank ATM, draw an activity diagram that models thedata processing involved when a customer withdraws cash from the machine. Answer:Notice that I have not developed the activities representing other services or failed authentication.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 sequence diagram showing the interactions involved when a studentregisters for a course in a university. Courses may have limited enrolment, so theregistration process must include checks that places are available. Assume that thestudent accesses an electronic course catalog to find out about available courses. Answer:A relatively simple diagram is all that is needed here. It is best not to be too fussy about things like UML arrow styles as hardly anyone can remember the differences between them.8. A bank ATM takes the cash card and read the password, check the id and password, theATM let the user to enter the amount of cash to be drawn, The ATM check the balanceof the user account, if the balance is larger than or equal to the amount, then give thecash and deduct the amount from the account; if the balance is less than the amount,then return the previous screen. Draw a data-flow diagram about the system.9. A weather data collection system is required to generate weather maps on a regularbasis using data collected from remote, unattended weather stations and other datasources such as weather observers, balloons and satellites. Weather stations transmittheir data to the area computer 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 printed for distribution on a special-purpose 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. The 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 transmitted to the mapping computer when a request is received.●Design the architectural model for this weather mapping system (2)●Design the context model for the weather station (2)●Design the Use-case model for the weather station (2)●Design the architectural model for the weather station ((2)●Identify object classes and design the subsystem of the weather station(7)。