Wednesday, July 19, 2017

CLASSIFICATION BY PROJECT CHARACTERISTICS




  1. What is GANTT CHART?
Provide a diagram.


A Gantt chart, commonly used in project management, is one of the most popular and useful ways of showing activities (tasks or events) displayed against time. On the left of the chart is a list of the activities and along the top is a suitable time scale. Each activity is represented by a bar; the position and length of the bar reflects the start date, duration and end date of the activity. This allows you to see at a glance:
  • What the various activities are
  • When each activity begins and ends
  • How long each activity is scheduled to last
  • Where activities overlap with other activities, and by how much
  • The start and end date of the whole project
To summarize, a Gantt chart shows you what has to be done (the activities) and when (the schedule).
A simple Gantt Chart 
A simple Gantt chart


  1. What are the ways in classifying the project or what are the ways to classify the project in System Analysis and Design?
There are many ways to classify a project such as:
  • By size (cost, duration, team, business value, number of departments affected, and so on)
  • By type (new, maintenance, upgrade, strategic, tactical, operational)
  • By application (software development, new product development, equipment installation, and so on)
  • By complexity and uncertainty .
Projects are unique and to some extent so is the best-fit model to manage .

CLASSIFICATION BY PROJECT CHARACTERISTICS
Many organizations choose to define a classification of projects based on such project characteristics as the following:
  • Risk — Establish levels of risk (high, medium, and low).
  • Business value — Establish levels (high, medium, and low).
  • Length — Establish several categories (such as 3 months, 3 to 6 months, 6 to 12 months, and so on).
  • Complexity — Establish categories (high, medium, and low).
  • Technology used — Establish several categories (well-established, used occasionally, used rarely, never used).
  • Number of departments affected — Establish some categories (such as one, a few, several, and all).
  • Cost
The project profile determines the classification of the project. The classification defines the extent to which a particular project management methodology is to be used. I strongly advocate this approach because it adapts the methodology to the project. “One size fits all” does not work in project management. In the final analysis, I defer to the judgment of the project manager. In addition to the parts required by the organization, the project manager should adopt whatever parts of the methodology he or she feels improves his or her ability to help successfully manage the project.
Project characteristics can be used to build a classification rule as follows:
  • Type A projects — These are high-business-value, high-complexity projects. They are the most challenging projects the organization undertakes. Type A projects use the latest technology, which, when coupled with high complexity, causes risk to be high also. To maximize the probability of success, the organization requires that these projects utilize all the methods and tools available in their project management methodology. An example of a Type A project is the introduction of a new technology into an existing product that has been very profitable for the company.
  • Type B projects — These projects are shorter in length, but they are still significant projects for the organization. All of the methods and tools in the project management process are probably required. Type B projects generally have good business value and are technologically challenging. Many product development projects fall in this category.
  • Type C projects — These are the projects that occur most frequently in an organization. They are short by comparison and use established technology. Many are projects that deal with the infrastructure of the organization. A typical project team consists of five people, the project lasts 6 months, and the project is based on a less-than-adequate scope statement. Many of the methods and tools are not required for these projects. The project manager uses those optional tools only if he or she sees value in their use.
  • Type D projects — These just meet the definition of a project and may require only a scope statement and a few scheduling pieces of information. A typical Type D project involves making a minor change in an existing process or procedure or revising a course in the training curriculum.
Table 1-1: Example of Project Classes and Definitions
image
These four types of projects might use the parts of the methodology . The figure lists the methods and tools that are either required or optional, given the type of project.
Figure 1-3: The use of required and optional parts of the methodology by type of project
image
CLASSIFICATION BY PROJECT APPLICATION
Many situations exist in which an organization repeats projects that are of the same type. Following are some examples of project types:
  • Installing software
  • Recruiting and hiring
  • Setting up hardware in a field office
  • Soliciting, evaluating, and selecting vendors
  • Updating a corporate procedure
  • Developing application systems

  1. What are the Project Methodologies?
Provide a diagram for each methodology.
Following are the most frequently used project methodologies in the project practice:

1 - Adaptive Project Framework

In this methodology, the project scope is a variable. Additionally, the time and the cost are constants for the project. Therefore, during the project execution, the project scope is adjusted in order to get the maximum business value from the project.
Image result for Adaptive Project Framework diagram


2 - Agile Software Development

Agile software development methodology is for a project that needs extreme agility in requirements. The key features of agile are its short-termed delivery cycles (sprints), agile requirements, dynamic team culture, less restrictive project control and emphasis on real-time communication.
Image result for Agile Software Development diagram

3 - Crystal Methods

In crystal method, the project processes are given a low priority. Instead of the processes, this method focuses more on team communication, team member skills, people and interaction. Crystal methods come under agile category.
Image result for Crystal Methods diagram

4 - Dynamic Systems Development Model (DSDM)

This is the successor of Rapid Application Development (RAD) methodology. This is also a subset of agile software development methodology and boasts about the training and documents support this methodology has. This method emphasizes more on the active user involvement during the project life cycle.
Image result for Dynamic Systems Development Model  diagram

5 - Extreme Programming (XP)

Lowering the cost of requirement changes is the main objective of extreme programming. XP emphasizes on fine scale feedback, continuous process, shared understanding and programmer welfare. In XP, there is no detailed requirements specification or software architecture built.
Related image

6 - Feature Driven Development (FDD)

This methodology is more focused on simple and well-defined processes, short iterative and feature driven delivery cycles. All the planning and execution in this project type take place based on the features.
Image result for Feature Driven Development diagram

7 - Information Technology Infrastructure Library (ITIL)

This methodology is a collection of best practices in project management. ITIL covers a broad aspect of project management which starts from the organizational management level.
Image result for Information Technology Infrastructure Library diagram

8 - Joint Application Development (JAD)

Involving the client from the early stages with the project tasks is emphasized by this methodology. The project team and the client hold JAD sessions collaboratively in order to get the contribution from the client. These JAD sessions take place during the entire project life cycle.
Image result for Joint Application Development  diagram

9 - Lean Development (LD)

Lean development focuses on developing change-tolerance software. In this method, satisfying the customer comes as the highest priority. The team is motivated to provide the highest value for the money paid by the customer.
Image result for Lean Development diagram

10 - PRINCE2

PRINCE2 takes a process-based approach to project management. This methodology is based on eight high-level processes.
Image result for PRINCE2diagram

11 - Rapid Application Development (RAD)

This methodology focuses on developing products faster with higher quality. When it comes to gathering requirements, it uses the workshop method. Prototyping is used for getting clear requirements and re-use the software components to accelerate the development timelines.
Image result for Rapid Application Development diagram
In this method, all types of internal communications are considered informal.

12 - Rational Unified Process (RUP)

RUP tries to capture all the positive aspects of modern software development methodologies and offer them in one package. This is one of the first project management methodologies that suggested an iterative approach to software development.
Image result for Rational Unified Process  diagram


13 - Scrum

This is an agile methodology. The main goal of this methodology is to improve team productivity dramatically by removing every possible burden. Scrum projects are managed by a Scrum master.
Image result for Scrum diagram


14 - Spiral

Spiral methodology is the extended waterfall model with prototyping. This method is used instead of using the waterfall model for large projects.
Image result for Spiral diagram system analysis and design

15 - Systems Development Life Cycle (SDLC)

This is a conceptual model used in software development projects. In this method, there is a possibility of combining two or more project management methodologies for the best outcome. SDLC also heavily emphasizes on the use of documentation and has strict guidelines on it.
Image result for Systems Development Life Cycle diagram


16 - Waterfall (Traditional)

This is the legacy model for software development projects. This methodology has been in practice for decades before the new methodologies were introduced. In this model, development lifecycle has fixed phases and linear timelines. This model is not capable of addressing the challenges in the modern software development domain.
Related image

System Analysis and Design ( Requirement Determination )







  1. What is Requirements Determination?
  • It refers to converting high level business requirements (from the system request) into detailed requirements that can be used as inputs for creating models.
  1. What is a requirement?
-  a statement of what the system must do or a characteristic it must have and will later evolve into a technical description of how the system will be implemented. . It describes a system feature, capability, or constraint. Generally requirements focus on what a system should do, rather than how it should do it. It must capture and describe user information requirements in a form that is precise and easily understand by users.
2. Fill-in the table below as many details as you can:


Functional Requirements
Description
Examples
Process-Oriented
- refers to the calculations, technical details, data manipulation and processing and other specific functionality that define what a system is supposed to accomplish.
Every order shall be allocated a unique identifier (ORDER_ID) which the user shall be able to copy to the account’s permanent storage area.
Information-Oriented
- is used to help the reader understand why the requirement is needed, and to track the requirement through the development of the system.
The user shall be able to search either all of the initial set of databases or select a subset from it.
The system shall provide appropriate viewers for the user to read documents in the document store.


  1. Fill-in the table below as many details as you can:


Non-functional Requirements
Description
Examples
Operational
 is the ability to keep an equipment, a system or a whole industrial installation in a safe and reliable functioning condition, according to pre-defined operational requirements.
• The system should be able to fit in a pocket or purse
• The system should be able to integrate with the existing inventory system.
Performance
-  is the rate of work accomplished by a computer system. Depending on the context, high computer performance may involve one or more of the following:
• Any interaction between the user and the system should not exceed 2 seconds.
• The system should receive updated inventory information every 15 minutes.
Security
 - is the degree of resistance to, or protection from, harm. It applies to any vulnerable and/or valuable asset, such as a person, dwelling, community, item, nation, or organization.
• Only direct managers can see personnel records of staff
• Customers can see their order history only during business hours.
Cultural and Political
-is the ability to function in other geographic/cultural areas.
• The system should be able to distinguish between United States and European currency
• The system shall comply with insurance industry standards.


4. What is Use Case?
- is a series of related interactions between a user (or more generally, an “actor”) and a system that enables the user to achieve a goal. To phrase this definition in another way, a use case describes the system's behavior as it responds to a series of related requests from an actor.
-  is a methodology used in system analysis to identify, clarify, and organize system requirements. In this context, the term "system" refers to something being developed or operated, such as a mail-order product sales and service. Use case diagrams are employed in UML (Unified Modeling Language), a standard notation for the modeling of real-world objects and systems.


  1. What is use case diagram?
  • is a representation of a user's interaction with the system that shows the relationship between the user and the different use cases in which the user is involved. A use case diagram can identify the different types of users of a system and the different use cases and will often be accompanied by other types of diagrams as well. Just like the figure below.


Use case diagram restaurant model





5. Fill-in the table below as many details as you can:


Step
Activities
Typical Asked Questions
  1. Identify the use cases
System Startup
System shutdown
Session<<include>>
Invalid PIN <<extend>>
Transaction
Withdrawal
Deposit
Transfer
Inquiry
How does ATM banking work?


What are the ATM banking system steps?
2. Identify the major steps within each use case
  • System is started when the switch is turned “on”.
  • System is shut down when the switch is the turned “off.”
  • System reads a customer’s ATM card
Individual types of
  • transaction will be tested below
  • Withdraw
System asks customer  to choose an account to withdraw from
  • Deposit
System asks customer to choose an account to deposit to
  • Transfer
System asks customer to choose an account to transfer from
  • Inquiry
System asks customer to choose an account to inquire about
  • Invalid PIN
Customer is asked to reenter PIN
What steps does an ATM operator do in ATM bank?


3. Identify elements within steps.
  • Operator Panel
  • Operator Panel
  • Card Reader
  • Customer console, consisting of a display and keyboard
  • Choose withdrawal transaction
  • Network connection to the bank
  • Cash dispenser
  • Envelope acceptor
  • Receipt Printer



What are the components of an ATM Bank?
4. Confirm the use case
A real ATM typically has a timeout mechanism that begins beeping and ultimately ejects the card and ends the session if the user fails to respond within a certain amount of time. While a customer who leaves before this happens might inadvertently leave a card behind, at least the customer would not be "logged in" with his/her PIN. (Thus, the security risk is comparable to that resulting from a lost card, with the customer's account still PIN protected.) 
What changes would be needed to the system requirements, design, and code to improve security this way? 

CLASSIFICATION BY PROJECT CHARACTERISTICS

What is GANTT CHART? Provide a diagram. A Gantt chart, commonly used in project management, is one of the most popular and use...