近年来，大众参与的软件创新与创业活动已经成为网络时代软件开发和应用的新形态，正在快速改变着全球软件创新模式和软件产业格局。系统地揭示这种网构化软件开发形态背后蕴含的核心机理，构建适应我国自主发展特点的软件创新生态环境，是当前我国软件产业发展面临的重大历史机遇。

在此背景下，国防科技大学、北京大学、北京航空航天大学、中科院软件所等单位合作开展了基于网络的软件开发群体化方法与技术研究，揭示了以大众化协同开发、开放式资源共享、持续性可信评估为核心的互联网大规模协同机理，与软件开发工程化方法相结合，系统地提出了基于网络的软件开发群体化方法，形成了网构化软件开发和运行技术体系，构建了可信的国家软件资源共享与协同生产环境（简称“Trustie”，中文简称“确实”）。

Trustie团队就是在此过程中不断成长的一个勇于探索、勇于创新、勇于挑战的科研人员组成的群体，其中包括大学老师、工程师、研究生和本科生。

Trustie团队揭示了以大众化协同开发、开放式资源共享、持续性可信评估为核心的互联网大规模协同机理，与软件开发工程化方法相结合，系统地提出了基于网络的软件开发群体化方法，产生了三方面技术发明，构建了可信的国家软件资源共享与协同生产环境（简称“Trustie”，中文简称“确实”），形成授权发明专利26项、软件著作权38项、技术标准（或提案）7项，发明人受邀赴国内外重要学术会议做主题报告20余次，如图1。

项目探索形成了技术成果专利化、专利推广标准化、工具环境服务化、人才培养大众化的成果转化模式，为我国创新型软件产业发展提供了关键技术支撑和实践指南。Trustie显著提升了东软集团、神州数码、凯立德、万达信息等大型软件企业软件生产能力，支持了我国航空、航天、国防等多个关键领域的可信软件生产，在9个软件园区建立了公共创新支撑平台，覆盖2500余家软件企业，积累软件资源超过33万项，创建了知名国际开源社区，支撑包括国家核高基重大专项、国际合作项目、教育项目等2560余个软件项目的群体化开发，在100余家高校的软件人才培养中得到广泛应用，各类用户超过28万人。

项目的两项子成果已分别获得2013年度湖南省技术发明一等奖和2012年度教育部高等学校科学研究优秀成果奖科学技术进步一等奖，并于已通过2015国家技术发明奖二等奖初评。

目前，项目组已在网构化软件协同构造、运行管理、可信评估、持续演化等方面实现了一系列新的突破，提出并建立了网构化软件创新和创业的应用模式及支撑平台Trustie2.0，如图2。项目组正充满信心、刻苦攻关，为我国创新型国家建设而奋斗！

目前Trustie通过互联网提供在线服务，目前推出的网络服务平台包括：

 * Trustie实践教学平台 * Trustie协同开发平台 * Trustie开源监测与推荐平台 * Trustie可信资源库平台 * Trustie服务组合开发平台 * Trustie可信评估与增强平台

( 36.3 KB)

# 1年前田雨提交了作品

# Ruby Intro

This 3-part homework gives some basic practice in Ruby as well as getting you accustomed to making testing a regular part of your workflow.

## Learning Goals

After completing this assignment, you will know how to:

• Write simple code that uses basic constructs in the Ruby language, including methods and arguments, conditionals, string and array manipulation, regular expressions, and basic object-oriented programming mechanisms
• Understand the Ruby project conventions for where code files and test files are located in a project's directory hierarchy
• Run individual tests or suites of tests using the RSpec unit testing tool
• Understand the basic syntax of RSpec unit tests

## Overview

The repo for this assigment follows a fairly standard Ruby convention for codebases: the code files are stored in lib/ and the test files are stored in spec/. (We use the RSpec unit-testing framework; if we were using Ruby's default framework, known as Test::Unit, the test files would be under test/.)

We've placed "starter code" in lib/ruby_intro.rb; when you're all done, you can submit to Trustie.

However, you can test each of the 3 parts separately. The files spec/part[123]_spec.rb contain RSpec tests for each of the three parts. For example, to test your answers to Part 1, say rspec spec/part1_spec.rb. rspec with no arguments runs the tests in all the files spec/*_spec.rb.

• The line numbers in the RSpec error report will give you guidance as to which tests failed. (You can check the RSpec documentation to see how the .rspec file can be used to customize the output format.)

To ensure you have the rspec gem installed you need bundler and can then run bundle install like so (if you accidentally do not use c9 ide):

$gem install bundler$ cd hw-ruby-intro $bundle When the above completes successfully you'll have RSpec installed and can run rspec from the command line to test your code. Before starting your homework, please refer to the recommanded workflow as below for this and future assignment: • Create a project with the name hw-ruby-intro in your Trustie workspace • Create a project repository with the name hw-ruby-intro in the setting page of the project • Link the project repository to this assignment • Clone the homework repository to your c9 ide workspace or anywhere you coding git clone https://github.com/saasbook/hw-ruby-intro • Do your homework and test your solution • Commit change to your local git repository • Push your local repository at c9 workspace to your Trustie project repository • Submit your homework assignment in Trustie Please refer to the Trustie user guide for creating project, repository, and using basic git command to manage your code repositories. # 1. Arrays, Hashes, and Enumerables Check the Ruby 2.x documentation on Array, Hash and Enumerable as they could help tremendously with these exercises. :-) 1. Define a method sum(array) that takes an array of integers as an argument and returns the sum of its elements. For an empty array it should return zero. Run associated tests via: $ rspec spec/part1_spec.rb:5

2. Define a method max_2_sum(array) which takes an array of integers as an argument and returns the sum of its two largest elements. For an empty array it should return zero. For an array with just one element, it should return that element. Run associated tests via:

$rspec spec/part1_spec.rb:23 3. Define a method sum_to_n?(array, n) that takes an array of integers and an additional integer, n, as arguments and returns true if any two elements in the array of integers sum to n.sum_to_n?([], n) should return false for any value of n, by definition. Run associated tests via: $ rspec spec/part1_spec.rb:42

You can check your progress on the all the above by running $rspec spec/part1_spec.rb. # 2. Strings and Regular Expressions Check the documentation on String and Regexp as they could help tremendously with these exercises. :-) 1. Define a method hello(name) that takes a string representing a name and returns the string "Hello, " concatenated with the name. Run associated tests via: $ rspec -e '#hello' spec/part2_spec.rb

2. Define a method starts_with_consonant?(s) that takes a string and returns true if it starts with a consonant and false otherwise. (For our purposes, a consonant is any letter other than A, E, I, O, U.) NOTE: be sure it works for both upper and lower case and for non letters! Run associated tests via:

$rspec -e '#starts_with_consonant?' spec/part2_spec.rb 3. Define a method binary_multiple_of_4?(s) that takes a string and returns true if the string represents a binary number that is a multiple of 4. NOTE: be sure it returns false if the string is not a valid binary number! Run associated tests via: $ rspec -e '#binary_multiple_of_4?' spec/part2_spec.rb

You can check your progress on the all the above by running $rspec spec/part2_spec.rb. # 3. Object Oriented Basics Define a class BookInStock which represents a book with an ISBN number, isbn, and price of the book as a floating-point number, price, as attributes. Run associated tests via: $ rspec -e 'getters and setters' spec/part3_spec.rb

The constructor should accept the ISBN number (a string, since in real life ISBN numbers can begin with zero and can include hyphens) as the first argument and price as second argument, and should raise ArgumentError(one of Ruby's built-in exception types) if the ISBN number is the empty string or if the price is less than or equal to zero. Include the proper getters and setters for these attributes. Run associated tests via:

$rspec -e 'constructor' spec/part3_spec.rb Include a method price_as_string that returns the price of the book formatted with a leading dollar sign and two decimal places, that is, a price of 20 should format as "$20.00" and a price of 33.8 should format as "$33.80". Run associated tests via: $ rspec -e '#price_as_string' spec/part3_spec.rb

You can check your progress on the all the above by running rspec spec/part3_spec.rb.

## More Challenges

• Try getting setup with an automated test framework such as guard or autotest. Guard or AutoTest can be set up so that they will run all the tests in spec/, but every time you edit and save your code file, the tests are automatically re-run, so you don't have to run them manually. As we'll see later, this is the "watch the test fail" part of the TDD or test-driven process of development: write the tests before you write the code, watch the test fail, fill in the code and save the code file, then watch the test pass!

# 1年前杨晓亚提交了作品

# 1年前学生匿名评阅了作品，优秀排行：

# 1年前杨晓亚更新了项目

## Part I: Get RottenPotatoes running locally (or from your c9 workspace)

The actual RottenPotatoes starter app you will use is in repo and please read the README.md file carefully for more guidance:

https://git.trustie.net/cgao/hw-rottenpotatoes-rails-intro.git

Whenever you start working on a Rails project, the first thing you should do is to run Bundler, to make sure all the app's gems are installed.  Switch to the app's root directory (presumably rails-intro) and run bundle install --without production(you only need to specify--without production the first time, as this setting will be remembered on future runs of Bundler for this project).

If there is an error information on installing gems, edit source to 'http://ruby.taobao.org' in Gemfile.

Finally, get the local database created:

rake db:migrate

• Self-check: how does Rails decide where and how to create the development database? (Hint: check the db sub directory)

This creates a local development database and runs the migrations to create the app's schema.  It also creates the file db/schema.rb to reflect the latest database schema. You should place this file under version control.

• Self-check: what tables got created by the migrations?

...And insert "seed data" into the database--initial data items that the app needs to run:

rake db:seed

• Self-check: what seed data was inserted and where was it specified? (Hint:rake -T db:seed explains the seed task;rake -Texplains other available Rake tasks)

At this point you should be able to run the app locally (rails server) and navigating to http://localhost:3000/moviesin your browser.

Notice: You should also have a repository in your Trustie platform.

## Part II: Deploy to Heroku

If you have deployed to Heroku before, just create a new app container with heroku create.  If this is your first time deploying to Heroku, you will need to do two things.  First, sign up for a free Heroku account.  Then set up ssh keys to securely communicate with Heroku for app deployments.  The three basic commands you need are the following, but see the Heroku page for more details if following commands fail to work.

ssh-keygen -t rsa
heroku keys:add

Once your keys are set up (a one-time process), you should be able to create an "app container" on Heroku into which you'll deploy RottenPotatoes:

heroku create

Heroku will assign your app a whimsical name such as luminous-coconut-237; once your app is deployed, you would access it at http://luminous-coconut-237.herokuapp.com.  You can login to the Heroku website if you want to change the name of your app.

Finally, we deploy our app to Heroku:

git push heroku master

(It is normal to see the following warning the first time---answer "yes", and in the future you shouldn't see it any more:)

The authenticity of host 'heroku.com (50.19.85.132)' can't be established.
Are you sure you want to continue connecting (yes/no)?
Please type 'yes' or 'no':

Is the app running on Heroku?  No, because just as we ran rake db:setup to do first-time database creation locally, we must also cause a database to be created on the Heroku side:

heroku run rake db:setup

Now you should be able to navigate to your app's URL. heroku open opens your browser to that URL in case you forgot it.

Once you're confident the functionality works correctly on Heroku, submit the URI of your deployed Heroku app in a text file with no other contents.

Please be careful to use http and not https, that is, submit http://your-app.herokuapp.com and NOT https://your-app.herokuapp.com.

# 1年前杨晓亚提交了作品
# 1年前杨晓亚更新了项目

【缺陷】 ICSME2018论文集 正常

ICSME2018论文集：

https://pan.baidu.com/s/1zpgzcA_QJPeO08N8I7BLiQ

【缺陷】 CSCW2018 论文集 正常

http://cscw.acm.org/2018/program/proceedings.html

2、超级管理员应该有编辑战队的权限

3、如果我的战队没有设置知道老师，那么我进入这个页面需要弹框提示

4、这个隐藏的学号，鼠标经过的时候显示全称

• 戴傲 7个月前

Status changed from 新增 to 关闭

• 黄井泉 7个月前

Description updated (diff)

• 黄井泉 7个月前

Description updated (diff)

https://exmail.qq.com/qy_mng_logic/doc#10027

1.删除最后一行文字和留言入口

2.直接在页面按钮的下方显示最后一次的邮件发送概况，如下样式：

• 陈晓婷 7个月前

Description updated (diff)

Status changed from 新增 to 已解决

% Done changed from 0 to 100

（1）算法分析的两个主要方面是（    ）。

A. 正确性和简单性             B. 可读性和文档性

C. 数据复杂性和程序复杂性     D. 时间复杂度和空间复杂度

（2）算法分析的目的是（    ）。

A. 找出数据结构的合理性       B. 研究算法中的输入和输出的关系

C. 分析算法的效率以求改进     D. 分析算法的易懂性和文档性

（3）计算机算法指的是（ ① ），它必须具备输入、输出和（ ② ）等5个特性。

①  A. 计算方法     B. 排序方法     C. 解决问题的有限运算序列    D. 调度方法

②  A. 可执行性、可移植性和可扩充性   B. 可行性、确定性和有穷性

C. 确定性、有穷性和稳定性         D. 易读性、稳定性和安全性

（4）数据结构是研究数据的（    ）以及它们之间的相互关系。

A. 理想结构，物理结构         B. 理想结构，抽象结构

C. 物理结构，逻辑结构         D. 抽象结构，逻辑结构

（5）在数据结构中，从逻辑上可以把数据结构分成（    ）。

A. 动态结构和静态结构         B. 紧凑结构和非紧凑结构

C. 线性结构和非线性结构       D. 内部结构和外部结构

（6）数据结构是一门研究非数值计算的程序设计问题中计算机的 （ ① ）以及它们之间的（ ② ）和运算等的学科。

①  A. 数据元素       B. 计算方法      C. 逻辑存储     D. 数据映像

②  A. 结构           B. 关系          C. 运算         D. 算法

（7）（    ）是一种用类似英语语言来表示代码的表达方法。

A. PAD图             B. 程序          C. 伪代码       D. 算法

（8）在结构化程序设计中，有（    ）种基本结构。

A. 1                  B. 2              C. 3             D. 4

（9）（    ）指算法执行时计算机资源的消耗量，包括存储空间和运行时间的开销。

A. 正确性             B. 可行性        C. 健壮性       D. 效率

（10）（    ）算法是指在对问题求解时，总是做出在当前看来是最好的选择。

A. 贪婪法             B. 穷举搜索法    C. 分治法       D. 线性规划

# 7个月前童二提交了作品

# 7个月前学生匿名评阅了作品，优秀排行：

【缺陷】 ASE 2018论文全集 正常

ASE 2018论文全集：

https://pan.baidu.com/s/1dpqJn4StXZgPRMoIfEbIZA