Home » Featured, The IT Shop

class ITShopHumanInterfaces

15 October 2010 No Comment

people

class ITShopHumanInterfaces

/// by Dan Hermes

{

public object resource;

public object need;

public object product;

public interface ICustomer

{

resource m_cabbage;

resource m_bizneed;

public resource Money

{

get { return m_cabbage; }

set { m_cabbage = value; }

}

public need BusinessNeed

{

get { return m_bizneed; }

set { m_bizneed = value; }

}

}

public interface IUser : ICustomer

{

public product DesireASoftwareProduct(resource Money,need BusinessNeed)

{

product Product = IStakeholder.MakeItHappen(BusinessNeed, Money,
Time);

return Product;

}

public product PleadForEnhancements(resource Money,need BusinessNeed)

{

product ProductUpgrade = IStakeholder.MakeItHappen(BusinessNeed, Money, Time);

return ProductUpgrade;

}

}

public interface IStakeholder: ICustomer

{

public resource Interest

{

get { return m_givesasht; }

set { m_givesasht = value; }

}

public product MakeItHappen(need BusinessNeed, resource Money, resource Time)

{

ConsiderBusinessStrategy(strategyCompanyGoals);

return Product;

}

}

public object req;

public object spec;

public object wireframe;

public object techdesign;

public object projectplan;

public object code;

public object strategy;


public interface ITShopHuman

{

}

public interface IProjectManager: ITShopHuman

{

public needs TeamNeeds

{

get{ return m_teamneeds; }

set{ m_teamneeds = value; }

}

publicneeds BusinessNeeds

{

get{ return m_bizneeds; }

set{ m_bizneeds = value; }

}

public needs PoliticalPressure

{

get{ return m_pols; }

set{ m_pols = value; }

}

public resource Time

{

get{ return m_ticktock; }

set{ m_ticktock = value; }

}

public resource Money

{

get{ return m_dills; }

set{ m_dills = value; }

}

public resource Staff

{

get{ return m_staff; }

set{ m_staff = value; }

}

public projectplan CreateProjectPlan(resource Time, resource Money, resource
Staff,spec Specifications)

{

return ProjectPlan;

}

public ExecutePlan(DateTime StartDate)

{

Agile();

Scrum();

CMMI();

}

}

public interface IAnalyst: ITShopHuman

{

public req AnalyzeBusinessNeeds(need BusinessNeeds)

{

return BizRequirements;

}

public req DefineScope(req BizRequirements)

{

return ScopedRequirements;

}

public spec CreateSolution(req ScopedRequirements)

{

Specifications.Wireframes = MockupWireframes(ScopedRequirements);

return Specifications;

}

public wireframe MockupWireframes(req ScopedRequirements)

{

return Wireframes;

}

}

public interface IDeveloper : ITShopHuman

{

public resource Caffeine

{

get { return m_buzz; }

set { m_buzz = value; }

}

public techdesign Design(spec Specifications)

{

return TechnicalDesign;

}

public code Code(spec Specifications)

{

switch(JobType)

{

case “Retrofit”: Retrofit();

case “FromScratch”: FromScratch();

case “Maintain”: Maintain();

default: JustMakeItWork();

}

return Module;

}

public bool UnitTest(spec Specifications, req BizRequirements)

{

return FunctionsAsDesigned;

}

public code Release (code Module)

{

PreReleaseTest();

return Deliverable;

}

}

public interface IArchitect : IDeveloper

{

public strategy TechStrategy(spec Specifications, resource Time, resource Money, resource Staff )

{

Scalability();

Security();

Maintainability();

WellFactored();

ProperlyCoupled();

PatternUse();

ThirdPartyTools();

TotalCostofOwnership();

return TechnicalStrategy;

}

}

public interface IProductManager : IAnalyst

{

public strategy ProductStrategy(need BusinessDemands, need PoliticalPressures, need BusinessRealities, need MarketData, need TechnicalConsiderations, resource
Time, resource Money, resource Staff )

{

return ProductStrategy;

}

}

public interface ITester : ITShopHuman

{

public Boolean EnterpriseApplicationTwelveWeeksBehindSchedule

{

get{ return m_twelveweeksbehind; }

set{ m_twelveweeksbehind = true; }

}

public code LastMinuteCodeUpdate

{

get { return m_justonemorelittlething; }

set { m_justonemorelittlething = value; }

}

public testplan DevelopTestPlans(specs Specifications)

{

return TestPlan;

}

public Collection ExecuteTestplan(testplan TestPlan, code Release)

{

return Issues;

}

public Boolean RegressionTest(testplan RegressionTestPlan, code Release)

{

return DidWeEffItUp;

}

public Boolean SmokeTest(testplan MakeItUpOntheFly, codeRelease)

{

return not Shmokin;

}

public Boolean PreReleaseTest(testplan PreReleaseTestPlan, code Release)

{

return Boolean ReadytoRelease;

}

}

public interface IReleaseEngineer : IDeveloper

{

}

public interface ISysAdmin : IDeveloper

{

}

public interface IDBA : IDeveloper

{

}

public interface ICTO : IProjectManager, IArchitectIAnalyst

{

public strategy RunTheITShop(need BusinessNeeds, resource Time, resource Money, resource Staff )

{

TechnologyStrategy();

IProductManager.ProductStrategy();

IStakeholder.BusinessStrategy();

return PlanItAndMakeItHappen;

}

}

}



Your thoughts?

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.