Wednesday, January 27, 2016

Cloud Computing for Beginners

loud computing is currently the buzzword in IT industry, and many are curious to know what cloud computing is and how it works. More so because the term CLOUD is intriguing and some people even wonder how do clouds that rain can even remotely be used in Computing J.
Let’s learn Cloud computing with an example -
Whenever you travel through a bus or train, you take a ticket for your destination and hold back to your seat till you reach your destination. Likewise other passengers also takes ticket and travel in the same bus with you and it hardly bothers you where they go. When your stop comes you get off the bus thanking the driver. Cloud computing is just like that bus, carrying data and information for different users and allows to use its service with minimal cost.
In this tutorial ,  you will learn

Why the Name Cloud?

The term “Cloud” came from a network design that was used by network engineers to represent the location of various network devices and there inter-connection.  The shape of this network design was like a cloud.

Why Cloud Computing?

With increase in computer and mobile user’s, data storage has become a priority in all fields. Large and small scale businesses today thrive on their data & they spent a huge amount of money to maintain this data. It requires a strong IT support and a storage hub. Not all businesses can afford high cost of in-house IT infrastructure and back up support services. For them Cloud Computing is a cheaper solution. Perhaps its efficiency in storing data, computation and less maintenance cost has succeeded to attract even bigger businesses as well.
Cloud computing decreases the hardware and software demand from the user’s side. The only thing that user must be able to run is the cloud computing systems interface software, which can be as simple as Web browser, and the Cloud network takes care of the rest. We all have experienced cloud computing at some instant of time, some of the popular cloud services we have used or we are still using are mail services like gmail, hotmail or yahoo etc.
While accessing e-mail service our data is stored on cloud server and not on our computer. The technology and infrastructure behind the cloud is invisible. It is less important whether cloud services are based on HTTP, XML, Ruby, PHP or other specific technologies as far as it is user friendly and functional. An individual user can connect to cloud system from his/her own devices like desktop, laptop or mobile.
Cloud computing harnesses small business effectively having limited resources, it gives small businesses access to the technologies that previously were out of their reach.  Cloud computing helps small businesses to convert their maintenance cost into profit. Let’s see how?
In an in-house IT server, you have to pay a lot of attention and ensure that there are no flaws into the system so that it runs smoothly. And in case of any technical glitch you are completely responsible; it will seek a lot of attention, time and money for repair. Whereas, in cloud computing, the service provider takes the complete responsibility of the complication and the technical faults.

Benefits of Cloud Computing

The potential for cost saving is the major reason of cloud services adoption by many organizations.  Cloud computing gives the freedom to use services as per the requirement and pay only for what you use. Due to cloud computing it has become possible to run IT operations as a outsourced unit without much in-house resources.
Following are the benefits of cloud computing:
  1. Lower IT infrastructure and computer costs for users
  2. Improved performance
  3. Fewer Maintenance issues
  4. Instant software updates
  5. Improved compatibility between Operating systems
  6. Backup and recovery
  7. Performance and Scalability
  8. Increased storage capacity
  9. Increase data safety

Types of Clouds

There are four different cloud models that you can subscribe according to business needs:
  1. Private Cloud: Herecomputing resources are deployed for one particular organization.  This method is more used for intra-business interactions.  Where the computing resources can be governed, owned and operated by the same organization.
  2. Community Cloud: Herecomputing resources are provided for a community and organizations. 
  3. Public Cloud: This type of cloud is used usually for B2C (Business to Consumer) type interactions.  Here the computing resource is owned, governed and operated by government, an academic or business organization. 
  4. Hybrid Cloud: This type of cloud can be used for both type of interactions -  B2B (Business to Business) or B2C ( Business to Consumer). This deployment method is called hybrid cloud as the computing resources are bound together by different clouds.

Cloud Computing Services

The three major Cloud Computing Offerings are
  • Software as a Service (SaaS)
  • Platform as a Service (PaaS)
  • Infrastructure as a Service (IaaS)
Different business use some or all of these components according to their requirement.

SaaS (Software as a Service)

SaaS or software as a service is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network (internet). SaaS is becoming an increasingly prevalent delivery model as underlying technologies that supports Service Oriented Architecture (SOA) or Web Services. Through internet this service is available to users anywhere in the world. 
Traditionaly, software application needed to be purchased upfront &then installed it onto your computer. SaaS users on the other hand, instead of purchasing the software subscribes to it, usually on monthly basisvia internet.
Anyone who needs an access to a particular piece of software can be subscribe as a user, whether it is one or two people or every thousands of employees in a corporation. SaaS is compatible with all internet enabled devices.
Many important tasks like accounting, sales, invoicing and planning all can be performed using SaaS.

PaaS (Platform as a Service)

Platform as a service, is referred as PaaS, it provides a platform and environment to allow developers to build applications and services. This service is hosted in the cloud and accessed by the users via internet.
To understand in a simple terms, let compare this with painting a picture, where you are provided with paint colors, different paint brushes and paper by your school teacher and you just have to draw a beautiful picture using those tools. 
PaaS services are constantly updated & new features added. Software developers, web developers and business can benefit from PaaS. It provides platform to support application development. It includes software support and management services, storage, networking, deploying, testing, collaborating, hosting and maintaining applications.

IaaS (Infrastructure as a Service)

IaaS (Infrastructure As A Service) is one of the fundamental service model of cloud computing alongside PaaS( Platform as a Service). It provides access to computing resources in a virtualized environment “the cloud” on internet.  It provides computing infrastructure like virtual server space, network connections, bandwidth, load balancers and IP addresses. The pool of hardware resource is extracted from multiple servers and networks usually distributed across numerous data centers.  This provides redundancy and reliability to IaaS.
IaaS(Infrastructure as a service) is a complete package for computing. For small scale businesses who are looking for cutting cost on IT infrastructure, IaaS is one of the solutions. Annually a lot of money is spent in maintenance and buying new components like hard-drives, network connections, external storage device etc. which a business owner could have saved for other expenses by using IaaS.

What is Cloud Computing Architecture?

Let’s have a look into Cloud Computing and see what Cloud Computing is made of. Cloud computing comprises of two components front end and back end.  Front end consist client part of cloud computing system. It comprise of interfaces and applications that are required to access the cloud computing platform.
While back end refers to the cloud itself, it comprises of the resources that are required for cloud computing services. It consists of virtual machines, servers, data storage, security mechanism etc. It is under providers control.
Cloud computing distributes the file system that spreads over multiple hard disks and machines. Data is never stored in one place only and in case one unit fails the other will take over automatically. The user disk space is allocated on the distributed file system, while another important component is algorithm for resource allocation. Cloud computing is a strong distributed environment and it heavily depends upon strong algorithm. 

Virtualization and Cloud Computing

The main enabling technology for Cloud Computing is Virtualization. Virtualization is a partitioning of single physical server into multiple logical servers.  Once the physical server is divided, each logical server behaves like a physical server and can run an operating system and applications independently.  Many popular companies’s like VmWare and Microsoft provide virtualization services, where instead of using your personal PC for storage and computation, you use their virtual server. They are fast, cost-effective and less time consuming.
For software developers and testers virtualization comes very handy, as it allows developer to write code that runs in many different environments and more importantly to test that code.
Virtualization is mainly used for three main purposes 1) Network Virtualization 2) Server Virtualization  3) Storage Virtualization
Network Virtualization:  It is a method of combining the available resources in a network by splitting up the available bandwidth into channels, each of which is independent from the others and each channel is independent of others and can be assigned to a specific server or device in real time.
Storage Virtualization: It is the pooling of physical storage from multiple network storage devices into what appears to be a single storage device that is managed from a central console. Storage virtualization is commonly used in storage area networks (SANs).
Server Virtualization: Server virtualization is the masking of server resources like processors, RAM, operating system etc, from server users. The intention of server virtualization is to increase the resource sharing and reduce the burden and complexity of computation from users.
Virtualization is the key to unlock the Cloud system, what makes virtualization so important for the cloud is that it decouples the software from the hardware. For example, PC’s can use virtual memory to borrow extra memory from the hard disk. Usually hard disk has a lot more space than memory. Although virtual disks are slower than real memory, if managed properly the substitution works perfectly. Likewise, there is software which can imitate an entire computer, which means 1 computer can perform the functions equals to 20 computers.

Grid Computing Vs Cloud Computing

When we switch on the fan or any electric device, we are less concern about the power supply from where it comes and how it is generated. The power supply or electricity that we receives at our home travels through a chain of network, which includes power stations, transformers, power lines and transmission stations. These components together make a ‘Power Grid’. Likewise, ‘Grid Computing’ is an infrastructure that links computing resources such as PCs, servers, workstations and storage elements and provides the mechanism required to access them.
Grid Computing is a middle ware to co-ordinate disparate IT resources across a network, allowing them to function as whole. It is more often used in scientific research and in universities for educational purpose. For example, a group of architect students working on a different project requires a specific designing tool and a software for designing purpose but only couple of them got access to this designing tool, the problem is how they can make this tool available to rest of the students. To make available for other students they will put this designing tool on campus network, now the grid will connect all these computers in campus network and allow student to use designing tool required for their project from anywhere.
Cloud computing and Grid computing is often confused, though there functions are almost similar there approach for their functionality is different.  Let see how they operate-
                      Cloud Computing
                           Grid Computing
  • Cloud computing works more as a service provider for utilizing computer resource
  • Grid computing uses the available resource and interconnected computer systems to accomplish a common goal
  • Cloud computing is a centralized model
  • Grid computing is a decentralized model, where the computation could occur over many administrative model
  • Cloud is a collection of computers usually owned by a single party.
  •  
  • A grid is a collection of computers which is owned by a multiple parties in multiple locations and connected together so that users can share the combined power of resources
  • Cloud offers more services all most all the services like web hosting, DB (Data Base) support and much more
  • Grid provides limited services
  • Cloud computing is typically provided within a single organization (eg : Amazon)
  • Grid computing federates the resources located within different organization.

Utility Computing Vs Cloud Computing

In our previous conversation in “Grid Computing” we have seen how electricity is supplied to our house, also we do know that to keep electricity supply we have to pay the bill. Utility Computing is just like that, we use electricity at home as per our requirement and pay the bill accordingly likewise you will use the services for the computing and pay as per the use this is known as ‘Utility computing’. Utility computing is a good source for small scale usage, it can be done in any server environment and requires Cloud Computing.
Utility computing is the process of providing service through an on-demand, pay per use billing method.  The customer or client has access to a virtually unlimited supply of computing solutions over a virtual private network or over the internet, which can be sourced and used whenever it’s required.  Based on the concept of utility computing , grid computing, cloud computing and managed IT services are based.
Through utility computing small businesses with limited budget can easily use software like CRM (Customer Relationship Management) without investing heavily on infrastructure to maintain their clientele base.
                       Utility Computing
                         Cloud Computing
  • Utility computing refers to the ability to charge the offered services, and charge customers for exact usage
  • Cloud Computing also works like utility computing, you pay only for what you use but Cloud Computing might be cheaper, as such, Cloud based app can be up and running in days or weeks.
  • Utility computing users want to be in control of the geographical location of the infrastructure
  • In cloud computing, provider is in complete control of cloud computing services and infrastructure
  • Utility computing is more favorable when performance and selection infrastructure is critical
  • Cloud computing is great and easy to use when the selection infrastructure and performance is not critical
  • Utility computing is a good choice for less resource demanding
  • Cloud computing is a good choice for high resource demanding
  • Utility computing refers to a business model
  • Cloud computing refers to the underlying IT architecture

Security concerns for Cloud Computing

While using cloud computing, the major issue that concerns the users is about its security. 
One concern is that cloud providers themselves may have access to customer’s unencrypted data- whether it’s on disk, in memory or transmitted over the network. 
Some countries government may decide to search through data without necessarily notifying the data owner, depending on where the data resides, which is not appreciated and is considered as a privacy breach (ExamplePrism Program by USA).
To provide security for systems, networks and data cloud computing service providers have joined hands with TCG ( Trusted Computing Group) which is non-profit organization which regularly releases a set of specifications to secure hardware, create self-encrypting drives and improve network security.  It protects the data from root kits and malware. 
As computing has expanded to different devices like hard disk drives and mobile phones, TCG has extended the security measures to include these devices. It provides ability to create a unified data protection policy across all clouds.
Some of the trusted cloud services are Amazon, Box.net, Gmail and many others.

Privacy Concern & Cloud Computing

Privacy present a strong barrier for users to adapt into Cloud Computing systems
There are certain measures which can improve privacy in cloud computing.
  1. The administrative staff of the cloud computing service could theoretically monitor the data moving in memory before it is stored in disk.To keep the confidentiality of a data, administrative and legal controls should prevent this from happening.
  2. The other way for increasing the privacy is to keep the data decrypted at the cloud storage site, preventing unauthorized access through the internet; even cloud vendor can’t access the data either.

Case-Study of Cloud Computing- Royal Mail

  • Subject of Case-Study:Using Cloud Computing for effective communication among staff.
  • Reason for using Cloud Computing:Reducing the cost made after communication for 28,000 employees and to provide advance features and interface of e-mail services to their employees.
Royal mail group, a postal service in U.K, is the only government organization in U.K that serves over 24 million customers through its 12000 post offices and 3000 separate processing sites.  Its logistics systems and parcel-force worldwide handles around 404 million parcel a year. And to do this they need an effective communicative medium. They have recognized the advantage of Cloud Computing and implemented it to their system. It has shown an outstanding performance in inter-communication.
Before moving on to Cloud system, the organization was struggling with the out-of-date software, and due to which the operational efficiency was getting compromised.  As soon as the organization switched on to Cloud System, 28000 employees were supplied with their new collaboration suite, giving them access to tools such as instant messaging and presence awareness.  The employees got more storage place than on local server. The employees became much more productive.
Looking to the success of Cloud Computing in e-mail services and communication .The second strategic move of Royal Mail Group, was to migrating from physical servers to virtual servers, upto 400 servers to create a private cloud based on Microsoft hyper V. This would give a fresh look and additional space to their employees desktop and also provides latest modern exchange environment.
The hyper V project by RMG’s (Royal Mail Group) is estimated to save around 1.8 million pound for them in future and will increase the efficiency of the organization’s internal IT system.

Stakeholder Needs Analysis

Stakeholder Analysis is done to map the interest of your stakeholders. It is a process of systematically analyzing and gathering qualitative information to determine whose interest should be taken into account.
Stakeholder Analysis is important because it helps project leaders and managers to access a stakeholder's interest, positions, alliances and knowledge related to the project.




In this tutorial, you will learn-

When Stakeholder Analysis need to be done?

Stakeholder analysis should always be done at the beginning of a project. Such analysis is helpful in the drafting of a log frame. Log frame is nothing but a general approach to project planning, monitoring, and evaluation in the form of a 'logframe matrix'. Whenever log frames are reconsidered during the life cycle of a project, a stakeholder analysis will be useful. Which means whenever mid-term reviews or annual monitoring is handled, stakeholder analysis should be the part of it.

Stakeholders Categorization

Stakeholders are categorized into two categories
Internal stakeholders
External stakeholders
Within the organization: Employees and Management
Outside the organization: Government & Trade Association

Process for Stakeholder Analysis

Following are the primary aspect needs to be considered for stakeholder analysis
Step 1) Identify your stakeholders: Your boss, your team, senior executives, prospective customers, your family, etc.
Step 2) Assess how those stakeholders could be impacted or have an effect on the organization
Step 3) Prioritize your Stakeholders-
StakeHolder Type
Action
  • High power, interested people
- Keep satisfied
  • High power, less interested people-
- Manage closely
  • Low power, interested people
- Monitor with minimum effort
  • Low power, less interested people
- Keep informed
Step 4) Identify areas of conflicts (organization vs. stakeholder, stakeholder vs. stakeholder)
Step 5) Prioritize, reconcile and balance stakeholders
Step 6) Align significant stakeholder needs with organizations strategies and actions
Things to take care while dealing with stakeholders
  • Could you eliminate processes, which do not add stakeholder value?
  • How would you communicate with stakeholders?
  • Do your communications encourage stakeholder exchange?
  • Do you communicate the stakeholder the value of the deal?

Important questions to ask for Stakeholder Analysis


Different attribute check for stakeholder
Question to ask your stakeholders
  • Identification of stakeholder
  • Who is paying for the project?
  • Who will receive the deliverables or profits from the project?
  • Both from your organization and client organization who will work with you to implement the project?
  • Identify the expert for the project domain in the organization.
  • Interest
  • What direct benefit do stakeholders expect to get from the project?
  • What outcomes do stakeholders expect as a result of the project?
  • What changes do stakeholders need to make as a result of the project?
  • Are there any conflicts of interest amongst the stakeholders?
  • Influence
  • What legitimate authority do stakeholders have in the organization?
  • Who controls the project assets and resources?
  • What degree of influence or negotiation power do your identified stakeholders carry in the organization?
  • Impact
  • How much impact stakeholder could have on the project and does this going to affect the success of the project
Also, you need to figure out when stakeholders will become involved in the following-
  • Project Vision
  • Project Scope Definition
  • Business Process Analysis
  • Needs Elicitation
  • Requirement Validation
  • Design reviews
  • User acceptance testing
You can create a "Participation Matrix Table" for the stakeholders as given below
Participation Type
Inform
Consult
Partner
Control
Needs Assessment
Planning
Implement
Monitoring & Evaluation

Tips to manage your Stakeholders

  • Do not complain. Accept stakeholders as they are
  • For guaranteed success, get the key leadership involved.
  • Make sure, you involve your stakeholders early in the business analysis process
  • In case of a sensitive issue, ensure full confidentiality to all stakeholders to win their trust.
  • To avoid conflicts, help all stakeholders in realizing their personal gains from the project.

Introduction to Business Analysis

Who is a Business Analyst?

Business Analysts have emerged to have a key role in recent business scenarios. Some people think that the role of a Business Analyst is to make money for the organization, which may not be true in direct context. But indirectly, the action and decision taken by Business Analysts do leave an impact on the financial prospects of the organization.
A primary job responsibility of Business Analyst is to communicate with all stakeholders & to elicit, analyze and validate the requirements for changes to business processes, information systems, and policies.
A professional business analyst plays a big role in moving an organization toward efficiency, productivity, and profitability.
Before we jump into the tutorial, we will see some basic perspective of a Business Analyst to help the organization succeed. The foremost priority for any business analyst will be to try understanding following things
  • Understand what business does and how it does
  • Determine how to improve existing business processes
  • Identify the steps or tasks to support the implementation of new features
  • Design the new features to implement
  • Analyze the impact of implementing new features
  • Implement the new features

Different Business Analyst Role

Business Analyst can be from any sector, and the role differs based on the sector. Business Analyst are classified into various categories like
  • Business Analyst
  • Business Process Analyst
  • IT Business Analyst
  • Business System Analyst
  • System Analyst
  • Data Analyst
  • Functional Architect
  • Usability or UX Analyst

Characteristics of a good Business Analyst

Basically, a good business analyst is judged on these four attributes

Typical Qualities of a Good Business Analyst:

  • Analytical skills- An outstanding analytical skills will separate out a good business analyst. A good part of BA role includes analyzing data, workflow, user or stakeholders inputs, documents, etc.
  • Leadership skills- directing team members, forecasting budget, helping team members with the problem, etc.
  • Business process and planning- Planning the project scope, understanding and implementing requirement of project, identifying resources required for the project and so on
  • Technical skill- If a business analyst is in the IT sector, few technical aspect are expected to know like operating systems, hardware capabilities, database concepts, networking, SDLC methodology, etc.

Tools of the Trade

To make their work easier, the business analyst often depends on tools like
  • TopTeam Analyst: This tool helps in providing a complete solution for requirements gathering and management
  • SmartDraw: It is a graphic diagramming tool that use stencils for organizational charts, swim lanes, data flow diagram, etc.
  • Blueprint: This tool produces a blue print of the project artifacts like development models, test scenarios, use cases, flow charts, etc. to ensure that everything is falling in line and as per expectation
  • Survey Monkey: It allows you to send survey to stakeholders, capture their feedback, rank and prioritize their view and turn them into requirements
There are many other tools like iServer, Meetingsense,Ravenflow,AnalystPro, which could be used by Business Analyst during the project.

Certifications

As per the International Institute of Business Analysis (IIBA), CBAP (Certified Business Analysis Professional) certification is a recognized certificate for a professional Business Analyst. They provide two types of certifications. The certification exam is computer based and consists of multiple choice questions.
  • Certification of Competency in Business Analysis: Pre-requisite for this certification is atleast 3750 hours of work experience
  • Certified Business Analysis Profession (senior level): Pre-requisite for this certification is atleast 7500 hours of work experience
For off-shore students, they can appear certification exam online. For more information, you can visit thewebsite.

Jobs

Job prospectus for Business Analyst rises every year, especially for the IT sector. The average salary of business analyst is estimated around $80,000 - $130, 000, even at entry level.
International Institute of Business Analysis (IIBA) is growing exponentially indicating increasing demand of Business Analyst. Business Analyst always remain an organization priority since they have to work in a close proximity to top executives, clients, and stakeholders.
According to U.S Bureau of Labor Statistics, the BA job are predicted to increase by 19% between 2012 and 2022.

Conclusion:

The business analyst role is promising and has to deal with different layers of an organization. Business analyst are classified into various categories like Business Process Analyst, IT Business Analyst and so on.
  • A good business analyst should encompass skills like
    • Analytical skills
    • Leadership skills
    • Business process and Planning
    • Technical Skills
  • Various tools that can help Business Analyst are TopTeam Analyst, SmartDraw, Blueprint, etc.
  • Online certification course for BA available by recognized institute IIBA
  • According to U.S Bureau of Labor Statistics, the BA job are predicted to increase by 19% between 2012 and 2022.

Free Business Analyst Tutorial & Course

Class Summary


A Business Analyst is the key figure in understanding business requirement and its implementation. This course is designed to help you understand Business Analysis right from Software Engineering Methods & Lifecycles to Requirements Preparation, analysis and presentation.

What should i know?


The course is for beginner’s and you should know nothing


Syllabus


  1. Introduction
  2. Stakeholder Need Analysis
  3. Lifecycles
  4. Software Development Lifecycles
  5. Requirement Lifecycles
  6. Software Engineering Methods
  7. General SDLC plus Waterfall Model
  8. Rapid Software Development (RAD)
  9. Incremental Model
  10. Spiral
  11. Agile
  12. Requirements Process
  13. Learn software requirements analysis with case study
  14. Requirements Analysis and Transformation Techniques
  15. Finalizing Requirements
    1. Presenting
    2. Managing Requirements Assets
    3. Change Control
    4. Documentation
    5. BRS VS SRS
    6. Quality Assurance
    7. Overview of testing
    8. Basics of Manual testing
    9. Defect Life Cycle
    10. UAT (User Acceptance Testing)
    11. The complete Process
    12. Business Analysis process
    13. Must read topic
    14. Entity Relationship Diagrams
    15. Decision Tables
    16. Structured Walkthroughs

Monday, January 25, 2016

Microsoft Certified Solutions Associate (MCSA) Exam

Certification is a way of validating your expertise in an industry. If you are looking for a job, a certification will improve the chances of you getting it.
If you are a business owner or self-employed, a certification can boost the confidence of clients in you. In this tutorial, we are going to look at an MIS certification specifically Microsoft Certified Solutions Associate.



In this tutorial, you will learn-
  • What is MCSA (Microsoft Certified Solutions Associate)
  • MCSA Pre-requirements
  • How to apply for an Microsoft certification exam

What is MCSA (Microsoft Certified Solutions Associate)

Microsoft certified solutions associate (MCSA) is a certification program offered by Microsoft that is created to validate your skills in designing and building technology. The previous certification program was Microsoft Certified Systems Administrator.
Microsoft certified systems administrator was more focused on job roles. You can find more details from the official MCSA website
The certification program offers the following exams;
  • MSCA: Widows Server 2012 – the primary objective of this certification is to validate your expertise of windows server 2012. This certification allows you to work as a network or computer systems administrator or as a computer network specialist. You will have to take three (3) exams.
    1. Installing and Configuring Windows Server 2012
    2. Administering Windows Server 2012
    3. Configuring Advanced Windows Server 2012 Services
  • MCSA: Windows Server 2008 – this certification validates your mastery of Windows Server 2008. This certification allows you to work as a network or computer systems administrator or as a computer network specialist. It has the following exams
    1. Windows Server 2008 Active Directory, Configuring
    2. Windows Server 2008 Network Infrastructure, Configuring
    3. Windows Server 2008, Server Administrator
  • MCSA: Windows 10 – validates your skills to configure, manage and maintain a Windows 10 enterprise system. This certification allows you to work as a computer support specialist. You will have to take the following exam
    1. Configuring Windows Devices
  • MCSA: Windows 8 – validates your skills to configure, manage and maintain a Windows 8 enterprise system. This certification allows you to work as a computer support specialist. You will have to take the following exams;
    1. Configuring Windows 8.1
    2. Supporting Windows 8.1
  • MCSA: SQL Server – validates your skills to develop and maintain mission critical databases. This certification allows you to work as a database developer or database analyst. You will have to take the following exams;
    1. Querying Microsoft SQL Server 2012
    2. Administering Microsoft SQL Server 2012 Databases
    3. Implementing a Data Warehouse with Microsoft SQL Server 2012
  • MCSA: Office 365 – validates your skills to transition to and administer cloud hosted business applications with Microsoft Office 365. This certification allows you to work as a software as a service (SaaS) administrator or cloud applications administrator focused on managing Office 365 products. You will have to take the following exams;
    1. Part 1: Managing Office 365 Identities and Requirements
    2. Part 2: Enabling Office 365 Services
  • MCSA: Linux on Azure – validates your skills as a Linux system administration with the ability to design, develop and maintain closed based solutions that take advantage of Microsoft Azure open source capabilities. You will have to take the following exams.
    1. Implementing Microsoft Azure Infrastructure Solutions
    2. Linux Foundation Certified System Administrator
You do not have to take all of the above exams. You should only take the ones that are directly related to your job roles.

MCSA Pre-requirements

You must be computer literate and have basics in information technology related courses. This is an added advantage for you. If you want, you can get the training prior to taking the exams. Microsoft has partnered with qualified, trained professionals all over the world that can help you with your preparations. Use this link to search for Microsoft training partners near your location.

How to apply for an Microsoft certification exam

You will need to create an account with Microsoft before you can schedule an exam. You can follow the URLLearning Sign to do that. Once you are signed in, you can select and schedule an exam with Pearson Vue.Pearson Vue specializes in providing computer-based exams.

MIS Development Process using SDLC, Waterfall Model, Agile Development, Prototyping

The software is one of the major components of a management information system. Some of the software used in a MIS system is off the shelf. These include packages such as spreadsheet programs, database applications, etc.
However, they are times when off the shelf, software does not meet the business requirements. The solution to this problem is custom made software.
This tutorial will focus on the methodologies used to develop custom software.

In this tutorial, you will learn-

Information Systems Development Stakeholder

A typical information systems development usually has three (3) stakeholders namely;
  • Users – Users are the ones who use the system after it has been developed to perform their day to day tasks.
  • Project sponsors - this category of the stakeholders is responsible for the financial aspect of the project and ensuring that the project is completed.
  • Developers – this category is usually made up of systems analysts and programmers. The system analysts are responsible for collecting the user requirements and writing system requirements.
    The programmers develop the required system based on the system requirements that is developed by the system analysts.
The most important stakeholders in a project are users. For a project to be accepted as being completed, the users must accept it and use it. If the users do not accept the system, then the project is a failure.

MIS Systems Analysis and Design

Systems analysis and design refers to two closely related disciplines system analysis and system design.
  • System analysis is concerned with understanding the business objectives, goals and developing business processes. The end product of systems analysis is systems specifications.
  • System design uses the output from system analysis as its input. The main objective of system design is to interpret the system requirements into architectural, logical and physical designs of how the information system to be implemented.

MIS Object oriented analysis and design

Object-oriented analysis and design (OOAD) is closely related to systems analysis and design. The main difference between object-oriented analysis and design (OOAD) and systems analysis and design is that OOAD uses objects to represent real-world entities.
Object oriented analysis and design uses visual modeling to improve communication among all stakeholders and produce high-quality products.
An object is a representation of a real-world entity such as a customer, a product, an employee, etc. Unified Modeling Language (UML) is a general-purpose language used to create visual designs for a system.
The following image shows a sample UML diagram that shows users interacting with a point of sale system

MIS Systems Development Life Cycle (SDLC)

The system development life cycle refers to the processing of planning, creating, testing, and deploying an information system. The main objective of system development life cycle is to produce high-quality information systems that meet or exceed the expectations of the users within the stipulated budget and time frame.

SDLC uses a number of development methodologies to achieve this objective. The next sections will discuss some of the most popular development methodologies.

Waterfall Model

The waterfall model uses a sequential design model. The next stage starts only after the completion of the previous stage. The first stage is usually drawn on the top and the subsequent stages below and to the left bottom. This forms a waterfall like structure, and it's where the name came from.
The main objective of the waterfall model is
  • Planning
  • Time scheduling
  • Budgeting and
  • Implementing an entire system at once
The waterfall model is ideal when the user requirements are clearly understood and are not expected to change radically during the development of the information system. The waterfall model is ideal in situations where a project has a fixed-scope, fixed time frame, and fixed price.
The biggest challenge of the waterfall model is adoption to change. It is not easy to incorporate new user requirements.

Agile Development

Agile development is an alternative methodology to traditional project management which promotes adaptive planning, evolutionary development, early delivery, continuous improvement, and encourages rapid and flexible response to change.
A sprint in agile terms is a well-defined task to be accomplished within a given time. Sprint goals and durations are set by the customers and development team. All stakeholders must meet in person to get the feedback on the sprint before they can move on to the next sprint if any.
Agile methodologies usually follow the agile manifesto. The agile manifesto is based on the following twelve (12) principles
  1. Customer satisfaction through early and continues delivery of software
  2. Welcoming changes in requirements any time of the project
  3. Frequent releases of working software usually on a weekly basis
  4. Collaboration between business people and developers when working on a project
  5. Projects built around motivated and trusted individuals
  6. Efficient and effective Face-to-face meetings
  7. Progress is measured based on working software
  8. Sustainable development, sponsors, users, and developers should be able to maintain a constant pace indefinitely
  9. Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity
  11. Self-organizing teams
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
The following diagram illustrates how agile development methodologies are implemented.

Prototyping

A prototype is a semi-functional simulation model of the actual system to be developed. Prototyping development methodologies make use of prototypes. Prototypes allow both developers and users to get feedback early.
Prototyping makes it easy for users to specify their requirements and developers understanding the requirements of the users because of the prototypes. A prototyping methodology stands with identifying the basics system requirements especially the input and output from the system. These requirements are then used to create a simulation model that users can interact with and provide feedback. The user feedback is used to enhance the prototype and make other important decisions such as project costing and feasible time schedules.
The following diagram illustrate the stages of prototyping
Summary:
Information systems development refers to methodologies and steps involved in developing a new information system or upgrading an existing system to meet the evolving user requirements.
In a nutshell, a development methodology has to first identify and understand the problem with the existing system and find a solution that solves the problem.
The methodology chosen depends on the nature of the project and user requirements.
  • The waterfall model is ideal when the project is not expected to change much
  • While methodologies such as Agile, Prototyping, etc. are ideal when the project is expected to change during the course of development and the changes, have to be incorporated.

Evil Twin attack

Evil Twin Attack is attack is frequently carried upon wireless access points with malicious intentions. This attack happens when...