## Information System And Design

Lecture 11- Project Scheduling & Milestones.

Lecture 10- Software Configuration Management

Lecture 9- Risk Management, Risk Categories

Lecture 8.4 – Basic COCOMO Model, Intermediate Model, Detailed COCOMO Model

Lecture 8.3 – Algorithmic Strategy For Cost Effort Estimation

Lecture 8.2 – Delphi Estimation Strategy For Cost Effort

Lecture 8.1 – Analogy Estimation Strategy For Cost Effort Estimation

Lecture 7- Function Point Based FP Based Analysis

Lecture 6 – Software Metric Measurements

Lecture 5 – Project Planning Methods

Lecture 4 – Blue Prints Of Sanjog Model Study

Lecture 3- Sanjog Model Study

Lecture 2- Components & Models Of Information System.

Lecture 1 – Information System Design Basics.

# WAP in C Language to print an input string in reverse order.

Code:-

#include <stdio.h>
#include <string.h>
int main()
{
char str[20];
int l,i,count=0;
printf(” Enter Any  Character String “);
scanf (” %[^\n]”,str);
printf(“Input String Is: %s “, str);
printf( “\nReverse String Is: “);
/* For Reverse String*/
for (i=0; str[i] != 0 ;i++)
{
count++;
}
for (i=count;i>=0;i–)
{
printf(“%c”, str[i]);
}
}

Output:

# WAP to replace all characters with another character, take the string, character to replace and the character to substitute from the user. e.g. string = ”Hello World”, character to replace = ’o’, replacing character = ’X’, final string = ”HellX WXrld”.

Code:-

#include <stdio.h>
#include <string.h>
int main()
{
char str[20];
int counter;
printf(” Enter Any  Character String “);
scanf(“%[^/n]”,str);
printf(“Input String Is: %s”,str);
while(str[counter]!=’\0′)
{
{
if ( str[counter] == ‘o’)
str[counter] = ‘X’;
}
counter++;
}
printf(“Replaced String is %s”, str);
return 0;
}

Output:-

# WAP to remove a character from the entire string. e.g. if string is “how are you”, and character ’o’ is removed, final string will be ”hw are yu”.

Code:-

#include <stdio.h>
#include <string.h>
int main()
{
char str[20];
int counter=0;
printf(” Enter Any Character String “);
scanf(“%[^/n]”,str);
printf(“Input String Is: %s\n”,str);
for (counter=0;str[counter]!= ‘\0’; counter++)
{if (str[counter]==’o’)
continue;
else
printf(“%c”,str[counter]);
}
return 0;
}
Output:-

Que.4

## WAP to take an integer from the user and generate all permutations.

Code:-

#include <stdio.h>
#include <string.h> /* Using Library Function Strings*/
void swap(char *x, char *y) /* Swapping The Letters */
{
char temp;
temp = *x;
*x = *y;
*y = temp;
}
void permute(char *a, int l, int r) /* Permutation Logic*/
{
int i;
if (l == r)
printf(“%s \n”, a);
else
{
for (i = l; i <= r; i++)
{
swap((a+l), (a+i));
permute(a, l+1, r);
swap((a+l), (a+i)); /* backtracking */
}
}
}
int main()
{
char str[] = “AB C”;
int n = strlen(str);
permute(str, 0, n-1);
return 0;
}
Output:

## Que:5 WAP  that takes a string from user and prints out if the string is palindrome or not.  Examples of palindrome are ”1213121”,”hannah”.  Palindromes are strings with a property that they read the same forwards and backward.

Code:-

#include<stdio.h>
#include<string.h>

int main()
{
int i,len,flag=0;
char *str;

printf(“\n Enter A String “);
scanf(“%c”, &str);
len=strlen(str);

for(i=0;i<len;i++)
{
if(str[i]==str[len-i-1])
flag=flag+1;
}

if (flag==len){
printf(“\n String is palindrome”); }
else {
printf(“\n String is not palindrome”); }
return 0;

}

Que6:

## Randomly generate  an array of 1000 elements, each element has values from 0 to 100 (0 and 100 inclusive).  You need to write following: a function “float find mean(int* input arrays,  int n)” that takes the array as input and returns mean of all the elements in the array.

Code:-

#include<stdio.h>
#include<stdlib.h> /* For rand() Function */
int main()
{
int i,r[1000]; /* The Array Of 1000 Elements*/
float mean;
int sum=0;
for(i=0; i<1000; i++)
{
r[i] = rand()%101;   /* Choosing 1000 Random Numbers, Under Range Of 0 to 100 */
sum=sum+r[i];        /* Sum of All Random Numbers */
}
printf(” \n Sum Is: %d”,sum);
mean=sum/1000;  /*  Mean Of Random Numbers */
printf(” \n Mean Of Randomly Generate Array Is: %f”,mean);

Output:-

Que7:

## a function  “float find median(int* input array,  int n)” that takes the array as input and returns median  of all the elements  in the array.   For this task  you may need to sort the array.

Code:-

#include<stdio.h>
#include<stdlib.h> /* For rand() Function */
int main()
{
int i,j,r[1000]; /* The Array Of 1000 Elements*/
float median;
int sum=0;
for(i=0; i<1000; i++)
r[i] = rand()%101;   /* Choosing 1000 Random Numbers, Under Range Of 0 to 100 */
/* We Have To Sort The Array Now */
for (i=0;i<1000;i++)
{
for(j=i+1;j<1000;j++)
{
if(r[i]>r[j])               /* For Example 98 > 95 */
{
r[i]=r[i]+r[j];        /* r[i] = 98+95 = 193   */
r[j]=r[i]-r[j];       /* r[j] = 193-95 = 98  */
r[i]=r[i]-r[j];      /* r[i] = 193-98= 95  */
}
}
}
/* Median is middle element in case of odd elements & if there are even elements then median is mean of two middle one elements */
/* Here we have 1000 elements hence even elements case is here. */
median=((r[499]+r[500])/2);
printf(“Median Of Random Integers Is %f”,median);
}

Output:-

Que8:

## WAP  to multiply matrices  of size m * n and n* p.  Initialize the two matrices in the code itself. (since taking  input  from the user is time-consuming).

Code:-

#include <stdio.h>
int main()
{
int m, n, p, q, c, d, k, sum = 0;
int first[100][100], second[100][100], multiply[100][1004
];
/* Declared Memory */
printf(“Enter the number of rows and columns of first matrix\n”);
scanf(“%d%d”, &m, &n);
printf(“Enter the elements of first matrix\n”);
/* Asking From User To Declare First Matrix Size */
for (  c = 0 ; c < m ; c++ )
for ( d = 0 ; d < n ; d++ )
scanf(“%d”, &first[c][d]);
/* For First Matrix We Feeding The Values From User */
printf(“Enter the number of rows and columns of second matrix\n”);
scanf(“%d%d”, &p, &q);
/* Feeding Second Matrix Size From User */
if ( n != p ) /* Checking Basic Matrix Multiplicationn Rule */
printf(“Matrices with entered orders can’t be multiplied with each other.\n”);
else
{
printf(“Enter the elements of second matrix\n”);
for ( c = 0 ; c < p ; c++ )
for ( d = 0 ; d < q ; d++ )
scanf(“%d”, &second[c][d]);
/* Logic For Multiplication Matrix */
for ( c = 0 ; c < m ; c++ ){
for ( d = 0 ; d < q ; d++ ){
for ( k = 0 ; k < p ; k++ ){
sum = sum + first[c][k]*second[k][d];}
multiply[c][d] = sum;
sum = 0;}}
printf(“Product of entered matrices:-\n”);
for ( c = 0 ; c < m ; c++ )
{
for ( d = 0 ; d < q ; d++ )
printf(“%d\t”, multiply[c][d]);
printf(“\n”);
} }
return 0;
}
Output:-

## SQL Queries Practice & Solutions

Solve following queries using aggregate functions for the table.

Table: sales (orderID OrderDate OrderPrice OrderQuantity CustomerName)

1.Count how many orders have made a customer with customer name of Smith.

2.Find the number of unique customers that have ordered from the store.

3.Find out total no. of items ordered by all the customers.

4.Find out the average number of items per order.

5.Find out the average order quantity for all orders with order price greater than 200.

6.Find out what was the minimum price paid for any of the orders.

7.Find out the highest order price from the given sales table.

8.List out unique customers name only from the table.

9.List out the name of the customers who have given an order in the month of DECEMBER.

10.Find out the total amount of money spent for each of the customers.

11. Select all unique customers, who have spent more than 1200 in the store.

Now I had updated my table and inserted more values in it.

12.Select all the customers that have ordered more than 5 items in total from all their orders.

13.Select all customers who have spent more than 1000, after 10/01/2005.

14.Select orders in increasing order of order price.

15 Select orders in decreasing order of order price.

Thank You, Like, Share, Subscribe.

## Important Linux Commands

### Some of the important Linux commands are here to get pace up with Linux.

Basic Syntax Of Command.

1. To add new user on Linux.
2. Create a user with different home directory.
3. Create a user with different user id.
4. Create a user with different specific group id.
5. Add a user to multiple groups.

## batch

Basic Syntax Of Command.

After typing the batch command, the at> prompt is displayed.

## at

Basic Syntax Of Command.

at 9:30 PM Tue

1. at executes commands at a specified time.
2. atrm deletes jobs, identified by their job number.
3. atq lists the user’s pending jobs, unless the user is the superuser in that case, everybody’s jobs are listed. The format of the output lines job numberdatehouryearqueue, and username.

## banner

Basic Syntax Of Command.

``` \$ banner 'Hello!'
```
``` Output Line is as:-

#     #                                   ###
#     #  ######  #       #        ####    ###
#     #  #       #       #       #    #   ###
#######  #####   #       #       #    #    #
#     #  #       #       #       #    #
#     #  #       #       #       #    #   ###
#     #  ######  ######  ######   ####    ###
```

## cat

cat stands for “catenate.”

Basic syntax of cat is :-

cat mytext.txt

It reads data from files, and outputs their contents. It is the simplest way to display the contents of a file at the command line.

1. To Copy A Text File.
2. Append A Text File’s Contents To Another Text File.
3. Incorporating Standard Input Into cat Output.

## cd

For change directory.

Basic Syntax:

\$ cd /usr/local
:/usr/local\$

1. To change current directory to local.
2. Move one directory to back.
3. Move to users home directory.
4. The cd command can be used to change into a sub directory, move back into the parent directory, move all the way back to the root directory or move to any given directory.

## chmod

chmod ( Change Mode ) is used to change the permissions of files or directories.

Basic Syntax:

chmod options permission file name

## chown

To change the owner of group file.

Basic Syntax:

`chown [OPTION]... [OWNER][:[GROUP]] FILE...`

## clear

To clear the terminal screen.

Basic Syntax:

clear

## cp

To copy a file and directory.

Basic Syntax:

`cp [OPTION]... [-T] SOURCE DEST`
`cp [OPTION]... SOURCE... DIRECTORY`
`cp [OPTION]... -t DIRECTORY SOURCE...`

## cpio

copies files to and from archives.

cpio copies files from one directory tree to another.

Basic Syntax:

```cpio {-o|--create} [-0acvABLV] [-C bytes] [-H format] [-M message]
[-O [[user@]host:]archive] [-F [[user@]host:]archive]
[--file=[[user@]host:]archive] [--format=format]
[--message=message][--null] [--reset-access-time] [--verbose] [--dot]
[--append] [--block-size=blocks] [--dereference] [--io-size=bytes]
[--rsh-command=command] [--help] [--version] < name-list [> archive]```

## cut

Cut command in unix is used to select sections of text from each line of files.

Basic Syntax:

\$ cut -c n [filename(s)]

## dc

Desk Calculator.

The desk calculator works with post-fix notation, rather like many HP Calculators. Basic arithmetic uses the standard + – / * symbols but entered after the digits.

Basic Syntax:

dc

## dd

Data Duplicator.

To copy and converting data.

`dd if=<source file name> of=<target file name> [Options]`

For More Commands Watch Videos.

Part 1

Part 2

## UML Tools and Comparision Table For Various UML Tools. ArgoUML, Poseidon, Rational Rose Tool, Star UML

-ArgoUML

-Poseidon

-Rational rose tool

-Star UML

ArgoUML: Features of ArgoUML tools are as follows.

• All 9 UML 1.4 diagrams are supported.
• Closely follows the UML standard.
• Platform independent – Java 1.5+.
• Standard UML 1.4 Metamodel.
• XMI support.
• Export diagrams as GIF, PNG, PS, EPS, PGML, and SVG.
• Available in ten languages: EN, EN-GB, DE, ES, IT, RU, FR, NB, PT, ZH.
• Advanced diagram editing and zoom.
• Built-in design critics provide an unobtrusive review of design and suggestions for improvements.
• Extensible modules interface.
• OCL support.
• Click and Go.

Poseidon UML: Features of Poseidon are as follows.

• UML Diagram support.
• Use case diagram support.
• Sequence diagram support.
• State diagram support.
• Component diagram support.
• Forward and reverse engineering based on Java.

Rational Rose Tool: IBM’s Rational Rose tool helps in designing the various software’s. The features of this tool are as follows:

• Integrate the application design with development.
• Develop application for the web.
• Produce relevant source code for designed models.
• Helps to create an entire level of architecture or construction.
• UML Modelling.
• Internet web publisher.
• Data base schema generator.
• Multi language development.

Star UML:

• Accurate UML standard model.
• Open software model format.
• True MDA support.
• Applicability of methodologies and platforms.
• Excellent extensibility.
• Software model verification function.

Comparison Table Of UML Tools:

 Tool Name Version Systems Supports Code Generation For Code Reverse Engineering ArgoUML 3/5 Platform Independent Class Diagrams, Use case diagrams, Sequence Diagrams, Collaboration Diagrams, State Diagrams, Activity Diagrams, Deployment Diagram C++, C#, Java, PHP4, PHP5, SQL Java, C++, C#, IDL Poseidon UML 8 Platform Independent Class Diagrams, Use case diagrams, Sequence Diagrams, Collaboration Diagrams, State Diagrams, Activity Diagrams, Java Java Rational Rose 0 Platform Needed for architecture Class Diagrams, Use case diagrams, Sequence Diagrams, Collaboration Diagrams, State Diagrams, Activity Diagrams, Java, C, C++ Java, C, C++ Star UML 1 The Open Source UML/MDA Platform Class Diagrams, Use case diagrams, Sequence Diagrams, Collaboration Diagrams, State Diagrams, Activity Diagrams, Visual Basic, Java Script, Delphi, C#, Python Visual Basic, Java Script, Delphi, C#, Python

## SDLC Models, Software Development Lifecycle Models

Software Development Life Cycle model is process used by industries to design, develop & make high quality software’s that satisfies the customers need. It’s kind of software development process.

Stages/Phases in the SDLC

1. Planning & Requirement Analysis:

In this phase client gave its requirements. Market survey, sales and several process took place here and via all, system analyst make a documented format about final product.

1. Defining & Designing:

In defining and designing a brief prototype is made and by this prototype one can make all suitable need & procedure that can implemented when project goes into building form.

It is done through SRS i.e, Software Requirement Analysis.

1. Building or Coding:

In building phase or coding phase one can implement design patterns. Use high level language according to the product design and simultaneously test small code packages called classes or as a part of unit testing.

1. Testing:

In testing phase one can test small units that is unit testing and composition of that small products that is integration testing at time of integrating software’s.

1. Deployment:

Deployment is the process of the release of final product into usable format and via this firstly companies release them in limited quantity after that according to feedback of market, company release them into required quantity. After this company do maintenance work on the product they launch.

SDLC Models:

There are several software models which are followed in the Software Development Life Cycle.

• Waterfall model
• Iterative model
• Spiral model
• V-model
• Big Bang model
• Agile model

1. Waterfall model:

Waterfall model is first model that came in existence for process. It is also called as linear sequential life cycle model.

The sequential phases in Waterfall model are

1. Requirement Gathering and analysis:

All requirements related to the product are discussed and made here. After this discussion a well-documented format is made that is called as SRS Software Requirement Specification. This is particularly done by System Analyst.

1. System Design:

In this phase a well formed prototype is made according to the requirement of the project and a theme line on which project will be done.

1. Implementation:

In this phase implementation is done or we can say that coding is performed on the given project and prototype using particular high level language according to the need of the software.

1. Integration and Testing:

In this phase test is done on small parts that is called as Unit Testing and After Unit Testing after composition Integration Testing is done. It is most time taken phase in entire duration of a life cycle of a model.

1. Deployment of system:

It is phase of final release of product in the market. In this software or product is release in the market in limited additions and after the feedback from the market it is further release in accordance with the quantity.

1. Maintenance:

It is process of after deployment and feedback on the basis of which a team works on that and provide good services to the end customers.

• Simple and easy to understand.
• Clearly defined stages.
• Process and results are well documented.
• Phases are completed one at a time.
• Works well for smaller projects that have complete requirement analysis.

• No working software is completed until full software product is made.
• High risk and uncertainty is there.
• Not a good model for complex software’s design.
• Difficult to measure the progress under phases.

Applications:

• Project is short with clearly defined goals and complete analysis with requirements.
• Technology is understandable & not dynamic.

1. Iterative Model:

Iterative process starts with a simple implementation of a subset of the software requirements and iteratively enhances the evolving versions until the full system is implemented.

The key to a successful use of an iterative software development lifecycle is rigorous validation of requirements, and verification & testing of each version of the software against those requirements within each cycle of the model. As the software evolves through successive cycles, tests must be repeated and extended to verify each version of the software.

• Working functionality can be seen earlier in life cycle.
• Parallel design and work can be possible.
• Progress can be seen.
• Easier to manage risk.
• Supports changing requirements.

• More resources may require.
• Highly skilled resources are required for development.
• Management complexity is more.

Spiral Model:

This Spiral model is a combination of iterative development process model and sequential linear development model i.e. the waterfall model with a very high emphasis on risk analysis.

Spiral Model has four phases. A software project passes repeatedly through these steps so this model are called as spiral.

The following four phases are as follows:

• Identification
• Design
• Construct or Build
• Evaluation and Risk Analysis

Identification: Identification phase is starts with gathering the business requirements, all the units and necessary requirements are made in this phase.

Design: The design phase starts with conceptual design logical design of modules in sub sequent spirals.

Construct or Build: The Construct phase refers to production of the actual software product at every spiral.

Evaluation and Risk Analysis: Risk Analysis includes identifying, estimating and monitoring the technical feasibility and management risks, such as schedule slippage and cost overrun.

• Good for large and mission projects.
• Allows extensive use of software’s.
• Users can see product early.

• Can be costly to use.
• Doesn’t work well for smaller projects.
• Risk analysis requires highly expertise.

Agile Model:

Agile SDLC model is a combination of iterative and incremental process models. By deliver of product as it is that customer requires in their satisfaction.

It is used for time critical applications. Extreme programming is one of the most well-known agile development life cycle models.

• By rapid method doing continuous delivery of useful softwares.
• Frequent services of product delivery.
• Further late changes are welcome.
• Regular adaptation projects can be done via this model.
• F2F face to face communication is very well for actual requirements and right product so it’s advantage of this model.

• Complex dependencies are difficult to handle.
• There is more risk in maintainability and sustainability.
• If team members are changed then there is complexity in dividing task or difficulty in understanding them the code.
• It all depends on the customer interaction so if client or customer is not clear with the software then we have problems in deciding what exactly the product should be.
• There is a great importance of senior members in the projects so new comer developer or programmer has no place in this model of the software process.

## Information & Communication Technology, ICT Important Terminologies

Information & Communication Technology, ICT Important Terminologies

Pace Your UGC NET Preparation. Follow Our Site & SUBSCRIBE US On You Tube.

## 100 Most Important Abbreviations Of Information & Communication Technology ( ICT )

100 Most Important Abbreviations Of  Information & Communication Technology, ICT.