软件开发生命周期资源


3

我目前是一名大学生,我觉得我的任何课程都几乎触及了软件开发生命周期(SDLC)。

我已经实习了几年公司,并且我一直在实习中学习SDLC,但是我想要调查人群,以便从中分一杯羹。

你使用什么SLDC资源(书籍,网站,杂志,通讯等)?

3

这两个都在SPM巨大的资源和方法,其中:
Software Project Survival Guide - 史蒂夫·麦康奈尔
Rapid Development - Steve McConnell

这是SCRUM一个很好的资源,开发的敏捷方法
Agile Software Development with Scrum


2

这里有一个不太有用的答案:行业本身还没有真正理解SDLC。

关于开发软件时使用什么方法有很多不同的意见。如果你还没有,尝试谷歌搜索或维基百科 - 今天使用的一些更常见的流行语:瀑布,敏捷,测试驱动,Scrum,RAD。有大量关于这些想法及其相对优势的文章。

需要理解的是,软件开发行业对发展的生命周期应该是没有很好的想法。关于它是什么有很多研究,但通常这项研究伴随着评论,谈论它有多失败。因此,在过去15年左右的时间里,SDLC领域出现了几个分歧,因为人们和公司发明了实现构建软件的新方法。

同样,学校也没有很好地处理这种情况。他们希望能够以足够的深度教授一个特定的想法来填补一个学期的课程。由于存在很多(通常是相互冲突的)思想流派,SDLC并不适合。这些可能太新,不能很好地理解(你必须真正理解某些东西才能够教),否则他们可能太深以至于无法真正进入教室。大多数大学课堂上能做的最好的事情是拿起SDLC较早的想法和材料(其中一些可能已经过时),并将其作为其完成的一个例子。

个别公司将各自拥有SDLC(实际上根据部门的不同,其中一些会有多个)。事实上,当你踏入职业生涯时,你想问的一件事是他们如何去完成他们的发展。例如,我很欣赏以高度熟练的同事在灵活,高度灵活(有些人会说混乱)的开发环境中工作。这对每个人都不是好事。技能和信心较低的开发者可能更喜欢采用更加结构化,自上而下的方法。

我最好的建议是不要期待对SDLC问题有个“回答”。相反,准备阅读/听取他人的经验,并尝试就如何构建软件得出自己的结论。保持灵活性,阅读很多内容(尤其是信息较新的网站),并可能参加会议。一旦你习惯于开发,你将能够更好地理解这些问题,并可能为更好的解决方案做出贡献。


1

另请参阅www.sdlcmetrics.org软件开发生命周期指标的百科全书。