软件开发生命周期资源
我目前是一名大学生,我觉得我的任何课程都几乎没有触及过软件开发生命周期(SDLC)。
我已经在一家公司实习了几年,并且从实习中学习了SDLC,但是我想对人群进行投票,以便从中进行拓展。
我们使用哪些SLDC资源(书籍,网站,杂志,新闻通讯等)?
解决方案
回答
这两个是SPM及其方法的重要资源:
软件项目生存指南Steve McConnell
快速发展史蒂夫·麦康奈尔
这是SCRUM的好资源,SCRUM是一种敏捷的开发方法
使用Scrum进行敏捷软件开发
回答
这是一个不太有用的答案:该行业本身还没有真正弄清SDLC。
在开发软件时使用哪种方法有很多不同的看法。如果我们还没有,请尝试使用Google搜寻或者Wikipedia搜寻当今使用的一些较常见的流行词:瀑布,敏捷,测试驱动,Scrum,RAD。有关这些想法及其相对优势的文章很多。
需要了解的是,软件开发行业对开发的生命周期没有一个很好的了解。有很多关于它是什么的研究,但是通常在研究中伴随着评论,它谈到了失败的严重程度。因此,在过去的15年左右的时间里,随着人们和公司发明并实施构建软件的新方法,SDLC领域出现了几次分裂。
同样,学校也不能很好地处理这种情况。他们希望能够以足够的深度讲授一个特定的概念来完成一个学期的课程。 SDLC不太适合这种情况,因为存在许多(通常是相互冲突的)思想流派。这些可能太新而无法真正理解(我们必须真正理解一些东西才能教它),或者它们太深而无法真正进入课堂环境。大多数大学班级可以做的最好的事情是学习旧的SDLC想法和材料(其中一些在行业中可能已经过时了),并将其作为实现方法的一个示例进行讲授。
每个公司在SDLC上都有自己的看法(实际上,有些会根据部门而有不同看法)。实际上,当我们踏入职业生涯时,我们要问的一件事是他们如何着手发展自己。例如,我很高兴与高技能的同事一起在敏捷,高灵活性(有些人会说混乱)的开发环境中工作。不一定对每个人都有好处。技能和/或者信心较弱的开发人员可能更喜欢结构化,自上而下的方法。
我最好的建议是不要期望对SDLC问题有一个"答案"。相反,请准备好阅读/聆听他人的经验,并尝试就如何构建软件得出自己的结论。保持灵活性,阅读大量内容(尤其是信息较新的网站),并尽可能参加会议。一旦我们适应开发工作,就可以更好地理解问题,甚至可以为更好的解决方案做出贡献。
回答
还可以访问www.sdlcmetrics.org,它是软件开发生命周期指标的百科全书。