精华内容
下载资源
问答
  • 本学期我学习了“软件工程”这门课。软件工程不同于我所学过的那些数学、物理课程,它不是从严格的理论推导得到结论,而是从实际工作中总结归纳而来的。 20世纪60年代,出现了“软件危机”——指在计算机软件的开发...
  • 软件学院 软件工程实践感想 欢迎下载啊 应付老师必备 哇哈哈
  • 软件工程感想

    2016-03-07 21:56:00
    学习软件工程,学会如何系统的思考,以及养成良好的编码习惯,想学好软件工程,就必须知道软件工程的目标、过程和原则:软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的...

    学习软件工程,学会如何系统的思考,以及养成良好的编码习惯,想学好软件工程,就必须知道软件工程的目标、过程和原则:软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开销合宜是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。

    软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。

    转载于:https://www.cnblogs.com/Liyutang/p/5252095.html

    展开全文
  • 软件工程学习感想

    2019-10-08 06:19:09
    通过这半学期我对软件工程的学习,从软件工程的基础到考试用户的需求分析与求解,最后到黑盒白盒测试通过自身做过的一些案例,讲解了软件工程这门本身枯燥乏味的课程,这不仅增强了学生学习的积极性,也通过让我们...

    通过这半学期我对软件工程的学习,从软件工程的基础到考试用户的需求分析与求解,最后到黑盒白盒测试通过自身做过的一些案例,讲解了软件工程这门本身枯燥乏味的课程,这不仅增强了学生学习的积极性,也通过让我们自己去做一些需求分析,我们从中学到了许多知识。老师不仅仅在课堂上对我们悉心的知道,在课外还让我们多看一些有关软件工程方面最前沿的理论,通过这段时间我读了《软件工程综合开发世间》这两本书,通过自己的读书学习,我有以下心得体会。

    众所周知软件对于一个公司,一个企业乃至一个国家都是十分重要的,因此一个软件的维护也十分重要,下面我就讲一些关于软件维护的知识。

     

    维护阶段是软件生存期中时间最长的一个阶段,也是花费的精力和费用最多的一个阶段。由于操作系统软件和基础软件版本升级或应用管理系统软件的不断开发、完善,需要对软件进行维护。但当运行环境改变或者系统功能、性能需求发生变化,使原软件不能通过维护的手段满足用户需求时,则需要进行软件更新。

    转载于:https://www.cnblogs.com/Vivian4229/p/5595195.html

    展开全文
  • 软件工程实践感想

    2016-09-04 22:58:00
    这学期学习了软件工程实践这门课,我觉得这是对上学期的软件工程课程学习的检验,上学期学习软件工程只是我们浅显的认识,相比之下,这学期就更加全面的说明了开发一个项目所需要的步骤以及开发项目过程中所需要注意...

    这学期学习了软件工程实践这门课,我觉得这是对上学期的软件工程课程学习的检验,上学期学习软件工程只是我们浅显的认识,相比之下,这学期就更加全面的说明了开发一个项目所需要的步骤以及开发项目过程中所需要注意的诸多细节。如果说上学期的课程注重理论基础的话,那么这学期的软工实践,顾名思义,就是侧重我们动手操作的能力。

    学习了这门课程, 还有老师们的多元化教课,不但让我从理论上掌握软件工程,还有从不同的实例,让理论和实践得到了很好的结合。整一个学期下来,总的来说还是学到了很多东西的,有很多地方是值得肯定的,其实在我看来,软件工程与其说是一门课程,不如说是一门思想。是一个如何去分析和处理问题的过程,应该说其范畴已经远远不止局限于该门课程,成为了一个综合的一个能够解决问题的思想集合。

    原来我认为开发一个项目最重要的就是写代码,似乎整个软件都是编代码,因为自己动手能力不强所以就很排斥做项目。可是经过我们学习软工课程到团队做 项目再到学习软件工程实践课程之后,我才真正意识到实施一个软件工程项目并不是说简单的会编码就能够解决问题的,因为一个软件的生命周期分为三个时期:软 件定义时期、开发时期、维护时期,而这三个时期整体又分为七个阶段,他们分别是:问题定义、可行性研究、需求分析、总体设计、详细设计、编码和单元测试、 综合测试,由此可看出,当我们开发一个项目时,更多的精力不是放在编码上,编码只是一个很小的模块,而是项目的整体结构上。

    转载于:https://www.cnblogs.com/ywt456/p/5840671.html

    展开全文
  • 我就这周软件工程课程的内容写一点感想吧。 下面这是我们图形学课程实验的部分代码: /**********myInit**********/ void myInit() { pn = 0; glClearColor(1.0, 1.0, 1.0, 0.0); glColor3f(0.2f, 0.2f,...

    由于我们团队项目进行到一半,不便传上来代码。我就这周软件工程课程的内容写一点感想吧。

    下面这是我们图形学课程实验的部分代码:

    /**********myInit**********/
    void myInit()
    {
        pn = 0;
        glClearColor(1.0, 1.0, 1.0, 0.0);
        glColor3f(0.2f, 0.2f, 0.9f);
        glPointSize(5.0);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        gluOrtho2D(-300, 300, -300, 300);
    }
    
    /**********myDisplay**********/
    void myDisplay()
    {
        glClear(GL_COLOR_BUFFER_BIT);
        glBegin(GL_LINES);
        glVertex2i(-301, 0);
        glVertex2i(301, 0);
        glVertex2i(0, -301);
        glVertex2i(0, 301);
        glEnd();
        glFlush();
    }
    
    /**********myMouse**********/
    void myMouse(int button, int state, int x, int y)
    {
        if (state == GLUT_DOWN)
        {
            pn++;
            p[pn].px = x - 300;
            p[pn].py = 300 - y;
    
            glBegin(GL_POINTS);
            glVertex2i(x - 300 , 300 - y);
            glEnd();
            glFlush();
        }
    }
    
    /**********main***********/
    void main(int argc, char **argv)
    {
        glutInit(&argc, argv);
        glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
        glutInitWindowSize(600, 600);
        glutInitWindowPosition(100, 150);
        glutCreateWindow("Tuxingxue2_1");
    
        //创建菜单,绑定右键
        int menu_id;
        menu_id = glutCreateMenu(right_menu);
        glutAddMenuEntry("Clear Screen", 0);
        glutAddMenuEntry("Draw Line", 1);
        glutAddMenuEntry("Draw Polygon", 2);
        glutAddMenuEntry("Draw Circle", 3);
        glutAddMenuEntry("Translate", 4);
        glutAddMenuEntry("Rotate", 5);
        glutAddMenuEntry("Size", 6);
        glutAddMenuEntry("Exit", 10);
        glutAttachMenu(GLUT_RIGHT_BUTTON);
    
        myInit();
        glutDisplayFunc(myDisplay);
        glutMouseFunc(myMouse);
        glutMainLoop();
    }
    
    //画圆
    void DrawCircle(void)
    {
        glBegin(GL_POLYGON);
        for (int i = 0; i < n; ++i)
        {
            glVertex2f(0.1*cos(2 * Pi / n*i), 0.1*sin(2 * Pi / n*i));
        }
        glEnd();
        glFlush();
    }
    
    //右键菜单内容选择事件在这里触发
    void right_menu(int id)
    {
        if (id == 10) exit(0);
        else if (id == 0)                            //Clear Screen
        {
            pn = 0;
            glClearColor(1.0, 1.0, 1.0, 0.0);
            glColor3f(0.2f, 0.2f, 0.9f);
            glPointSize(5.0);
            glMatrixMode(GL_MODELVIEW);
            glLoadIdentity();
            gluOrtho2D(-300, 300, -300, 300);
            glutPostRedisplay();
        }
        else if (id == 1)                            //Draw Line
        {
            //glClear(GL_COLOR_BUFFER_BIT);
            DrawType = 0;
            glBegin(GL_LINES);
            for (int i = 1; i <= pn; i++)
            {
                glVertex2i(p[i].px, p[i].py);
            }
            glEnd();
            glFlush();
        }
        else if (id == 2)                            //Draw Polygon
        {
            DrawType = 1;
            //glClear(GL_COLOR_BUFFER_BIT);
            glBegin(GL_POLYGON);
            for (int i = 1; i <= pn; i++)
            {
                glVertex2i(p[i].px, p[i].py);
            }
            glEnd();
            glFlush();
        }
        else if (id == 3)                            //Draw Circle
        {
            DrawType = 2;
            //glClear(GL_COLOR_BUFFER_BIT);
            glBegin(GL_POLYGON);
            for (int i = 0; i < n; ++i)
            {
                glVertex2f(p[pn].px + R*cos(2 * Pi / n*i), p[pn].py + R*sin(2 * Pi / n*i));
            }
            glEnd();
            glFlush();
        }
        else if (id == 4)                            //Translate
        {
            glTranslatef(100, 80, 0.0);                //向右移动,向上移动
            glColor3f(0.0, 1.0, 0.0);
            
            switch (DrawType)
            {
            case 0:
                glBegin(GL_LINES);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 1:
                glBegin(GL_POLYGON);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 2:
                glBegin(GL_POLYGON);
                for (int i = 0; i < n; ++i)
                {
                    glVertex2f(p[pn].px + R*cos(2 * Pi / n*i), p[pn].py + R*sin(2 * Pi / n*i));
                }
                glEnd(); 
                break;
            default:
                break;
            }
            
            //glLoadIdentity();
            glFlush();
        }
        else if (id == 5)                            //Rotate
        {
            //glTranslatef(100, 0, 0.0);
            glRotatef(60, 0, 0, 1.0);                //旋转60°
            //glTranslatef(-100, 0, 0.0);
            glColor3f(0.0, 1.0, 0.0);
            
            switch (DrawType)
            {
            case 0:
                glBegin(GL_LINES);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 1:
                glBegin(GL_POLYGON);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 2:
                glBegin(GL_POLYGON);
                for (int i = 0; i < n; ++i)
                {
                    glVertex2f(p[pn].px + R*cos(2 * Pi / n*i), p[pn].py + R*sin(2 * Pi / n*i));
                }
                glEnd();
                break;
            default:
                break;
            }
    
            //glLoadIdentity();
            glFlush();
        }
        else if (id == 6)                                //Size
        {
            //glTranslatef(-100, -50, 0.0);
            glScalef(2, 2, 1.0);                        //x axis, y axis
            //glTranslatef(100, 50, 0.0);
            glColor3f(0.0, 1.0, 0.0);
            
            switch (DrawType)
            {
            case 0:
                glBegin(GL_LINES);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 1:
                glBegin(GL_LINE_LOOP);
                for (int i = 1; i <= pn; i++)
                {
                    glVertex2i(p[i].px, p[i].py);
                }
                glEnd();
                break;
            case 2:
                glBegin(GL_LINE_LOOP);
                for (int i = 0; i < n; ++i)
                {
                    glVertex2f(p[pn].px + R*cos(2 * Pi / n*i), p[pn].py + R*sin(2 * Pi / n*i));
                }
                glEnd();
                break;
            default:
                break;
            }
    
            //glLoadIdentity();
            glFlush();
        }
    }

    这周的软件工程课着重讲解了程序代码的格式以及注释的重要性。所以我在写程序的时候注意了一下。当然肯定没有要求的那么标准,只是简单地将程序分了“块”,核心“块”前面加上必要的注释。然后在每个函数之前都有注释说明函数内容。只是还没达到非常正规的要求。未能加入函数的参数以及返回值的具体作用。即使只加入了这么一点代码,就会使整体看着十分舒服。时隔数天再读代码都会觉得思路清晰。以前改格式只是为了看着好看,并没有注意到内在的东西,比如即使是一个函数中的一段代码,在逻辑上也是有层次的,分“块”的意义就在此,将这些内在的逻辑清楚明白地展现出来,既美观整洁,又有利于团队合作。

    转载于:https://www.cnblogs.com/Dmmuistirci/p/5540463.html

    展开全文
  • 软件工程感想

    2019-10-08 17:53:26
    一开始并没有接触过有关软件工程方面的知识(当然除了生活中需要用到的电脑,手机软件),所以刚刚开始这门课程的时候有点不知所措,也不知道该如何着手学习这门课程。上了两节课的软件工程,知道了这学期并不像往年...
  • 软件课程设计心得体会软件课程设计心得体会篇一:软件工程课程设计个人体会 数学与信息工程学院 项目名称: 实验室设备管理系统 专业班级:11计教1班 学号:11290XX5 姓名:蒋一瑭 承担角色:美工,问题处理 组号:...
  • 软件工程感想

    2014-05-29 10:01:00
    我在上了一学期的软件工程课,首先要感谢王建民老师的辛苦劳作,对我们孜孜不倦的教诲,还有你这新颖活泼的教学方式,深深地令我折服。老师您辛苦了。  我曾试想过,如果说早两年让我遇见王老师是不是我的软件...
  • 软件工程感想

    2014-06-08 22:15:00
    在第一次查看课表的时候,看到软件工程课是王老师教,说实话,心里很是紧张,原因还要追溯于以前听说过在王老师的课上有个同学发生过的“短信事件”,从这件事上看出,这个老师真的不一般。。。。。。  耳听不如...
  • 软件工程感想

    2017-03-11 14:49:00
    要学习软件工程,学会如何系统的思考,以及养成良好的编码习惯,想学好软件工程,就必须知道软件工程的目标、过程和原则:软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的...
  • 软件工程课是个不错的课,因为教课老师嗓门很大,PPT做的很有意思,上课从来没有点过我的名字,万分荣幸。 软件工程课的脉络很清晰,就是个各种软件开发,个人软件开发,结对软件开发还有结组软件开发。针对这三种软件...
  • [软件工程]感想

    2019-09-27 04:11:38
    而在之前,我去了解了我们院内的其他专业,最后我选了软件工程,因为在各种代码的成功编译后所带给我的成就感是很强烈的,而且在智能时代的发展学IT类的东西让我看到职业的光景,所以最后我也成功的转了专业,也并在...
  • 软件工程课最后感想

    2016-06-21 21:34:00
    大三下各种知识关于学期开设了王老师的软件工程课,让我发现原来大学的课还可以这么上。我的前三年都从来没有接触过这种类型的讲法。以前老师总是教我们怎么解决书本上的知识点,一步一步带领我们解决问题,最后再...
  • 但是,被软件工程专业录取了。老实说,在刚得知自己即将要学习四年的专业是软件工程的时候有一点慌,因为从小我对计算机都不是很感兴趣,在此之前,从没有想过自己会学习与计算机有关的专业。但是我想,或许学习一段...
  • 因为他们觉得这个专业比较有前途,以后比较好找工作,当时我也没什么意见,也没自己喜欢的专业,因为当时高考考的很差,所以选专业也没有什么心情,而爸妈一直叫我选这个,我就第一志愿报了软件工程,然后就被选上了...
  • 《高级软件工程》这门课在软件学院中非常重要,这门课程的主要目的是阐述软件开发过程中的方法论问题,从一个全局的角度去理解软件开发过程中需要注意的问题,而不是拘泥于软件开发的具体细节和技术。这门课程帮助...
  • 软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。 在现代社会中,软件应用于多个方面。典型的软件有...
  •   本博客为笔者在完成软件工程结对编程任务后对于编程过程、最终得分的一些感想与经验分享。此外笔者还对于本课程的结对编程部分提出了一些建议。 Tips Link 作业要求博客 2019年软件工程基础-结对项目作业...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,858
精华内容 2,743
关键字:

感想软件工程