Computer Language and Software Development Cycle
It is a type of artificial language used to communicate with computer. We know that a computer is an electronic device works on ON and OFF (1 AND 0) Technique to read and write data. We use several languages to communicate with others, just like it, we use several computers to communicate with other computers e.g. BASIC, COBOL, PASCAL, FORTRAN etc. Computer understands only computer language written in binary or simple English followed by special syntax.
Types of Computer languages
- Machine level language
- Low level language
- High level language
- Advance high level language
Machine Code (Machine Languages)
Computer dependent language written in binary is called Machine code or Machine language. Machine code requires a high level programming skill along with sound knowledge of computer architecture and functions. Instructions written in binary are immediately executable without help of any language translators because computer understands only machine codes.
- It is written on machine code so no need to translate it into machine language.
- It has faster execution than other languages.
- Other translator type subsidiary programs are not required.
- It is difficult to understand and develop a program using machine language.
- It is machine-oriented language.
- The knowledge of computer internal architectures is essential for program coding.
- Time consuming coding.
- Debugging is tough and difficult.
Low Level Language
It is a low-level language in which some high level words are used with machine codes. These words are called mnemonics. Some mnemonics are given below:
- ADD for Addition
- SUB for Subtraction
Assembly language require ASSEMBLER to translate assembly language code into computer understandable code (Machine code). So, it is not immediately executable. It is difficult to develop the program using this immediately executable. It is difficult to develop the program using this language.
- Coding is faster than machine code language because mnemonics are used for program coding.
- Less time consumed respect to Machine code languages.
- Debugging is easy.
- Machine oriented language
- The good knowledge of machine architectures is required.
- Time consuming
- Translator is used to translate program into machine code.
- Not as fast as machine code language in case of execution.
High level language
High level language contains a set of instructions written in simple English. It is a set of some symbols, words and rules to instruct machine. The language is oriented towards the problem and procedures. Program written in high level language is called source program. A language translator is used to translate into object code (Machine code).
- Simple English is used for program coding.
- Machine independent
- Problem and procedure oriented
- The knowledge of computer architectures is not necessary.
- It requires less time for program coding.
- Program can be debugged easily
- Since it is written in user's language so it should be converted into machine code.So it requires a translator.
- The execution of the program is slower than machine code.
- The conversion time is slower than assembly language because it is entirely written on human language.
4GL (4th Generation Language)
It is a high level language in which fewer instruction codes are used to accomplish a particular task. It is non-procedural language. Major 4th generation languages are used to get information from files and databases. These are Database oriented programming language.
Example :DBASE, FOXPRO, SQL, VB Etc
- Software developed using 4GL are user friendly.
- It is very easy to develop a program because no need to remember the commands and instructions for the program development and we can use drag and drop type command button to develop the program. These buttons are available on the system that helps to develop the program.
- Program runs slower because it is heavy in size and design.
- It is required to devote longer time to convert into machine code.
- Huge sized powerful translators are required to convert.
Software Development Cycle
The software is developed by dividing the whole process into multiple stages arranged in cycle called software development cycle.
The stages are:
- Problem Identification: The first step is the identification of a problem. In this stages, the necessary input, the outline of result is determined. It determines which parts of a system is to be computerized and which are not. We allocate the necessary resources and constraints for software development.
- System Analysis: After identifying the problem, the next step is to check whether it feasible to implement the system or not i.e. the system is analysed.The resources needed for implementation such as computing equipment, manpower and cost are estimated, based on the specifications of users requirements. These estimates are compared with the available resources.
- System Design: The next step is to develop the logical design of the system. The input of the system design phases are functional specification of the system and details about the computer configuration. During this phases the logic program is designed, files or database are designed, and program test plans and an implementation plan are drawn up. The system design should begin from the objectives of the system, namely, the information requirement of users, and use this to find the necessary database.
- System Evaluation and Testing: After the system has been in operation for a reasonable period, it is evaluated and a plan for its improvement is drawn up. A system is tested whether the objectives are satisfied or not.
- System Modification: Since a computer based system is a piece of software, it can be modified after it is evaluated. Modifications will definitely cost time and money, but users expect modification to be made as the name software itself implies it is soft and hence changeable.
Important Full Forms
- MLL : Machine level language
- AL : Assembly language
- HLL : High level language
- FORTRAN : Formula Translation
- CODASYL : Conference On Data System Langugage
- CP/M : Control Program for Microcomputers
- QBASIC : Quick Beginner’s All Purpose Symbolic Instruction Code
- VB : Visual Basic
- CESIL : Computer Education in Schools Instruction language
- QeL : Query Language
- SQL : Structure Query language
- SNOBOL : String Oriented Binary Language
- ALGOL : Algorithmic Oriented language
- IRTB : Industrial Real Time Basic
- RPG : Report program generation
- QBE : Query by Example
- PROLOG : Programming Logic
- 1GL : First Generation language
- 2GL : Second Generation language
- 3GL : Third Generation language
- 4GL : Four Generation language
- 5GL : Fifth Generation language
- AC : Alternating Current
- ANSI : American National Standard Institute.
- APL : A Programming language
- ARPA : Advance Research project agency
- BIT : Binary digit
- BPI : Bytes per inch
- Byte : Binary digit eight
- CGA : Color graphic Adapter
- CMOS : Complementary Metal Oxide Semi conductor
- COM : Computer Output to Microfilm
- CPI : Character per Inch
- SIMM : Single In line Memory Module
- DIMM : Dual In line Memory Module
- EDO DRAM : Extended Data Out Dynamic Random Access Memory
- EDD : Electronic Data Processing
- EEPROM : Electrically Erasable Programmable Read Only Memory
- DSHD : Double Sided High Density
- DSDD : Double Sided Double Density
- EGA : Enhance Graphics Array
- FDS : Fixed Disk System/Storage
- FTP : File Transfer Protocol
- GaAS : Gallium Arsenide
- HTTP : Hyper Text Transfer Protocol
- ICL : International Computers Limited
- ISP : Internet Service Provider
- Kbps : Kilo Bits Per Second
- Bps : Bits Per Second
- Mbps : Mega Bits Per Second
- NIC : Network Interface Card
- MOS : Mercantile Office System
- OCP : Order Code Processor
- PCB : Printed Circuit Board
- POST : Power On Self Test
- SCP : System Code Processor
- SMPS : Switch Mode Power Supply
- SSHD : Single Sided High Density
- SSSD : Single Sided Single Density
- SSI : Small Scale Integration
- SVGA : Super Video Graphics Array
- UMB : Upper Memory Block
- USB : Universal Serial BUS
- URL : Uniform Resource Locator
- VIRUS : Vital Information Resources Under Seize
- WORM : Write Once Read Memory
- WWW : World Wide Web
- POP : Post Office Protocol
- ADSL : Asymmetric Digital Subscriber Line
- SIM : Subscriber Identification Module
- CDMA : Code Division Multiple Access
- MD-2DD : Mini Disk Double Sided Double Density
- MD2HD : Mini Disk Double Sided High Density
- MF-2DD : Micro Floppy Double Sided Double Density
- MF 2HF : Micro Floppy Double Sided High Density
- NASA : National Aeronautics and Space Administration
- GSM : Global Service for Mobile
- CRBT : Caller Ring Back Tone
- SMS : Short Message Service
- GPRS : Global Packet Radio Service
Things to remember
- Low-level language is a language in which some high level words are used with machine codes.
- Assembly language require ASSEMBLER to translate assembly language code into computer understandable code (Machine code).
- High level language contains a set of instructions written in simple English. It is a set of some symbols, words and rules to instruct machine.
- Fourth generation language is a high level language in which fewer instruction codes are used to accomplish a particular task. It is non-procedural language.
- It includes every relationship which established among the people.
- There can be more than one community in a society. Community smaller than society.
- It is a network of social relationships which cannot see or touched.
- common interests and common objectives are not necessary for society.
Videos for Computer Language and Software Development Cycle
Fourth-generation programming language
High level and low level languages
Introduction to the Software Development Life cycle
Low Level and High Level Programming Languages
Programming Concepts : High Level and Low Level Languages
Software Development Life Cycle ( SDLC)
Software Development Lifecycle (SDLC)
Questions and Answers
A programming language is an artificial language that is understood by computer, which is used to write a set of instructions.
Types of programming language are:
- Low level language
- High level language
Low level language is machine dependent language which cannot be used in another computer when it is written for one computer.
Low level language are of two types.
- Machine level language (MLL)
- Assembly language (AL)
Machine level language is first generation language, which uses binary codes i.e. 0 & 1. It is computers native language so translator is not required.
Advantages of MLL are:
- Language processor is not required.
- Program execution is faster.
Disadvantagesof MLL are:
- It is difficult to understand since it uses only 0 & 1.
- It is very tedious task to write program in MLL.
This is second-generation computer programming language alphanumeric codes instead of 0 & 1. The program of assembly language is needed to be translated by an assembler.
Advantagesof assembly language are:
- It is easier than machine level language.
- It uses mnemonic code so program becomes easier.
Disadvantagesof assembly language are:
- Programs are not user friendly.
- Difficult to understand than high-level language
High-level language is machine independent problem oriented common language that uses English similar instructions and Mathematical notations for writing instructions.
The common features of high-level language are:
- User friendly, since it uses English similar works
- It is problem oriented.
- It follows set of rules called syntax.
- It is translated to MLL by using language processor.
Four common high-level programming languages are:
- Quick BASIC (QBASIC)
- Visual BASIC (VB)
- C, C++
- Java etc.