Software engineering: Software engineering omvat softwareontwikkelingstechnologie en softwaremanagementtechnologie, en is een discipline die softwareproductie bestudeert. Een combinatie van managementtechnologie en computertechnologie.
Er zijn vier fasen van computerontwikkeling: elektronenbuizen, transistors, geïntegreerde schakelingen en grootschalige geïntegreerde schakelingen
Softwareontwikkeling vereist 3 processen en 8 fasen:
Het eerste proces: probleemdefinitie, haalbaarheidsstudie en eisenanalyse Het tweede proces: algemeen ontwerp, detailontwerp, codering, testen Het derde proces: onderhoud
Haalbaarheidsstudie: Kan deze software dit doen? Eisenanalyse: veiligheid, realisatieomgeving
De levenscyclus van software is 5-8 jaar, de kosten worden binnen 5 jaar terugverdiend en de winst wordt in 3 jaar geboekt
Oorzaken van softwarecrisis: 1: Het heeft betrekking op zijn eigen kenmerken; 2: De persoon die de software heeft ontworpen heeft een relatie; 3: Computerarchitectuur, hardwareontwerp op de lange termijn, von Neumanns ontwerpprincipes.
Hoe ziet een softwarecrisis eruit: 1: De schatting van softwareontwikkelingskosten en -schema's is vaak onnauwkeurig; 2: Gebruikers zijn van tijd tot tijd ontevreden over het voltooide softwaresysteem; 3: De kwaliteit van softwareproducten is vaak onbetrouwbaar; (Gegarandeerde softwarekwaliteit: testen, proefdrukken) 4: Software is vaak niet ononderhoudbaar; (Het is geen broncode, kan niet worden gewijzigd, software is vertrouwelijk, commercieel gedrag) 5: De software heeft geen juiste documentatie (de documenten bevatten technische vertrouwelijkheid) 6: De kosten van software in verhouding tot computerkosten stijgen jaar na jaar; 7: De productiviteit van softwareontwikkeling is veel lager dan het aantal computerapplicaties. (Softwareontwikkeling is niet zo snel als hardwareontwikkeling)
Oplossingen en methoden voor softwarecrisisoplossing: 1: De ontwikkeling van een nieuwe generatie computers versnellen; 2: Organiseren en plannen, strikte managementmethoden voor softwareontwikkeling (ontwikkeling van reguliere bedrijven); 3: Vat de succesvolle technologieën en methoden van software samen en promot deze. (Vaak houden ze seminars, publiceren ze artikelen en organiseren ze academische uitwisselingen) 4: Je moet een goed ontwikkelhulpmiddel kiezen. Bijvoorbeeld: IDE-tools.
Softwareontwikkelingsmodel: 1: Watervalmodus (ook bekend als: gesegmenteerde modus); Deze ontwikkelmethode is geschikt voor gebruik in situaties waarin softwarevereisten relatief duidelijk zijn, ontwikkeltechnologie relatief volwassen is en het engineeringmanagement relatief streng is. Voordelen: De software die met deze modus is ontwikkeld, heeft een goede structuur.
2: Incrementele modus Beginnend met een deel van de eisenanalyse, eerst een onvolledig systeem opstellen, vervolgens het systeem testen en uitvoeren, en vervolgens het systeem testen en draaien, ervaring en feedbackinformatie verkrijgen, zodat het systeem continu wordt uitgebreid en verbeterd totdat de gebruiker tevreden is. (In het begin kon ik geen volledige eis stellen, de variabiliteit was relatief sterk, onderzoekssoftware, startups) Voordelen: Met deze methode om software te ontwikkelen, is de gebruikerstevredenheid het hoogst.
3: Transformatiemodus Beginnend met de formele specificatie van de oorspronkelijke eisen wordt het uiteindelijke programmasysteem verkregen na een reeks programmatransformaties. Dit model vereist de ondersteuning van rigoureuze wiskundige theorie en formele technieken, en bevindt zich nog in de onderzoeks- en experimentele fase.
Software technische review en managementbeoordeling: 1: De rol van technische review Belangrijke maatregelen om de kwaliteit van software tijdens technische beoordeling te waarborgen, en belangrijke maatregelen om de softwarekosten tijdens technische beoordeling te verlagen. (Kwaliteitskosten) 2: De rol van managementbeoordeling De belangrijkste manier om softwareontwikkelingsprojecten te beheren en te controleren is de sleutel tot besluitvorming over softwareontwikkelingsprojecten.
|