Tuesday, July 28, 2009

What is a meaning of software layers in terms of software development?

i am a software engineer i attented one interview and they ask me about software layers ,like tell one what layers your working on your current project

What is a meaning of software layers in terms of software development?
Usually there are three layers of software: platform, application, and user software.





1. Platform software - It includes the basic input-output system, device drivers, an operating system, and a graphical user interface which, in total, allow a user to interact with the computer and its peripherals (associated equipment).





2. Application software - These are commonly known as software like accounting software, office suite or any video game. It is purchased and developed separately from computer hardware. Applications are independent programs from the operating system, though they are often tailored for specific platforms and purposes. Most users think of compilers, databases, and other "system software" as applications.





3 - User-written software - These are tailored systems to meet the users specific needs. User software include spreadsheet templates, word processor macros, scientific simulations, graphics and animation scripts.
Reply:If you are really a software engineer you should understand layers. Nonetheless, typically when one talks about layers, they mean in the n-tier or n-layer architecture. Most applications use a UI layer, a Business layer, and a Data layer. The point is that all of the programming that handles each portion is fully encapsulated in that layer, and the other layers do not have to understand *how* a given layer works, only that it does work. This is called "abstraction".

sim cards

No comments:

Post a Comment