201671010456- Qiong実験14プロジェクトレビューチーム&コース概要

ボーエン簡単な情報シート

プロジェクト コンテンツ
この作品は、コースに属し http://www.cnblogs.com/nwnu-daizh/
どこの仕事でこの要件 https://www.cnblogs.com/nwnu-daizh/p/11093584.html
コースの学習目標 ソフトウェアプロジェクトのレビュープロセスは、集計のコースの内容に反映されますマスター。

タスク

GitHubのリポジトリアドレス形式受け入れフィードバック https://github.com/snxfd123/designfile/tree/master/word

タスクII

1、およびテストの質問に答えることを記載

(1)問題のリンク「実験ソフトウェアエンジニアリングは、提出する準備しました」
https://www.cnblogs.com/zhangqiong/p/10512047.html
(2)質問と回答、「実験的ソフトウェア工学は、提出する準備しました」
基本的なプロセス1.PSP(prsonalソフトウェアプロセス)であるとは何ですか?第二章では、拡張のどのような側面に注意を払うように、ソフトウェアエンジニアリングの仕事の設計における大学の学生として、個人的な開発プロセスに記載されていますか?標準的には、どのようにそれのようなものでしょうか?
  •    PSPは、自分自身が継続的にプロセスの個人的な作品を改善し、管理し、改善し、制御するために使用され、フレームワーク構造化ソフトウェア開発の形、ガイドラインと手順です。PSPと比較的独立した技術の特定は、その原則は、任意のソフトウェアタスクに適用することができます。正確な計画を作るためにソフトウェアエンジニアを支援するために、個々のソフトウェアプロセスの原理を説明することができPSP。PSPは、個々の能力も、ステップ進化のフレームワークを提供し、プロセスの概念を導入する段階的な方法で、各レベルは、すべての下位レベルの要素、および新しい要素の追加を含んでいます。この進化のフレームワークは、それが自分のスキルとレベルを向上させるために彼らのパフォーマンスと潜在的にそれを明確にするために、人々のソフトウェアメトリクスと分析ツールを提供し、PSPのプロセスの基本的な概念を学ぶための良い方法です。
  •    次の側面に注意を払うためにソフトウェアエンジニアリングの仕事のデザインの学生、まず、概念化と分析として、任意のソフトウェア製品のコアは、ソフトウェアの利用目的を定義するには、この段階では、ユーザーのニーズの問題を解決することです。まず、明確な、ユーザーのニーズやプロファイル解析ソフトウェアの開発プログラムを開発する学生グループとの間の緊密な協力、。徐は、これらのプログラムの実行可能性を議論します。提案された計画を達成することができるだけでなく、ビジネスの入力のコストは耐えることができるかどうかを評価する必要がある場合、ユーザーのニーズのいくつかは、技術的に可能であるならば。機能の詳細な説明、開発する小さなモジュールにそれを打破 - ソフトウェアシステムの概要についても、その重要な要素を決定し、後者は、チームの技術仕様の結果としてために設計、ソフトウェア開発設計段階が続きます。ソフトウェア開発の要件や仕様は開発チームに引き渡された後、実装フェーズ中に、技術スタッフを符号化することができます。分業のチーム全体が基本的に同じである、この時点でチームの担当者は、あなたが進歩の後れを取らないために、チームの誰もがプロセスや報告書の担当者に報告される絞り込むたい開発タスクのヘッドです。ソフトウェアのテストと開発を同時に行うことが、開発機能の完了後の各時間は、エラーを検出し、修正するために、可能な限り早期に、すぐにテストすることができます。最後の展開は、我々は技術マニュアル、ユーザーマニュアルを書いて、実際のシーンをシミュレートする必要があります。要するに、すべての手順は、厳密に行うソフトウェアエンジニアリングの基準を遵守しなければなりません。
  • 2.優れたエンジニアになるための方法をステップバイジュニアソフトウェアエンジニアのステップ?どのような取り組みが行われる必要がありますか?あなたに本当に重要な証明書?
  •   ジュニアソフトウェアエンジニアは容易ではないになるために、彼らは学校がこのコースを終了した後、すべての面は依然として非常にコントロールのすべての段階のためのコード、ドキュメント、理論を、書き、不足している理解するであろう、経験不足です。今、私が必要とするすべてはそれのすべての面で手をつないで行くの取り組みに関しては、地球にダウンです。ちょうどそれが唯一の試験は合格を示し、および能力との関係を操作するための実際の能力が大きくなくてもと、それを証明する証明書か何か。そのため、コンピュータのグレードの検査の観点から、試験は、それは少し技術的な場合でも、バックオフするだけでなく、まだので、私、微弱な電流練習ベース、だけでなく、経験の広い範囲としてたくさん練習することができます。だから、学ぶ技術は、最後の言葉は、証明書は、最終的にはちょうど証人それ自身場合は、あなただけが知っている、唯一のために本当の能力を示すために、どのようにされているものを、です。
  • コードを書くの過程で3、あなたはどのような仕様に注意を払う必要がありますか?そして、仕様の重要性について話しています。
  •   以下のような仕様に準拠するようにコードを書くの過程で:クラスのプライベートメンバ変数は、M_で始まる必要があり、そして次にくるものが該当する属性名と同じにする必要があり、それは、最初の文字を大文字にしなければならないと言ってプロパティを実装したものです第二の行に書き込まれなければならない「{」、コンテンツの方法は、1つの行に書かれていない取得および設定、のみ次のブロックを有するプログラムの各セグメントの間に空白行を持っている必要があり、コンテンツ部分は同じものを使用してセグメント化されなければなりません段落の内容は、参照することは、現在のルールである:システム1には、Microsoft、Neweggが中に一つに、例えば、1つ、に可能な限り各ブロック間の空白行、同じコンテンツを追加しますSystem.Dataを置くつもりシステム、フロントにクラス定義にプライベートメンバ変数のクラス、および空白行の間を追加する必要はありません。いいえ、空のコメント上段、下側部分との間には、注釈を付けおよび使用する必要があります空行は、エンティティクラスと非常に必要な指示がない限り、注釈を必要としない、ファイル名がクラスの本体の名前と同じでなければなりません。同じ機能のための変数は、名前が一致している必要があります。中 クラス、非常に必要でない場合は、地域を追加しないでください。演算子の両側が1でなければならず、スペースだけを追加し、前記列挙だけでクラスを定義する必要がありますし、別のファイルに配置する必要があり、あなたは焼くことができます指定された列挙定義された列挙型のそれぞれについて、列挙型と値が表示される必要があります;各プロパティやメソッドの属性定義(のDataContract、ディレクトリにディレクトリ、すべての列挙クラスを確立するために、列挙型炉データメンバー、データマッピング、のServiceContract、OperationContractなど)を定義するために接続する必要があり、自由なラインを許可は、DataMapingはデータメンバー上に配置され、プライベート変数配列順序を限り属性を定義するエンティティ・クラスと一致して、可能な限り、それぞれに注釈を追加し、上記の方法、および接続されている方法では、間に空白行がありません。コードは、すべての可能な注釈を変更し、チェックイン時に、それは注釈を付ける必要があります。カスタム変数名はEXとすべてでキャッチ例外を試してみてください。もしList型の戻り値、あなたはNULLを返すことができません。コーディング標準の重要性は、上記の仕様に準拠し、自明であるバグの発生を低減することができ、メンテナンスコストを削減し、コードレビューを手助けするだけでなく、自分のスキルプログラマ、より良い開発を向上させることができます。
  • (3)学習プロセスおよび方法
      在学习的过程中,因为以前并没有基础过大型的项目,所以就按照老师的要求,首先对构建之法那本书进行详细的研读,在后面做项目的过程中,再参照软件工程导论这本书,结合老师讲解的内容,对软件项目的开展过程有了大概的了解,然后就是每周一次的实验,通过实验,进行对理论方法的实验,在整个过程中,对软件项目的流程进度都有很深的理解。在经验方面还有不足。在学习方法上,在开始是使用好工具,然后是学习工具背后的方法,在然后是掌握其本质,最后是用最简单易懂的方式传递给他人。学习软件工程,需要先有一个全景的印象,他的核心是什么?是有哪几块构成的,这样才能更好的理解每个知识点和彼此之间的联系。采用做中学(在工作中学习),自下而上;从教中学(技术分享或指导同学时),自上而下。软件工程是一门为了应对软件危机而产生的学科。主要是聚焦于质量,构建和维护高质量的软件。核心的知识点主要是三大要素:过程、方法和工具,也就是围绕软件开发过程,产生的方法学和工具。用一个简单的公式来理解的话,那就是:软件工程=工具+方法+过程。
    (4) 原来提出的问题是否还不明白? 学习中产生的新的问题
      前面提出的问题都已经理解了。在学习中产生的最多的也能算是问题,倒可以说是困惑。比如怎样分配任务才是最合理的,各个小组成员之间才不会有怨言,怎样分配才算是最能展现个人能力的?对于已经做了的工作,是不是都应该被重视?这些已经做了但是又不满意的工作会导致做的人丧失信心,从而怀疑自己的能力,这时候应该怎样改变现状呢?在整个团队合作完成项目的过程中,如果有人的意见不被采纳,这样一来的话本来就因为学到不够好才常常被忽视,越忽视越学不好,导致恶性循环,这种现象只靠自我调节吗?...类似这样的困惑,似乎在每个项目中都有,可能还需要不断的适应吧。

    2、在项目的各个阶段中学到的“知识点”

    可行性分析阶段 技术可行性、经济可行性、管理可行性的分析,以及对各种风险的预测评估
    需求分析阶段 需求获取方式、需求分析、编写需求规格说明书的方法及需求验证
    软件设计阶段 软件需求的理解、表述、设计时要注意软件可扩展性、灵活性、可维护性和软件成本等
    实现阶段 软件部署实施方案的编写、用户手册的编写、维护手册的编写、回归测试
    测试阶段 测试文档的编写规范、测试的几种方式,如单元测试、模块测试、回归测试等
    项目验收阶段 验收方式、验收文档,验收阶段双方的交涉、用户验收、安全检测

    3、个人项目/结对编程/团队项目的个人经历及心得体会

      个人项目:在个人项目作业中,遇到的困难很多,花费的时间也很多,因为对语言的不熟悉,所以参考了网上的代码。刚刚拿到这个作业时不会做,翻书复习了java,对个人项目的流程有了一定的掌握。那时候柱状图的功能并没有实现,只实现了最简单的单词总数统计和词频统计。 里面涉及到了好多函数的应用,有很多都是不会的,意识到数据结构的重要性,而自己对这部分知识的掌握还仅仅停留在做题上。但是也有收获,对GitHup的操作流程也熟悉了。
  •   结对项目:在结对项目合作中,我们首先是互相评论了彼此的上一次作业,找到了优点和不足,用于那次试验完成时要借鉴的技术和改正的地方。先找到不足,然后改正。接着我们规划了要实施的步骤,首先完成任务一,因为相对来说简单些,也只有在任务一完成的基础上才能开始任务二的作业。接着是任务二的需求分析,相对来说较简单,就是在实验二的基础上加上前端界面。然后是概要设计和详细设计,我们是打算放在一起进行的,主要设计程序的类和各个模块,以及各个模块之间的交互,还有Java后台和前端的交互。在后台和前端交互的时候,因为不知道要用什么接口合适,所以我们查找了很多的资料,看到可以用数据库,也可以用json,ajax等,最终选择了一个特殊的类servlet作为实现java后台和前端的交互。在这个过程中花费了大量时间。那次实验中我和搭档合作探究,过程很愉快,更体会到了团队意识的重要性。
  •   团队项目:这学期的软件工程教会了很多东西,不仅是在编程方面的提升,还懂得了在一个开发团队中怎样互相协作。同时让我了解到一个软件的开发并不是当你拥有编程能力就可以完成开发的,在开发前需要准备很多东西像调查问卷,需求分析等,只有经过这些科学的方法,我们才能开发出用户需要的软件。在项目开发中我们会遇到很多的难题,和同伴们解决这些难题也是非常快乐的事。在这之中我们也得了很多经验,这对我们在以后的工作中有很大的帮助。
  • 4、软件工程的实践总结和提升

    (1) 统计在软件工程实践中,你完成了多少行的代码;
      写代码是我的弱项,在整个实践中,我基本没有参与代码的编写,只是编辑文档和博客,也对部分代码进行了测试。
    (2)哪一次作业让你印象最深刻?为什么?
      让我印象深刻的作业是最后一次团队作业,也就是实验十三,这次作业的量很大,需要查找很多资料,看很多文献才可以做出来,我们团队成员分工之后,每人都要写两到三个文档,然后还有PPT的编写,博客的编写,最后还要把各个文档汇总成为一个文档,所以是很费时间的一件事,因为作业的量很大,所以那天是一天都没有出门,到晚上写完所有文档都已经九点多了,外面下着小雨,在淅淅沥沥的雨声中做完了所有工作,思绪良多。
    (3) 累计花了多少个小时在软件工程实践上?平均每周花多少个小时?
      累计花费的时间要超过200个小时,每周的作业时间加上学习的时间,看慕课视频的时间,实践中的记录是琐碎的,要一点一点收集的,所以大概平均每周花费的时间大概为10个小时。
    (4)你学习和掌握的新语言、新平台;
      新语言HTML,这是种网页语言,可以用来做网页,也可以进行博客的编写,简单方便易用。新平台博客,慕课,对于博客的编写,现在已经非常熟练了。慕课网上有大量的可供学习的视频,是学习的很好的平台。另外还有墨刀,燃尽图看板等工具。

    (5)你在软件工程实践的各次作业分别花了多少时间?(做一个列表)

    各次试验 花费时间(h) 各次试验 花费时间(h)
    实验一软件工程准备 5 实验八基于原型的团队项目需求调研与分析 25
    实验二软件工程个人项目 8 实验九团队项目需求改进与需求设计 15
    实验三作业互评与改进 6 实验十团队项目需求改进与详细设计 22
    实验四软件工程结队项目 8 实验十一团队项目设计完善 30
    实验五软件研发团队的组建 10 实验十二软件测试与alpha冲刺 21
    实验六团队项目选题 12 实验十三beta冲刺与团队项目验收 15
    实验七团队项目原型设计与开发 15 实验十四团队项目评审&课程总结 7

    (6) 填写下表,总结一学期的学习中,你学习或使用的软件工程开发工具、开发方法和建模方法;

    软件开发工具、项目管理工具 软件开发方法 软件建模方法
    eclipse、墨刀、Visio、GitHub 面向对象分析的软件开发方法 结构化建模方法,面向对象建模方法

    5、其他方面的收获或提升。

      在选用工具方面知道了很多,比如墨刀,比如Visio,这些常用工具可以帮助我们在以后的项目中更便捷的呈现自己的想法。还有就是友谊的提升,由于项目的不断接触,我们都记住了彼此的笑容,收获良多。

    6、你认为目前的课程存在哪些问题,你有什么更好的建议。

      我觉得目前课程在进行的方式上对我们学习软件工程很有帮助,通过实验的方式实践,也能让我们积累经验。代老师在教学过程中的态度认真严谨,一丝不苟,这种精神是我所敬仰和喜欢的,但是每周的作业量有些大,每周都要花费很多的时间在软件工程作业上面,从开始到做完,不知不觉间一个下午,有时候还得到晚上。希望能适当减轻作业量。

    おすすめ

    転載: www.cnblogs.com/zhangqiong/p/10687672.html