+ All Categories
Home > Documents > PROJECT MANAGEMENT :SOLUTIONS - muresults.netmuresults.net/itacademic/TYIT6/Nov17/PMSS.pdf ·...

PROJECT MANAGEMENT :SOLUTIONS - muresults.netmuresults.net/itacademic/TYIT6/Nov17/PMSS.pdf ·...

Date post: 09-Aug-2018
Category:
Upload: trinhdung
View: 214 times
Download: 0 times
Share this document with a friend
15
PROJECT MANAGEMENT :SOLUTIONS 1. Attempt any two of the following: 10 a. Explain how software product size can be reduced. Also discuss how it contributes to the improvement of software economics? The larger the product, the more expensive it is ‘per line.’ To improve affordability and ROI minimum amount of human-generated source material Mature and reliable size reduction technologies produces economic benefits o Ways to reduce the product size HLL Object oriented methods and visual modeling Code Reuse Commercial components (brief explanation of above points) b. What are the best practices to be followed for improving the overall quality of software? Key practices that improve overall software quality: Focusing on driving requirements and critical use cases early in the life cycle, focusing on requirements completeness and traceability late in the life cycle, and focusing throughout the life cycle on a balance between requirements evolution, design evolution, and plan evolution Using metrics and indicators to measure the progress and quality of an architecture as it evolves from a high-level prototype into a fully compliant product Providing integrated life-cycle environments that support early and continuous configuration control, change management, rigorous design methods, document automation, and regression test automation Using visual modeling and higher level language that support architectural control, abstraction, reliable programming, reuse, and self-documentation Early and continuous insight into performance issues through demonstration-based evaluations c. Briefly explain five symptoms of a project that is headed for trouble. Protracted integration and late design breakage Late risk resolution Requirements-driven functional decomposition. Adversarial stakeholder relationships Focus on documents and review meetings. (brief explanation of above points) d. Explain the three generations of software economics.
Transcript

PROJECT MANAGEMENT :SOLUTIONS

1. Attempt any two of the following: 10

a. Explain how software product size can be reduced. Also discuss how it contributes to the

improvement of software economics?

❖ The larger the product, the more expensive it is ‘per line.’

❖ To improve affordability and ROI –minimum amount of human-generated source material

❖ Mature and reliable size reduction technologies –produces economic benefits

o Ways to reduce the product size

• HLL

• Object oriented methods and visual modeling

• Code Reuse

• Commercial components

(brief explanation of above points)

b. What are the best practices to be followed for improving the overall quality of software?

Key practices that improve overall software quality:

❖ Focusing on driving requirements and critical use cases early in the life cycle, focusing on

requirements completeness and traceability late in the life cycle, and focusing throughout

the life cycle on a balance between requirements evolution, design evolution, and plan

evolution

❖ Using metrics and indicators to measure the progress and quality of an architecture as it

evolves from a high-level prototype into a fully compliant product

❖ Providing integrated life-cycle environments that support early and continuous

configuration control, change management, rigorous design methods, document

automation, and regression test automation

❖ Using visual modeling and higher level language that support architectural control,

abstraction, reliable programming, reuse, and self-documentation

❖ Early and continuous insight into performance issues through demonstration-based

evaluations

c. Briefly explain five symptoms of a project that is headed for trouble.

• Protracted integration and late design breakage

• Late risk resolution

• Requirements-driven functional decomposition.

• Adversarial stakeholder relationships

• Focus on documents and review meetings.

(brief explanation of above points)

d. Explain the three generations of software economics.

2. Attempt any two of the following: 10

a. What are the primary objectives during engineering stage of a modern software development

process?

➢ Engineering, i.e., Inception and Elaboration, focuses on the concept (idea) of the application

and its architectural components (analysis and preliminary design – perhaps a wee bit of

detailed design)

➢ Artifacts are established and base-lined; (Configurations…)

➢ Primary Objectives of inception phase

• Establish project software scope and boundary conditions

• Includes operational concept, acceptance criteria, and a clear understanding of what is

and what is not intended in the product

• Identify critical use cases (core functionalities) of system and the primary scenarios

that will drive the activities

• Demonstrate at least one candidate architecture against some of the primary scenarios

• Estimate the cost and schedule for the entire project (including detailed estimates for

the elaboration phase)

• Estimate potential risks (sources of unpredictability)

➢ Primary Objectives of elaboration phase

• Base-lining the architecture (establishing configuration management procedures…for

tracking all artifacts!

• Base-lining the Vision. It is now ‘solid’ and accommodated in the artifacts so far.

• Base-lining a detailed plan for Construction

• Demonstrating the baseline architecture such that it clearly supports the vision – at, of

course, reasonable cost in reasonably time.

b. Explain the top five principles of modern software management.

➢ Base the process on an architecture first approach.

o Balance driving requirements, architecture and design decisions, and life-cycle

plans before resources are committed.

➢ Establish an iterative life-cycle process that confront risk early.

o Refine problem understanding,an effective solutions and effective plan over

several iterations.

o Risk must be addressed early to increase predictability and to avoid rework

➢ Use component-based development.

o Move from “line-of-code” mentality to “component” mentality.

o A component is a cohesive set of preexisting lines of code ,either in source or

executable format,with a defined interface and behavior

➢ Establish a change management environment.

o Important for iterative development.-workflow by different teams ,controlled

baselines

➢ Enhance change freedom through tools that support round-trip engineering. o Automation of change management, documentation and testing across requirements,

specifications, design models, source code, executable code, and test cases

c. What is an artifact ? What are the two forms of requirements addressed in release

specification ?

➢ An artifact represents some cohesive information typically developed and reviewed as a single

entity

o e.g. prototype, or Use Case model, design model

➢ Two kinds of requirements info addressed in Release specifications:

o Vision Statement – evolutionary… High level requirements modeled here…

▪ Vision statement serves as Contract between developers and customer

▪ Vision usually contains the Use Case Model and Use Case Descriptions. (SRS)

o Evaluation criteria – details (often lower level) on how to evaluate…

▪ Snapshots of objectives for a milestone achieved

▪ Evaluation Criteria are defined as “Management Artifacts” vice Requirements

Set.

▪ Evaluation Criteria are organized ‘by iteration,’

▪ Need to be demonstrated…..

▪ Traceability is essential

▪ Each iteration’s evaluation criteria may be discarded, once the milestone is

complete.

▪ Address high risk early and core functionalities…

d. Explain the importance of software architecture. State the three different aspects of software

architecture from management perspective.

The importance of software architecture can be summarized as follows:

• Achieving a stable architecture represents a significant project milestone at which the

critical make/buy decisions should have been resolved

• Architecture representations provide a basis for balancing the trade-offs between the

problem space and the solution space.

• Architecture and process encapsulate many of the important (high payoff or high risk)

communications among individuals, teams, organizations and stakeholders.

• Poor architectures and immature processes are often given as reasons for project failures.

• A mature process, an understanding of the primary requirements, and a demonstrable

architecture are important prerequisites for predictable planning.

• Architecture development and process definition are the intellectual steps that map the

problem to a solution without violating the constraints.

Three different aspects of an architecture:

❖ An architecture – that is, the design of a software system as opposed to a component.

(intangible design concept)

o Includes all engineering necessary to specify the materials needed (buy, reuse,

custom, costs of construction…)

❖ An architecture baseline – (tangible artifacts) – a slice of information across engineering

artifacts sufficient to satisfy all stakeholders that the vision (function and quality) can be

achieved with in the parameters of the business case (cost, profit, time, people,

technology, …)

❖ An architecture description – human-readable representation of the architecture, which is

one of the components of an architecture baseline.

o Is an organized subset of information extracted from the design set model(s).

o More detailed; contains additional info in the models. o Indicates how the intangible concept is realized via the tangible artifacts.

3. Attempt any two of the following: 10

a. List the purpose of milestones in the project life cycle. State the three types of joint

management review. ➢ Purpose of the milestones in the lifecycle

o Demonstrate how well a project is performing.

o Synchronize stakeholders expectations.

o Achieve concurrence on three evolving perspectives: the requirements ,the design, and

the plan.

o Synchronize related artifacts into a consistent and balanced state.

o Identify the important risks,issues,and out-of-tolerance conditions.

o Perform a global assessment for the whole lifecycle ,not just the current situation of an

individual perspective or intermediate product. ➢ Three types of management review

o Major milestones

▪ System-wide reviews at end of each of the four phases.

o Minor milestones

▪ Iteration-focused events to review iterations.

▪ Includes a release specification (release plan and evaluation criteria), and

release description (results of the evaluation of the release.)

o Status assessments

▪ Periodic events to assess progress.

b. Explain forward and backward-looking approach of cost and schedule estimating process.

➢ Backward Looking (Bottom-up approach)

o Analyze the micro-level budgets and schedules ,then sum all these elements into the

higher level budgets and intermediate milestones

i. Lower level WBS elements are elaborating into detailed tasks by responsible WBS

element managers.

ii. Estimates are combined and integrated into higher level WBS elements.

iii. Comparisons are made with the top down budgets and schedule milestones. Large

differences are reconciled to converge on agreements. ➢ Forward Looking (Top-down approach)

o Starts with an understanding of the general requirements and constraints ,derives a macro-level

budget and schedule and then decomposes these elements into lower level budgets and

intermediate milestones

i. Software project manager characterizes overall size, process, environment, people and quality.

ii. Software manager makes a macro-level estimate of effort and schedule using software cost

estimation model.

iii. Software manager partitions the effort in top-level WBS.

iv. Subproject managers decompose each WBS elemnt into lower levels.

c. What is the significance of periodic status assessments ?Explain the default content of status

assessment reviews.

Periodic status assessments

• Serve as project snapshots

• A mechanism for open addressing ,communicating and resolving management issues

,technical issues, and project risks.

• Objective data derived directly from on-going activities and evolving product configurations.

• A mechanism for disseminating process,progress,quality trends,practices,and experience

information to and from all stakeholders in an open forum.

d. Explain the concept of work flow?Describe major workflows involved in software

development.

➢ The term workflow is used to mean a thread of cohesive and most sequential activities.

➢ There are seven top-level workflows:

o Management workflow: controlling the process and ensuring win conditions for all

stakeholders

o Environment workflow: automating the process and evolving the maintenance

environment

o Requirements workflow: analyzing the problem space and evolving the requirements

artifacts

o Design workflow: modeling the solution and evolving the architecture and design artifacts

o Implementation workflow: programming the components and evolving the

implementation and deployment artifacts

o Assessment workflow: assessing the trends in process and product quality

o Deployment workflow: transitioning the end products to the user

4. Attempt any two of the following: 10

a. Why an independent team is used for software assessment? Explain the activities of software

assessment team over the project life cycle.

➢ Independent team for software assessment

o Ensuring an independent quality perspective

o To exploit concurrency of activities

b. Explain the automation aids and tool components that support the process workflows.

➢ Management

o Software cost estimation tools and WBS tools are useful for generating the planning

artifacts

o Workflow management tools and a software control panel can maintain on-line status

assessments.

o This automation support can improve insight of metrices collection and reporting

concepts

➢ Environment

o Configuration management and version control

➢ Requirements

o Conventional:system requirements->subsystem->component_>unit

o Modern proess,system requirements are captured in the vision statement

o Lower level requirements are driven by the process

o Vision statement captures contract between development group and customer

o Iterative models allow customer and developer to work with tangible evolving

versionof system

o Project need to focus on achieving the proper specification of vision

➢ Design

o Visual modeling-used for capturing design models presenting them in human readable

format and translating them into source code

o Visual modeling is the graphic representation of objects and systems of interest

using graphical languages.

➢ Implementation

o Programming environment –editor ,compiler,debugger,..

o Integration with change management tools, visual modeling tools, and test automation

tools.

➢ Assessment and deployment

o Test automation, test management, and defect tracking tools.

o Defect tracking provides the change management instrumentation to automate metrices

and control release baselines

c. What are the main features of default line-of-business organization ?What are the typical

components of the organizational infrastructure ?

➢ The main features of default organization are

o Responsibility for process definition and maintenance is specific to a cohesive line of

business, where process commonality makes sense

o Responsibility for process automation is an organizational role.Projects achieve

process commonality primarily through the environment support of common tools

o Organizational roles may be fulfilled by a single individual or several different teams,

depending on the scale of the organization

➢ The typical components of the organizational infrastructure are as follows:

o Project administration: time accounting system; contracts, pricing, terms and

conditions; corporate information systems integration

o Engineering skill centers: custom tools repository and maintenance, bid and proposal

support, independent research and development

o Professional development: internal training boot camp, personnel recruiting, personnel

skills database maintenance, literature and assets library, technical publications.

d. What is software change order?What are the primitive components of a software change

order?

➢ The atomic unit of software work that is authorized to create, modify, or obsolesce components

within a configuration baseline .

➢ Change Orders are used to track status and performance.

➢ The primitive components of a software change order

o Title

▪ Suggested by orginator and finalized by CCB,Reference to external software

problem report

o Description

▪ Name of originator,Date of origination.

▪ Textual description

• Code segments,display snapshots,error messages,other data

o Metrices

▪ For planning ,for scheduling and for assessing quality improvement

▪ Different categories

• Type 0(critical bug),type1(bug),type 2(enhancement),type 3 (new

feature and type 4(other)

▪ Initial estimates

• Amount of breakage (volume of change in SLOC,function

points,files,components,.. ), and effort (complexity )

▪ Upon resolution ,actual breakage and effort is noted

o Resolution

▪ Name of person ,Components changed, Actual metrices and description

o Assessment

▪ Inspection,analysis,demonstration,or test

▪ Test cases executed ,Test configurations

o Disposition

▪ Proposed,Accepted,Rejected,Archived,In progress,In assessment,Closed

5. Attempt any two of the following: 10

a. What is software project control panel? Describe the basic operational concept for an

SPCP?

➢ Panel-Whole display

➢ Within a panel are graphical objects ,which are types of layouts (bar charts)

➢ Each graphical object displays a metric

➢ Metrices displayed in two modes:value,trend

➢ Metrices can display with or without control values

➢ A control value is an existing expectation ,either absolute or relative,that is used to

comparison with the dynamically changing metric

➢ Indicators may display data in formats that are

binary(B/W),tertiary(R/Y/G),digital(int/float),enumerated values

➢ The basic operational concept for an SPCP

▪ Start the SPCP

▪ Select a panel preference

▪ Select a value or graph metric

▪ Elect to superimpose controls

▪ Drill down to trend

▪ Drill down to point in time

▪ Drill down to lower levels of information

▪ Drill down to lower level of indicators

b. Explain the differences in schedule distribution and workflow priorities for small and large

projects.

➢ Design is key for both small and large projects.

o Small commercial projects – good design provides good marketability and good

profits.

o Large projects – good design provides for predictable, cost-efficient construction.

➢ Management.

o Most important for large projects where consequences of planning and resource errors

can be catastrophic.

➢ Deployment.

o Most important in small projects where there is a large and diverse customer base.

c. Explain the key differences in the process primitives for varying levels of architectural risk.

d. What are the three fundamental sets of management metrics? Briefly explain any two

management indicators.

❖ Three Basic Management Metrics

➢ Technical progress

➢ Financial status

➢ Staffing progress

❖ Management Indicatos

➢ Work and Progress

• Progress indicators provide information on how well the project is performing with

respect to planned task completions and keeping schedule commitments.

• Tasks are scheduled and then progress is tracked to the schedules.

• Metrics on actual completions are compared to those of planned completions to

determine whether there are deviations to the plan.

➢ Budgeted cost and expenditures

• A budget is a financial plan and a list of all planned expenses and revenues.

• Actual Costs are costs which have occurred and can be reliably measured.

• Budgeted Costs are costs which have been estimated, possibly by using Forecasted

Costs.

• Earned Value is a well-known project management tool that uses information on cost,

schedule and work performance to establish the current status of the project.

• A better method is earned value because it integrates cost, schedule and scope and

can be used to forecast future performance and project completion dates.

• It is an “early warning” program/project management tool that enables managers to

identify and control problems before they become difficult to overcome.

➢ Staffing and Team Dynamics

▪ Tracking actual versus planned staffing

▪ Metric: staffing momentum

• additions versus attrition.

▪ Increases in staff can slow overall project progress

▪ Low attrition of good people is a sign of success

▪ Glaring indicator of future trouble:

▪ Unplanned attrition. Usually due to personnel dissatisfaction with

management, lack of teamwork, or high probability of failure to meet

objectives

6. Attempt any two of the following: 10

a. What are the characteristics of modern iterative development framework ?What are the

steps to follow to transition to a mature iterative development process ?

Characteristics of modern iterative development framework

Good way to transition to a more mature iterative development process that supports automation

technologies and modern architectures is to take the following shot:

Ready.

❖ Do your homework. Analyze modern approaches and technologies.

❖ Define your process. Support it with mature environments, tools,

❖ and components. Plan thoroughly.

Aim.

❖ Select a critical project. Staff it with the right team of complementary

resources and demand improved results.

Fire.

❖ Execute the organizational and project-level plans with vigor and

follow-through.

b. Give an account of next-generation software cost estimation models.

❖ A next-generation software cost model should explicitly separate architectural engineering

from application production

❖ Cost of designing,producing,testing and maintaining the architecture baseline is a function

of scale,quality,technology,process and team skill

❖ Architecture model –diseconomy of scale(exponent>1)

❖ Production stage cost model –economy of scale(exponent<1)

❖ Next generation environments and infrastructures are moving to automate and standarize

many of the management activities (planning,project control ,change mgmt..) ,requiring

lower percentage of effort for overhead activities as scale increases

❖ Reusing common processes across multiple iterations of project,multiple releases of single

product,or multiple projects in an organization relieves many of the sources of diseconomy of

scale

❖ Critical sources of scrap and rework are eliminated by applying precedent experience and

mature processes

❖ Reuse of components reduce the size of production effort

❖ Unit of mass for architecture is scale whereas in application ,it is size

❖ Scale -classes,components,processes ,nodes

❖ Size –SLOC or megabytes of executable code

c. Discuss nine best practices of software management.

1. Formal risk management

2. Agreement on interfaces

3. Formal inspections

4. Metric-based scheduling and management (Model based notation and objective quality

control)

5. Binary quality gates at the inch-pebble level (Evolving level of detail)

6. Program-wide visibility of progress versus plan. (open communication among project team

members)

7. Defect tracking against quality targets (architecture first and objective quality control)

8. Configuration management (Change management)

9. People-aware management accountability

d. With the help of diagram explain risk profile of a modern project across its life cycle

➢ The engineering stage of the life cycle focuses on confronting the risks and resolving them

before the big resource commitments of the production stage

➢ Modern process attacks the important 20% of the requirements, use cases, components, and

risks.

➢ The effect of the overall life-cycle philosophy on the 80/20 lessons provides a useful risk

management perspective

7. Attempt any three of the following: 15

a. With the help of diagram explain predominant cost estimation process. What are the

characteristics of a good estimate?

The software project manager defines the target cost of the software ,and the manipulates the

parameters and sizing until the target cost can be justified .The rationale for the target cost may

be to win a proposal ,to solicit customer funding ,to attain internal corporate funding ,or to

achieve some other goal.

A good estimate has the following attributes:

❖ It is conceived and supported by the project manager, architecture team, development team,

and test team accountable for performing the work.

❖ It is accepted by all stakeholders as ambitious but realizable.

❖ It is based on a well defined software cost model with a credible basis.

❖ It is based on a database of relevant project experience that includes similar processes,

technologies, environments, quality requirements, and people.

❖ It is defined in enough detail so that its key risk areas are understood and the probability of

success is objectively assessed.

b. Write short note on implementation and deployment set.

➢ Implementation Set artifacts includes: source code (as implementation of components) their

form, interfaces, and dependencies) and executables necessary for stand-alone testing of

components.

o These executables are the primitive parts needed to construct the end products

including custom components, APIs, other reusable or legacy components in some

programming languages.

➢ Deployment set artifacts normally include the deliverables and machine language notations,

executable software, build scripts, installation scripts, and executable target specific data

necessary to use the product in its target environment.

c. Define WBS.Write short note on evolutionary WBS.

❖ A WBS is simply a hierarchy of elements that decomposes the project plan into the discrete

work tasks.

❖ A WBS provides the following information structure:

o A delineation(pictorial description) of all significant work

o A clear task decomposition for assignment of responsibilities

o A framework for scheduling, budgeting, and expenditure tracking.

❖ Evolutionary Work breakdown structures

• An evolutionary WBS will organize the planning elements around the process framework(

Workflows, Phases & artifacts ).

• This approach accommodates the expected changes in the evolving plan

• The basic recommendation for the WBS is to organize the hierarchy as follows

o First-level WBS elements are the workflows.These elements are allocated to a

single team & constitute the anatomy of a project for the purpose of planning &

comparison with other projects

o Second level elements are defined for each phase of life cycle. These elements

allow the fidelity (reliability, commitment )of the plan to evolve more naturally

with the level of understanding of the requirements, architecture & the risks

o Third-level elements are defined for the focus of activities that produce the artifacts

for each phase.These elements may be the lowest level in the hierarchy that collects

the cost of a discrete artifacts for a given phase

d. Write short note on organization policy.

➢ Organizational Policy- standards for project software development processes

o Process definition – major milestones, intermediate artifacts, engineering repositories,

metrics, roles and responsibilities.

▪ What gets done ?(activities and artifacts)

▪ when does it get done ?(life-cycle phases and milestones)

▪ who does it?(roles and responsibilities)

▪ how do we know that it is adequate (checkpoints, metrics and standards of

performance.)

➢ Organizational Policy levels

o Highest:

▪ Long-term process improvement

▪ General technology insertion and education

▪ Comparability of project and business unit performance

▪ Mandatory quality control.

o Intermediate:

▪ Tactical and short-term process improvement

▪ Domain-specific technology insertion and training

▪ Reuse of components, processes, training, tools, and personnel.

▪ Compliance with organisation standards

o Lowest:

▪ Efficiency in achieveing quality,schedule and cost targets

▪ Project-specific training

▪ Compliance with customer requirements

▪ Compliance with organisational business unit standards.

e. Define the following terms:

i)Adaptability ii)Breakage iii)Rework iv)Maturity v)Stability

❖ Adaptability is defined as rework trend over time

❖ Breakage is defined as the average extent of change ,which is the amount of software

that needs rework

❖ Rework is defined as the average cost of change, which is the effort to analyze, esolve

and retest all changes to software baselines.

❖ Maturity is the MTBF trend over time.

❖ Stability is defined as the relationship between opened versus closed SCOs.

f. Explain any five indicators of a successful transition to a modern culture focused on

improved software business performance.

❖ Lower level and mid-level managers are performers

o Competant mangers spend their time performing-status,plans,estimates

❖ Requirements and designs are fluid and tangible

o An iterative approach requires actual construction of progressive comprehensive

systems that demonstrate the architecture ,enable objective requirements negotiations,

validate technical approach and address resolution of key risks

❖ Ambitious demonstrations are encouraged

o Open and attentive follow –through is necessary to resolve issues

❖ Good and bad project performance is much more obvious earlier in the life cycle

o It is the early phases that make or break a project

o The very best team should perform planning and architecture phases

❖ Early increments will be immature

o Demonstarte tangible improvements in successive increments

o Objectively quantifying changes,fixes and upgrades will indicate the quality of the

process and environment for future activities

❖ Artifacts are less important early, more important later

o A baseline should be achieved that is useful and stable to warrant time-consuming

analyses of the quality factors of traceability ,thoroughness and completeness

❖ Real issues are surfaced and resolved systematically

o Requirements and designs evolve together ,with continuous negotiation, trade-off and

bartering toward best value

❖ Quality assurance is everyone’s job, not a separate discipline

❖ Performance issues arise early in the life cycle

❖ Investments in automation is necessary

❖ Good software organization should be more profitable

(any five in detail)


Recommended