quarta-feira, 12 de outubro de 2016

Product Design / System Engineering and the importance of standards - Samsung Galaxy Note 7

A very interesting article on product / system engineering / design and the importance of [international safety] standards.
From the Wall Street Journal:
http://www.wsj.com/articles/what-samsung-must-do-to-win-back-our-trust-1476218021?tesla=y

Read on and be appalled:
- There is no mandatory safety standard (in the US, in the EU) for mobile devices and since things could really catch fire (for instance on a plane) maybe there should be
- Sometimes the standards do exist but are not mandatory
- For some countries who deems a component or a phone all together suitable for a certain purpose is the company that produces it (really?)
- Components are subcontracted and due tot the secrecy involved (trade secrets are... secret), one company might not know what exactly is incorporating into its design (e.g. Batteries are certified / labeled by other companies; are all suppliers the same? Are all lots the same?)
- The problems can either come from hardware, or software but in the end, it doesn't really matter. Sometimes the recall chain is not giving you/collecting you the much needed information which is input for rework. This was a problem for Samsung (in the US) because it does not have a distribution chain in the US unlike Apple
- A compliance statements (the CE marking for instance) is just a statement by the manufacturer indicating they [think they] are compliant. Nobody checks it [before going into market - of course it will be checked after "something" goes wrong]. In fact most of the times there are no requirements for compliance testing (which is a different and safer thing, because some independent entity is analysing your work product)
- The fact that there is no word for re-recall: Because it rarely happens at such a scale, Samsung stopped the production (!). Nobody would trust on a recall of the recall. How many recalls would it take for Samsung to produce something that works properly as most products work (in terms of catching fire)?

The bottom line:
- Samsung shares are going down. There's talks of 15 K M EUR of losses.
- But worst than that: There's the image / reputation thing... Once lost it typically is like... Virginity.

So what do you think on the lack of process (and international standards) on product
/ system design? Is it a bore or is it much needed? We carry those things on the pocket of our trousers. Into planes. We are giving it to our kids...

terça-feira, 11 de outubro de 2016

The Biggest Software Flops of All Time - PCMag.com

Right on topic, one interesting feature from the PC Magazine site (Slideshow):

The Biggest Software Flops of All Time - Slideshow from PCMag.com

PS. Have [NOT] fun!

Quoting:
"Software is a funny thing. You can't touch it, but you can certainly pay for it. It weighs nothing, but takes dozens or even hundreds of people to make. And sometimes it just doesn't work out.

No matter how detailed your specs, how solid your market research, and how optimized your code, there are always winners and losers. Sometimes a competitor comes to market with something better. Sometimes unforeseen circumstances make your program useless or outdated. And sometimes you just screw things up to a point that no amount of patching can fix it.

In this feature, we'll crawl through the annals of computing history to showcase 10 software releases that went horribly wrong. Some of the biggest names in the industry show up here—Apple and Microsoft are both well-represented—which proves that there's always a second chance. And a third and a fourth if you play your cards right. For some of the other development houses on this list, though, their software flops sounded the death knell for their businesses."


DIGEST: And the recent links are...

And the recent relevant links are:


  • About Waterfall SDP Phases and related process activities as weel as resulting work products:
  1. http://silvaonsoftware.blogspot.pt/2016/04/main-work-products-for-software.html
  2. http://silvaonsoftware.blogspot.pt/2016/05/process-software-requirements-team.html
  3. http://silvaonsoftware.blogspot.pt/2016/05/process-sw-design-process-and-its-main.html


segunda-feira, 10 de outubro de 2016

Open Services for Lifecycle Collaboration (OSLC)

Interesting initiative for life-cycle support tools interoperability: Open Services for Lifecycle Collaboration

For interoperability one should understand performing from one tool to another operations like Querying, Creating, Reading, Updating, Deleting (resources) and so on.

Quoting: "Exposing more data: Software should be able to share and use linked data. With OSLC specifications, your tools can freely understand each others’ data and artifacts. That means you can better analyze, track, and explore that data to make better decisions."

And furthermore quoting the OSLC Primer: "Open Services for Lifecycle Collaboration (OSLC) is an open community creating specifications for integrating tools. These specifications allow conforming independent software and product lifecycle tools to integrate their data and workflows in support of end-to-end lifecycle processes.
OSLC is based on the W3C Linked Data. One of the primary techniques for integrating tools using OSLC is Linking data via HTTP, which specifies creating, retrieving, updating and deleting (CRUD) lifecycle artifacts based on internet standards like HTTP and RDF using Linked Data model. Each artifact in the lifecycle, such as a requirement, is an HTTP resource that is manipulated using the standard methods of the HTTP specification (like GET, POST)."

Several specs are being defined, for example "Requirements Management" ones:
http://open-services.net/bin/view/Main/RmSpecificationV2

Some compatible tools, i.e. tools that support at least some of the specs (and those include JIRA, EA and much more) are listed here:
http://open-services.net/software/


EA initial SQL scripts

The short story

The Enterprise Architect (EA) initial (SQL) scripts can be found here:
http://www.sparxsystems.com.au/resources/corporate/index.html#sql_scripts

And here are the instructions to apply it:
http://www.sparxsystems.com.au/enterprise_architect_user_guide/13.0/model_repository/upsizingtosqlserver.html

The long story

What are these good for? If you want to run EA with a centralized model (stored on a RDBMS like Oracle, MS SQL Server, MySQL and so on) you should start by install that DB and create an empty database there (CREATE DATABASE DDL).

You will be able to open an empty model from the EA tool (remote model) only after manually running this scripts on the SQL database (using the Administration tools of the DMBS or a general-purpose SQL tool like Aqua Data Studio, Squirrel SQL Client - open source, java-based, etc.).

After these initial steps you can have the full team working on the same (remote) model.
Remember: If you need permissions per package in the model you'll have to activate security.

(@2016-11-14: Added instructions link)

segunda-feira, 3 de outubro de 2016

sexta-feira, 30 de setembro de 2016

Starting Learning Agile...

Some thoughts on starting learning Agile/Scrum (i.e. introductory readings):

If you like the online tutorials format:
http://www.tutorialspoint.com/agile/

If you like "the source" read the full "Scrum Official Guide" by the authors. It is the original (<20 p.) doc, and it is free:
http://www.scrumguides.org/docs/scrumguide/v1/scrum-guide-us.pdf (2013 version)

If you like a summary, use the for dummies series, or the special IBM series, which you can get by registering to IBM (<80 p.). Google says:
http://www.cise.ufl.edu/~manuel/Agile-for-Dummies
https://cs.anu.edu.au/courses/comp3120/public_docs/AgileForDummies.pdf

If you like the handbook format (<40 p.):
http://agilehandbook.com/agile-handbook.pdf

If you like the cheat sheet format, the "for dummies" series typically have them published online:
http://www.dummies.com/careers/project-management/agile-project-management-for-dummies-cheat-sheet/