.Open Markus83 M Lynne Markus Power, Politics, and MIS Implementation Commun ACM V26n6(Jun 1983)pp430-444 & .See [MyersAvisson02] Chapter 3, pp19-48 =EXPERIENCE PEOPLE SYSTEMS RESISTANCE POLITICS ORGANIZATION MANAGEMENT FIS In this case People resisted a new system not just because it wasn't good enough, or because they were not trained etc, but because the new Financial Information System was a ploy to change the organization. New FIS system tended to move data and power toward a centralized system and away from divisional centers. Divisions fought the system. Sometimes it is better to change the organization first and then change the technological systems in use. .Close .Open MyersAvisson02 Michael D Myers & David Avison Qualitive Research in Information Systems: A Reader SAGE Publications Thousand Oaks CA 2002 T58.64 Q35 ISBN 0-7619-6632-3 =READER PEOPLE SYSTEMS Includes: .See [Markus83] .Close .Open Chandrasekaran97 Periannan Chandrasekaran How use case modeling policies have affected the success of various projects (or how to improve use case modeling) OOPSLA'97 & ACM SIGPLAN notices V??n?(??? 1997)pp6-9 .See http://doi.acm.org/10.1145/274567.274569 =ANECDOTE USE CASE REQUIREMENTS OOSE Jacobson Tells conclusion from several large projects that used OOSE. Problems .List need details of all changes in system as use case proceeds Need comprehensive list of use cases involving users, a comprehensive and clean model of the human actors, and robust domain model. Include algorithms(business rules?) as regular requirements Use cases must capture all interfaces with external systems even if not human. The GUI is not the use case. One screen can trigger different use cases that are independent of each other. Keep the use case and domain model synchronized. Common well defined terminology. Use abstract use cases for algorithms. .Close.List An abstract use case is one that is not initiated by an actor and contains common steps abstracted from other use cases. Example: calculate discounts on sale. Notes that people expressed common algorithms and procedures as "business rules" (possibly in an attempt to fit them to SQL and AI style Rule Engines). Claims they should be expressed as (abstract) use cases. (dick)|- may be better to restrict business rules to invariants only?? .Close .Open Lindvall04 Mikael Lindvall & Dirk Muthig &Aldo Dagnino& Christina Wallin & Michael Stupperich & David Kiefer & John May & Tuomo Kahkonen Agile Software Development in large organizations IEEE Computer Magazine V37n12(Dec 2004)pp26-3 =POLL AGILE TECHNICAL PROCESS ONE SIZE XP ABB DaimlerChrysler Motorola Nokia Reports on meetings where several pilot XP projects were discussed XP adopted in large organizations for the same business reasons as small ones: need to increase productivity without losing quality . Problems with specifications becoming obsolete before project finished. XP always needed customization. It produced good or better software more quickly. Changes were handled faster. Morale was better. But XP doesn't fit well with existing practices in large organizations and so has to be tailored. Make it look like a CMM process. Change control boards do not work well with refactoring, continuous integration, Problems when XP team is not in one place. Problems with interfaces between XP team and Traditional team. Architecture is important. Clash between up-front top-down planning and XP planning game. Requirements were already inaccurate when XP started and were not user stories. Continuous testing vs an added round of acceptance tests done by a different team. XP pairing vs formal reviews for SQA. Management and QC want the old documentation and XP doesn't do documentation. (dick)|- write a user story for each required piece of documentation and do the planning game on it. "That will take us 2 days work, ..." .Close .Open MyersBANicholsWobbrockMiller04 Brad A Myers & Jeffrey Nichols & Jacob O Wobbrock & Robert C Miller What IEEE Computer Magazine V37n12(Dec 2004)pp36-43 =DEMO TOOLS HANDHELD PC INTEGRATION WIRELESS PDA CELL PHONE PalmOS SlideShowCommander::tool. PUC::protocol="Personal Universal Controller", allowing any device to be controlled from a handheld. ShortCutter::tool="device independent design of controller interfaces" People use both PC mouse and handheld together to do things. .Close .Open Colwell04b Bob Colwell Interface Quotas and Internet-Derived Value IEEE Computer Magazine V37n12(Dec 2004)pp10-11 =ESSAY USER SAFETY SIMPLICITY WEB/NET Keep user interfaces similar to old & thouqht-free. Use internet to simplify & unify user interfaces. .Close .Open Rost04 Johann Rost Political Reasons for failed software Projects IEEE Software Magazine V21n6(Nov /Dec 2004)pp104+102-103 =CASE SABOTAGE SUBVERSION PEOPLE STAKEHOLDERS .Close .Open SerranoCiordia04 Nicolas Serrano & Ismael Ciordia Ant: Automating the process of Building Applications IEEE Software Magazine V21n6(Nov /Dec 2004)pp89-91 =ADVERT OPEN SOURCE TOOL Ant Apache Java XML Ant::acronym="Another neat tool", use XML to carry out routine tasks based on build.xml files and executes tasks as Java classes. .See http://ant.apache.org .Close .Open Jackson04 Michael A Jackson Seeing More of the World IEEE Software Magazine V21n6(Nov /Dec 2004)pp83-85 =ESSAY REALITY REQUIREMENTS Requirements are about the .Key problem world which interacts with the machine at the machine-world interface. .Key Outer requirements describe the effects the stakeholders would like to experience in the problem world. .Key Inner Requirements specify how the machine should behave at the machine-world interface to ensure the whole satisfies the outer requirements. Stakeholders needs are nearly always met by a causal chain .Key problem-wold properties separating inner from outer. Sequence: outer; problem-world properties; inner. How to find some faults before they emerge as failures in use. Some questions to ask: .Set What if a use-case is abandoned in mid-execution? How do use-cases fit together in sequences? Consider any object's attribute, what happens if the real world attribute changes? Take any actor, what other things might it do/might happen to it (eg die) and what should the machine do about it? Start from an output, trace the chain of problem world events, what might happen? What might go wrong? What if things get delayed(crossed letters!)? .Close.Set .Close .Open DrobkaNoftzRaghu04 Jerry Drobka & David Noftz & Rekha Raghu Piloting XP on four mission-critical projects IEEE Software Magazine V21n6(Nov /Dec 2004)pp70-75 =EXPERIENCE XP AGILE 4 Motorola Projects Gained a minimum of 260% productivity vs waterfall (incremental was 162%) with 70-90% test coverage, and with a 51..75% improvement in quality (defects at system test/KAELOC) High morale and confidence, training easier. Challenges: fitting with non-XP projects and managers. Need thorough training and coaching. Did an initial "blitz" software architecture rather like Unified Process. .Close .Open MadanmohanDe'04 T R Madanmohan & Rahul De' Open Source Reuse in Commercial Firms IEEE Software Magazine V21n6(Nov /Dec 2004)pp62-69 =POLL 13 projects OPEN SOURCE REUSE COMPONENTS BSD Apache MySQL SSH Selecting components is not easy. The License rules play an important part in the selection process, as does the activity of the community that supports the source code. Some components require other unusual components that make the package less appealing. Similarly, the documentation of interfaces lag behind implementations making some products less reusable. .Close