Fifth assignment--effectiveness analysis and several questions (personal work) preface
After reading the goals and planning of the course, many students are eager to improve their ability to practice, then start with the first individual project, the topic requirements to see below.
Read
Read the contents of chapter I to chapter III of the Law of construction and show the results after reading in the work below. In particular, the 2nd chapter of the performance analysis and personal software development process (PSP).
Reference article:
- The effectiveness analysis and several problems in the--python of the teaching notes of the "Construction law"
- Efficiency analysis of arithmetic device
- Soft work 2nd time-arithmetic
Title Description
You can choose the following topics (or choose your own topic and language, submit the material unchanged):
Title Requirements:
- can automatically generate primary school arithmetic topic (note is for the pupils, if the results appear negative, they will be confused!) )
- In addition to integers, support the arithmetic of true fractions
Tool List
- Programming Language: Python
- Performance analysis tools: multiple (optional): 72763234
- Source Control Platform: Github
Test Notes requirements and instructions
- The project design analyzes and understands the requirements, completes the project independently, and publishes the latest project on GitHub, following the specifications in the above-mentioned test notes.
- The project test uses unit tests to test the project and uses the plug-in to view metrics such as Test branch coverage.
- Performance optimization after the first version of the project is completed, use the Profiling Tools to identify and improve the performance bottlenecks in your code.
- Source control requires the use of GitHub to manage source code during project practice, and the code progresses to check in to GitHub. Items that are not properly checked in will be randomly sampled by the TA to inquire about the project details.
- "blog post" publishes blogs according to requirements, uses relevant content learned in the method of construction, and combines the practical experience of individual projects to write the mental journey and harvest of the solution project. Jobs that are clearly inconsistent with the GitHub project will cancel the performance.
Blog specifications
Post the blog post to a personal blog and submit it to the class blog, Word leave a file, and include the following 8 content. (10 points)
- Give the GitHub project address at the beginning of the article. (0.5 ')
- Before you begin implementing the program, record the amount of time you estimate will be spent on the development of each module of the program in the following PSP table. (0.5 ')
- Description of the problem-solving idea. That is, just beginning to get the topic, how to think, how to find information of the mental process. (0.5 ')
- Design the implementation process. Design includes how the code is organized, for example, there will be several classes, several functions, how they relate to each other, whether the key function needs to draw a flowchart? (2 ')
- Code description. Show the project key code and explain the ideas and notes. (2 ')
- Test run. The program must be operational, showing that the program is running. PS: If there are expansion requirements or more advanced requirements, please show out, there are extra points. (2 ')
- Record the time it takes to improve the performance of your program, describe your ideas for improvement, and present a performance analysis diagram showing the most consumed functions in your program. PS: If you develop with visual Studio Community 2015, using C + + or the C # language, the Performance analysis tool for VS 2015 can be generated automatically. (2 ')
- After you have implemented the program, record the amount of time you actually spend on each module of the program in the following PSP table. (0.5 ')
Special attention:
- Complete and submit by time--normal rating
- --0 points within one week of late delivery
- Late delivery of more than a week or not to pay--------inverted this job score
Additional questions (2 points)
The TA wrote a arithmetic test program,
The purpose is to test whether the generation of four operational procedures meet the requirements, is currently in beta phase, testing procedures are released in a restful form:
Interface Address
Parameter description
If:
- Participate in the test, the way there are many, the students program can directly through the restful way to access the test program (recommended),
You can also compare the results of a test program execution by executing your own program, and in either case, you need at least one bug to present the test program.
- The bug needs to be issue directly here, along with issue link in the blog.
You can get an additional score of 2 points.
Reference links
- Understanding the RESTful architecture
- Assess the value of rest from a consumer perspective
Attached: PSP 2.1 form
psp2.1 |
Personal software Process Stages | Time
(%) student | time
(%) SDE |
Planning |
Plan |
|
|
Estimate |
Estimate how long this task will take |
|
|
Development |
Development |
|
|
Analysis |
Demand analysis |
|
|
Design Spec |
Creating a design Document |
|
|
Design Review |
Design Review (and colleagues review design documents) |
|
|
Coding Standerd |
Code specification (to develop appropriate specifications for current development) |
|
|
Design |
Specific design |
|
|
Coding |
Specific code |
|
|
Code Review |
Code review |
|
|
Text |
Testing (self-test, code modification, commit modification) |
|
|
Reporting |
Report |
|
|
Text Report |
Test report |
|
|
Size Measurement |
Computational effort |
|
|
Postmortem & Process Improvement Plan |
Summarize afterwards and propose process improvement plan |
|
|
The fifth time Operation--python efficiency analysis and several problems (personal work)