Planning voor ontwikkeling van softwaretoepassingen (3 dingen om in gedachten te houden)

Planning voor ontwikkeling van softwaretoepassingen (3 dingen om in gedachten te houden)!

De planning voor de ontwikkeling van toepassingen is niet langer een kwestie van het selecteren van hulpmiddelen, talen en het verzamelen van verschillende bronnen die daarvoor nodig zijn.

Afbeelding Courtesy: transformersjobs.com/wp-content/uploads/2013/06/software-engineer.jpg

Met de toenemende bewustwording onder de managers van hun recht op informatie 'en de betrokkenheid van gebruikers bij het proces van applicatie-ontwikkeling, zijn een aantal gerelateerde problemen gerezen die moeten worden opgelost.

Deze kwesties zweven rond vier basiskwaliteiten waarnaar men op zoek is in een goed informatiesysteem, namelijk flexibiliteit, integratie, efficiëntie en controle. Interessant is dat deze kwesties met elkaar zijn verweven en dat er tot op zekere hoogte sprake is van een afweging tussen elk van hen.

(a) Integratie versus flexibiliteit:

Integratie van elke applicatie met informatiesystemen voor verschillende bedrijfsfuncties is een gewenste kwaliteit. Een dergelijke integratie wordt bereikt door gelijktijdige updating van alle relevante gegevens op het moment dat een bepaalde transactie in de onderneming wordt geregistreerd.

De integratie van applicaties zorgt ervoor dat elk in de werkgroep een consistent beeld krijgt van de huidige realiteit van de onderneming. Dit voorkomt op zijn beurt de mogelijkheid van tegenstrijdige impulsen door het ontbreken van de laatste informatie voor sommigen van hen. Maar de integratie kan worden bereikt door de regels voor het bijwerken van gegevens in de toepassingssoftware op te nemen.

Een functionele manager vereist daarentegen flexibiliteit in deze regels voor het bijwerken. Een verkooptransactie in een geïntegreerde toepassing zal bijvoorbeeld de informatie over de debiteuren actualiseren, op het moment dat de goederen worden verzonden.

Aan de andere kant zou de marketingdirecteur van de financiële afdeling verlangen dat hij begrijpt dat de kortingspercentage nog steeds onderhandelbaar is met de klant en dat de goederen worden verzonden vanwege een dringende eis. Het kan dus zijn dat de prijs later moet worden herzien, terwijl de integratie van de toepassing over het algemeen geen wijziging van gegevens met terugwerkende kracht mogelijk zou maken.

Een vergelijkbare situatie kan zich voordoen in geval van een aankooptransactie waarbij de overeengekomen prijs afhankelijk is van de aankoop van een bepaalde hoeveelheid binnen een bepaalde periode. Ingeval het bedrijf niet in staat is om die kwalificerende hoeveelheid op te heffen gedurende de opgegeven tijd, kan de prijs met terugwerkende kracht worden herzien.

De financiële en auditprofessionals stemmen over het algemeen niet in met wijzigingen met terugwerkende kracht. Bij gebrek aan integratie was het probleem eenvoudig. De betreffende afdeling kan het transactiedocument gewoon aanhouden en niet laten gaan tot het financiële informatiesysteem, tot die tijd. Zelfs als het financiële en auditpersoneel de noodzaak begrijpt, zullen enkele regels voor het bijwerken van de gegevens moeten worden gewijzigd, wat gepaard gaat met het bijbehorende risico van fouten en vertragingen.

Het andere alternatief is om de regel voor bijwerken aan te passen en dit soort situaties in de toepassing op te nemen. Dat is hoe we een applicatie flexibeler maken. Het anticipeert op dit soort situaties en treft voorzieningen hiervoor aan. Maar de flexibiliteit heeft kosten.

Elk element van flexibiliteit maakt de software omvangrijk en gecompliceerd. Er is dus een afweging tussen integriteit en flexibiliteit. Wanneer we integreren, verliezen we waarschijnlijk een deel van de natuurlijke flexibiliteit die we hebben. Het probleem moet door de bedrijfsmanagers voor elke gelegenheid worden opgelost en er is een passend evenwicht tussen integratie en flexibiliteit behouden. Gelukkig is er voldoende ruimte om de twee in evenwicht te brengen, omdat er verschillende niveaus van integratie en flexibiliteit kunnen zijn.

(b) Efficiëntie versus flexibiliteit:

Er is een afweging tussen efficiëntie en flexibiliteit. Aangezien er meer regels en alternatieve scenario's voor verschillende soorten transacties zijn, wordt de applicatie minder efficiënt in termen van snelheid van gegevensinvoer en snelheid van verwerking.

Dit gebeurt vanwege de toevoeging aan het aantal variabelen dat moet worden geëvalueerd voordat de gegevens worden bijgewerkt. Het maakt de software ook ingewikkeld, wat resulteert in extra trainingskosten. Het voegt ook toe aan de hardwarevereisten en de gegevens vliegen houden deze extra variabelen bij.

Doorgaand met het voorbeeld van de bovenstaande verkooptransactie, kan flexibiliteit worden ingevoerd om een ​​speciale regel te bieden voor de behandeling van dergelijke verkooptransacties voor het bijwerken van gegevens. Men zal dan een extra type verkooptransactie hebben.

Het systeem moet dit type transacties controleren telkens wanneer het een verkooptransactie verwerkt. Dit maakt het systeem niet alleen ingewikkelder, maar vereist ook meer verwerkingstijd. Een andere moeilijkheid zou zich voordoen met betrekking tot de opleiding van het personeel dat is geassocieerd met de gegevensinvoer.

De training moet hen in staat stellen om dit soort transacties te begrijpen en alle anderen die de informatie met betrekking tot verkopen gebruiken, moeten ook begrijpen wat de implicaties zijn van de behandeling die aan een dergelijke transactie wordt gegeven. Dit alles zou resulteren in het verlagen van de efficiëntie van software.

Er is dus een noodzaak om de voor- en nadelen van het introduceren van flexibiliteit met betrekking tot elke taak en elk type informatie af te wegen en een balans te vinden tussen efficiëntie en flexibiliteit.

(c) Controle versus flexibiliteit:

Flexibiliteit heeft nog een andere kost. Het valt de besturingssystemen aan de onderkant aan. Hiermee kunnen gebruikers het systeem aanpassen / opnieuw configureren volgens hun behoeften. Dergelijke functioneringsstijlen resulteren in een verzwakking van de bedieningselementen die essentieel zijn om de kwaliteit van de gegevens en de betrouwbaarheid ervan te waarborgen. Zoals opgemerkt in het hierboven aangehaalde voorbeeld, zou de mogelijkheid om verkoop- of aankoopcijfers met retrospectieve effecten te wijzigen, een bron van computermisbruik kunnen zijn.

Er is geen regel die universeel kan worden toegepast om dergelijke situaties aan te pakken. Elke situatie moet worden geanalyseerd en de alternatieven moeten op basis van kosten en baten voor het bedrijfsleven worden beoordeeld op flexibiliteit en integratie. De kosten van flexibiliteit in termen van complexiteit en andere dergelijke implicaties voor de efficiëntie van het systeem moeten in aanmerking worden genomen.