当前位置:文档之家› 安卓 android 翻译 中英文 对照 毕设

安卓 android 翻译 中英文 对照 毕设

安卓 android 翻译  中英文 对照  毕设
安卓 android 翻译  中英文 对照  毕设

Hindawi Publishing Corporation

International Journal of Computer Games Technology

Volume2012,Article ID494232,10pages

doi:10.1155/2012/494232

Research Article

Comparison of Learning Software Architecture by Developing Social Applications versus Games on the Android Platform Bian Wu and Alf Inge Wang

Department of Computer Science,Norwegian University of Science and Technology,7491Trondheim,Norway

Correspondence should be addressed to Bian Wu,bian@idi.ntnu.no

Received15April2012;Accepted16July2012

Academic Editor:Daniel Thalmann

Copyright?2012B.Wu and A.I.Wang.This is an open access article distributed under the Creative Commons Attribution License,which permits unrestricted use,distribution,and reproduction in any medium,provided the original work is properly cited.

This paper describes an empirical study where the focus was on discovering di?erences and similarities in students working on development of social applications versus students working on development of games using the same Android development platform.In2010-2011,students attending the software architecture course at the Norwegian University of Science and Technology (NTNU)could choose between four types of projects.Independently of the chosen type of project,all students had to go through the same phases,produce the same documents based on the same templates,and follow exactly the same process.This study focuses on one of projects—Android project,to see how much the application domain a?ects the course project independently of the chosen technology.Our results revealed some positive e?ects for the students doing game development compared to social application development to learn software architecture,like motivated to work with games,a better focus on quality attributes such as modi?ability and testability during the development,production of software architectures of higher complexity,and more productive coding working for the project.However,we did not?nd signi?cant di?erences in awarded grade between students choosing the two di?erent domains.

1.Introduction

Computer games and video games have become very popular for children and youths and play a prominent role in the culture of young people[1].Games can now be played everywhere in technology-rich environments equipped with laptops,smart phones,game consoles(mobile and station-ary),set-top boxes,and other digital devices.From this phenomenon,it is believed that the intrinsic motivation that young people show towards games could be combined with educational content and objectives into what Prensky calls “digital game based learning”[2].

Besides an abundant appearance of games in young students life,game development technology has matured and become more advanced[3].Based on various existing game development environments,the whole duty of game devel-opment process can be divided into several expert domains and roles such as game programmer,3D model creator,game designer,musician,animator,and play writer,and so forth. The process of integrating game content with technology can be simpli?ed through the usage of game engines and available information on the web from various user and expert communities.For instance,Microsoft’s XNA game development kit provides the game loop function to draw and update the game contents,and it also provides conve-nient game development components to load the di?erent format of graphics,audio,and videos.This makes it possible for game fans such as students with or without programming background to modify existing games or develop new games. They can design and implement their own game concepts with these game creation tools,learn the developing skills and relevant knowledge,and accumulate related practical experience.

In this context,not only can games be used for learning but also the game development tools can be used for studying relevant topics within computer science(CS),software engi-neering(SE),and game programming through motivating assignments.Generally,games can be integrated in education in three ways[4,5].First,games can be used instead of tradi-tional exercises motivating students to put extra e?ort in

doing the exercises and giving the teacher and/or teaching assistants an opportunity to monitor how the students work with the exercises in real time,for example[6,7].Second, games can be played as a part of a lecture to improve the participation and motivation of students,for example[8,9]. Third,the students are asked to modify or develop a game as a part of a course using a Game Development Framework (GDF)to learn skills within CS and SE,for example[10]. We label the latter learning approach Game Development-Based Learning(GDBL).And the GDF denotes the toolkits that can be used to develop or modify games,for example, game engine,game editors,or game(simulation)platforms, or even any Integrated Development Environment(IDE), like Visual C++,Eclipse,J2ME,and Android SDK since all of them can be used to develop games.

This paper focuses on an evaluation where we wanted to discover similarities and di?erences between making students learn software architecture through game develop-ment versus social application development(e.g.,weather Forecast,chatting software)using the Android platform.The motivation for bringing game development into a CS or SE course is to exploit the students’fascination for games and game development to stimulate them to work more and better with course material through the project.

2.Related Works

This section describes the research context and previous results about using GDBL method in software engineering ?eld.

2.1.Research Contexts.The earliest similar application of learning by programming in a game-like environment was in early1970s.The Logo[11],the turtle graphics,is one of the oldest libraries that was used to introduce computing concepts to beginners.The concept was based on a“turtle”that could be moved across a2D screen with a pen,which could be positioned on or o?the screen,and,thus,may leave a trace of the turtle’s movements.Programming the turtle to draw di?erent patterns could be used to introduce general computing skill,such as procedural operations,iteration, and recursion.Further,in1987,Micco presented the usage of writing a tic-tac-toe game for learning[12].Afterwards, other studies have been conducted using specialist game programming toolkits such as Stage Cast Creator[13], Gamemaker[14],Alice[15],and Neverwinter Nights[16]. Besides,article[17]presents an investigation for using mobile game development as a motivational tool and a learning context in computing curriculum.From their sur-vey,it shows the relation between game programming and other computer science?elds—Game development can be used in study of Arti?cial intelligence(AI),database,com-puter networks,SE,human-computer interaction,computer graphics,algorithms,programming,computer architecture, and operating system.

These studies indicate that making games is motivating and develops storytelling as well as technical programming skills.The nature of the task of making games is slightly di?erent in purpose-built environments and the balance of the roles assumed by the learner shifts accordingly.More recent game programming toolkits tend to have a stronger visual aspect than Logo,either in the sense that they enable designers to easily create graphical games or because they have a visual programming language,or both.This shifts the emphasis away from low-level programming,enabling learn-ers to focus on the other roles as designers or writers.Thus, we investigate how GDFs are used in education through an experiment study and explore the evolution of the traditional lecture to be dynamic,collaborative,and attractive to the students under current technology-rich environment. However,this assertion needs to be further supported by relevant theory,application experiences,evaluation results, and empirical evidence.This is one motivation for sharing our experiences and empirical results in?eld of GDBL on using Android in a software architecture course.

2.2.Course and Project Setting.The software architecture course at Norwegian University of Science and Technology (NTNU)(course code TDT4240)is taught in a di?erent way than at most other universities,as the students also have to implement their designed architecture in a project.The motivation for doing so is to make the students understand the relationship between the architecture and the implemen-tation and to be able to perform a real evaluation of whether the architecture and the resulting implementation ful?ll the quality requirements speci?ed for the application. The architecture project in the course has similarities with projects in other software engineering courses,but every-thing in the project is carried out from a software architecture perspective.Throughout the project,the students have to use software architecture techniques,methods,and tools to succeed according to the speci?ed project.

The software architecture project consists of the follow-ing phases.

(i)COTS(Commercial O?-the-Shelf)exercise:learn the

technology to be used through developing a simple

game.

(ii)Design pattern:learn how to use and apply design pattern by making changes in an existing system.

(iii)Requirements and architecture:list functional and quality requirements and design the software archi-

tecture for a game.

(iv)Architecture evaluation:use the Architecture Trade-o?Analysis Method(ATAM)[18–20]evaluation

method to evaluate the software architecture of pro-

ject in regards to the quality requirements.

(v)Implementation:do a detailed design and implement the game based on the created architecture and on the

changes from the evaluation.

(vi)Project evaluation:evaluate the project as a whole using a Postmortem Analysis(PMA)method[21].

In the?rst two phases of the project,the students work on their own or in pairs.For phases3–6,the students work in self-selected teams of4-5students.Meantime,students have

one?xed primary assigned quality attribute to focus on during the project.For the secondary quality attribute,stu-dents can choose the quality attribute they like.The students spend most time in the implementation phase(six weeks), and they are also encouraged to start the implementation in earlier phases to test their architectural choices(incre-mental development).During the implementation phase,the students continually extend,re?ne,and evolve the software architecture through several iterations.

2.3.Previous Results.Previously,the goal of the project has been to develop a robot controller for the WSU Khepera robot simulator(Robot)in Java[22]with emphasis on an assigned quality attribute such as availability,performance, modi?ability,or testability.The students were asked to pro-gram the robot controller to move a robot around in a maze, collect four balls,and bring them to a light source in the maze.In2008,the students were allowed to choose between a robot controller project and a game development project. The process,the deliverables,and the evaluation of the project were the same for both types of projects—only the domain was di?erent.In the Game project,the students were asked to develop a game using the Microsoft XNA framework and C#.Finally,an evaluation about software architecture course is conducted[23,24].The evaluation is based on data from a project survey,the project deliverables from the students,and other accessible course information.The main conclusion from study was that game development projects can successfully be used to teach software architecture if we consider Robot as an evaluation benchmark.

Integrating our experiences on running of game project in software architecture course in2008,we conducted a new option to add one more COTS-Android in software architecture course project during2010-2011.The students could now in addition to the Java Robot project and the XNA Game project choose to develop a social application or a game in Android.Independently of the COTS and the domain chosen,the students had to focus on the same software architecture issues during the project and follow the same templates.The introduction of game and social Android projects allowed us to compare how the domain the students work on in the project a?ects the learning and the project experiences independently of the COTS.A detailed description was in following sections.

3.Method

This section describes the research method to get the relevant data for our experiment of using Android development in software architecture projects.

3.1.Aim.This paper focuses on using the same COTS but with di?erent development domains to investigate whether the di?erent domains produce di?erent output.In our pre-vious research,the e?ectiveness of GDBL conclusion was based on the di?erent COTS-Robot and XNA.This paper excludes game developed in XNA and robot controller developed in Java and only focuses on the Android plat-form and development of social application versus game application.Our evaluation covers?ve topics:distribution of chosen domain,students’perception of the project,project deliveries and code quality and complexity,students’e?ort, and awarded project grades.

3.2.GQM Approach.The comparison of the social and game project should help to discover the di?erences and reveal the e?ects of introducing a project on the Android platform.This evaluation is a quasiexperiment,not a controlled experiment. The research method used is based on the Goal,Question Metrics(GQM)approach[25]where we?rst de?ne a research goal(conceptual level),then de?ne a set of research questions(operational level),and?nally describe a set of metrics to answer the de?ned research questions(quanti-tative level).In our case,the metrics used to give answers to the research questions are a mixture of quantitative and qualitative data.Table1shows the GQM approach used to analyze game development project in software architecture course.

3.3.Procedures.When students start the project and follow the projects phases,they should report the time they spend on each phase of the project.The?rst two phases allow the students individually or in pairs to get familiar with the COTS and architectural and design patterns.The main work of the project is carried out in the phases3–5and includes requirement speci?cation,architectural design,architectural evaluation,implementation,and testing.The students pro-duce a delivery for each phase,which is evaluated by the course sta?,and feedback is given to improve before the?nal delivery.At the end of phase5,the students will produce a ?nal delivery,which is evaluated and graded by the course sta?.After completing phase5,the students have to answer a questionnaire that focuses on how the students perceive the project.In phases6,the students must carry out a postmortem analysis of their project as a whole to re?ect on their successes and their challenges.

4.Results

In2010and2011,the students could choose to do the project using three COTS:Robot(Java),XNA(C#),and Android (Java).The students’selection of COTS is shown in Figure1, where36students chose Khepera robot(19%),55students chose XNA(27%),and102students(54%)chose Android. Of the students that chose Android,58students(57%)chose social application versus44students(43%)game.If we look at the domains the students chose we see that51%chose game development,30%chose social applications,and19% chose robot controller.

The statistics of Figure1clearly reveal that the majority of students prefer game development compared to other domains.And Android is the most popular COTS by far, and we believe this is due to its openness for developers, development in Java,attractive devices,innovative features and development,and a new way of sharing developed appli-cations through Android marked.

In the?rst phase of the project,the students were asked to ?ll in a questionnaire on the reasons to choose the COTS and

Distribution of domains

Social app.

30%

Khepera

robot

19%

Game

51%

(a)

Distribution of COTS

Khepera

robot

19%

XNA

28%

Android

53%

(b)

Figure1:Distribution of selection of type of software architecture projects.

Table1:GQM table.

Analyze Software development project

For the purpose of Comparing social application versus game application domain on same COTS Goal With respect to Di?erence and e?ectiveness of two domains of the projects From the point of view of Researcher and educator

In context of Students in software architecture course

Questions Q1:Are there any dif-

ferences in how the stu-

dents perceive the project

for students choosing an

Android game project ver-

sus students choosing an

Android social project?

Q2:Are there any di?erences

in the software architectures

designed by students doing an

Android game project versus

students doing an Android

social project?

Q3:Are there any di?er-

ences in the implemen-

tation e?ort in the pro-

ject by students doing

an Android game project

versus students doing an

Android social project?

Q4:Are there any dif-

ferences in the perfor-

mance of students doing

an Android game project

versus students doing an

Android social project?

Metric M1:Number of students

choosing game project

versus social project.

M3:Project reports M4:Source code?les M6:Project score

M2:Questionnaire survey

with5-Level Likert Scale:

Strong disagree(1),Dis-

agree(2),Neutral(3),

Agree(4),Strong Agree

(5)

M5:Time spent

domain.The top reasons list was:(1)programming reason (familiar with Java or C#)(70.7%),(2)to learn about the COTS(Robot,XNA,Android)(59.5%),(3)games motiva-tion or amusement reasons(40.1%),(4)social application motivation(39.5%),(5)to learn about the domain(robot, game,social)(34.2%),(6)hardware motivation,running games on Android phone,Zuneplayer(33%),and(7)make games for Android Market or XNA club(24.5%).From above data,we found that the game domain has advantages in drawing students’attention and its attractive peripherals, like hardware or software markets,and so does android social domain.This was not the case for the Robot domain.

The following subsections focus on the analysis of whether the domain game versus social causes any signi?cant di?erent output in the following four aspects:(1)students perception of the project,(2)the design complexity of software architectures,(3)students’implementation e?ort in the project,and(4)students’score in projects.4.1.Di?erences in How Students Perceived the Project.A pro-ject survey was conducted one week after the students com-pleted their software architecture project.The goal of this survey was to reveal possible di?erences in the students’perception of the project between teams working with social projects versus teams working with game projects on the same COTS—the Android platform.Statements in the sur-vey made the students re?ect on how the project helped them to learn software architecture.

The hypothesis de?ned for this survey was the following.

H0:There is no di?erence in how students doing game project and social project on the same COTS-

Android perceive the software architecture project.

To test hypothesis we used Kruskal-Wallis Test[26] since it is a nonparametric method for testing equality of population medians among groups[24].This test is usually for(1)users cannot assume a normal population and(2)the

Table2:Wilcoxon Test of the statements PS1-PS11.

Statement COTS Average Median Standard deviation P

PS1:I found it di?cult to evaluate the other group’s architecture in the ATAM?Game 3.454 1.06

0.178 Social 3.7740.91

PS2:I found it di?cult to focus on our assigned quality attributes Game 3.053 1.09

0.024 Social 3.5740.85

PS3:I found it easy to integrate known architectural or design patterns Game 3.2130.93

0.332 Social 2.943 1.03

PS4:I spent more time on technical matters than on architectural matters Game 3.714 1.20

0.175 Social 4.064 1.03

PS5:I have learned a lot about software architecture during the project Game 3.5040.86

0.552 Social 3.3140.99

PS6:I would have chosen another project if I could go back in time Game 1.1310.34

0.289 Social 1.2010.41

sample sizes of the two groups are di?erent.Table2shows the results of Kruskal-Wallis Test on the statements PS1–PS6.38 of44game project students replied while35out of58social project students replied the questionnaire.Each item in the questionnaire is responded to by assigning a scale value from 1to5,where1indicates strong disagreement and5indicates strong agreement.

From the test results,the lowest signi?cant di?erence (P≤0.05)in questionnaire’s response is PS2(P=0.024). We conclude that the Android game and Android social have signi?cant di?erence on the students perceiving the di?culty to focus on the assigned quality attributes in the project. The median of Likert scale score is3for android game,but 4for android social.It indicates that android game project students were neutral on this PS5,but social project students have a tendency on the agreement of PS5.One possible explanation is that quality attribute,like termsmodi?ability or testability linked to a game concept,is easier to imagine and catch the students’attention to look into it.But social applications may have more?xed impression in students’life and cause less deep e?ect than games to motivate students to think.Others statement have no signi?cant di?erence from students perception.

Further,even there is no signi?cant di?erence for the two other low P values,the average value of PS1and PS4 still indicates that students from game project found it less di?cult to evaluate the other group’s architecture in the ATAM and spent less time on technical matters than the students from social projects.In addition,PS6:the students had to answer whether they would have chosen another project if they could go back in time.Figure2shows more detailed statistics for it.

Figure2shows that there is a higher percentage of the social project students that would have chosen another project(20%)compared to the game project students(13%).

As an overall,the survey reveals one signi?cant di?erence that students from game projects have a better focus on quality attributes.Statements got low P values(P1,P2, P4)that revealed the tendency that game teams receive more positive feedback than the social teams on how they perceived the project.

120

100

80

60

40

20

(

%

)

13%

87%

20%

80%

Other projects

Same project

Android game Android social

Figure2:Reponses to PS6:would you have chosen the same project if you could go back in time.

4.2.Di?erences in the Design of Software Architecture.It is di?cult to evaluate software architectures empirically,but we have chosen to do so by comparing the number of design patterns the students used,the number of main modules/classes identi?ed in the logical view of the software architecture,and the number of hierarchical levels in the architecture.We admit that that there are many sources of errors in this comparison,as the two domains are so di?erent.However,the emphasis in this course is on using software design patterns and presenting the di?erent views of the software architecture in su?cient detail with emphasis on the logical view.The empirical data should highlight the di?erences between the two types of projects if any.The empirical data has been collected by reading through and analyzing the?nal project reports from12game project teams and16social project teams.

4%

24%8%

Design pattern percentage for game project Fac?

(a)

Observer

42%

Factory

5%

Design pattern percentage for social project

(b)

Figure3:Distribution of usage of design patterns for game and social projects.

Table3:Number of design patterns used.

Average Standard deviation Max Min

Design Patterns Game 2.67 1.9271 Social 1.560.7331

https://www.doczj.com/doc/8011233521.html,e of Design Patterns.Table3presents the descriptive statistics of the number of architectural and design patterns used in the Social and the Game projects.The results in Table3indicate that there are some di?erences in how patterns are used in the two types of projects.

Table4presents Kruskal-Wallis Test results and shows that there are no statistically signi?cant di?erences in the number of design patterns produced by the two di?erent project types.

Table4indicates no statistically signi?cant di?erence for the number of design pattern used for the two types of projects.From reading through the projects reports,Figure3 presents the distribution of design patterns used by social teams and by game teams.The charts show that the Observer was the most popular for both types of project.Further,the Abstract Factory and State pattern was among the top three for Game teams,singleton and template pattern was among the top three for social teams.The Game projects had more diversity in applying architecture and design patterns than social project.For instance,game projects used eight design patterns compared to six design patterns in social projects as shown in Figure3.

Even there is no signi?cant di?erence,but the low P value is close to0.1.The median in Table4implies that game teams used more design patterns in their projects,it may cause that game projects used more types of patterns than social projects in an overall statistics shown in Figure3.

4.2.2.Software Architecture Complexity.Two metrics were chosen to indicate the complexity of the software architecture [24]:(1)the number of main modules or main classes described in the logical view of the software architecture and (2)the number of hierarchical levels in the model presented in the logical view of the software architecture.The reason the logical view was chosen for computing complexity is that the logical view is the main one that gives the best overview of the designed architecture.Table5lists the measurements of the number of main modules/classes and the number of hierarchical levels in the logical view of the software architecture for social and game projects.

Table5shows that the game project teams on average have almost four more main modules/classes(28%)than the social teams,and the standard deviation is lower.Further,the number of levels in the architecture in game projects can be decomposed into almost twice as many levels compared to social projects.

Table6gives the results from Kruskal-Wallis Test on a number of main modules/classes and numbers of levels in the architecture.Both of the tests give low P values(P<0.05). Speci?cally,the tests show that there is statistically signi?cant di?erence on the number of main classes and levels in architecture.From this result,it implies game project has more complexity in architecture levels than social projects; it may be due to the fact that they used more patterns to implement their game projects that cause this di?erence. 4.3.Di?erences in the E?ort Put into the Project.To evaluate the e?ort of each project that students put into it,two indicators are used as the measurement criteria:(1)time spent on the project and(2)structure and size of project?les and number of lines of code.

4.3.1.Time Spent.We have asked students to estimate on how many hours the project teams worked in the software

Table4:Hypothesis tests on number of design patterns used.

Hypothesis COTS N Median P

No di?erence in number of used design patterns Game122

0.111 Social161

Table5:Measurement of software architecture complexity.

Numbers of main modules/classes Number of levels in architecture

Game Social Game Social Average149.73 1.75 Standard deviation 4.9 6.60.60.77 Max212843

Min7321

Table6:Hypothesis tests on architectural complexity.

Hypothesis COTS N Median P

No di?erence in number of main modules/classes Game1214

0.021 Social167

No di?erence in number of levels in architecture Game123

0.000 Social162

Table7:Time spent on the project for each team.

Time per team(hours)Game Social Average334338 Standard deviation133.7114.7 Max520535 Min110183

architecture project during the phases3–5(core phases of the project).Table7shows the estimated number of hours given by each team.

Based on each team’s time e?ort,we ran the Kruskal-Wallis Test on the di?erence on hours spending in the project for each team.

From previous results,there is no statistically signi?cant di?erence on time spent on the project for game teams and social teams.On contrary,the time spending distribution in both projects is quite similar.

4.3.2.Project Analysis.Further,we chose to look at metrics from the implementation to give an estimate on how much was produced during the project.It can give a good indication of the complexity of the software architecture and the resulting implementation of the application[24]. Since both types of teams used Android and the domains are comparable in terms of complexity,we expected to?nd di?erence in productivity.During the development process, they were free to use online resource or other open source libraries for Android to save coding time for the software architecture design.

The following metrics were chosen to compute the e?ort of the student teams:(1)number of source Files(NoF);(2)number of comments in code(NoC);(3)lines of source code

not counting empty lines or comments(LoC).

Table9presents a comparison of the implementation

metrics for the game projects and social projects,only java

code?les to be counted in the table,and the external library

code?les and resource?les are excluded.

Table10shows the results from Kruskal-Wallis Test on

the di?erence in the number of?les and the number of lines

of code produced by the two di?erent types of project.

The results from the Kruskal-Wallis Test indicate that

there is no statistically signi?cant di?erence in LoC between

the two types of project.But the low P value is close to

0.1.The average value from Table9indicates game teams

put more e?ort on the implementation,like coding,making

comments,structure codes into more?les during the project.

From the Tables7,8,9,and10,we can?nd the game

project teams have produced on average almost one third

as much code(133%more)in similar time spending(334

versus338).It implies that game project teams are more

productive to put e?ort in coding,comments to construct a

complex game software architecture in similar time spending

than social project teams.

4.4.Di?erence in the Project Grades.The project score is

between0and30points and takes30%of the?nal grade.

The project grades intervals are classi?ed as:A:score≥90%;

B:score≥80%and score<90%;C:score≥60%and score <80%;D:score≥50%and score<60%;E:score≥40%and score<50%;F:score<40%(fail).

In order to investigate if there were any di?erences in how

the group scored(0–30points)on the project for students

that has chosen game and social projects on Android,the

Kruskal-Wallis Test was used to test this hypothesis,as we

cannot assume a normal population and the sample size of

Table8:Hypothesis on hours spending.

Hypothesis COTS N Median P

No di?erence in time spending for each team Game12362

0.889 Social16334

Table9:Implementation metrics from the architecture projects.

NoF NoC LoC

Game Social Game Social Game Social Average3724101653625851949 Standard deviation131380775511721368 Max54452571288641735082 Min15520637844390

Table10:Hypothesis tests on project implementation codes.

Hypothesis N Median P

No di?erence in number of lines of code Game122672

0.114 Social161523

the two groups is di?erent.Table11presents the results of

the Kruskal-Wallis Test on the di?erence in project grades for each game and social student.

There is no signi?cant di?erence in the project score using same COTS for development.We run the social project in2010and game project in2011separately.The project implementation requirements and templates are keeping the same from phase3to6in two years,and evaluation process and persons are the same;we can identify that students accomplished both projects under the same conditions.It re?ects the di?culty could be similar.So,we only make a conclusion on the project score has no signi?cant di?erence. In order to get an overview of the scores,Figure4gives the distribution of grades on the project for the two types of projects(game versus social).

5.Validity Threats

We now turn to what are considered to be the most impor-tant threats to the validity of this evaluation.

5.1.Internal Validity.The internal validity of an experiment concerns“the validity of inferences about whether observed covariation between A(the presumed treatment)and B(the presumed outcome)re?ects a causal relationship from A to B as those variables were manipulated or measured”[27].If changes in B have causes other than the manipulation of A, there is a threat to internal validity.

There are two main internal validity threats to this eval-uation.The?rst internal threat is that the sample of two groups used in the evaluation is not randomized.The students were allowed to choose either an Android game or an Android social project.We do not believe that one speci?c type of student chose one project over the other, thus harming the evaluation results.The second

internal

60

50

40

30

20

10

(

%

)

Game

Social

A B C D E F

Distribution of project score

Figure4:Grades distribution on project.

threat is if there were any di?erences,how the students had to perform the project independently of the domain chosen.Independently of doing a social or a game project, the students had to go through exactly the same phases in the project and deliver exactly the same documents based on the same document templates in both2010and2011.We have identi?ed one di?erence in how the two types of projects were carried out.The1-2phases of the project phase were di?erent for the game and social projects students.These two phases are not a part of inclusive data and material used to evaluate the project.We do not believe that these di?erences have had any major impact in the way the students did or performed in their projects since it is the preparation phases, that we noticed and excluded of them.

Table11:Kruskal-Wallis Test on di?erent in project score.

Hypothesis COTS N Median P

No di?erence in project score groups get from doing Game versus Social project Game4426

0.997 Social5826

5.2.Construct Validity.Construct validity concerns the degree to which inferences are warranted,from(1)the observed persons,settings,and cause-and e?ect-operations included in a study to(2)the constructs that these instances might represent.The question,therefore,is whether the sampling particulars of a study can be defended as measures of general constructs[27].

In the evaluation of using Android project in a software architecture course our research goal was to investigate the di?erence and similarity of game project and social project on Android platform.The GQM approach was chosen to detail this goal into four research questions with supporting metrics.In order to give answers to these four research questions the data sources and metrics available from our software architecture course were chosen.It cannot be claimed that the selected data sources and metrics in our evaluation give evidence for all the conclusions,but they are all strong indicators contributing to a picture that describes the di?erences between the two project types.Through the evaluation we have used various methods for comparing the results.The choice of methods is based on the best way of describing and visualizing the di?erences between the two groups using the available data.

5.3.External Validity.The issue of external validity concerns whether a causal relationship holds(1)for variations in persons,settings,treatments,and outcomes that were in the experiment and(2)for persons,settings,treatments,and outcomes that were not in the experiment[27].

The results reported in this paper are most relevant for other teachers thinking of introducing game projects as a part of their software architecture course.Further,the results are also relevant for teachers that want to introduce game projects in SE and CS courses,as many of these courses have similar characteristics.A limitation of this study is that the subjects in the evaluation are CS or SE students who have completed their?rst three years.It is not evident that the results are valid for students without any or less than three-year background in CS or SE.

6.Conclusions

Based on our previous experiment of using XNA and current experiment of using Android in software architecture,we found game motivation and surrounding interesting periph-erals are one of the most attractive factors.Besides the intro-duction of a new COTS-Android in a software architecture course,the goal of this paper is to identify the di?erence output of same COTS and get evaluation result to answer the four research questions.

The?rst research question asked is if there are any di?erences in how students choosing Android game versus Android social projects perceived the software architecture project(RQ1).The statistically signi?cant?nding is that social project students found it more di?cult to focus on the assigned quality attributes than game project(P=0.024). Other data from lower P value also re?ect that game teams have more positive attitudes towards project requirements than the social team.In addition,the results show that20% of the students doing an Android social project would have chosen the other projects if they had to do the project again, which is more than the android game project students.

The second research question asked is if there are any di?erences in how students choosing Android game versus social projects designed their software architectures(RQ2). Even the analysis of the project reports concludes that no signi?cant di?erence on the used design patterns,but the low P value close to0.1reveals that game teams applied more diverse patterns in their projects than social team. Further,the statistically signi?cant di?erence shows that the software architectures produced in game projects were on average more complex than the architectures produced in social projects(P<0.05).

The third research question asked is if there were any di?erences in the e?ort the students put into the project when they worked with an Android game or an Android social project(RQ3).The results show that in similar time spending,teams working with game projects produced on average almost133%as much code as teams working with Android social projects,and game project students had customs to make twice detailed comments on the codes and organized codes into more?les than social projects students.

The fourth and?nal research question asked is if there are any di?erences in the performance of students doing a Game project versus students doing a Social project(RQ4).The comparison of the two types of projects showed that there was no statistically signi?cant di?erence in the project.

According to the previous conclusion and compared with previous research on XNA and Robot project used in software architecture course[24],we found that there exist quite similar conclusions for both game domain(XNA and Android game)in respect to(1)stable popularity of game domain;(2)better perception of project from students aspect(3)more design patterns used and high complexity of software architecture(4)same output in project score as social project.

Referring to Android COTS speci?cally,the main di?er-ences from Android game projects could be used as an inter-esting and e?ective tool in software architecture teaching aspect to motivate students on design of complex architec-ture with applying more patterns and more productive cod-ing work than Android social projects.Further,compared to XNA and Robot simulator,Android is an attractive platform to the students from the students’survey,that encourages us

to conduct more practices on improvement of using Android as a development tool in software engineering practices and inspires us the possibility to bring more choices,like iPhone SDK into COTS domains.

References

[1]S.M.Dorman,“Video and computer games:e?ect on children

and implications for health education,”Journal of School Health,vol.67,no.4,pp.133–138,1997.

[2]M.Prensky,“Digital game-based learning,”Computers in

Entertainment,vol.1,pp.21–24,2003.

[3]J.Blow,“Game development:harder than you think,”Queue,

vol.1,pp.28–37,2004.

[4]K.Sung,C.Hillyard,R.L.Angotti,M.W.Panitz,D.S.

Goldstein,and J.Nordlinger,“Game-Themed Programming Assignment Modules:a pathway for gradual integration of gaming context into existing introductory Programming Courses,”IEEE Transactions on Education,vol.54,no.3,pp.

416–427,2010.

[5]A.I.Wang and B.Wu,“An application of a game development

framework in higher education,”International Journal of Com-puter Games Technology,vol.2009,no.1,Article ID693267,12 pages,2009.

[6]B.A.Foss and T.I.Eikaas,“Game play in engineering educ-

ation—concept and experimental results,”International Jour-nal of Engineering Education,vol.22,no.5,pp.1043–1052, 2006.

[7]G.Sindre,L.Natvig,and M.Jahre,“Experimental validation of

the learning e?ect for a pedagogical game on computer fund-amentals,”IEEE Transactions on Education,vol.52,no.1,pp.

10–18,2009.

[8]A.I.Wang,“An evaluation of a mobile game concept for lect-

ures,”in Proceedings of the IEEE21st Conference on Software Engineering Education and Training,2008.

[9]A.I.Wang,T.?fsdahl,and O.K.M?rch-Storstein,“LECTURE

QUIZ—a mobile game concept for lectures,”in Proceedings of the11th IASTED International Conference on Software Engi-neering and Application(SEA’07),2007.

[10]M.S.El-Nasr and B.K.Smith,“Learning through game mod-

ding,”Computers in Entertainment,vol.4,no.1,pp.45–64, 2006.

[11]G.Lukas,“Uses of the LOGO programming language in

undergraduate instruction,”in Proceedings of the ACM Annual Conference,vol.2,Boston,Mass,USA,1972.

[12]M.Micco,“An undergraduate curriculum in expert systems

design or knowledge engineering,”in Proceedings of the15th Annual Conference on Computer Science,St.Louis,Mo,USA, 1987.

[13]M.Habgood,S.Ainsworth,and S.Benford,“The educational

and motivational content of digital games made by children,”

in Proceedings of the Virtual Learning(CAL’05),Bristol,UK, 2005.

[14]Yulia and R.Adipranata,“Teaching object oriented program-

ming course using cooperative learning method based on game design and visual object oriented environment,”in Pro-ceedings of the2nd International Conference on Education Tech-nology and Computer(ICETC’10),pp.V2355–V2359,June 2010.

[15]L.Werner,J.Denner,M.Bliesner,and P.Rex,“Can middle-

schoolers use Storytelling Alice to make games?Results of a pilot study,”in Proceedings of the4th International Conference

on the Foundations of Digital Games(ICFDG’09),pp.207–214, Orlando,Fla,USA,April2009.

[16]J.Robertson and C.Howells,“Computer game design:oppor-

tunities for successful learning,”Computers and Education,vol.

50,no.2,pp.559–578,2008.

[17]S.Kurkovsky,“Can mobile game development foster student

interest in computer science?”in Proceedings of the1st Inter-national IEEE Consumer Electronic Society’s Games Innovation Conference(ICE-GiC’09),pp.92–100,August2009.

[18]B.Ahmed and M.Steve,“Using ATAM to evaluate a game-

based architecture,”in Proceedings of the20th European Con-ference on Object-Oriented Programming ECOOP,Workshop on Architecture-Centric Evolution(ACE’06),Nantes,France, 2006.

[19]L.Bass,P.Clements,R.Kazman et al.,Software Architecture in

Practice,Addison-Wesley Professional,2nd edition,2003. [20]R.Kazman,M.Klein,M.Barbacci,T.Longsta?,H.Lipson,J.

Carriere et al.,“The architecture tradeo?analysis method,”in Proceedings of the4th IEEE International Conference on Engi-neering of Complex Computer Systems(ICECCS’98),pp.68–78,1998.

[21]A.I.Wang and T.St?a lhane,“Using post mortem analysis to

evaluate software architecture student projects,”in Proceedings of the18th Conference on Software Engineering Education and Training(CSEE&T’05),pp.43–50,April2005.

[22]WSU,Download WSU KSuite1.1.2.,2009.

[23]B.Wu,A.I.Wang,J.E.Str?m,and T.B.Kvamme,“An evalu-

ation of using a Game Development Framework in higher education,”in Proceedings of the22nd Conference on Software Engineering Education and Training(CSEET’09),pp.41–44, February2009.

[24]A.I.Wang,“Extensive evaluation of using a game project in a

software architecture course,”ACM Transactions on Comput-ing Education,vol.11,no.1,article5,2011.

[25]V.Basili,“Software modeling and measurement:the Goal/

Question/Metric paradigm,”1992.

[26]W.H.Kruskal and W.A.Wallis,“Use of ranks in one-

criterion variance analysis,”Journal of the American Statistical Association,vol.47,pp.583–621,1952.

[27]W.R.Shadish,T.D.Cook,and D.T.Campbell,Experimental

and Quasi-Experimental Designs for Generalized Causal Infer-ence,Houghton,Mi?in and Company,Boston,Mass,USA, 2002.

毕设外文资料翻译.

理工学院 毕业设计外文资料翻译 专业:计算机科学与技术 姓名:马艳丽 学号: 12L0752218 外文出处:The Design and Implementation of 3D Electronic Map of Campus Based on WEBGIS 附件: 1.外文资料翻译译文;2.外文原文。

附件1:外文资料翻译译文 基于WebGIS的校园三维电子地图的设计与实现 一.导言 如今,数字化和信息化是当今时代的主题。随着信息革命和计算机科学的发展,计算机技术已经渗透到科学的各个领域,并引起了许多革命性的变化,在这些科目,古代制图学也不例外。随着技术和文化的不断进步,地图变化的形式和内容也随之更新。在计算机图形学中,地理信息系统(GIS)不断应用到Web,制作和演示的传统方式经历了巨大的变化,由于先进的信息技术的发展,地图的应用已经大大延长。在这些情况下,绘图将面临广阔的发展前景。电子地图是随之应运而生的产品之一。随着计算机技术,计算机图形学理论,遥感技术,航空摄影测量技术和其他相关技术的飞速发展。用户需要的三维可视化,动态的交互性和展示自己的各种地理相关的数据处理和分析,如此多的关注应支付的研究三维地图。东北石油大学及其周边地区的基础上本文设计并建立三维电子地图。 二.系统设计 基于WebGIS的校园三维电子地图系统的具有普通地图的一般特性。通过按键盘上的箭头键(上,下,左,右),可以使地图向相应的方向移动。通过拖动鼠标,可以查看感兴趣的任何一个地方。使用鼠标滚轮,可以控制地图的大小,根据用户的需求来查看不同缩放级别的地图。在地图的左下角会显示当前鼠标的坐标。在一个div层,我们描绘了一个新建筑物的热点,这层可以根据不同的地图图层的显示,它也可以自动调整。通过点击热点,它可以显示热点的具体信息。也可以输入到查询的信息,根据自己的需要,并得到一些相关的信息。此外,通过点击鼠标,人们可以选择检查的三维地图和卫星地图。 主要功能包括: ?用户信息管理:检查用户名和密码,根据权限设置级别的认证,允许不同权限的用户通过互联网登录系统。 ?位置信息查询:系统可以为用户提供模糊查询和快速定位。

翻译译文

应用程序基础Android Developers Android应用程序使用Java编程语言开发。aapt工具把编译后的Java代码连同应用程序所需的其他数据和资源文件一起打包到一个Android包文件中,这个文件使用.apk作为扩展名。此文件是分发并安装应用程序到移动设备的载体;是用户下载到他们的设备的文件。单一.apk文件中的所有代码被认为是一个应用程序。 从多个角度来看,每个Android应用程序都存在于它自己的世界之中: 1 默认情况下,每个应用程序均运行于它自己的Linux进程中。当应用程序中的任何代码需要被执行时,Android启动此进程,而当不再需要此进程并且其它应用程序又请求系统资源时,则关闭这个进程。 每个进程都有其独有的虚拟机(VM),所以应用程序代码与所有其它应用程序代码是隔离运行的。 3 默认情况下,每个应用程序均被赋予一个唯一的Linux用户ID,并加以权限设置,使得应用程序的文件仅对此用户及此应用程序可见——尽管也有其它的方法使得这些文件同样能为其他应用程序所访问。 1 应用程序组件 Android的一个核心特性就是一个应用程序可以使用其它应用程序的元素(如果那个应用程序允许的话)。例如,如果你的应用程序需要显示一个图片卷动列表,而另一个应用程序已经开发了一个合用的而又允许别的应用程序使用的话,你可以直接调用那个卷动列表来完成工作,而不用自己再开发一个。你的应用程序并没有吸纳或链接其它应用程序的代码。它只是在有需求的时候启动了其它应用程序的那个功能部分。 为达到这个目的,系统必须能够在一个应用程序的任何一部分被需要时启动一个此应用程序的进程,并将那个部分的Java对象实例化。因此,不像其它大多数系统上的应用程序,Android应用程序并没有为应用程序提供一个单独的入口点(比如说,没有main()函数),而是为系统提供了可以实例化和运行所需的必备组件。一共有四种组件类型: 1 Activity activity是为用户操作而展示的可视化用户界面。例如,一个activity可以展示一个菜单项列表供用户选择,戒者显示一些包含说明文字的照片。一个短消息应用程序可以包括一个用于显示要发送消息到的联系人列表的activity,一个给选定的联系人写短信的activity以及翻阅以前的短信或改变设置的其他activity。

外文翻译-基于Android智能家居系统

通信工程学院 毕业设计外文翻译 毕业设计题目基于ANDRIO的智能家居 系统的设计与实现 外文题目UBIQUITOUS SMART HOME SYSTEM USING ANDROID APPLICATION 专业:通信工程 学号: 学生姓名: 指导教师姓名: 指导教师职称:副教授 日期:2015 年 1 月10 日

International Journal of Computer Networks & Communications (IJCNC) V ol.6, No.1, January 2014 基于Android应用的无处不在的智能家居系统 Shiu Kumar Department of Information Electronics Engineering, Mokpo National University, 534-729, Mokpo, South Korea 摘要 本文提出了一种灵活独立的,低成本的智能家居系统,它是基于Android应用与微web服务器通信,不仅仅提供交换功能。Arduino以太网的使用是为了避免使用个人电脑从而保证整个系统成本最低,语音激活时用来实现切换功能的。光开关,电源插头,温度传感器,湿度传感器,电流传感器,入侵检测传感器,烟雾/气体传感器和警报器等这些设备集成在系统中,表明了所提出的智能家居系统的有效性和可行性。经过检测,智能家居应用程序可以成功地进行智能家居操作,例如开关功能,自动环境监测,和入侵监测,在监测到有不法入侵后,系统会自动发送一个邮件,并响警笛。 关键字: Android智能手机,智能家居,物联网(loTs),远程控制 1.引言 随着移动设备受欢迎程度的不断增长和人们日常生活中对无处不在的先进的移动应用的功能需求不断增加,利用Web服务是提供远程访问服务的最开放和可互操作的方式,并且使应用程序能够彼此通信。一个有吸引力的市场产品自动化和网络化是忙碌的家庭和有生理缺陷的个人的代表。 loTs可以被描述为连接智能手机,网络电视,传感器等到互联网,实现人们之间沟通的新形势。过去几年中loTs的发展,创造了一个新层面的世界。这使得人们可以在任何时间,任何地点,联通任何期望的东西。物联网技术可用于为智能家居创建新的概念和广阔的空间,以提供智能,舒适的发展空间和完善生活质量。 智能家居是一个非常有前途的领域,其中有各种好处,如增加提供舒适性,更高安全性,更合理地使用能源和其他资源。这项研究的应用领域非常重要,未来它为帮助和支持有特殊需求老的人和残疾人士提供了强有力的手段。设计一个智能家居系统时需要考虑许多因素,该系统应该是经济实惠的,是可伸缩的,使得新的设备可以容易地集成到系统中,此外,它应该是用户友好的。 随着智能手机用户的急剧增加,智能手机已经逐渐变成了具备所有功能的便携式设备,为人们提供了日常使用。本文介绍了一种低成本的控制和监视家居环境控制的无线智能家居系统。利用Android设备,可以通过一个嵌入式微Web服务器与实际的IP连接,访问和控制电器和远程的其它设备,这可以利用任何支持Android的设备。Arduino Ethernet 用于微Web服务器从

Android系统架构详解

Android系统架构详解 Android系统架构由5部分组成, 分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。 1、Linux Kernel Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack. Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。如果你只是做应用开发,就不需要深入了解Linux Kernel层。 2、Android Runtime Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language. Android包括一个核心库的集合,她们提供了Java编程语言的核心库中的绝大多数功能。 Every Android application runs in its own process, with its own instance of the Dalvik virtual

(精品文献)Android外文翻译

本科毕业设计(论文)外文参考文献译文及原文 学院信息工程学院 专业测控技术与仪器 (光机电一体化方向) 年级班别 2011级(1)班 学号 学生姓名 指导教师

目录 1应用程序基础 (1) 1.1应用程序组件 (1) 1.2激活组件:intent (3) 1.3 关闭组件 (4) 1.4manifest文件 (5) 1.5Intent过滤器 (6) 1.6基于XML的布局 (7) 1Application Fundamentals (8) 1.1 Application Components (8) 1.2Activating components:intent (11) 1.3 Shutting down components (12) 1.4 The manifest file (13) 1.5Intent filters (14) 1.6XML-Based Layout (15)

1 应用程序基础 Android应用程序使用Java编程语言开发。aapt工具把编译后的Java代码连同应用程序所需的其他数据和资源文件一起打包到一个Android包文件中,这个文件使用.apk作为扩展名。此文件是分发并安装应用程序到移动设备的载体;是用户下载到他们的设备的文件。单一.apk文件中的所有代码被认为是一个应用程序。 从多个角度来看,每个Android应用程序都存在于它自己的世界之中: 1 默认情况下,每个应用程序均运行于它自己的Linux进程中。当应用程序中的任何代码需要被执行时,Android启动此进程,而当不再需要此进程并且其它应用程序又请求系统资源时,则就关闭了这个进程。 2 每个进程都有其独有的虚拟机(VM),所以应用程序代码与所有其它应用程序代码是隔离运行的。 3 默认情况下,每个应用程序均被赋予一个唯一的Linux用户ID,并加以权限设置,使得应用程序的文件仅对此用户及此应用程序可见——尽管也有其它的方法使得这些文件同样能为其他应用程序所访问。 1.1 应用程序组件 Android的一个核心的特性就是一个应用程序可以使用其它应用程序的元素(如果那个应用程序允许的话)。例如,如果你的应用程序需要显示一个图片卷动列表,而另一个应用程序已经开发了一个合用的而又允许别的应用程序使用的话,你可以直接调用那个卷动列表来完成工作,而不用自己再开发一个。你的应用程序并没有吸纳或链接其它应用程序的代码。它只是在有需求的时候启动了其它应用程序的那个功能部分。 为达到这个目的,系统必须能够在一个应用程序的任何一部分被需要时启动一个此应用程序的进程,并将那个部分的Java对象实例化。因此,不像其它大多数系统上的应用程序,Android应用程序并没有为应用程序提供一个单独的入口点(比如说,没有main()函数),而是为系统提供了可以实例化和运行所需的必备组件。一共有四种组件类型: (1)Activity

毕业设计外文翻译

毕业设计(论文) 外文翻译 题目西安市水源工程中的 水电站设计 专业水利水电工程 班级 学生 指导教师 2016年

研究钢弧形闸门的动态稳定性 牛志国 河海大学水利水电工程学院,中国南京,邮编210098 nzg_197901@https://www.doczj.com/doc/8011233521.html,,niuzhiguo@https://www.doczj.com/doc/8011233521.html, 李同春 河海大学水利水电工程学院,中国南京,邮编210098 ltchhu@https://www.doczj.com/doc/8011233521.html, 摘要 由于钢弧形闸门的结构特征和弹力,调查对参数共振的弧形闸门的臂一直是研究领域的热点话题弧形弧形闸门的动力稳定性。在这个论文中,简化空间框架作为分析模型,根据弹性体薄壁结构的扰动方程和梁单元模型和薄壁结构的梁单元模型,动态不稳定区域的弧形闸门可以通过有限元的方法,应用有限元的方法计算动态不稳定性的主要区域的弧形弧形闸门工作。此外,结合物理和数值模型,对识别新方法的参数共振钢弧形闸门提出了调查,本文不仅是重要的改进弧形闸门的参数振动的计算方法,但也为进一步研究弧形弧形闸门结构的动态稳定性打下了坚实的基础。 简介 低举升力,没有门槽,好流型,和操作方便等优点,使钢弧形闸门已经广泛应用于水工建筑物。弧形闸门的结构特点是液压完全作用于弧形闸门,通过门叶和主大梁,所以弧形闸门臂是主要的组件确保弧形闸门安全操作。如果周期性轴向载荷作用于手臂,手臂的不稳定是在一定条件下可能发生。调查指出:在弧形闸门的20次事故中,除了极特殊的破坏情况下,弧形闸门的破坏的原因是弧形闸门臂的不稳定;此外,明显的动态作用下发生破坏。例如:张山闸,位于中国的江苏省,包括36个弧形闸门。当一个弧形闸门打开放水时,门被破坏了,而其他弧形闸门则关闭,受到静态静水压力仍然是一样的,很明显,一个动态的加载是造成的弧形闸门破坏一个主要因素。因此弧形闸门臂的动态不稳定是造成弧形闸门(特别是低水头的弧形闸门)破坏的主要原是毫无疑问。

APP开发合同范本(标准版).docx

编号:_________________ APP开发合同范本 甲方:________________________________________________ 乙方:________________________________________________ 签订日期:_________年______月______日

甲方:________________________________(以下简称甲方) 地址:_______________________________________________ 法定代表人:_____________联系电话:_______________ 乙方:(以下简称乙方) 地址:_______________________________________________ 法定代表人:联系电话: 甲、乙双方经友好协议,就甲方委托乙方开发《____________________________________》(以下简称"本软件")的事宜达成一致并同意订本合同。 一、项目内容 1. 甲方委托乙方开发的软件《_XX系统APP,安卓系统APP,网络平台__》(以下简称"本三个软件") 在安卓,XX,PC环境下运行的软件,本三个软件需求(以下简称"需求")双方协商确定。

2.本合同APP和网络平台应用开发的栏目架构及相关功能开发细节由《APP和网络平台开发需求表》载明。 二、合同价款和付款方式 1.本合同总价款包括乙方相关的税费及软件开发期间办理相关手续的所有费用。该价款为固定包干价,除上述款项外,甲方无需支付任何其它款项。 2.付款方式: 前期不要源码的甲方总支付乙方费用是27500元,预付定金为10000元,软件和平台做好交付可以使用付清前期不要源码的费用的余额17500(留3000元质保金),即14500元 后期甲方要回乙方源码,乙方要另加收甲方27500元费用,并付清3000元的质保金 三、开发进度 自合同签订日起,甲方把钥匙交给乙方匹配乙方将在_____30_______个工作日内完成客户端开发,此时间并包括审核和测试时间。乙方的工作时间从本合同签订之日的次日起开始计算。

Android手机外文翻译---应用程序基础Android Developers

英文原文及译文 Application Fundamentals Android applications are written in the Java programming language. The compiled Java code —along with any data and resource files required by the application —is bundled by the aapt tool into an Android package, an archive file marked by an .apk suffix. This file is the vehicle for distributing the application and installing it on mobile devices; it's the file users download to their devices. All the code in a single .apk file is considered to be one application. In many ways, each Android application lives in its own world: 1. By default, every application runs in its own Linux process. Android starts the process when any of the application's code needs to be executed, and shuts down the process when it's no longer needed and system resources are required by other applications. 2. Each process has its own virtual machine (VM), so application code runs in isolation from the code of all other applications. 3. By default, each application is assigned a unique Linux user ID. Permissions are set so that the application's files are visible only to that user and only to the application itself — although there are ways to export them to other applications as well. It's possible to arrange for two applications to share the same user ID, in which case they will be able to see each other's files. To conserve system resources, applications with the same ID can also arrange to run in the same Linux process, sharing the same VM. Application Components A central feature of Android is that one application can make use of elements of other applications (provided those applications permit it). For example, if your application needs to display a scrolling list of images and another application has developed a suitable scroller and made it available to others, you can call upon that scroller to do the work, rather than develop your own. Your application doesn't incorporate the code of the other application or link to it. Rather, it simply starts up that piece of the other application when the need arises. For this to work, the system must be able to start an application process when any part of it is needed, and instantiate the Java objects for that part. Therefore, unlike applications on most other systems, Android applications don't have a single entry point for everything in the application (no main() function, for example). Rather, they have essential components that the system can instantiate and run as needed. There are four types of components: Activities

安卓系统简介及如何分区的

android操作系统的分区 对电脑系统了解的朋友都知道,简单来说,电脑分硬件和软件两大块,软件装在硬盘上,比如操作系统windows,使用者通过windows来控制机器硬件,达到使用电脑的目的。 手机也分为硬件和软件两块,软件则是装在闪存(即flash memory,一种存储器)上的,闪存有大小的区别,就像硬盘有大小一样,看手机硬件配置的时候,通常会看到如下介绍:ROM 512M,RAM 512M,ROM就是指的闪存了,相当于电脑上的硬盘,用来存放操作系统和用户数据等信息。相应的,RAM就是指的内存了。 手机出厂时都是装好系统的,这点类似于电脑世界里面的品牌电脑,通过分析手机闪存上的内容可以知道,android操作系统主要有以下几个重要的分区(包括但不限于): hboot分区----------负责启动。 radio分区----------负责驱动。 recovery分区-------负责恢复。 boot分区-----------系统内核。 system分区---------系统文件。 cache分区----------系统缓存。 userdata分区-------用户数据。 1、hboot(SPL):这里指的是手机上的启动模块,通俗的说,就是负责手机启动引导的一段程序,类似于电脑主板上的BIOS,都是负责底层操作的。和在电脑上刷新BIOS一样,刷错了,电脑就会开不了机,对手机来说也一样,这部分的内容刷错了,手机就会变砖!

2、radio:这里指的是手机上的通讯模块,又叫做基带。负责手机的无线信号,蓝牙,WIFI等设备的管理,也就是说,相当于电脑系统里面的硬件驱动部分。这样说或许也不是特别的准确,大家明白大概的意思就可以了。通常我们所说的刷radio,刷基带,就是指的刷写这一部分,以便解决通话质量、网络连接质量、蓝牙连接等等问题。 3、recovery:字面意思是恢复,手机上的一个功能分区,有点类似于笔记本电脑上的恢复分区。一般大厂出的笔记本,都会自带一个特殊分区,里面保存着系统的镜像文件,当系统出问题的时候,我们可以通过它来一键恢复系统。这里的recovery功能有些类似。其实,他更像是电脑上的小型winPE系统,可以允许我们通过启动到winPE系统上,去做一些备份、恢复的工作。当然,系统自带的recovery基本没用,所以我们通常会刷入一个第三方的recovery,以便实现更多的功能,例如:备份系统,恢复系统,刷新系统等。但官方自带的recovery 也不是一无是处,在使用OTA方式升级系统时候,会检查此分区内容,如果不是原厂自带的,OTA升级就会失败。 4、fastboot:字面意思是快速启动,在这里,其实是一个特殊的工程模式,通过fastboot界面,连接电脑后,我们可以在电脑端通过特殊的指令来操作手机,例如更新radio,就可以通过fastboot来完成。fastboot的级别又要比recovery 来的要高一些,可以完成更底层的一些操作。后面我们会结合实际,来讲解一些fastboot的用法,更详细的资料,大家可以通过网络来学习,这里不再赘述。 5、ADB:android debug bridge,字面意思就是安卓调试桥接,简单点说,它是android系统提供的一套工具,通过它,我们可以在电脑上建立一个连接到手机的通道,然后可以在电脑上向手机发送一些指令,完成一些我们需要做的工作。ADB的用法我们后面也会作相应的介绍。 6、ROM:read only memory,只读存储器。上面我们讲过的,android系统都是安装在闪存里面的,这个闪存,就是一种只读存储器,断电情况下里面的内容不会消失。刷机,就是刷的ROM。有点类似电脑里的硬盘,ROM里面有很多分区,hboot、boot、system等等,前文介绍过的,还记得吗?说到这里,想到一个好笑的事情,某人问老婆,知道什么是ROM吗?答曰:room?不就是房子吗?晕倒,我说的是R O M ,不是R O O M!!奥,那就是小房子了!狂晕!!

毕设外文文献翻译

xxxxxxxxx 毕业设计(论文)外文文献翻译 (本科学生用) 题目:Poduct Line Engineering: The State of the Practice 生产线工程:实践的形态 学生姓名:学号: 学部(系): 专业年级: 指导教师:职称或学位: 2011年3月10日

外文文献翻译(译成中文1000字左右): 【主要阅读文献不少于5篇,译文后附注文献信息,包括:作者、书名(或论文题目)、出版社(或刊物名称)、出版时间(或刊号)、页码。提供所译外文资料附件(印刷类含封面、封底、目录、翻译部分的复印件等,网站类的请附网址及原文】 Requirements engineering practices A precise requirements engineering process— a main driver for successful software development —is even more important for product line engineering. Usually, the product line’s scope addresses various domains simultaneously. This makes requirements engineering more complex. Furthermore, SPL development involves more tasks than single-product development. Many product line requirements are complex, interlinked, and divided into common and product-specific requirements. So, several requirements engineering practices are important specifically in SPL development: ? Domain identification and modeling, as well as commonalities and variations across product instances Separate specification and verification for platform and product requirements ? Management of integrating future requirements into the platform and products ? Identification, modeling, and management of requirement dependencies The first two practices are specific to SPL engineering. The latter two are common to software development but have much higher importance for SPLs. Issues with performing these additional activities can severely affect the product line’s long-term success. During the investigation, we found that most organizations today apply organizational and procedural measures to master these challenges. The applicability of more formal requirements engineering techniques and tools appeared rather limited, partly because such techniques are not yet designed to cope with product line evelopment’s inherent complexities. The investigation determined that the following three SPL requirements engineering practices were most important to SPL success. Domain analysis and domain description. Before starting SPL development, organizations should perform a thorough domain analysis. A well-understood domain is a prerequisite for defining a suitable scope for the product line. It’s the foundation for efficiently identifying and distinguishing platform and product requirements. Among the five participants in our investigation, three explicitly modeled the product line requirements. The others used experienced architects and domain experts to develop the SPL core assets without extensive requirements elicitation. Two organizations from the first group established a continuous requirements management that maintained links between product line and product instance requirements. The three other organizations managed their core assets’ evolution using change management procedures and versioning concepts. Their business did not force them to maintain more detailed links between the requirements on core assets and product instances. The impact of architectural decisions on requirements negotiations. A stable but flexible architecture is important for SPL development. However, focusing SPL evolution too much on architectural issues will lead to shallow or even incorrect specifications. It can cause core assets to ignore important SPL requirements so that the core assets lose relevance for SPL development. Organizations can avoid this problem by establishing clear responsibilities for requirements management in addition to architectural roles. The work group participants reported that a suitable organizational tool for balancing requirements and architecture is roundtable meetings in which requirements engineers,

基于Android的智能家居APP的设计与实现_过程检查记录表 -

南京邮电大学通达学院毕业设计(论文)过程检查记录 题目基于Android的智能家居APP的设计与实现 学生姓名班级学号专业计算机科学与技术指导教师姓名指导教师职称副教授日期指导记录 16.1.8-16.1.23 任务计划: 1. 了解课题,查找相关资料 2. 检索中文数据库 完成情况: 1. 首先,通过阅读李涛的《基于Android的智能家居APP的设计与实现》对于这个题目有了一个整体的了解。 2. 然后利用CNKI检索了城市交通与Android相关的学术期刊。下载与课题相关的期刊、论文,阅读资料并理解课题。 指导教师批阅意见: 指导教师签字: 16.1.24-16.2.8 任务计划: 1. 阅读《疯狂Android讲义》对安卓UI设计的技术做一定的了解 2. 了解智能家居App的发展趋势和前景。 完成情况: 1. 通过相关理论学习,初步掌握安卓UI设计。 2. 通过资料了解了智能家居APP的前景。 指导教师批阅意见: 指导教师签字: 16.2.9-16.2.24 任务计划: 1.理清自己题目的思路。 2.完成开题报告 完成情况: 1.在之前理论知识的积累上,对课题任务有了进一步的了解,完成开题报告初稿。 指导教师批阅意见: 指导教师签字: 16.2.25-16.3.4 任务计划: 1.提交开题报告 2.利用CNKI检索与课题相关的外文资料

完成情况: 1.经过老师的指导,不断修改,完成开题报告最终稿,经过审核,打印提交给老师。 2.搜索数据库,查找符合要求的外文资料。 指导教师批阅意见: 指导教师签字: 16.3.5-16.3.20 任务计划: 1.对外文资料开始进行翻译 2.查找Android开发的相关书籍 完成情况: 1.本周开始对外文资料进行翻译,外文资料专业性很强,下手有些困难,但是,仍继续尽全力去做。 2.阅读了《第一行代码》、《疯狂Android讲义》等入门级书籍,对于安卓开发整体有了较完整的理解。 指导教师批阅意见: 指导教师签字: 16.3.21-16.3.31 任务计划: 1.完成APP的需求分析。 2.进行界面设计。 完成情况: 1.将毕业设计的要求进行分析理解,并通过研究其他同类APP明白自己APP所要实现的功能。 2.根据现在世面上的智能家居应用,进行模仿并根据需求完成UI设计。 指导教师批阅意见: 指导教师签字: 16.4.1-16.4.11 任务计划: 1. 进行管理员模块的功能设计。 2. 编写管理员模块。 完成情况: 1. 根据需求分析,进行功能的分割,确定管理员模块的功能。 2. 根据的管理员模块的功能,进行代码编写,完成管理员模块的功能。 指导教师批阅意见: 指导教师签字: 16.4.12-16.4.22 任务计划: 1. 进行用户端的功能设计。 2. 编写用户端的实现功能代码。

基于安卓的大学生记账管理系统的设计与实现-外文翻译译文和原文

基于安卓的大学生记账管理系统的设计与实现-外文翻译译 文和原文 毕业设计外文文献翻译 院系: 计算机与信息工程学院年级专业: 12软件工程(金融服务)2 姓名: 学号: An Analysis of Personal Financial Lit Among 附件: College Students Among College Students 指导老师评语: 指导教师签名: 年月日 大学生个人理财知识分析 大学生个人理财知识分析 这项研究调查了924名大学生审视自己的个人财务知识;调查了学生的财务知识与学生的特性之间的关系,和理财知识对学生的意见和决定的影响。结果表明,参与者回答问题的正确性为53,。所调查的人包括非经营性专业、妇女、在下层阶级行列的学生、30岁以下并且很少有工作经验的人、知识水平较低者。懂得较少财务知识的学生往往有错误的观点和作出不正确的决定。结论是:大学生不太了解个人理财。低的财务知识水平会限制他们做出明智决策的能力。 I. 介绍 管理个人财务的能力在当今世界已经变得越来越重要。人们必须计划为他们的退休和子女的教育长期投资。他们还必须决定短期储蓄和借贷一个假期,向下支付

房子,汽车贷款和其他大件物品。此外,他们还必须管理自己的医疗保险和人寿保险的需求。 不幸的是,研究表明,美国人有个人认识不足财政(EBRI,1995年,毕马威会计师事务所,1995年; PSRA,1996年,1997年,奥本海默基金/女孩公司,1997年;先锋集团/货币杂志,1997年)。他们未能作出正确决策因为他们还没有收到良好的个人理财教育(HSR,1993年,希拉,1993;奥尼尔,1993年)。 这项研究有三个目的。首先,它提供大学生个人理财素养的证据。其次,它会检查为什么一些大学生相对比别人有更多的理财知识。该分析可以帮助我们识别出大学生所拥有决定能力水平的因素。第三个目的是检查学生的知识如何影响他/她的意见和个人财务问题上的决定。 本文的结构安排如下。第二部分回顾了以前对金融知识的研究。第三部分是讨论方法。第四部分是提出的结果。第五部分总结全文。 II. 文献回顾 大部分以前的研究都是由在金融服务行业的从业人员进行。他们专注于资金管理和投资有关的问题。这个重点与会计师财务策划师的调查结果一致,说明这些问题是个人理财规划的重要领域(NEFE,1993-1996)。这些研究结果表明,参与的调查者回答调查问题的正确率普遍只有不到60,。 此前高中生的研究均发现,他们在个人财务的基本知识上未受到良好的教育,并且知识贫乏(巴肯,1967; CFAJAMEX,1991; HSR,1993; Langrehr,1979; NAEP,1979)。在对来自63所学校的1509高中学生的调查研究中,曼德尔(1997)报告了一个平均正确的比分,57,在收入、资金管理、储蓄、投资和消费等领域。他的结论是:学生们离开学校时没有做出关键决策影响他们生活的能力。 难道成年人对个人理财和投资有一个很好的控制,几个结果研究表明,他们并 1

Android系统架构简介

Android系统架构简介 Android系统架构简介 目前Android的Linuxkernel控制包括安全、存储器管理、进程管理、网络堆叠、驱动程序模型等。下载Android源码之前,先要 安装其构建工具Repo来初始化源码。Repo是Android用来辅助Git 工作的一个工具。 应用程序 Android系统是基于Linux内核开发,使用Java作编程语言, 使界面到功能,都有层出不穷的变化,其中Activity等同于J2ME 的MIDlet,一个Activity类别负责创建视窗,一个活动中的 Activity就是在foreground(前景)模式,背景执行的程序叫做Service。两者之间透过由ServiceConnection和AIDL连结,达到 复数程序同时执行的效果。如果执行中的Activity全部画面被其他Activity取代时,该Activity便被停止,甚至被系统清除。 View等同于J2ME的Displayable,程序人员可以透过View类别与“XMLlayout”档将UI放置在视窗上,并可以利用View打造出所 谓的Widgets,其实Widget只是View的一种,所以可以使用xml 来设计layout。至于ViewGroup是各种layout的基础抽象类别,ViewGroup之内还可以有ViewGroup。View的构造函数不需要在Activity中调用,但是Displayable的是必须的,在Activity中,要通过findViewById()来从XML中获取View,Android的View类 的显示很大程度上是从XML中读取的。View与事件息息相关,两者 之间透过Listener结合在一起,每一个View都可以注册eventlistener,例如:当View要处理用户触碰的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于 J2ME的BitMap。 中介软件

相关主题
文本预览
相关文档 最新文档