软件开发实战经验分享(全过程版)一(Practical experience sharing of software development (whole process version))

一、项目背景

  大二下学期王建民主任要求团队开发一款软件,团队规模为三人,软件类型为安卓app,分为多个阶段进行打卡验收。

二、开发体会

一款学习辅助类软件-服务大学生

  当拿到这个任务时,第一感觉就是难,虽然寒假也自学了安卓,但是由于基础差,编程不熟练,就感觉做起来无从下手,这要怎么做,要做什么,我们能做出来吗,做的东西有人用吗,一系列问题油然而生,截至到今天,已经过去了一个半月,在回头看看刚拿到任务的时候,还是觉得难,但我们的软件却越做越好了,心中有很多的感触,想和大家分享一下。

  首先技术上的难题根本就不算难题,技术不会完全可以学,没有学不会的技术,只有不去学的人,虽然我也有点懒,碰到了一个又一个的难题,bug,有时候真的不想去解决了,糊弄糊弄过去了,可有一股力量一直在支撑着我做下去,就是我认为我的软件是有人用的,只要做出来一定会有人用当然现在基本功能已经实现了,界面还是很拉跨,因为我想让我做的东西有人用,如果没人用,那这款软件又有什么价值呢,正是有这个想法,我尽可能的把界面设计的美观,虽然有些功能目前实现不了,我尽可能的去解决bug,在不同的手机上做测试,因为有了用户,你的一切想法就得从用户出发。

三、开发难题

1、

  我做的第一个为用户着想的功能就是软件可以联网访问,现在的软件如果不联网几乎是没有人使用的,这可把我难坏了,联网功能要怎么实现,javaweb我会,安卓我不会啊,完全没有经验啊,这是第一大难题。

2、

  第二个难题就是,要怎么联网,联网的资源要放在哪,服务器上吗?,服务器怎么配置,文件怎么部署,想想就要难死了,想都是问题,做才是答案,最后,我成功解决了这个问题

3、

  在解决完第二个为问题后我又有了新的想法,既然我这款软件是有人用的,怎么能让用户离不开你的,目前我们这款软件还只是在我们学校内部进行分享,这关键的解决方案就是带有软件自动更新升级服务,当给用户第一感觉认为你这款软件行的时候,当他下载好之后,他还不是你真正的用户,因为如果你不定时更新bug,增加新功能的话,用户随时可能卸载,只要我们前期的推广让用户接受了我们的软件,只要告诉用户我们有自动更新功能,这要就可以实现对用户的绑定,虽然也会流失,但毕竟主动权就掌握在了我们手里,但是如果你没有继续做下去的想法的话,上述就都成为了废话。

四、开发过程的感触

   1.《初次使用新技术的难受》。。。。。。

  2.《一次次解决bug的心酸》。。。。。。

  3.《不断调整页面的无奈》。。。。。。

  4.《测试bug的苦闷,好多,呜呜呜》。。。。。。、

  5.《软件推广的卑微》。。。。。。

  6.《收获成功的喜悦》。。。。。。

  总之一堆的消极情绪希望换来最后一个积极的,可能有强迫症吧,总想做好一些,确实,当你想到你的东西有人用的话,你就不断想优化它。

下一篇。《初次使用新技术的难受》

————————

< strong > I. project background < / strong >

In the second semester of sophomore year, director Wang Jianmin asked the team to develop a software. The size of the team is three people. The software type is android app, which is divided into multiple stages for punch in acceptance.

< strong > II. Development experience < / strong >

A learning assistant software – serving college students

When I got this task, my first feeling was that it was difficult. Although I also taught myself Android in winter vacation, I felt that I couldn’t start with it because of poor foundation and unskilled programming. How and what should we do? Can we do it? Can we use what we do? A series of questions arise spontaneously. Up to now, it has been a month and a half. When I look back and just got the task, I still feel difficult, But our software is getting better and better. I have a lot of feelings in my heart. I want to share with you.

First of all, technical problems are not problems at all. Technology can’t be learned completely. There are no technologies that can’t be learned. Only people who don’t learn. Although I’m a little lazy, I encounter one problem after another, bugs. Sometimes I really don’t want to solve them. After fooling, there is a force that has been supporting me to do it. < strong > is that I think my software is used by someone, As long as it is made, someone will use < / strong >, < strong > of course, now the basic functions have been realized, and the interface is still very cross < / strong >, because I want to make what I do useful. If no one uses it, what is the value of this software? It is this idea that I try my best to design the interface as beautiful as possible. Although some functions can not be realized at present, I try my best to solve the bugs and test on different mobile phones, Because you have users, all your ideas have to start from users.

< strong > III. development challenges < / strong >

1、

The first function I do for the sake of users is that the software can be accessed online. If the current software is not online, almost no one uses it, which makes it difficult for me. How to realize the networking function? I can do JavaWeb and I can’t do Android. I have no experience at all. This is the first big problem.

2、

The second problem is how to network, where to put the networked resources, and on the server?, It’s hard to think about how to configure the server and how to deploy the files. Thinking is a problem, and doing is the answer. Finally, I successfully solved this problem

3、

After solving the second problem, I have a new idea. Since my software is used by someone, how can users be inseparable from you? At present, our software is only shared within our school. The key solution is to provide automatic software update and upgrade service. When users feel that your software is OK at first, when they download it, they are not your real user, Because if you update bugs from time to time and add new functions, users may uninstall at any time, < strong > as long as our early promotion allows users to accept our software, as long as we tell users that we have automatic update function, we can bind users. Although it will also be lost, after all, the initiative is in our hands, but if you don’t have the idea to continue, All this has become nonsense

< strong > IV. feelings of the development process < / strong >

   1. The pain of using new technology for the first time……

2. “The bitterness of solving bugs again and again”……

3. “The helplessness of constantly adjusting the page”……

4. “The bitterness of testing bugs, a lot, Wuwuwuwu”

5. The lowly of software promotion……

6. The joy of success……

In short, a pile of negative emotions hope to exchange for the last positive one. There may be obsessive-compulsive disorder. You always want to do better. Indeed, when you think that your stuff is used, you constantly want to optimize it.

< strong > next. The pain of using new technology for the first time < / strong >