1940களில் கணினியானது வன்பொருளை (ஹாட்வெயார்) வடிவமைப்பதே பகீரதப் பிரயத்தனமாக இருந்தது. முதலாம் சந்ததிக் கணினிகளில் எந்த ஒரு இயங்குதளமும் இருக்கவில்லை. கணினிக்குத் தரவானது சுவிச்களூடாகவும் (switch) காந்த நாடாவூடாகவுமே (Magenetic Tapes) ஊடாகவே உள்ளிடப்பட்டது. 1950 களில் இரண்டாம் சந்ததிக் கணினிகள் உருவாகத் தொடங்கின. இவை சாள்ஸ் டார்வினின் கூர்புத் தத்துவம் போன்று இவை கணினி இயங்குதளத்தைக் கொண்டிருந்ததுடன் இக்காலப் பகுதியில் மேல் தர நிரலாக மொழிகள் (High Level Programming Languages) உருவாக்கத் தொடங்கின. வன்பொருட்களின் திறனானது பலமடங்காகாக அதிகரித்ததுடன் அவற்றில் விலையானது சரமாரியாகக் குறையத் தொடங்கியது. இம்மாறுதல்களால் கணினியில் மென்பொருட்களை உருவாக்குதலில் கூடுதலாகக் கவனம் திரும்பியது. கணினிகள் பல்வேறுபட்ட பிரயோகங்களைக் கையாளும் வண்ணம் உருவாக்கப்பட்டது. 

மென்பொருட்கள் இலகுவான நிரலாக்கலில் இருந்து மிகவும் சிக்கலான பரந்து பட்ட தேவைகளுக்காக உருவாகத் தொடங்கியது. இவற்றை உருவாக்குவதிலும் சிரமங்கள் ஏற்பட்டன. சிறிய நிரல்களை உருவாக்குவதற்கு பாவிக்கப்பட்ட உத்திகள் பெரிய மென்பொருட்களைப் உருவாக்கப் பாவிப்பதற்கு உபயோகிக்க முடியாமல் இருந்தது. இதில் முறையாக ஆவணப்படுத்தாமை, சிறப்பான திட்டமிடல் இன்மை, சீர்தரமான நிரலாக்கல் இன்மை, மென்பொருள் விருத்தியாளர்களுக்கிடையிலான கூட்டு விருத்தியாக்கம் இன்மை போன்ற பெரும் பிரச்சினையாக அமைந்தது. இதன் காரணமாக மென்பொருளின் விலை வரம்புமீறீயது, திட்டமிட்ட திகதிக்குள் மென்பொருளை விருத்திசெய்ய முடியாமல் இருந்தது. இதைத் தீர்த்து வைப்பதற்காக மேலும் நிரலாக்கர்கள் திட்டங்களிற்குத் சேர்க்கப்பட்டனர். ஆனால் இதனால் மேலும் மென்பொருள் விருத்தியாக்கம் மேலும் பிற்போடப்பட்டது. இதற்கு முக்கிய காரணம் என்னவெனில் திட்டத்திற்கு சேர்க்கப்பட்ட புதிதான நிரலாக்கர்களை பயிற்றுவிப்பதில் செலவிடப்பட்ட நேரவிரயமும் மென்பொருள் விருத்தியாளர்களுக்கிடையிலான கூட்டிணைவும் இல்லாமையாகும்.

மென்பொருளும் மென்பொருள் பொறியியலும்
வரலாறு
மென்பொருளை விருத்திசெய்ய இயலுமா என்பதைக் கண்டறிதல்
சிஸ்டம் வடிவமைப்பு