Brisbane Lifestyle

Software Engineering, Project Management, Methodologies and more...

Jean-Philippe (John) Jacquet

Brisbane, Queensland, Australia

Sunday, 17 January 2010

Successful Project Management

I keep noticing that everyone claims to be successful and, more often than not, sucessful only...
How good someone really is who has never experienced failure?

We all have strengths and weaknesses, and this means we perform better in some situations than others.

Have you ever noticed that when their is a problem (and there's always one), most consider self as being outside of the problem, while everybody else considers you as being part of it?

Sucessful people take ownership of the problem at hand.

Labels:

Saturday, 12 September 2009

The under-estimated benefits of components

Components Based Architecture has been formalised and publicised by UML-RUP more than 10 years ago, and the benefits of this approach are still unknown or under-estimated by most.

It escapes me how, in the 21st century, enterprises can ignore the return on investment (ROI) that can be achieved with components.

The most commonly missing piece in the software engineering puzzle today is the architecture document. I keep seeing projects after projects documenting detailed designs after gathering the requirements and no architecture.

When no components based architecture exists, Managers are reduced to finding and selecting solutions at project level.
With well documented components, encapsulating meaningful functionality, it is for example possible to:

  • Find Commercial-Of-The-Shelf (COSTS) solutions for one or several components.

  • Outsource the development of low added-value components.

  • Reuse components from other applications within the company.

Components are however a science and there is more to it than what meets the eye...
See previous article RUP - Component Based Architecture

Labels:

Wednesday, 1 July 2009

Agile Project Management with Scrum

About Scrum I like the philosophy and:
  • Feature prioritisation sessions
  • 30 days (undisturbed) iterations
  • Functionality presentation sessions
  • Self-organising teams

In short the principles are as follows:
  • All management responsibilities are divided between 3 Scrum roles:
    • The Product Owner focus is focused on Return On Investment (ROI)
    • The Team is responsible for developing functionality. Teams are self-managing, self-organising, cross-functional and they are responsible for figuring out how to turn Product Backlog into an increment of functionality.
    • The Scrum Master fills the position normally occupied by the Project Manager. He is responsible for the Scrum process. Like a sheep-dog, he's responsible for keeping the flock together (focused) and keeping the wolves away (undistracted).

  • Each Sprint is an iteration of 30 consecutive calendar days
    • A Sprint starts with a planning meeting, where the Product Owner presents the highest priority Product Backlog (4 hours) and the Team plans out the Sprint (another 4 hours).
    • A Sprint finishes with a Sprint review meeting (4 hours), where the team present what was developed. Then the Scrum Master holds a Scrum retrospective meeting with the team.

  • Artefacts:

    • A Product Backlog lists the features with estimates, associated Sprint and remaining work (days) - maintained by the Product Owner
    • A Sprint Backlog lists the tasks, which the team defines for turning the Product Backlog they selected into an increment of functionality, associated with the Originator, the person Responsible, the Status and the hours of work remaining - maintained by the Scrum Master -No Gantt-chart

  • Rules:

Get the book form Ken Schwaber - Agile project Management with Scrum:

Labels:

Monday, 22 June 2009

TFS for Project Management

Team Foundation Server (TFS) is a Microsoft offering for source control, data collection, reporting, and project tracking, and is intended for collaborative software development projects.
It is available either as stand-alone software, or as the server side back end platform for Visual Studio Team System (VSTS).

TFS Architecture:


When creating a project, there are 2 project templates to choose from:

  1. MSF Agile:

    • Provide Work items and Processes that support Agile programming approach

  2. MSF CMMI

    • Based on MSF Agile, it stretches the Agile approach to comply with CMMI Maturity level 3.

    • It is 150% larger than MSF Agile, for example MSF Agile has 25 work product artefacts, MSF CMMI has 59.
TFS manages pretty much everything as Work Items:


The recommended links organisation is as follows:

Queries and reports can be developed in order to retreive any data from TFS. There are existing reports, such as Bugs rate and Remaining work.

SharePoint Web Access allows web access to all the information in TFS: Work items, Queires, Reports, Documents, Source Control, Builds and also Timesheets. SharePoint can be used by project Stakeholders, including the Customer if you wish.

SharePoint Project Portal provides documents repositories for projects and Wiki features.

The Integration of TFS and Excel allows to extract any data from TFS into Excel, using queries. The data is copied in the spreadsheet and can be refreshed from TFS at the press of a button. The data can also be edited in Excel and be published in TFS. Charts can then be developed in Excel.

It is also possible to develop pivot-table that access the TFS database directly (instead of running a TFS query).

There are also plug-ins to TFS, such as:

  • Calibre VSTS Add-in, which allows synchronisation of requirements with the tool from Borland
  • Test Director Synchronisation Engine, which allows synchronisation of bugs with the Quality Centre.

Also TFS Power Tools, to be downloaded, offer very interesting features, such as:

  • Process Template Editor
  • Work Item Editor
  • Custom check-in policies
  • TFS Server Manager
  • TFS Client Tool
  • Alert Editor

Finally TFS 2010 will offer the following additional features:

  • Architecture Explorer, which is a graphical visualisation of code
  • 7 diagrams UML supported, for design and share diagrams
  • Tools for test cases management, such as tooling for better documentation & test
  • Test Impact View, which allows to run tests impacted by a code change only
  • Enhanced Vision Control, with gated check-in, branch visualisation & build workflow

Labels:

Saturday, 20 June 2009

Effective Thinking

In order to think effectively, one needs to avoid rules of thumb and short-cuts.

Heuristics for effective thinking:
  • Availability heuristics: Recall most vivid memories
  • Representiveness heuristics: Judge something with something else it looks like
  • Anchoring heuristics: Judge something with its distance from the anchor

Thinking traps:

  • Selective perseption
  • Contrast effect
  • Rationalisation effect

Short cuts:

  • Cognitive laziness => Need to gather more information, concrete facts and figures, short-term and long-term consequences.

Biases and Assumptions:

  • Consistency bias => Examine your motives regarding the problem
  • Confirmation bias => List possible causes of past outcomes. Purposefully focus on contradictory evidence. Seek input from impartial 3rd party
  • Hindsight bias
  • Attribution biases (self-serving bias, egocentric bias or fundamental attribution error)

Problem Solving Mindsets:

  • Apathetic mindset
  • Adaptive mindset
  • Analitical mindset

Decision making styles:

  • Despote
  • Judge
  • Waffler
  • Safety blanket

Obtain a wide range of experiences and maintain a learning log.

Labels:

Friday, 19 June 2009

Ellipse ERP in a nutshell

In a nutshell, Ellipse ERP is organised as follows:

1- Maintenance:
  • Equipment Register (Core)
  • Work Orders (Core)
  • Standard Jobs
  • Equipment Group Identifier
  • Equipment Tracing / History
  • Projects
  • Maintenance Scheduling
  • Work Groups
2- Supply Chain (Requisition, Approval, Consolidation, Pick, Acquit Receipt):
  • Catalogue (Core)
  • Inventory Management (Core)
  • Suppliers (Core)
  • Purchasing (Core)
  • Warehouse Management
  • Forward Purchasing Agreements
  • Repairables
  • Inventory Tracking
  • Transport
  • Disposables
  • Entitlements
3- HR:
  • Personel
  • Payroll
  • Leave / Absence Management
  • Time and Attendance
  • Position Management
  • Recruitment
  • Training
  • Performance Management
4- Finance:
  • Journal Holding
  • Chart of Account
  • General Ledger
  • General Ledger Statistics
  • Journals
  • Management Accounting
5- Administration:
  • System Administration
  • Table files

Applications naming conventions:

  • MSO - Online Programs
  • MSB - Batches
  • MSR/A - Reports
  • MSS - Subroutines
  • MSQ - Smart client applications
  • MSE - Web Applications
  • MSF - Data Files

Labels:

Wednesday, 17 June 2009

Staff Development

When it comes to staff development, one wants to start by identifying the Leaders. Here are a number of theories that can help in identifying Leaders:
  • Trait theory: Charism, Intelligence, Confidence, Influence, Business knowledge
  • Equity theory: Efforts rewarded fairly
  • Behavioral theory: Combine reaching specific goals and building relationships
  • Contingency theory: How leaders adjust under different circunstances
  • Situational theory: Strong leaders adjust to the needs of employees
Transactional leadership sets expectations and reward system, and manages by exception.
Tranformational leadership builds relationships, leads by example, and endeavours to make positive changes.

Developing staff through Organisational Development:
  • Change management
  • Knowledge management
  • Learning organisations

Organisational Development Interventions:

  • Total Quality Management: Eliminating defects in processes.
  • Six Sigma: Client orientation and management focused methodology for improving quality.
  • High-involvement Organisations: Entrust employees at all levels as decision makers.

Human Process Interventions:

  • Leadership development
  • Team building
  • Conflict resolution
  • Emotional Intelligence

Human Resource Development Interventions:

  • Performance management
  • Diversity programs

Labels:

Powered by Writeup.com.au