Heim Datenbank MySQL-Tutorial 软件工程总结(2)

软件工程总结(2)

Jun 07, 2016 pm 03:27 PM
für 保障 开发 总结 知识点 质量 软件工程 Bühne

知识点:(概要) 为了保障开发质量,为各阶段都准备了相应的好办法。可以说:你想得到的软件工程好方面,《软件工程》都想到了;你想不到的,《软件工程》更是想了不少。 (1)通过对软件工程的学习,了解了软件工程各个阶段的里程碑,以及在各个阶段完成中

知识点:(概要)

为了保障开发质量,为各阶段都准备了相应的好办法。可以说:你想得到的软件工程好方面,《软件工程》都想到了;你想不到的,《软件工程》更是想了不少。

(1)通过对软件工程的学习,了解了软件工程各个阶段的里程碑,以及在各个阶段完成中采用相应的处理方法,使得各阶段的任务在完成过程中既有条有理,又方便通用。

(2)比如软件工程分六大阶段(计划、分析、设计、编写、测试、维护)

(3)在各阶段完成过程中都需要的文档的记录,并成为各阶段的进度的标志和里程碑。

在软件的计划阶段,采用“开发模型”(6种),可以针对企业的不同情况,选择适当的开发方法,解决客户的问题,满足需求。

①瀑布模型:

优点:严格按照软件生存周期进行,每一阶段完成之后,必须进行评审通过后,才能进入下一阶段。发现过程中出现问题,需要返回到相应阶段进行修正、弥补,然后再重复操作,直到通过。

缺点:该模型缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题,这些问题可能导致最终开发出的软件并不是用户真正需要的软件,并且这一点往往在开发过程完成后才有所察觉。面对这种情况,无疑需要进行返工或不得不在维护中纠正需求的偏差,为此必须付出高额的代价,为软件开发带来损失。并且,随着软件开发项目规模的日益庞大,该模型的不足所引发的问题显得更加严重。

②快速原型模型

优点:通过快速开发一个原型来反映用户的需求,这样方便和客户交流,以明确客户的需求,保证软件的质量。

缺点:费用较高,因为初步开发的模型往往与最后的版本相差很大,有的基本不能用,需要全部重新开发。快速原型模型的作用仅仅用于反映客户的需求。这样,有的客户很难接受,缺乏耐心。投资很大,不好承受。

③增量模型

优点:采用先主干后分支,先基本后完善的开发方法。最开始开发出企业的主流业务,解决主要问题。随着开发的进行,在各阶段不断对软件进行完善,通过这样不断完善的开发过程,最终用户得到一个完整功能的软件。这对很多急需使用的企业来说,是不错的选择。

缺点:由于将软件分成了很多的构件,往往需要花费大部分时间在这些构件的集成上。现存的产品必须容易扩充,后开发的构件必须是简单和直观并容易集成。因此,对于增量模型,产品的体系结构的设计必须是开放的。

④螺旋模型

优点:螺旋模型将瀑布模型和原型模型结合起来,不仅体现了两个模型的优点,而且还增加了两个模型都忽略了的风险分析,弥补了两者的不足。

局限:螺旋模型的使用需要具有相当丰富的风险评估经验和专门知识,而且费用昂贵,所以只适合大型软件的开发。

⑤喷泉模型

优点:开发过程各阶段重叠性好,能尽早地发现问题并作出修改,避免问题的积累在后期造成重大损失。尤其很多问题,越早发现越早解决越好,避免返工。整个过程的要求很高,软件可维护性较好。

缺点:很多工作被重复做,过程比较复杂,无形中增大了很多在最后来看无用的工作量,但在过程中是不可能知道的。

⑥形式化方法模型:包括变换模型和净室软件过程模型。

变换模型:在软件需求分析确定以后,便用形式化的规格说明语言将其描述为“形式化软件规格说明”,然后对其进行一系列自动或半自动的变换,最终得到软件系统的目标程序。

净室软件过程模型:力求在分析和设计阶段就消除错误,确保正确,然后在无缺陷或“洁净”的状态下实现软件的制作,以生成极高质量的软件。它是一种严格的软件工程方法,强调数学验证的正确性和软
件认证的可靠性的软件工程模型,其目标和结果是降低出错率,这是使用形式化方法难于或不可能达到的。

(4)很多图的使用,能非常清晰地反映内容、简化工作。

在需求分析阶段,“数据流程图”的使用能够清楚反映企业的功能需求和企业的工作流程,方便后面阶段的进行。

在软件设计阶段,“系统结构图”能方便设计人员对各模块的合理计划和分配。

在软件的编写阶段,更是做了严格的、具有全局观的提出编写的规范,不仅保证功能的实现,而且还要求做到通用性、可移植性。保证数量的同时保证了质量。

在软件的测试阶段,在该阶段是极其重要的,因为在程序员编写过程中,很多的问题是考虑得不到位的,甚至可以说很多问题是无法预料的,它必须要在特定的环境中才会发生,而一旦发生便又是致命性的卡壳。所以在各功能模块的编写过程中需要测试,组合后更是要进行大型测试。以保障为客户提供更加安全、稳定的软件。

在对整个软件工程进行管理时使用“甘特图”,工作量及人力资源的安排,能合理地规划各工程的分配,非常有效地保证了工程的进度。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Vier empfohlene KI-gestützte Programmiertools Vier empfohlene KI-gestützte Programmiertools Apr 22, 2024 pm 05:34 PM

Dieses KI-gestützte Programmiertool hat in dieser Phase der schnellen KI-Entwicklung eine große Anzahl nützlicher KI-gestützter Programmiertools zu Tage gefördert. KI-gestützte Programmiertools können die Entwicklungseffizienz verbessern, die Codequalität verbessern und Fehlerraten reduzieren. Sie sind wichtige Helfer im modernen Softwareentwicklungsprozess. Heute wird Dayao Ihnen 4 KI-gestützte Programmiertools vorstellen (und alle unterstützen die C#-Sprache). https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot ist ein KI-Codierungsassistent, der Ihnen hilft, Code schneller und mit weniger Aufwand zu schreiben, sodass Sie sich mehr auf Problemlösung und Zusammenarbeit konzentrieren können. Git

Erfahren Sie, wie Sie mobile Anwendungen mit der Go-Sprache entwickeln Erfahren Sie, wie Sie mobile Anwendungen mit der Go-Sprache entwickeln Mar 28, 2024 pm 10:00 PM

Tutorial zur Entwicklung mobiler Anwendungen in der Go-Sprache Da der Markt für mobile Anwendungen weiterhin boomt, beginnen immer mehr Entwickler damit, sich mit der Verwendung der Go-Sprache für die Entwicklung mobiler Anwendungen zu befassen. Als einfache und effiziente Programmiersprache hat die Go-Sprache auch großes Potenzial für die Entwicklung mobiler Anwendungen gezeigt. In diesem Artikel wird detailliert beschrieben, wie die Go-Sprache zum Entwickeln mobiler Anwendungen verwendet wird, und es werden spezifische Codebeispiele angehängt, um den Lesern den schnellen Einstieg und die Entwicklung eigener mobiler Anwendungen zu erleichtern. 1. Vorbereitung Bevor wir beginnen, müssen wir die Entwicklungsumgebung und die Tools vorbereiten. Kopf

Welcher KI-Programmierer ist der beste? Entdecken Sie das Potenzial von Devin, Tongyi Lingma und SWE-Agent Welcher KI-Programmierer ist der beste? Entdecken Sie das Potenzial von Devin, Tongyi Lingma und SWE-Agent Apr 07, 2024 am 09:10 AM

Am 3. März 2022, weniger als einen Monat nach der Geburt von Devin, dem weltweit ersten KI-Programmierer, entwickelte das NLP-Team der Princeton University einen Open-Source-KI-Programmierer-SWE-Agenten. Es nutzt das GPT-4-Modell, um Probleme in GitHub-Repositorys automatisch zu lösen. Die Leistung des SWE-Agenten auf dem SWE-Bench-Testsatz ist ähnlich wie die von Devin, er benötigt durchschnittlich 93 Sekunden und löst 12,29 % der Probleme. Durch die Interaktion mit einem dedizierten Terminal kann der SWE-Agent Dateiinhalte öffnen und durchsuchen, die automatische Syntaxprüfung verwenden, bestimmte Zeilen bearbeiten sowie Tests schreiben und ausführen. (Hinweis: Der obige Inhalt stellt eine geringfügige Anpassung des Originalinhalts dar, die Schlüsselinformationen im Originaltext bleiben jedoch erhalten und überschreiten nicht die angegebene Wortbeschränkung.) SWE-A

Fassen Sie die Verwendung der Funktion system() im Linux-System zusammen Fassen Sie die Verwendung der Funktion system() im Linux-System zusammen Feb 23, 2024 pm 06:45 PM

Zusammenfassung der Funktion system() unter Linux Im Linux-System ist die Funktion system() eine sehr häufig verwendete Funktion, mit der Befehlszeilenbefehle ausgeführt werden können. In diesem Artikel wird die Funktion system() ausführlich vorgestellt und einige spezifische Codebeispiele bereitgestellt. 1. Grundlegende Verwendung der Funktion system() Die Deklaration der Funktion system() lautet wie folgt: intsystem(constchar*command);

Zusammenfassung der fünf beliebtesten Go-Sprachbibliotheken: wesentliche Tools für die Entwicklung Zusammenfassung der fünf beliebtesten Go-Sprachbibliotheken: wesentliche Tools für die Entwicklung Feb 22, 2024 pm 02:33 PM

Zusammenfassung der fünf beliebtesten Go-Sprachbibliotheken: wesentliche Werkzeuge für die Entwicklung, die spezifische Codebeispiele erfordern Seit ihrer Geburt hat die Go-Sprache große Aufmerksamkeit und Anwendung gefunden. Als aufstrebende effiziente und prägnante Programmiersprache ist die schnelle Entwicklung von Go untrennbar mit der Unterstützung umfangreicher Open-Source-Bibliotheken verbunden. In diesem Artikel werden fünf beliebte Go-Sprachbibliotheken vorgestellt. Diese Bibliotheken spielen eine wichtige Rolle bei der Go-Entwicklung und bieten Entwicklern leistungsstarke Funktionen und praktische Entwicklungserfahrung. Um die Verwendung und Funktion dieser Bibliotheken besser zu verstehen, werden wir sie gleichzeitig anhand konkreter Codebeispiele erläutern.

VSCode verstehen: Wofür wird dieses Tool verwendet? VSCode verstehen: Wofür wird dieses Tool verwendet? Mar 25, 2024 pm 03:06 PM

„VSCode verstehen: Wofür wird dieses Tool verwendet?“ „Als Programmierer, egal ob Sie Anfänger oder erfahrener Entwickler sind, können Sie auf den Einsatz von Codebearbeitungstools nicht verzichten.“ Unter vielen Bearbeitungstools ist Visual Studio Code (kurz VSCode) bei Entwicklern als Open-Source-, leichter und leistungsstarker Code-Editor sehr beliebt. Wofür genau wird VSCode verwendet? Dieser Artikel befasst sich mit den Funktionen und Verwendungsmöglichkeiten von VSCode und stellt spezifische Codebeispiele bereit, um den Lesern zu helfen

Ist PHP Front-End oder Back-End in der Webentwicklung? Ist PHP Front-End oder Back-End in der Webentwicklung? Mar 24, 2024 pm 02:18 PM

PHP gehört zum Backend in der Webentwicklung. PHP ist eine serverseitige Skriptsprache, die hauptsächlich zur Verarbeitung serverseitiger Logik und zur Generierung dynamischer Webinhalte verwendet wird. Im Vergleich zur Front-End-Technologie wird PHP eher für Back-End-Vorgänge wie die Interaktion mit Datenbanken, die Verarbeitung von Benutzeranfragen und die Generierung von Seiteninhalten verwendet. Anschließend wird anhand konkreter Codebeispiele die Anwendung von PHP in der Backend-Entwicklung veranschaulicht. Schauen wir uns zunächst ein einfaches PHP-Codebeispiel zum Herstellen einer Verbindung zu einer Datenbank und zum Abfragen von Daten an:

Welche Linux-Distribution eignet sich am besten für die Android-Entwicklung? Welche Linux-Distribution eignet sich am besten für die Android-Entwicklung? Mar 14, 2024 pm 12:30 PM

Die Android-Entwicklung ist eine arbeitsreiche und spannende Aufgabe, und die Auswahl einer geeigneten Linux-Distribution für die Entwicklung ist besonders wichtig. Welche der vielen Linux-Distributionen eignet sich am besten für die Android-Entwicklung? In diesem Artikel wird dieses Problem unter verschiedenen Aspekten untersucht und spezifische Codebeispiele aufgeführt. Werfen wir zunächst einen Blick auf einige derzeit beliebte Linux-Distributionen: Ubuntu, Fedora, Debian, CentOS usw. Sie alle haben ihre eigenen Vorteile und Eigenschaften.

See all articles