Tuesday, April 14, 2020

Design and implementations constraints in software engineering | Requirment engineering

Design and Implementation constraints with example

These are also a type of requirments but a little bit confusing to understand some time because it is not like Inverse Requirements, Domain requirements or Organizational requirment it is something which come out of other requirments and you identify it using the paremetr you will have in a couple of minutes to identify if it is design and implementaion constraint or not.

The Parameter to identify design and implementation constraints:
The parameter is simple and you can take it as the defination of Design and Implementation constraints as well. i.e. The requirment which put some kind of restriction on your development process weather it is coming from the Domain or Organizational requirment you can identify it as this is the Design and implementation constraints.

Lets go towards the Example
You are making a website for any organization, Now you are a complete software development company and you have lots of options to develop a website you may chose php, Asp.NET, Python or any other language.

But the company impose a constraints on you that you must make a website using Php because they have lots of other tools and website working on the same platform so it will be easy for them to integrate it with other.

These are the design constraints; You may get these from any kind of requirements e.g. Domain Requirements or may be Inverse requirements etc.

Video Lecture on the Topic : design and implementation constraints

Monday, April 13, 2020

Organizational Requirements in Software Engineering | Requirement Engineering

software engineering,mysoftwarenotes,mysoftwarenotes.com,requirement engineering in software engineering,requirement engineering,requirement engineering process,organizational requirements,organizational requirements in software engineering,software engineering tutorials,software engineering tutorials for beginners,software requirements,organizational requirements example
Organizational Requirements in Requirements engineering

Organizational Requirements in Requirement Engineering 

Organizational requirements are also the requirements same like the domain requirments and inverse requiremtns we always talk about functional and non-functional requirments and forget these things which are most important and should be tackled in we manners.

Organizatioal Requirmaents are the the requirments which we directly get from the organization to implement on the software. 

First of all you should have knowledge about the domain requirments so you can better under stand it spare some time to read about domain requirments.

For Example: A Shop Owenr want you to develop the software which will deal with the sales and purchase operation of the shop. 
The Domain of the software is POS. The software will inherit the all features which a POS should have those are the domain Requirments actually but beside those may be you want to make some customization to those domain requirments, may be you want to have an option in the sale section of the software that if someone make the shopping of 10,000 or more than this He should get 20% discount on total bill. Because this is the rule of organization (shop) so this is not something comming from the domain this is something coming from the organizational rule so this will be oranizational Requirment.

Watch a video lecture on the topic Organizational Requirments in Software Engineering


Thursday, April 09, 2020

Domain Requirements in Software Engineering | Requirements Engineering | Short Article

software engineering,requirements engineering,requirements engineering software engineering,requirements engineering process,mysoftwarenotes,mysoftwarenotes.com,domain requirements in software engineering,domain requirements in software engineering in hindi,domain requirements example,domain,domain requirements in,domain requirements in software engineering examples,functional requirements
Domain Requirments in Software Engineering | Requirement Engineering

Domain requirements in software engineering examples

What is domain requirement?

These requirements come from the domain in which a system fall.

What is Domain?
Domain is simply the area where your software belongs to.
Let's take example of a “Bike” domain:
If any vehicle belongs to the domain of the bike it will definatley inherit few requirments from the bike domain i.e. That vehilce should have two tires. If a vehicle have four tire you can't say it is a bike because it do not full fill the reqirments or say core requirments of the bike domain.

Let suppose you are making a site to sale products online the domain of that website will be  e-commerce.

You are making a software for shop domain of that software will be POS(Point of sale).

That means your site gona inherit the requirments from the e-commerce domain what are those requirments which your site will inherit?
There could be many requirments but let me take simple and basic one i.e. your site should have a shopping cart and payment options settings as your site fall under the e-commerce domain so these are the core requirements of the e-commerce domain.

In the 2nd example we are using the POS domain to clear the concepts, now if you are making a software for the shop, store or a mart the domain of that software will be POS so you have to inherit and keep the POS domain requirments in the software, those requirments are your POS should have option to maintain the sales and purchases, can you have a shop software without this option? No, you can't have that is because this is the core functionality of the software working for a shop and its is the Domain Requirments of that software too. 

Video Lecture on the topic: domain requirements in software engineering in hindi

 

Wednesday, April 08, 2020

Inverse Requirments in Software Engineering | Software Requirement Engineering

software engineering,software engineering,mysoftwarenotes.com,mysoftwarenotes,software requirements,software requirement specification,requirement engineering in software engineering,requirement engineering,requirement engineering process,inverse requirements,software engineering hindi,software engineering hindi tutorial,software engineering hindi lecture,functional requirements

Inverse Requirments in Software Engineering | Software Requirement Engineering

Software requirment engineering the sub-field of Software Engineering and the field about which we never care a alot. When ever we talk about the Software Requirement engineering we talk about the Function and Non-Functional requirments most of the time. 

We never pay attention to further types of requirments there are other requirments as well
  1. Inverse Requirements
  2. Domain Requirments
  3. Organizational Requirments
In this lecture we will discuss about the Inverse Requirements . Inverse requirments means describing something in should not way. Sometime people find it easy to describe things in this manner. People like to describe what a system should not do instead of  what a system should do. Sometime people who are unable to make decision chose this way to present their requirements for software. 

Sometime the software are of general type which the client want you to develop so most of the things are pre understood that these things will be part of the software so if someone cut of some requirements He will define that in inverse form.
For Example:  POS is the common software and developers know what are the things a POS should have. 
But if the client want you to reduce a future He will define it in inverse form.
He may say POS should not have the discount option.

May be the Client is open to usage of any color in the Software UI but hates the usage of specific color so He may say don’t use this color.

Video Lecture on the Inverse Requirements:

Sunday, April 05, 2020

Data dictionary in database in hindi | Active and passive data dictionary | 100% Practical bassed

Data Dictionary in Software Engineering, data dictionary in software engineering in hindi, data dictionary in software engineering pdf, data dictionary in software engineering ppt, data dictionary in software engineering tutorial, data dictionary in software engineering with example, data dictionary in software engineering notes, data dictionary in software engineering geeksforgeeks, data dictionary in software engineering tutorial, about data dictionary in software engineering, advantages of data dictionary in software engineering, dfd and data dictionary in software engineering,

Data Dictionary its types and practical working of Data Dictionary

Topics covered in this articles:
1. Why we are covering this in the Software Engineering?
2. What is Data Dictionary?
3. What is Passive Data Dictionary?
4. What is Active data dictionary?
5. Practical making of passive Data Dictionary?
6. Practical of active data dictionary using MS-SQL Server?

1.Why this topic in Software Engineering?
This topic is relevent to Database and usually we study its practicall working in database subjects only but we also cover this topic in software engineering because when you do the project documentation (Software Engineering) of the project you have to add the data dictionary of the data base of your project into the project documentation.

2.What is Data Dictionary?
Data dictionary is a dictiony which keeps the meta data in it and you can access when ever it is needed.
What is metadata?
MetaData is the data about some data, Means if you have a table in the database that is the data and the further data about the table i.e. Number of attributes in the table, Data types of attributes in the table is the meta data of the table. 
So the Data Dictionary of a database keeps the record of the tables or say information of the tables of that data.

further there are two kind of Data Dictionaries:
1. Passive Data Dictionary
2. Active Data Dictionary

3. What is Passive Data Dictionary?
This is the data dictionary of the Database which made manually and manage manually, you may made a passive data dictionary of the database into the MS Word, MS Excel or in any other word processing tool of your choice and manage it manually.
- What is meant by managing manually?
That means if you add or manipulate anything in the database tables you have to update the latest information in the Data Dictioany manually by going there.
It also have a disadvantage i.e. You may forget some time to manage the data dictionary and it may create the records conflict in the future.

Lets look at the example of a table and its data Dictionary:
This is the simple table of the database Named Student and have 2 records of the students this is the data for you.
Passive data dictionary, active passive data dictionary, active and passive data dictionary in dbms, active and passive data dictionary difference, active and passive data dictionary, active data dictionary passive data dictionary, passive data dictionary example, passive data dictionary, what is passive data dictionary,

Now Look at the MetaData of this table which a passive data dictionary contains:
Passive data dictionary, active passive data dictionary, active and passive data dictionary in dbms, active and passive data dictionary difference, active and passive data dictionary, active data dictionary passive data dictionary, passive data dictionary example, passive data dictionary, what is passive data dictionary,
This is the metadata of the student table and if you are planing to opt. the passive data dictionary for your project due to any reasson you may manage and make tables like this in Excel or MS Word file amd if you make some changes in the database you have to update those changes here as well.

4.What is active data dictionary?
That's my choice, this is something you don't need to manage manually, you don't need to create excel and word file, this get created automatiicaly and keep it self up to date with your database design and you can access it when ever needed.
Different tools have different ways to access it but here we are going to check it with MS-SQL Server how it works.

All you need to open your MS SQL server and go to new query than you have to follow the steps shown in the video embeded below in this article.

The queries I used in the video I am going to provide you here so you can easily copy and paste them in your MS SQL Server.

To check attribute name availablity in different tables of the database let suppose attribute is "Name"
To learn the use of above mention queries and see the result follow the tutorial given below

Operating System Process Termination Exit(), Abort() | Zombie and Orphan process in Operating System

Zombie and Orphan Process,Operating System,Software Engineering,mysoftwarenotes.com,mysoftwarenotes,difference between zombie and orphan process,difference between zombie and orphan process in linux,zombie and orphan process difference,explain zombie and orphan processes,process termination in operating system,process creation and termination in operating system,process termination in os,what is process termination in os,types of process termination in os,OS
Operating System Process Termination

Operating System Process Termination Exit(), Abort() | Zombie and Orphan process in Operating System

In the last lecture we discussed about the process creation and Child process in details.

In this lecture we gona cover the following topics.
1. What is process termination?
2. How a child process terminates
3. What is the Orphan Process
4. What is the concept of Zombie process.

1. Process Termination:When a process startes working it have to get terminated after finishing its task this is the normal way of termination but sometime a process get hangs or a process start troubling you so you also kill the process to keep your experience smoth this is also process termination.On the termination a process gives the Exit() call to the OS so the operating system can know the process has been terminated.

2.Child process termination:
Child terminates by finishing its task and it also return the data or say results of the task to the parent process.
Parent process can also send the Abort() call to child to terminate its processing and return the data to parent.
Some time we explaing this parent child behavior with the sentence "Parent reap the child process".
The word reap means getting/Obtaining something good in the result of something you did.
I hope now you can understand what does parent reap the child means.

3. Orphan process & its types:
So child has a parent but sometime the parent get terminated so the child becomes the orphan thats is what the orphan means.A child without his parent is known as the orphan.
Now there are two different situations or say diferent types of Orphans.
Some child becomes the orphan intentionally others becomes unintentionally what does that mean?

3.1:Intentionally Orphan: Parent is busy in doing his task and child as well but the parent manages to complete his task early and want to terminates.
Normally when a parent terminates its child also terminates as well.
Here the parent has completed its task and want to terminate but the child still have a lot of work to do so the child will ask the parent dad you can get terminated I have a alot of work to do it may take some time I will terminate latter. The parent will get terminated and the child will become orphan intentionally.

3.2: Unintentionally Orphan: this is simple a child may not want his parents to get terminated like in above case but someone kills the parent.
Who and why someone kills the parent?
If a parent get hangs or create some other problems and distrub the computer user may be the end user will kill the parent to avoid the troubles in usage and there can be many more problems like this.

4. What is the Zombie process?Zombie seems like the name got inspiration from the famous movie isn't it?
So far by now what we know that a process reap its child. Some time a process forgets to reap its child. After completing the assign task child releases all the resources which it was using but keeps the ID. As every process have a unique ID and when the parent reap its child it also relese the ID which the child was holding so that other new process can use this ID.
This cycle of IDs keep going on. Process releases the ID on termination and new comers gain it.
Coming back to the topic the child do not release the ID but resources now the OS can't kill this process as it don't have any resources according to OS it is already dead. How can an OS kill the already dead process.
But it is dangerous as it is holding the ID and of processes keep holding IDs like this we may get Shortage of IDs for new process so these kind of process which are not holding the resources but ID and we can't kill them because they are already dead are known as Zombies.

Video lecture on the topic Process termination in Hindi